export interface AdminTabItem { name: string; label: string; } interface AdminTabsProps { tabs: AdminTabItem[]; activeTab: string; onChange: (name: string) => void; /** * Prefix for the generated tab and panel ids. The consumer that renders the * panels builds its panel ids from the same base via `tabPanelId`, which is * what associates the two halves for assistive technology. */ idBase: string; /** Error counts keyed by tab name — shows a danger badge when > 0. */ errorCounts?: Record; className?: string; } /** Id of the button for one tab. */ export declare const tabTriggerId: (idBase: string, name: string) => string; /** Id the consumer must put on the panel belonging to one tab. */ export declare const tabPanelId: (idBase: string, name: string) => string; /** * Tabs navigation bar for admin form layouts. * * Used by FormRenderer when a CollectionAdminConfig declares a `tabs` array, * and by the collection history view. The number of tabs a collection can * declare is unbounded while the column they sit in is not, so the strip * scrolls horizontally and — only once the tabs genuinely exceed the column — * grows a menu listing every tab. * * The menu is a jump list rather than a list of the tabs that happen to be * out of view: its contents stay put as the strip scrolls, and no tab ever * changes position in the strip as a result of being selected. Editors learn * where a tab lives and it stays there. * * Scroll position is moved only when the selection changes or a tab takes * focus. A reader who scrolls the strip to look at other labels keeps their * position through re-measurement, re-render and resize. * * Stable override handles: `.byline-admin-tabs`, `.byline-admin-tabs-viewport`, * `.byline-admin-tablist`, `.byline-admin-tab`, `.byline-admin-tab-active`, * `.byline-admin-tab-label`, `.byline-admin-tab-badge`, * `.byline-admin-tabs-overflow-trigger`, `.byline-admin-tabs-overflow-menu`, * `.byline-admin-tabs-overflow-item`. */ export declare const AdminTabs: ({ tabs, activeTab, onChange, idBase, errorCounts, className, }: AdminTabsProps) => import("react").JSX.Element; export {};