import { ComponentInterface, EventEmitter } from "../../stencil-public-runtime"; import { Animation, AnimationBuilder, ComponentProps, ComponentRef, FrameworkDelegate, OverlayEventDetail, OverlayInterface } from "../../interface"; export declare class Modal implements ComponentInterface, OverlayInterface { private currentFocusableElements; private usersElement?; presented: boolean; animation: Animation | undefined; FOCUSABLE_ELEMENTS: string; LU_ELEMENTS: string; el: HTMLLuModalElement; /** * yep... overlay index */ overlayIndex: number; /** * leaving this in so we can use it if we need to integrate with angular controllers */ delegate?: FrameworkDelegate; /** * If `true`, the keyboard will be automatically dismissed when the overlay is presented. */ keyboardClose: boolean; /** * Animation to use when the modal is presented. */ enterAnimation?: AnimationBuilder; /** * Animation to use when the modal is dismissed. */ leaveAnimation?: AnimationBuilder; /** * The component to display inside of the modal. */ component: ComponentRef; /** * The data to pass to the modal component. */ componentProps?: ComponentProps; /** * Additional classes to apply for custom CSS. If multiple classes are * provided they should be separated by spaces. */ cssClass?: string | string[]; /** * If `true`, the modal will be dismissed when the backdrop is clicked. */ backdropDismiss: boolean; /** * If `true`, a backdrop will be displayed behind the modal. */ showBackdrop: boolean; /** * If `true`, the modal will animate. */ animated: boolean; /** * Reference to the element which activated the modal */ activator?: HTMLElement; /** * If this is set, focus this element first. */ firstFocusableElement?: HTMLElement; /** * If set, gives a label to identify the modal for accessibility purposes. */ modalLabel?: string; /** * Emitted after the modal has presented. */ didPresent: EventEmitter; /** * Emitted before the modal has presented. */ willPresent: EventEmitter; /** * Emitted before the modal has dismissed. */ willDismiss: EventEmitter; /** * Emitted after the modal has dismissed. */ didDismiss: EventEmitter; constructor(); handleFocusChangeForSR(): void; handleKeyDown(event: KeyboardEvent): void; /** * Present the modal overlay after it has been created. */ present(): Promise; /** * Dismiss the modal overlay after it has been presented. * * @param data Any data to emit in the dismiss events. * @param role The role of the element that is dismissing the modal. For example, 'cancel' or 'backdrop'. */ dismiss(data?: any, role?: string): Promise; /** * Returns a promise that resolves when the modal did dismiss. */ onDidDismiss(): Promise; /** * Returns a promise that resolves when the modal will dismiss. */ onWillDismiss(): Promise; private onBackdropTap; private onDismiss; private onLifecycle; /** * Collect an array of all focusable elements within the modal. */ getFocusableElements: () => void; /** * Drill down through shadow doms of a single element to find a focusable element. */ searchShadowDomForEl: (baseElement: HTMLElement) => HTMLElement; render(): any; }