import type { ReactElement } from "react"; import type { CategoryNode } from "../catalog/tree.js"; import type { ThemeModeProp } from "./types.js"; export interface CategoryPickerFieldProps extends ThemeModeProp { readonly value?: number | null; readonly onChange?: (id: number | null, node: CategoryNode | null) => void; /** Only leaf categories are valid. Default `true`. */ readonly leavesOnly?: boolean; /** * Force the surface instead of reading the viewport — `"sheet"` is the * phone shape, `"inline"` the tablet/desktop one. For tests and for a host * that renders this field inside a phone-width panel on a desktop. Not an * escape hatch for "I prefer the inline list on phones". */ readonly surface?: "sheet" | "inline"; /** * Mount with the phone sheet already open. For a host that routes straight * to the choice — and for the showcase, whose phone story photographed a * closed trigger because the sheet it documents needs a tap to exist. */ readonly defaultOpen?: boolean; } export declare function CategoryPickerField(props: CategoryPickerFieldProps): ReactElement; //# sourceMappingURL=CategoryPickerField.d.ts.map