import * as react from 'react'; import { UiSchema } from '@rjsf/utils'; export { UiSchema } from '@rjsf/utils'; /** The subset of JSON Schema that SchemaFieldView reads. Other keywords are ignored. */ interface JsonSchema { type?: string | string[]; title?: string; description?: string; properties?: Record; items?: JsonSchema; [keyword: string]: unknown; } interface SchemaFormProps { schema: JsonSchema; /** rjsf UI schema for widget and layout overrides. */ uiSchema?: UiSchema; formData?: T; onChange?: (formData: T) => void; /** Called with valid form data only; invalid submits show inline errors. */ onSubmit?: (formData: T) => void; submitLabel?: string; disabled?: boolean; readonly?: boolean; } /** * Editable form generated from a JSON Schema (@rjsf/mui), validated with ajv8. * Renders MUI fields, so it takes the surrounding MuiAppThemeProvider theme. * Imported from `it-data-nexus-ui-library/schema-form` so the @rjsf peers stay optional. */ declare const SchemaForm: ({ schema, uiSchema, formData, onChange, onSubmit, submitLabel, disabled, readonly, }: SchemaFormProps) => react.JSX.Element; export { SchemaForm }; export type { JsonSchema, SchemaFormProps };