import type { TFunction } from 'i18next'; import { type PracticeAnamnesisConfig } from './anamnesis-config'; import type { AnamnesisRecord, IntakeAnswer, IntakeSectionDef } from './anamnesis-types'; /** A section made only of short fields reads like a lab form, so on a wide * card it runs up to four across; one holding any prose field runs two, which * is what a mixed section can fill. A single capped column left half the row * empty and was rejected on review. */ export declare function isLabGridSection(section: IntakeSectionDef): boolean; /** Field key → answer. Exported so hosts can type the `onSubmit` seam. */ export type IntakeAnswerMap = Partial>; export interface AnamnesisIntakeProps { record: AnamnesisRecord; t: TFunction; /** Mount flush inside a host section tab (drops the full-page chrome + own * page title). */ embedded?: boolean; /** The practice's configured questionnaire. Omitted = the kit-seeded form. */ config?: PracticeAnamnesisConfig; /** Demo/story hook: which section is open on mount. Defaults to the first. */ defaultOpenSection?: string; /** The questionnaire was submitted: receives the full answer map. The * surface keeps its own draft state either way — this is the seam a * platform host persists through (mirrors `onTargetChange`). */ onSubmit?: (answers: IntakeAnswerMap) => void; /** Open the section containing this field key and move focus to it on * mount — the landing half of a host-routed missing-answer jump. */ jumpToField?: string; /** Render the answers without letting them be changed, and drop the footer * action. The state an ALREADY-COMPILED questionnaire arrives in: a reader * should be able to tell at a glance that this has been answered, and has * to ask before overwriting the patient's own words. */ readOnly?: boolean; } export declare function AnamnesisIntake({ record, t, embedded, config, defaultOpenSection, onSubmit, jumpToField, readOnly, }: AnamnesisIntakeProps): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=anamnesis-intake.d.ts.map