UNPKG

@cosva-lab/form-builder

Version:
28 lines (27 loc) 1.59 kB
import { FieldBuilder } from "./FieldBuilder.mjs"; import InputsValidator from "../validate/InputsValidator.mjs"; import { EventChangeValue, EventField, FieldsProps, FieldsToObject, GetArrayValues, GetFieldsValue } from "../../types.mjs"; //#region src/utils/builders/FieldsBuilder.d.ts declare class FieldsBuilder<Fields extends FieldBuilder<any>[]> extends InputsValidator<Fields> { private _ns?; get ns(): string | undefined; set ns(ns: string | undefined); actionsExtra?: object; get values(): GetFieldsValue<Fields>; constructor(props: FieldsProps<Fields>); private setField; restore(): void; getValues(): GetFieldsValue<Fields>; get<FieldName extends keyof FieldsToObject<Fields>>(fieldName: FieldName): FieldsToObject<Fields>[FieldName]; getField<FieldName extends keyof FieldsToObject<Fields>>(fieldName: FieldName): FieldsToObject<Fields>[FieldName]; onChangeField<FieldName extends keyof GetFieldsValue<Fields>>(event: EventField<GetFieldsValue<Fields>[FieldName], FieldName>): void; onChangeFields<Values extends GetFieldsValue<Fields>>(events: GetArrayValues<{ [Field in keyof Values]: EventField<Values[Field], Field> }>): void; changeValue<FieldName extends keyof GetFieldsValue<Fields>>({ name, value }: EventChangeValue<GetFieldsValue<Fields>[FieldName], FieldName>): void; changeValues(events: { [K in keyof GetFieldsValue<Fields>]: EventChangeValue<GetFieldsValue<Fields>[K], K> }[keyof GetFieldsValue<Fields>][]): void; setValidation(validate: boolean): void; } //#endregion export { FieldsBuilder, FieldsBuilder as default };