UNPKG

@ng-flexy/form

Version:

Flexy components and tools to build Angular 8+ applications

77 lines (76 loc) 2.39 kB
import { FormControl, ValidatorFn, FormArray } from '@angular/forms'; declare type ControlPath = (string | number)[] | string; export interface CrossFieldsOptions { lower: { name: string; path: ControlPath; }; greater: { name: string; path: ControlPath; }; } export declare namespace FlexyFormsValidators { function notEmptyValidator(control: FormControl): { 'not-empty': boolean; }; function noWhitespaceValidator(control: FormControl): { whitespace: boolean; }; function emailValidator(control: FormControl): { 'invalid-email': { currentValue: any; }; }; function booleanValidator(control: FormControl): { 'invalid-boolean': { currentValue: any; }; }; function integerValidator(control: FormControl): { 'invalid-integer': { currentValue: any; }; }; function minValidator(min: number): ValidatorFn; function maxValidator(max: number): ValidatorFn; function numberValidator(control: FormControl): { 'invalid-number': { currentValue: any; }; }; function minLengthArray(min: number): (control: FormControl) => { [key: string]: any; }; function maxLengthArray(max: number): (control: FormControl) => { [key: string]: any; }; function isEmpty(control: FormControl): boolean; function urlValidator(control: FormControl): { 'invalid-url': { currentValue: any; }; }; function crossFieldValidator(fields: CrossFieldsOptions): (control: FormControl) => { [key: string]: any; }; function crossFieldMinValidator(minPath: ControlPath): (control: FormControl) => { [key: string]: any; }; function crossFieldMaxValidator(maxPath: ControlPath): (control: FormControl) => { [key: string]: any; }; function crossFieldAbsoluteMinValidator(minPath: ControlPath): (control: FormControl) => { [key: string]: any; }; function forbiddenValuesValidator(forbiddenValues: (string | number)[]): (control: FormControl) => { [key: string]: any; }; function arrayUniqueFieldsValidator(data: { path: ControlPath; fieldName: string; }): (control: FormArray) => { [key: string]: any; }; } export {};