import { EventEmitter } from '../../stencil-public-runtime';
export declare class PdsModal {
    private modalRef;
    private previousActiveElement;
    private focusableElements;
    el: HTMLPdsModalElement;
    /**
     * Whether the modal can be dismissed by clicking the backdrop
     * @default true
     */
    backdropDismiss: boolean;
    /**
     * A unique identifier used for the underlying component `id` attribute.
     */
    componentId: string;
    /**
     * Whether the modal is open
     * @default false
     */
    open: boolean;
    /**
     * The size of the modal
     * @default 'md'
     */
    size: 'sm' | 'md' | 'lg' | 'fullscreen';
    /**
     * Whether the modal content should be scrollable
     * @default true
     */
    scrollable: boolean;
    /**
     * Emitted when the modal is opened
     */
    pdsModalOpen: EventEmitter<void>;
    /**
     * Emitted when the modal is closed
     */
    pdsModalClose: EventEmitter<void>;
    /**
     * Stores the list of focusable elements in the modal
     */
    focusableElementsArray: HTMLElement[];
    componentDidLoad(): void;
    disconnectedCallback(): void;
    handleOpenChange(newValue: boolean): void;
    /**
     * Updates the list of focusable elements in the modal
     */
    private updateFocusableElements;
    /**
     * Sets focus to the first focusable element in the modal
     */
    private setInitialFocus;
    /**
     * Helper method to focus an element, with special handling for web components
     */
    private focusElement;
    /**
     * Opens the modal
     */
    showModal(): Promise<void>;
    /**
     * Closes the modal
     */
    hideModal(): Promise<void>;
    private handleBackdropClick;
    /**
     * Gets the z-index of a modal's backdrop element
     */
    private getBackdropZIndex;
    /**
     * Checks if this modal is the innermost (highest z-index) modal
     */
    private isInnermostModal;
    private handleKeyDown;
    render(): any;
}
