/**
* @fileoverview Drawer — slide-in panel powered by Vaul with touch-gesture support.
* @module packages/ui/components/ui/drawer
* @layer core
*
* Self-contained implementation built on the Vaul drawer primitive. Provides
* a mobile-friendly slide-up panel with drag-to-dismiss gesture, overlay
* backdrop, and composable header/footer/content slots.
*
* @requires vaul — peer dependency.
*
* @component
* @example
* import { Drawer, DrawerTrigger, DrawerContent, DrawerHeader, DrawerTitle } from "@saasflare/ui";
*
*
*
*
* Settings
*
*
*/
import * as React from "react";
import { Drawer as DrawerPrimitive } from "vaul";
import { type SaasflareComponentProps } from "../../providers";
/** Root drawer state container; orchestrates open state and gesture context. */
declare function Drawer({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Interactive element that toggles the drawer open. Use `asChild` to wrap a custom control. */
declare function DrawerTrigger({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Portals drawer content (overlay + panel) outside the DOM hierarchy. */
declare function DrawerPortal({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Element that closes the drawer when activated. Use `asChild` to wrap a custom control. */
declare function DrawerClose({ ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Dimmed backdrop rendered behind the drawer panel. */
declare function DrawerOverlay({ className, ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Props for {@link DrawerContent}; adds the surface/radius/animated design-system axes. */
interface DrawerContentProps extends Omit, keyof SaasflareComponentProps>, SaasflareComponentProps {
}
/** Sliding panel surface that holds the drawer body; carries the surface/radius/animated axes. */
declare function DrawerContent({ className, children, surface, radius, animated, iconWeight, ...props }: DrawerContentProps): import("react/jsx-runtime").JSX.Element;
/** Vertical layout slot for the drawer's title and description. */
declare function DrawerHeader({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
/** Bottom-pinned layout slot for drawer actions. */
declare function DrawerFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
/** Accessible heading for the drawer, announced to assistive technology. */
declare function DrawerTitle({ className, ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
/** Supporting descriptive text for the drawer, associated with the title for accessibility. */
declare function DrawerDescription({ className, ...props }: React.ComponentProps): import("react/jsx-runtime").JSX.Element;
export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, type DrawerContentProps, };