import { LitElement } from 'lit';
import type { InitializableComponent } from '../../../decorators/types.js';
import type { AnyBindings } from '../interface/bindings.js';
declare const AtomicModal_base: typeof LitElement;
/**
 * When the modal is opened, the class `atomic-modal-opened` is added to the `interfaceElement` and the body, allowing further customization.
 *
 * @part backdrop - The transparent backdrop hiding the content behind the modal.
 * @part container - The modal's outermost container with the outline and background.
 * @part header-wrapper - The wrapper around the header.
 * @part header - The header at the top of the modal.
 * @part header-ruler - The horizontal ruler underneath the header.
 * @part body-wrapper - The wrapper around the body.
 * @part body - The body of the modal, between the header and the footer.
 * @part footer-wrapper - The wrapper with a shadow or background color around the footer.
 * @part footer - The footer at the bottom of the modal.
 *
 * @event close - Emitted when the modal is closed (e.g., by pressing Escape).
 *
 * @internal
 */
export declare class AtomicModal extends AtomicModal_base implements InitializableComponent<AnyBindings> {
    static styles: import("lit").CSSResult;
    bindings: AnyBindings;
    error: Error;
    /**
     * Whether to display the open and close animations over the entire page or the atomic-modal only.
     */
    boundary: 'page' | 'element';
    close: () => void;
    /**
     * The container to hide from the tabindex and accessibility DOM when the modal is closed.
     */
    container?: HTMLElement;
    fullscreen: boolean;
    isOpen: boolean;
    onAnimationEnded: () => void;
    scope?: HTMLElement;
    source?: HTMLElement;
    private animatableContainer;
    private currentWatchToggleOpenExecution;
    private focusTrap;
    private headerId;
    private shouldRender;
    private updateBreakpoints;
    connectedCallback(): void;
    render(): import("lit-html").TemplateResult<1>;
    disconnectedCallback(): void;
    initialize(): Promise<void>;
    watchToggleOpen(_prev?: boolean, next?: boolean): Promise<void>;
    private addModalOpenedClasses;
    private createExecutionTracker;
    private handleCloseOnEscape;
    private handleModalClose;
    private handleModalOpen;
    private handleToggleOpen;
    private isExecutionValid;
    private onWindowTouchMove;
    private removeModalOpenedClasses;
    private renderContent;
    private setFocusTrapActive;
    private waitForAnimationEnded;
}
declare global {
    interface HTMLElementTagNameMap {
        'atomic-modal': AtomicModal;
    }
}
export {};
