UNPKG

signal-template-forms

Version:

A powerful, type-safe Angular forms library built with signals, providing reactive form management with excellent developer experience and performance.

21 lines (20 loc) 1.73 kB
import { WritableSignal } from '@angular/core'; import { FormStatus } from '../../enums/form-status.enum'; import { type DeepPartial, type ErrorMessage, type InferFieldType, type SignalFormContainer, type SignalFormField } from '../../models/signal-form.model'; import { ValidationService } from '../../services/validation.service'; export declare class FormEngine { static validateForm<TModel>(fields: SignalFormField<TModel>[], form: SignalFormContainer<TModel>, validationService?: ValidationService): () => boolean; static resetForm<TModel>(fields: SignalFormField<TModel>[], initialModel: TModel): () => void; static patchForm<TModel>(fields: SignalFormField<TModel>[]): (patch: DeepPartial<TModel>) => void; static setFormValue<TModel>(fields: SignalFormField<TModel>[]): (value: TModel) => void; static getErrors<TModel>(fields: SignalFormField<TModel>[]): () => ErrorMessage<TModel>[]; static getValueFromFields<TModel>(fields: SignalFormField<TModel>[], form: SignalFormContainer<TModel>): TModel; static getFieldOutputValue<TModel>(field: SignalFormField<TModel>): unknown; static getValue<TModel>(fields: SignalFormField<TModel>[]): () => TModel; static getField<TModel>(fields: SignalFormField<TModel>[]): <K extends keyof TModel>(key: K) => InferFieldType<TModel, K>; static getRawValue<TModel>(fields: SignalFormField<TModel>[]): import("@angular/core").Signal<TModel>; static runSaveHandler<TModel>(fields: SignalFormField<TModel>[], status: WritableSignal<FormStatus>, form: SignalFormContainer<TModel>, onSave?: (value: TModel) => void): () => void; private static isFieldWithForm; private static isRepeatableField; private static isCheckboxGroupField; }