import { type ReactNode } from 'react'; /** * Rewrite `rows` so any React node inside a cell or a row detail becomes a * projected slot. Returns the original array when nothing needed projecting — * identity is preserved so the wrapper's value-diff does not see a change and * the element is not needlessly re-rendered. */ export declare function projectTableRows(rows: unknown): { rows: unknown; children: ReactNode[]; }; /** * Rewrite an item array whose `contentField` may hold a React node, moving the * node to a slot named after the item's stable identity. * * Shared by Tabs (`content` → `content_slot`, keyed by `value`) and Accordion * (`panel_content` → `panel_slot`, keyed by `id`) rather than written twice. * The same fix landing in one copy and not the other is this codebase's most * frequent defect shape; one function makes it impossible here. */ export declare function projectItems(items: unknown, contentField: string, slotField: string, keyField: string, prefix: string): { items: unknown; children: ReactNode[]; };