/** * The collapse rule: how many of a toolbar's items fit, given what * they measured. * * Pure arithmetic, in its own file for the same reason * `chooseColumns` is — the rule is a table of numbers anyone can * check in Node, and everything that needs a browser is quarantined * in `useToolbarOverflow`. * * ## Priority is the array order * * `itemInlineSizes` is in **priority order, highest first**, which * is also paint order: the toolbar collapses from the end. One axis * rather than two, because a separate `priority` number and a * separate display order is a pair a caller can put out of step, * and neither mux-magic nor plex-channels has *any* ordering — they * hardcode which controls live in the bar and which live in the * popover, at every width. * * ## Why the trigger's width is an input * * The overflow trigger only exists once something has collapsed, so * the question is not "how many fit" but "how many fit **beside a * trigger** — unless all of them fit without one". Ignoring that is * how an overflow control ends up wrapping to a second line at * exactly the width where it first appears. */ export declare const chooseVisibleCount: ({ availableInlineSize, gapInlineSize, itemInlineSizes, triggerInlineSize, }: { /** The room the bar has, in CSS px. */ availableInlineSize: number; /** The row's `column-gap`, in CSS px. */ gapInlineSize: number; /** Each item's measured inline size, priority order, in CSS px. */ itemInlineSizes: readonly number[]; /** The overflow trigger's inline size, in CSS px. */ triggerInlineSize: number; }) => number; //# sourceMappingURL=chooseVisibleCount.d.ts.map