import { Close, CloseProps } from './drawer-close';
import { Content, ContentProps } from './drawer-content';
import { Description, DescriptionProps } from './drawer-description';
import { Footer, FooterProps } from './drawer-footer';
import { Overlay, OverlayProps } from './drawer-overlay';
import { Root, RootProps } from './drawer-root';
import { Title, TitleProps } from './drawer-title';
import { Trigger, TriggerProps } from './drawer-trigger';
type DrawerProps = {
Root: RootProps;
Title: TitleProps;
Description: DescriptionProps;
Trigger: TriggerProps;
Overlay: OverlayProps;
Content: ContentProps;
Footer: FooterProps;
Close: CloseProps;
};
/**
* Drawer is a sliding panel that appears from the side of the screen.
* It's commonly used for navigation, settings, or displaying additional content without leaving the current page.
*
* @component
*
* @example
* // Basic usage
*
*
*
*
*
* Drawer Title
*
* Drawer content goes here.
*
*
*
*
*
*/
declare const Drawer: typeof Root & {
/**
* Trigger component that opens the drawer when clicked.
* Must be passed a single child component that will be used as the trigger.
*
* @component
*
* @example
*
*
*
*/
Trigger: typeof Trigger;
/**
* Content component that contains the drawer's content.
* Handles the positioning and scrolling behavior of the drawer content.
*
* @component
*
* @example
*
* Title
* Content
*
*/
Content: typeof Content;
/**
* An accessible title to be announced when the drawer is opened.
* It will render the internal Heading component.
* If you want to hide the title, wrap it inside our Visually Hidden utility like this ``.
*
* @component
*
* @example
* Drawer Title
*/
Title: typeof Title;
/**
* An optional accessible description to be announced when the drawer is opened.
* This will render the internal Text component with a default p tag.
*
* If you want to hide the description, wrap it inside our Visually Hidden utility like this ``.
*
* @component
*
* @example
*
* This is the main content of the drawer.
* It can contain multiple paragraphs and other components.
*
*/
Description: typeof Description;
/**
* Overlay component provides the backdrop for the drawer.
* Handles the background dimming and click-outside behavior.
*
* @component
*
* @example
*
*
* {/* Content will slide in from the side *\/}
*
*
*/
Overlay: typeof Overlay;
/**
* Footer component for organizing action buttons or additional content at the bottom of the drawer.
* Provides consistent spacing and styling for footer content.
*
* @component
*
* @example
*
*
*
*
*/
Footer: typeof Footer;
/**
* Close component provides a button to close the drawer.
* Can be used either as a floating close button or within content.
*
* @component
*
* @example
* // Floating close button
*
*
* @example
* // Close button within content
*
*
*
*/
Close: typeof Close;
};
export { Drawer };
export type { DrawerProps };