import { AfterViewInit } from '@angular/core';
import { FormComponent } from '../../components/form/form';
import { AutosaveActionService } from '../../services/autosaveAction/autosaveAction.service';
import { IWaitValue } from '../../services/async/async.service';
export declare const DEFAULT_AUTOSAVE_DEBOUNCE: number;
export declare class AutosaveDirective implements AfterViewInit {
    saveWhenInvalid: boolean;
    keyupListener: () => void;
    timer: any;
    form: FormComponent;
    autosaveAction: AutosaveActionService;
    constructor(form: FormComponent, autosaveAction: AutosaveActionService);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    setDebounce: () => void;
    resetDebounce(): void;
    autosave: () => void;
    submitAndWait(): IWaitValue<any>;
    private canAutosave();
}
