import { AfterViewInit, ChangeDetectorRef, Injector, OnDestroy, Renderer2, ViewContainerRef } from '@angular/core'; import { UntypedFormGroup, FormGroupDirective, NgControl } from '@angular/forms'; import { Observable } from 'rxjs'; import { AbstractValidationDirective } from '../abstracts'; import { ValidationContainerDirective } from './validation-container.directive'; import { ValidationGroupDirective } from './validation-group.directive'; import { ValidationStyleDirective } from './validation-style.directive'; import { ValidationTargetDirective } from './validation-target.directive'; import * as i0 from "@angular/core"; export declare class ValidationDirective extends AbstractValidationDirective implements AfterViewInit, OnDestroy { injector: Injector; private cdRef; private control; private renderer; private vcRef; parentRef: ValidationGroupDirective; private markRef; targetRef: ValidationTargetDirective; private containerRef; private formGroupDirective; private errorRef; private markElement; private isSubmitted; get validation$(): Observable; private subscriptions; constructor(injector: Injector, cdRef: ChangeDetectorRef, control: NgControl, renderer: Renderer2, vcRef: ViewContainerRef, parentRef: ValidationGroupDirective, markRef: ValidationStyleDirective, targetRef: ValidationTargetDirective, containerRef: ValidationContainerDirective, formGroupDirective: FormGroupDirective); private buildErrors; private insertErrorClasses; private insertErrors; private removeErrorClasses; private removeErrors; private setMarkElement; private shouldValidate; private subscribeToValidation; ngAfterViewInit(): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }