import { Injector, NgZone, SimpleChanges } from '@angular/core';
import { RelationsChangeDetector, RelationsComponent } from '@anglr/dynamic/relations';
import { Observable } from 'rxjs';
import { DebounceValueRelationsOptions } from './debounceValue.options';
/**
 * Debounce value relations component
 */
export declare class DebounceValueRelations<TValue = any> implements RelationsComponent<DebounceValueRelationsOptions> {
    /**
     * Subject used for emitting change in value
     */
    protected valueChange: Observable<void>;
    /**
     * Indication that initial value was already assigned
     */
    protected valueAssigned: boolean;
    /**
     * Reference number to timeout instance
     */
    protected timeout: number | null;
    /**
     * Instance of ng zone
     */
    protected ngZone: NgZone;
    /**
     * Current relations change detector
     */
    protected relationsChangeDetector: RelationsChangeDetector;
    /**
     * @inheritdoc
     */
    relationsOptions: DebounceValueRelationsOptions | undefined | null;
    /**
     * Value that should be debounced
     */
    value: TValue | undefined | null;
    constructor(injector: Injector);
    /**
     * @inheritdoc
     */
    ngOnChanges(changes: SimpleChanges): void;
    /**
     * @inheritdoc
     */
    invalidateVisuals(): void;
}
//# sourceMappingURL=debounceValue.relations.d.ts.map