import React, { ReactNode } from 'react'; import type { AxiosError } from 'axios'; type LeftMenuResponse = unknown[]; type AppSelectorMenuResponse = unknown[]; type LanguagesResponse = unknown[]; interface MenuContextValue { leftMenu?: LeftMenuResponse; leftMenuLoading: boolean; /** * True while `leftMenu` (and everything derived from it, `homeRoute` * included) still describes the tenant we just switched away from. * @see useIsMenuStale */ leftMenuStale: boolean; leftMenuError?: AxiosError; appSelectorMenus?: AppSelectorMenuResponse; appSelectorMenusLoading: boolean; appSelectorMenusError?: AxiosError; languages?: LanguagesResponse; languagesLoading: boolean; languagesError?: AxiosError; rolesMap: Map; menuActiveMap: Map; homeRoute: string | null; /** * Location state to redirect `/` with, carrying the home menu item's * parameters. Without it the home page renders with no menu params. */ homeRouteState: HomeRouteState | null; refetchAll: () => Promise; } interface HomeRouteState { label: string; params: Record; } interface MenuProviderProps { children?: ReactNode; } export declare const MenuContext: React.Context; export declare const MenuProvider: React.FC; export declare const useMenuContext: () => MenuContextValue; export {}; //# sourceMappingURL=MenuProvider.d.ts.map