import type { ReactNode } from 'react';
import type { Dict } from '../utils';
export interface SidemenuContextValue extends Dict {
    variant?: string;
    size?: string;
    isMenuExpanded?: boolean;
    submenuStates?: Record<string, boolean>;
    setSubmenuState?: (itemId: string, isOpen: boolean) => void;
    toggleSubmenu?: (itemId: string) => void;
    setIsExpanded?: (isExpanded: boolean) => void;
    onExpandedChange?: (isExpanded: boolean) => void;
    resetAllStates?: () => void;
    resetExpansionOnly?: () => void;
    resetSubmenuOnly?: () => void;
}
interface SidemenuStateProviderProps {
    children: ReactNode;
    isExpandedInitial?: boolean;
    onExpandedChange?: (isExpanded: boolean) => void;
    variant?: string;
    size?: string;
    isDark?: boolean;
}
declare const SidemenuProvider: import("react").Provider<SidemenuContextValue>, useSidemenuContext: () => SidemenuContextValue;
export declare const SidemenuStateProvider: ({ children, isExpandedInitial, onExpandedChange, variant, size, isDark, }: SidemenuStateProviderProps) => import("react/jsx-runtime").JSX.Element;
export { SidemenuProvider, useSidemenuContext };
//# sourceMappingURL=context.d.ts.map