import { IAbstractControl } from "./i-abstract-control" ; import { ControlState } from "./control-state" ; import { FormControl } from "@angular/forms" ; import { Observable } from "rxjs" ; export interface IFormControl < T > extends FormControl { readonly errorMessages ? : string [ ] ; readonly errorMessage ? : string ; readonly value : T | null ; readonly valueChanges : Observable < T | null > ; readonly statusChanges : Observable < "VALID" | "INVALID" | "PENDING" | "DISABLED" > ; get ( path ) : IAbstractControl < T > | null ; setValue ( value , options ? ) : void ; patchValue ( value , options ? ) : void ; reset ( formState ? , options ? ) : void ; getError ( errorCode , path ? ) : any ; patchValue ( value , options ? ) : void ; reset ( formState ? , options ? ) : void ; setValue ( value , options ? ) : void ; registerOnChange ( fn ) : void ; registerOnDisabledChange ( fn ) : void ; }