@bolttech/form-engine
Version:
A form engine based on form events for react projects
29 lines (28 loc) • 1.11 kB
TypeScript
import Field from '@core/managers/Field';
import Scope from '@core/managers/Scope';
import Base from '@core/managers/Base';
import * as Events from '@core/events';
import { TComponent, TFormValues, TSchema, TStepData, TComponentPropsMapping, TFormEventDirectives, TEventsKeys, TFields } from '@core/types';
declare class Form extends Base {
#private;
formData: TFormValues;
formId: string;
schema: TSchema;
scopedSchema: TSchema;
scope: Scope;
initialValues: Record<string, unknown>;
steps: Record<number, TFields>;
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(): TFields;
eventReducedSchema(event: TEventsKeys): TFormEventDirectives;
getFieldInstance(component: TComponent, propsMapping?: TComponentPropsMapping): Field;
rehydrate(): void;
destroyField(field: string): void;
}
export default Form;
export type { Form };