license import { EventType , SpecificEventListener } from '@material/base/types' ; import { CssClasses } from './constants' ; /**
 * 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 MDCTooltipAdapter { return getAttribute ( attr ) : string | null ; /**
     * Sets an attribute on the root element.
     */ setAttribute ( attr , value ) : void ; /**
     * Removes an attribute on the root element.
     */ removeAttribute ( attr ) : void ; /**
     * Adds a class onto the root element.
     */ addClass ( className ) : void ; return hasClass ( className ) : boolean ; /**
     * Removes a class from the root element.
     */ removeClass ( className ) : void ; return getComputedStyleProperty ( propertyName ) : string ; /**
     * Sets the property value of the given style property on the root element.
     */ setStyleProperty ( propertyName , value ) : void ; /**
     * Sets the property value of the given style property on the tooltip's
     * surface-animation element (indicated by the
     * "mdc-tooltip__surface-animation" class).
     */ setSurfaceAnimationStyleProperty ( propertyName , value ) : void ; return getViewportWidth ( ) : number ; return getViewportHeight ( ) : number ; return getTooltipSize ( ) : { width : number ; height : number ; } ; return getAnchorBoundingRect ( ) : ClientRect | null ; return getParentBoundingRect ( ) : ClientRect | null ; return getAnchorAttribute ( attr ) : string | null ; /**
     * Sets an attribute on the anchor element.
     */ setAnchorAttribute ( attr , value ) : void ; return isRTL ( ) : boolean ; /**
     * Checks if element is contained within the anchor element.
     */ anchorContainsElement ( element ) : boolean ; /**
     * Checks if element is contained within the tooltip element.
     */ tooltipContainsElement ( element ) : boolean ; /**
     * Sets focus on the anchor element.
     */ focusAnchorElement ( ) : void ; /**
     * Registers an event listener to the root element.
     */ registerEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event listener to the root element.
     */ deregisterEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Registers an event listener to the anchor element.
     */ registerAnchorEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event listener to the anchor element.
     */ deregisterAnchorEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Registers an event listener to the document body.
     */ registerDocumentEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event listener to the document body.
     */ deregisterDocumentEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Registers an event listener to the window.
     */ registerWindowEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Deregisters an event listener to the window.
     */ deregisterWindowEventHandler < K extends EventType > ( evtType , handler ) : void ; /**
     * Notification that the tooltip element has been fully hidden. Typically used
     * to wait for the hide animation to complete.
     */ notifyHidden ( ) : void ; return getTooltipCaretBoundingRect ( ) : ClientRect | null ; /**
     * Sets the property value of the given style property on both the caret-top
     * and caret-bottom elements.
     */ setTooltipCaretStyle ( propertyName , value ) : void ; /**
     * Clears all inline styles set on the caret-top and caret-bottom elements.
     */ clearTooltipCaretStyles ( ) : void ; return getActiveElement ( ) : Element | null ; }