import { type HTMLAttributes } from 'react'; import { Images } from 'lucide-react'; import type { FdiId, Radiograph } from '../tooth-scheme'; export interface RadiographPanelHandle { /** Read the films currently shown (after the host's `radiographs` prop). */ getRadiographs: () => Radiograph[]; /** Open the fullscreen viewer on a film by id. */ openViewer: (id: string) => void; /** Close the fullscreen viewer. */ closeViewer: () => void; } export interface RadiographPanelProps extends Omit, 'title' | 'children'> { /** Instance id — emitted as `data-component-id` for the agent registry. */ id?: string; /** The tooth whose films are shown (FDI id). Null → a "select a tooth" prompt. */ toothId?: FdiId | null; /** Display label for the selected tooth. Defaults to the localised "Tooth {{id}}". */ toothLabel?: string; /** The selected tooth's films. The panel sorts + filters; order in is irrelevant. */ radiographs?: Radiograph[]; /** Commit a new film (the host persists it). Omit to hide the upload composer. */ onAddRadiograph?: (draft: { fileName: string; date?: string; note?: string; }) => void; /** Remove a film by id. Omit to hide the delete affordance. */ onDeleteRadiograph?: (id: string) => void; /** Panel heading. Defaults to the localised "Imaging". */ title?: string; /** Accessible name for the panel region (defaults to `title`). */ 'aria-label'?: string; } export declare const RadiographPanel: import("react").ForwardRefExoticComponent>; export { Images as RadiographPanelIcon }; //# sourceMappingURL=radiograph-panel.d.ts.map