UNPKG

@edirect/form-engine

Version:

Achieve form logic reusage with forms expressed in json format.

33 lines (32 loc) 1.1 kB
import Field from './Field.js'; import Scope from './Scope.js'; import Base from './Base.js'; import * as Events from '../events/index.js'; import { TComponent, TFormValues, TSchema, TStepData, TComponentPropsMapping, TFormEventDirectives } from '../types.js'; declare class Form extends Base { #private; formData: TFormValues; formId: string; schema: TSchema; scopedSchema: TSchema; scope: Scope; initialValues: Record<string, unknown>; steps: Record<number, { [x in string]: Field; }>; group: string; constructor(formId: string, observer: Events.Observer, scope: Scope, schema: TSchema, opts: { initialValues: Record<string, unknown>; }, group: any); get step(): TStepData; set step(step: TStepData); get fields(): { [x: string]: Field; }; eventReducedSchema(event: Events.TEventsKeys): TFormEventDirectives; getFieldInstance(component: TComponent, propsMapping?: TComponentPropsMapping): Field; rehydrate(): void; destroyField(field: string): void; } export default Form; export type { Form };