import type { ComponentType, PropsWithChildren, ReactElement } from "react"; import type { INavItemProps } from "../../nav/NavItem"; import { type BodyComponent, type IBodyProps } from "./body/Body"; import { type FooterComponent, type IFooterProps } from "./footer/Footer"; import { type HeaderComponent, type IHeaderProps } from "./header/Header"; export interface ILayoutProps = IHeaderProps, BodyProps extends IBodyProps = IBodyProps, FooterProps extends IFooterProps = IFooterProps> { header?: HeaderProps; body?: BodyProps; footer?: FooterProps; HeaderComponent?: HeaderComponent; BodyComponent?: BodyComponent; FooterComponent?: FooterComponent; } export type LayoutComponent = ComponentType; export declare function Layout, BodyProps extends IBodyProps, FooterProps extends IFooterProps>({ children, header, body, footer, ...components }: PropsWithChildren>): ReactElement;