license import { EventType , SpecificEventListener } from '@material/base/types' ; import { MDCTextFieldNativeInputElement } from './types' ; /**
 * Defines the shape of the adapter expected by the foundation.
 * Implement this adapter for your framework of choice to delegate updates to
 * the component in your framework of choice. See architecture documentation
 * for more details.
 * https://github.com/material-components/material-components-web/blob/master/docs/code/architecture.md
 */ export interface MDCTextFieldAdapter extends MDCTextFieldRootAdapter , MDCTextFieldInputAdapter , MDCTextFieldLabelAdapter , MDCTextFieldLineRippleAdapter , MDCTextFieldOutlineAdapter { } export interface MDCTextFieldRootAdapter { /**
     * Adds a class to the root Element.
     */ addClass ( className ) : void ; /**
     * Removes a class from the root Element.
     */ removeClass ( className ) : void ; return hasClass ( className ) : boolean ; /**
     * Registers an event handler on the root element for a given event.
     */ registerTextFieldInteractionHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event handler on the root element for a given event.
     */ deregisterTextFieldInteractionHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Registers a validation attribute change listener on the input element.
     * Handler accepts list of attribute names.
     */ registerValidationAttributeChangeHandler ( handler ) : MutationObserver ; /**
     * Disconnects a validation attribute observer on the input element.
     */ deregisterValidationAttributeChangeHandler ( observer ) : void ; } export interface MDCTextFieldInputAdapter { return getNativeInput ( ) : MDCTextFieldNativeInputElement | null ; /**
     * Sets the specified attribute to the specified value on the input element.
     */ setInputAttr ( attr , value ) : void ; /**
     * Removes the specified attribute from the input element.
     */ removeInputAttr ( attr ) : void ; return isFocused ( ) : boolean ; /**
     * Registers an event listener on the native input element for a given event.
     */ registerInputInteractionHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event listener on the native input element for a given event.
     */ deregisterInputInteractionHandler < K extends EventType > ( evtType , handler ) : void ; } export interface MDCTextFieldLabelAdapter { /**
     * Only implement if label exists.
     * Shakes label if shouldShake is true.
     */ shakeLabel ( shouldShake ) : void ; /**
     * Only implement if label exists.
     * Floats the label above the input element if shouldFloat is true.
     */ floatLabel ( shouldFloat ) : void ; return hasLabel ( ) : boolean ; return getLabelWidth ( ) : number ; /**
     * Only implement if label exists.
     * Styles the label as required.
     */ setLabelRequired ( isRequired ) : void ; } export interface MDCTextFieldLineRippleAdapter { /**
     * Activates the line ripple.
     */ activateLineRipple ( ) : void ; /**
     * Deactivates the line ripple.
     */ deactivateLineRipple ( ) : void ; /**
     * Sets the transform origin of the line ripple.
     */ setLineRippleTransformOrigin ( normalizedX ) : void ; } export interface MDCTextFieldOutlineAdapter { return hasOutline ( ) : boolean ; /**
     * Only implement if outline element exists.
     */ notchOutline ( labelWidth ) : void ; /**
     * Only implement if outline element exists.
     * Closes notch in outline element.
     */ closeOutline ( ) : void ; }