import type {
  DivElementType as DrawerContentDivElementType,
  ContentProps as DrawerContentProps,
} from "./Content";
import { Content } from "./Content";
import { Drawer as DrawerComponent } from "./Drawer";
import type { DrawerProps, DrawerContextProps } from "./types";
import { useDrawer } from "./useDrawer";
import type {
  HeaderElementType as DrawerHeaderElementType,
  HeaderProps as DrawerHeaderProps,
} from "./Header";
import { Header } from "./Header";

const Drawer = Object.assign(DrawerComponent, {
  Header,
  Content,
});

Drawer.displayName = "Drawer";
export { Drawer, useDrawer };

export type {
  DrawerContextProps,
  DrawerContentDivElementType,
  DrawerContentProps,
  DrawerHeaderElementType,
  DrawerHeaderProps,
  DrawerProps,
};
