import { PropsWithChildren } from 'react';
import { DrawerProps as DrawerBaseProps } from '@mui/material/Drawer';
import { ModalResponse } from '../Modal/ModalResponse';
import { DrawerCloseResponse } from './Drawer.types';
export type AllowedDrawerProps = Pick<DrawerBaseProps, 'hideBackdrop' | 'variant' | 'anchor'> & {
    showCloseButton?: boolean;
};
export declare enum AnchorTypes {
    left = "left",
    top = "top",
    right = "right",
    bottom = "bottom"
}
export interface DrawerProps extends AllowedDrawerProps {
    open?: boolean;
    title?: string;
    description?: string;
    isHeaderCompact?: boolean;
    isHeaderSticky?: boolean;
    outOfTheWay?: number | false;
    onClose?: (e?: ModalResponse<DrawerCloseResponse>) => void;
    /**
     * @deprecated Layering is managed by OverlayStackingService — drawers
     * auto-stack against modals and popovers through a shared ledger. Passing
     * a fixed value here forces the drawer onto a static layer and breaks the
     * stacking guarantees. Leave it unset.
     */
    zIndex?: number;
}
export declare const Drawer: (props: PropsWithChildren<DrawerProps>) => import("react/jsx-runtime").JSX.Element;
