export interface Step { menuId: string; step: 'min' | 'hidden'; } export interface AppliedStep extends Step { width: number; } /** * Build the ordered collapse sequence. * All min steps come first (in menuId order), then all hidden steps (in menuId order). * A menuId only gets a min step if it has a minStateWidth. * A menuId only gets a hidden step if it's represented in the menu. */ export declare function buildOrderedSteps(menuIds: string[], inMenuIds: Set, minWidthMenuIds: Set): Step[]; /** * Compute the next appliedSteps state given a resize event. * On overflow: push the next step from orderedSteps. * On space available: pop the last step if the container is wider than when it was applied. */ export declare function computeNextSteps(prev: AppliedStep[], scrollWidth: number, clientWidth: number, orderedSteps: Step[]): AppliedStep[]; /** * Derive the hiddenMap from appliedSteps. * Later steps for the same menuId overwrite earlier ones (e.g., min → hidden). * * When `snap` is true, states are expanded: * - If any item is 'min', all items in `minWidthMenuIds` are set to 'min'. * - If any item is 'hidden', all items in `inMenuIds` are set to 'hidden'. */ export declare function deriveHiddenMap(appliedSteps: AppliedStep[], snap?: boolean, inMenuIds?: Set, minWidthMenuIds?: Set): Map; //# sourceMappingURL=overflowSteps.d.ts.map