import type { ReactNode } from "react"; export type HeaderOptions = HeaderOptions.TopOfPage | HeaderOptions.Sticky; export declare namespace HeaderOptions { type TopOfPage = { position: "top of page"; isRetracted?: boolean; }; type Sticky = { position: "sticky"; isRetracted?: boolean | "smart"; }; } export type GlTemplateProps = { header?: ReactNode; body?: ReactNode; footer?: ReactNode; headerOptions?: HeaderOptions; applyHeaderPadding?: boolean; className?: string; hasTopOfPageLinkButton?: boolean; classes?: Partial["classes"]>; }; export declare function GlTemplate(props: GlTemplateProps): import("react/jsx-runtime").JSX.Element; declare const useStyles: import("tss-react").Tss.UseStyles<{ theme: { paddingRightLeft: number; customShadow: string; borderRadius: number; isDarkModeEnabled: boolean; colors: { palette: { focus: { main: string; light: string; light2: string; }; dark: { main: string; light: string; greyVariant1: string; greyVariant2: string; greyVariant3: string; greyVariant4: string; }; light: { main: string; light: string; greyVariant1: string; greyVariant2: string; greyVariant3: string; greyVariant4: string; }; redError: { main: string; light: string; }; greenSuccess: { main: string; light: string; }; orangeWarning: { main: string; light: string; }; blueInfo: { main: string; light: string; }; }; useCases: { typography: { textPrimary: string; textSecondary: string; textTertiary: string; textDisabled: string; textFocus: string; }; buttons: { actionHoverPrimary: string; actionHoverSecondary: string; actionHoverTernary: string; actionSelected: string; actionActive: string; actionDisabled: string; actionDisabledBackground: string; }; surfaces: { background: string; surface1: string; surface2: string; }; alertSeverity: { error: { main: string; background: string; }; success: { main: string; background: string; }; warning: { main: string; background: string; }; info: { main: string; background: string; }; }; }; getUseCases: (params: { isDarkModeEnabled: boolean; }) => { typography: { textPrimary: string; textSecondary: string; textTertiary: string; textDisabled: string; textFocus: string; }; buttons: { actionHoverPrimary: string; actionHoverSecondary: string; actionHoverTernary: string; actionSelected: string; actionActive: string; actionDisabled: string; actionDisabledBackground: string; }; surfaces: { background: string; surface1: string; surface2: string; }; alertSeverity: { error: { main: string; background: string; }; success: { main: string; background: string; }; warning: { main: string; background: string; }; info: { main: string; background: string; }; }; }; }; typography: import("onyxia-ui").ComputedTypography; shadows: typeof import("onyxia-ui/lib/shadows").shadows; spacing: import("onyxia-ui").Spacing; muiTheme: import("@mui/material").Theme; iconSizesInPxByName: Record; windowInnerWidth: number; }; }, { headerHeight: number; childrenWrapperWidth: number; isHeaderRetracted: boolean; headerPosition: Required["position"]; applyHeaderPadding: boolean; }, "root" | "headerWrapper" | "footerWrapper" | "bodyAndFooterWrapper", Record>; export {};