import { AbstractControl } from "./Form.types";
export declare abstract class ObservableControl<Value> implements AbstractControl<Value> {
    private listeners;
    onChange(listener: (control: AbstractControl<Value>) => void): {
        unsubscribe: () => void;
    };
    protected emitChange(): void;
    abstract get value(): Value;
    abstract get valid(): boolean;
    abstract validate(): void;
}
