import { EventEmitter } from '@angular/core'; import { ControlValueAccessor, Validator, ValidationErrors, AbstractControl } from '@angular/forms'; declare type ValueAccessorHandler = (_: T) => void; declare type ValidatorChangeHandler = () => void; export declare class ValueAccessorValueComponent implements ControlValueAccessor, Validator { get value(): T | undefined; set value(val: T | undefined); protected _value: T | undefined; valueChange: EventEmitter; validate(control: AbstractControl): ValidationErrors | null; propagateChange: ValueAccessorHandler; propagateTouch: ValueAccessorHandler; propagateValidatorChange: ValidatorChangeHandler; writeValue(value: T): void; registerOnChange(fn: ValueAccessorHandler): void; registerOnTouched(fn: ValueAccessorHandler): void; registerOnValidatorChange(fn: ValidatorChangeHandler): void; } export {};