import type { ReactiveController, ReactiveControllerHost } from 'lit'; import type { LightDismissOptions } from '../common/controllers/LightDismissController.js'; interface ModalControllerOptions { isOpen: LightDismissOptions['isOpen']; onDismiss: (trigger: Event) => void; close: (returnValue?: string, trigger?: Event) => void; isLightDismissEnabled: () => boolean; backdrop: () => HTMLElement; dialog: () => HTMLElement; } export declare class ModalController implements ReactiveController { private host; private static openModals; private scrollBar; private focusTrap; private lightDismiss; private events; private options; private trigger?; private lastButton?; constructor(host: ReactiveControllerHost & HTMLElement, options: ModalControllerOptions); hostConnected(): void; hostDisconnected(): void; block(): void; unblock(): void; /** * capture the last button clicked, so that we can polyfill `submitter` property in submit event */ private trackLastButton; private polyfillSubmitter; private handleTransitionEnd; private handleLightDismiss; private handleSubmit; } export {};