license import { Corner } from '@material/menu-surface/constants' ; /**
 * 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 MDCSelectAdapter { /**
     * Adds class to select anchor element.
     */ addClass ( className ) : void ; /**
     * Removes a class from the select anchor element.
     */ removeClass ( className ) : void ; /**
     * Returns true if the select anchor element contains the given class name.
     */ hasClass ( className ) : boolean ; /**
     * Activates the bottom line, showing a focused state.
     */ activateBottomLine ( ) : void ; /**
     * Deactivates the bottom line.
     */ deactivateBottomLine ( ) : void ; /**
     * Returns true if label exists, false if it doesn't.
     */ hasLabel ( ) : boolean ; /**
     * Floats label determined based off of the shouldFloat argument.
     */ floatLabel ( shouldFloat ) : void ; /**
     * Returns width of label in pixels, if the label exists.
     */ getLabelWidth ( ) : number ; /**
     * Styles the label as required, if the label exists.
     */ setLabelRequired ( isRequired ) : void ; /**
     * Returns true if outline element exists, false if it doesn't.
     */ hasOutline ( ) : boolean ; /**
     * Only implement if outline element exists.
     */ notchOutline ( labelWidth ) : void ; /**
     * Closes notch in outline element, if the outline exists.
     */ closeOutline ( ) : void ; /**
     * Sets the line ripple transform origin center.
     */ setRippleCenter ( normalizedX ) : void ; /**
     * Emits a change event when an element is selected.
     */ notifyChange ( value ) : void ; /**
     * Sets the text content of the selectedText element to the given string.
     */ setSelectedText ( text ) : void ; /**
     * Returns whether the select anchor is focused.
     */ isSelectAnchorFocused ( ) : boolean ; /**
     * Gets the given attribute on the select anchor element.
     */ getSelectAnchorAttr ( attr ) : string | null ; /**
     * Sets the given attribute on the select anchor element.
     */ setSelectAnchorAttr ( attr , value ) : void ; /**
     * Removes the given attribute on the select anchor element.
     */ removeSelectAnchorAttr ( attr ) : void ; /**
     * Adds class to the menu element.
     */ addMenuClass ( className ) : void ; /**
     * Removes a class from the menu element.
     */ removeMenuClass ( className ) : void ; /**
     * Opens the menu.
     */ openMenu ( ) : void ; /**
     * Closes the menu.
     */ closeMenu ( ) : void ; /**
     * Returns the select anchor element.
     */ getAnchorElement ( ) : Element | null ; /**
     * Sets the menu anchor element.
     */ setMenuAnchorElement ( anchorEl ) : void ; /**
     * Sets the menu anchor corner.
     */ setMenuAnchorCorner ( anchorCorner ) : void ; /**
     * Sets whether the menu should wrap focus.
     */ setMenuWrapFocus ( wrapFocus ) : void ; /**
     * Focuses the menu item element at the given index.
     */ focusMenuItemAtIndex ( index ) : void ; /**
     * Returns the number of menu items.
     */ getMenuItemCount ( ) : number ; /**
     * Returns an array representing the VALUE_ATTR attributes of each menu item.
     */ getMenuItemValues ( ) : string [ ] ; /**
     * Gets the text content of the menu item element at the given index.
     */ getMenuItemTextAtIndex ( index ) : string ; /**
     * Returns the selected index.
     */ getSelectedIndex ( ) : number ; /**
     * Sets the selected index in the menu.
     */ setSelectedIndex ( index ) : void ; /**
     * Returns whether typeahead is in progress in the menu.
     */ isTypeaheadInProgress ( ) : boolean ; /**
     * Adds a character to the list typeahead buffer and returns index of the
     * next item in the list matching the buffer.
     */ typeaheadMatchItem ( nextChar , startingIndex ) : number ; }