import Component from '@glimmer/component';
import type { EuiBreakpointSize } from '../utils/breakpoint';
export type EuiFlyoutArgs = {
    closeAriaLabel?: string;
    /**
     * Shows the navigation flyout
     */
    isOpen?: boolean;
    /**
     * Keeps navigation flyout visible and push `<body>` content via padding
     */
    isDocked?: boolean;
    /**
     * Named breakpoint or pixel value for customizing the minimum window width to enable docking
     */
    dockedBreakpoint?: EuiBreakpointSize | number;
    /**
     * Keeps the display of toggle button when in docked state
     */
    showButtonIfDocked?: boolean;
    isFocusTrapActive?: boolean;
    as?: string;
    size?: number | string;
    side?: 'left' | 'right';
    role?: null | string;
    ownFocus?: boolean;
    outsideClickCloses?: boolean;
    closeButtonPosition?: 'outside' | 'inside';
    paddingSize?: string;
    hideCloseButton?: boolean;
    closeButtonProps?: {
        className?: string;
        onClick?: (e: MouseEvent) => void;
        classes?: string;
    };
    closeButtonAriaLabel?: string;
    onClose: () => void;
    maxWidth?: boolean | number;
    maskProps?: Record<string, unknown>;
    type?: string;
    pushMinBreakpoint?: number | EuiBreakpointSize;
    shouldSelfFocus?: boolean;
    focusTrapOptions?: {
        allowOutsideClick?: boolean;
        clickOutsideDeactivates?: boolean;
    };
};
export declare const SIZES: ("s" | "m" | "l")[];
export type EuiFlyoutSize = (typeof SIZES)[number];
export interface EuiFlyoutSignature {
    Element: any;
    Args: EuiFlyoutArgs;
    Blocks: {
        default: [];
    };
}
export default class EuiFlyoutComponent extends Component<EuiFlyoutSignature> {
    windowIsLargeEnoughToPush: boolean;
    dimensions?: {
        width?: number;
        height?: number;
    };
    get as(): string;
    get hideCloseButton(): boolean;
    get closeButtonPosition(): "outside" | "inside";
    get ownFocus(): boolean;
    get side(): "left" | "right";
    get size(): string | number;
    get paddingSize(): string;
    get maxWidth(): number | boolean;
    get type(): string;
    get outsideClickCloses(): boolean;
    get role(): string;
    get pushMinBreakpoint(): number | EuiBreakpointSize;
    get isPushed(): boolean;
    get styles(): {
        [key: string]: unknown;
    };
    functionToCallOnWindowResize(): void;
    onClose(): void;
    onButtonCloseClicked(e: MouseEvent): void;
    onResize(dimensions: {
        width: number;
        height: number;
    }): void;
}
//# sourceMappingURL=eui-flyout.d.ts.map