import { default as React } from 'react'; declare enum LayoutActionType { UPDATE_MEDIA = "updateMedia", UPDATE_DRAWER = "updateDrawer", UPDATE_LOGO = "updateLogo", UPDATE_NOTIFICATIONS = "updateNotifications", UPDATE_THEME = "updateTheme" } type ILayoutProviderProps = React.PropsWithChildren<{ logoMain?: React.ReactElement; logoIcon?: React.ReactElement; enableNotification: boolean; notification?: string; }>; type ILayoutMediaState = { downMd: boolean; downLg: boolean; downXl: boolean; horizontal: boolean; }; type ILayoutDrawerState = { open: boolean; width: number; handleDrawerToggle: () => void; }; type ILayoutLogoState = { icon?: React.ReactElement; main?: React.ReactElement; }; type ILayoutNotificationState = { enable: boolean; resource: string; }; type ILayoutThemeState = { iconColorOpen: string; iconColor: string; }; type ILayoutState = { drawer: ILayoutDrawerState; media: ILayoutMediaState; logo: ILayoutLogoState; notifications: ILayoutNotificationState; theme: ILayoutThemeState; }; type ILayoutAction = { type: LayoutActionType.UPDATE_MEDIA; payload: Partial; } | { type: LayoutActionType.UPDATE_DRAWER; payload: Partial; } | { type: LayoutActionType.UPDATE_LOGO; payload: Partial; } | { type: LayoutActionType.UPDATE_NOTIFICATIONS; payload: Partial; } | { type: LayoutActionType.UPDATE_THEME; payload: Partial; }; type ILayoutContext = { state: ILayoutState; dispatch: React.Dispatch; }; declare function LayoutProvider(props: ILayoutProviderProps): import("react/jsx-runtime").JSX.Element; declare function withLayoutProvider(Component: React.ComponentType

): React.ForwardRefExoticComponent & React.RefAttributes>; declare function useLayoutContext(): ILayoutContext; declare function useLayoutDispatch(): React.Dispatch; declare function useLayoutState(): ILayoutState; declare function useLayoutMediaState(): ILayoutMediaState; declare function useLayoutDrawerState(): ILayoutDrawerState; declare function useLayoutLogoState(): ILayoutLogoState; declare function useLayoutNotificationsState(): ILayoutNotificationState; declare function useLayoutThemeState(): ILayoutThemeState; export type { ILayoutProviderProps }; export { LayoutProvider, useLayoutContext, useLayoutDispatch, useLayoutDrawerState, useLayoutLogoState, useLayoutMediaState, useLayoutNotificationsState, useLayoutState, useLayoutThemeState, withLayoutProvider }; //# sourceMappingURL=Provider.d.ts.map