import { ReactNode } from 'react'; import { ContainerProps } from '../atoms/Container'; import { PageHeadingProps } from '../atoms/PageHeading'; import { OverlayProps } from '../internals/Overlay'; export type PageLayoutProps = Pick & Pick & { /** * Page content */ children: ReactNode; /** * When mode is `test`, it will render a `TEST DATA` Badge to inform user api is working in test mode. * Only if app is standalone mode. */ mode?: "test" | "live"; /** * Optional prop to enable scroll to top behavior on location change */ scrollToTop?: boolean; } & ({ overlay?: false; } | { /** * Renders as overlay */ overlay: true; /** * Footer element to be rendered at the bottom of the overlay. **/ overlayFooter?: OverlayProps["footer"]; }); export declare const PageLayout: import('../atoms/SkeletonTemplate').SkeletonTemplateComponent<{ title: ReactNode; toolbar?: import('../atoms/PageHeading').PageHeadingToolbarProps | undefined; gap?: "none" | "only-top" | "only-bottom" | "both" | undefined; description?: ReactNode; navigationButton?: { label: string; onClick: () => void; icon?: "x" | "arrowLeft"; } | undefined; minHeight?: boolean | undefined; children: ReactNode; mode?: "test" | "live" /** * Optional prop to enable scroll to top behavior on location change */ | undefined; scrollToTop?: boolean | undefined; overlay?: false | undefined; delayMs?: number | undefined; isLoading?: boolean | undefined; } | { title: ReactNode; toolbar?: import('../atoms/PageHeading').PageHeadingToolbarProps | undefined; gap?: "none" | "only-top" | "only-bottom" | "both" | undefined; description?: ReactNode; navigationButton?: { label: string; onClick: () => void; icon?: "x" | "arrowLeft"; } | undefined; minHeight?: boolean | undefined; children: ReactNode; mode?: "test" | "live" /** * Optional prop to enable scroll to top behavior on location change */ | undefined; scrollToTop?: boolean | undefined; overlay: true; overlayFooter?: ReactNode; delayMs?: number | undefined; isLoading?: boolean | undefined; }>;