import { ComponentProps, ComponentType, ReactNode } from 'react'; /** * Viewport breakpoints supported by the Page component */ export type Breakpoint = 'base' | 'sm' | 'md' | 'lg' | 'xl'; /** * Responsive component definition that can be: * - An object with breakpoint keys and component values (ReactNode or ComponentType) * - A single ReactNode * - A Component function/class */ export type ResponsiveComponent> = Partial>> | ReactNode | ComponentType; /** * Props for the Page layout component */ export type PageProps = ComponentProps<'div'> & { /** * Header component(s) - can be responsive or static * @example * // Responsive header * , md: }} /> * * // Static header * } /> * * // Component reference * */ header?: ResponsiveComponent; /** * Footer component(s) - can be responsive or static * @example * // Responsive footer * , md: }} /> * * // Static footer * } /> * * // Component reference * */ footer?: ResponsiveComponent; /** * Main content of the page */ children: ReactNode; /** * Test ID for testing purposes */ 'data-testid'?: string; }; //# sourceMappingURL=types.d.ts.map