/** * Custom hook for managing collapsed/expanded state of navigation groups * with localStorage persistence. Automatically cleans up stale group entries * when groups are removed from the navigation. * * Groups that have never been toggled by the user fall back to * `defaults[groupName]` (driven by `collapsedByDefault` in config). * * @param groupNames - Array of group names to track * @param namespace - Namespace for localStorage key (e.g., "home", "drawer") to allow independent state * @param defaults - Optional map of group name → collapsed boolean from config */ export declare function useCollapsedGroups(groupNames: string[], namespace?: string, defaults?: Record): { isGroupCollapsed: (name: string) => boolean; toggleGroupCollapsed: (name: string) => void; }; /** * Build a defaults map from navigationGroupMappings for a given namespace. * Returns a Record that can be passed to useCollapsedGroups. */ export declare function buildCollapsedDefaults(mappings: Array<{ name: string; collapsedByDefault?: boolean | { drawer?: boolean; home?: boolean; }; }> | undefined, namespace: "drawer" | "home"): Record;