import { RawSchema } from '../json-schema/model.js'; import { Field } from './fields/index.js'; import { DocAsArray } from './model.js'; export declare function build(ctx: FormContext, fieldNames?: string[]): VNode; export type FormContext = { h: (type: string, props?: any, children?: any) => VNode; editDoc: DocAsArray; schema: RawSchema; onMessage: Function; fields?: Map; oneOfSelected?: Map; oneOfSelectedInGroups?: Set; oneOfSelectedDefault?: Set; nestExpanded?: Set; enablePaste?: boolean; autofillRequest?: Function; onChange?: Function; onPaste?: Function; onLookup?: Function; onFileUpload?: Function; onFileSelect?: Function; onFileDownload?: Function; hideRootTitle?: Boolean; hideRootDescription?: Boolean; hideFieldDescription?: Boolean; placeholderUseFieldDescription?: Boolean; showFieldName?: Boolean; showFieldFullname?: Boolean; onNodeFocus?: (field: Field) => void; onNodeBlur?: (field: Field) => void; setDocValue?: (fieldName: string, updatedValue: any, needRender?: boolean) => void; appendAtDocValue?: (fieldName: string, updatedValue: any, key?: string) => void; insertAtDocValue?: (fieldName: string, updatedValue: any, key?: string) => void; removeDocValue?: (fieldName: string, needRender?: boolean) => void; moveUpDocValue?: (fieldName: string) => void; moveDownDocValue?: (fieldName: string) => void; renameDocValue?: (fieldName: string, newName: string) => void; activeFieldName?: string; activePatternFieldName?: string; }; export declare function JSONDocBuilder(ctx: FormContext, fieldNames?: string[]): any;