import { PropsWithChildren } from 'react'; type ThemeMode = 'light' | 'dark' | 'auto'; type ThemeOrientation = 'vertical' | 'horizontal'; type ThemeDirection = 'ltr' | 'rtl'; type ThemePresetColor = 'default' | 'theme1' | 'theme2' | 'theme3' | 'theme4' | 'theme5' | 'theme6' | 'theme7' | 'theme8'; type ThemeFontFamily = `'Inter', sans-serif` | `'Poppins', sans-serif` | `'Roboto', sans-serif` | `'Public Sans', sans-serif` | /** Any font family name as string */ string; type ThemeConfig = { /** * Default font family for the application. * @example * fontFamily: `'Inter', sans-serif` */ fontFamily: ThemeFontFamily; /** * Layout orientation: 'vertical' or 'horizontal'. * @example * themeOrientation: 'vertical' */ themeOrientation: ThemeOrientation; /** * Enables/disables mini mode for the drawer. * @example * miniDrawer: false */ miniDrawer: boolean; /** * If true, the main layout is wrapped in a centered container. * @example * container: true */ container: boolean; /** * Theme mode: 'light', 'dark', or 'auto'. * @example * mode: 'light' */ mode: ThemeMode; /** * Default theme color preset. * @example * presetColor: 'theme4' */ presetColor: ThemePresetColor; /** * Text direction: 'ltr' (left-to-right) or 'rtl' (right-to-left). * @example * themeDirection: 'ltr' */ themeDirection: ThemeDirection; /** * Default application path. * @example * appDefaultPath: '/dashboard' */ appDefaultPath: string; /** * Width of the side drawer in pixels. * @example * drawerWidth: 260 */ drawerWidth: number; /** * Maximum number of items shown horizontally in the menu. * @example * horizontalMaxItems: 6 */ horizontalMaxItems: number; /** * Base spacing for the layout (MUI units). * @example * spacing: 2 */ spacing: number; setFontFamily: (fontFamily: ThemeFontFamily) => void; setThemeOrientation: (themeOrientation: ThemeOrientation) => void; setMiniDrawer: (miniDrawer: boolean) => void; setContainer: (container: boolean) => void; setMode: (mode: ThemeMode) => void; setPresetColor: (presetColor: ThemePresetColor) => void; setThemeDirection: (themeDirection: ThemeDirection) => void; setAppDefaultPath: (appDefaultPath: string) => void; setDrawerWidth: (drawerWidth: number) => void; setHorizontalMaxItems: (horizontalMaxItems: number) => void; isVerticalLayout: (orientation: ThemeOrientation) => boolean; isHorizontalLayout: (orientation: ThemeOrientation) => boolean; }; type ThemeProvierProps = PropsWithChildren<{ initialConfig: ThemeConfig; }>; declare const ThemeContext: import('react').Context; declare function ThemeProvider({ initialConfig, children }: ThemeProvierProps): JSX.Element; declare function useThemeContext(): ThemeConfig; declare function useThemeConfig(): ThemeConfig; export type { ThemeConfig, ThemeDirection, ThemeFontFamily, ThemeMode, ThemeOrientation, ThemePresetColor }; export { ThemeContext, ThemeProvider, useThemeConfig, useThemeContext }; //# sourceMappingURL=ThemeProvider.d.ts.map