import { AfterContentInit, ChangeDetectorRef, ElementRef } from '@angular/core'; import { AbstractControl, FormGroupDirective, NgControl, NgForm, Validator, ValidatorFn } from '@angular/forms'; import { KbqValidationOptions } from '@koobiq/components/core'; import { KbqFormField } from './form-field'; import { KbqFormFieldControl } from './form-field-control'; import * as i0 from "@angular/core"; /** * @deprecated Will be removed in next major release (#DS-2838) * * Legacy validation directive. * * ### How to disable? * * ```typescript * import { kbqDisableLegacyValidationDirectiveProvider } from '@koobiq/components/core'; * * @NgModule({ * providers: [kbqDisableLegacyValidationDirectiveProvider()] * }) * ``` * * @docs-private */ export declare class KbqValidateDirective implements AfterContentInit { private formFieldControl; rawValidators: Validator[]; private ngControl; private parentForm; private parentFormGroup; private mcValidation; private cdr; private readonly parentFormField; private readonly elementRef; get isNgModel(): boolean; get isFormControlName(): boolean; get isFormControl(): boolean; get validationControl(): any; get parent(): NgForm; get hasNotSubmittedParent(): boolean; constructor(formFieldControl: KbqFormFieldControl, rawValidators: Validator[], ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, mcValidation: KbqValidationOptions, cdr: ChangeDetectorRef, parentFormField: KbqFormField | null, elementRef: ElementRef); ngAfterContentInit(): void; setValidState(control: AbstractControl, validator: ValidatorFn): void; /** This function do next: * - run validation on submitting parent form * - prevent validation in required validator if form doesn't submitted * - if control has focus validation will be prevented */ setMosaicValidation(): void; setMosaicValidationForModelControl(): void; setMosaicValidationForFormControl(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }