/** * [WHO]: Drawer — 侧抽屉(基于 @radix-ui/react-dialog),带 side CVA 与滑入动画。 * [FROM]: React + @radix-ui/react-dialog + framer-motion + CVA + getThemeFromDocument + local icons-inline. * [TO]: sparkdesign package consumers; output of CLI `add drawer` when registered. * [HERE]: registry/basic/drawer.tsx — Spark Design source; keep aligned with the main library. * * [PROTOCOL]: * 1. Keep this P3 header in sync when the public contract changes. * 2. Update module AGENTS.md (P2) and root AGENTS.md (P1) when boundaries change. * 3. Follow design tokens and explicit type exports. */ import * as React from 'react'; import * as DialogPrimitive from '@radix-ui/react-dialog'; import { type VariantProps } from 'class-variance-authority'; declare const Drawer: React.FC; declare const DrawerTrigger: React.ForwardRefExoticComponent>; declare const DrawerClose: React.ForwardRefExoticComponent>; declare const DrawerPortal: React.FC; declare const DrawerOverlay: React.ForwardRefExoticComponent, "ref"> & React.RefAttributes>; declare const drawerVariants: (props?: ({ side?: "top" | "right" | "bottom" | "left" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; export interface DrawerContentProps extends React.ComponentPropsWithoutRef, VariantProps { side?: 'top' | 'right' | 'bottom' | 'left'; showCloseButton?: boolean; /** When provided (e.g. from ThemeStyleProvider), used for portal wrapper */ dataStyle?: string; dataTheme?: string; } declare const DrawerContent: React.ForwardRefExoticComponent>; declare const DrawerHeader: React.ForwardRefExoticComponent & React.RefAttributes>; declare const DrawerFooter: React.ForwardRefExoticComponent & React.RefAttributes>; declare const DrawerTitle: React.ForwardRefExoticComponent, "ref"> & React.RefAttributes>; declare const DrawerDescription: React.ForwardRefExoticComponent, "ref"> & React.RefAttributes>; export type DrawerHeaderProps = React.HTMLAttributes; export type DrawerFooterProps = React.HTMLAttributes; export { Drawer, DrawerTrigger, DrawerClose, DrawerPortal, DrawerOverlay, DrawerContent, DrawerHeader, DrawerFooter, DrawerTitle, DrawerDescription, drawerVariants, };