import { FormGroupDirective, NgControl, NgForm } from '@angular/forms'; import { ErrorStateMatcher } from './error-state-matcher'; export declare type Constructor = new (...args: any[]) => T; export interface CanUpdateErrorState { updateErrorState(): void; errorState: boolean; errorStateMatcher?: ErrorStateMatcher; } export declare type CanUpdateErrorStateCtor = Constructor; export interface HasErrorState { _parentFormGroup: FormGroupDirective; _parentForm: NgForm; _defaultErrorStateMatcher: ErrorStateMatcher; ngControl: NgControl; } /** * Mixin to augment a directive with updateErrorState method. * For component with `errorState` and need to update `errorState`. */ export declare function mixinErrorState>(base: T): CanUpdateErrorStateCtor & T;