import { ActivatedRouteSnapshot, RouterStateSnapshot } from "@angular/router";
import { Observable } from "rxjs";
import { TccDialogWindowService } from "../services/tcc-dialog-window/tcc-dialog-window.service";
export declare abstract class canDeactivate {
    private canDeactivateDialog;
    abstract get canDeactivateChanged(): boolean;
    get canDeactivateText(): string;
    get canDeactivateText2(): string;
    constructor(canDeactivateDialog: TccDialogWindowService);
    protected canDeactivateCustomCheck?(currentRoute?: ActivatedRouteSnapshot, currentState?: RouterStateSnapshot, nextState?: RouterStateSnapshot): boolean;
    /**
     *
     * @param currentRoute
     * @param currentState
     * @param nextState
     * @returns true wenn die seite trotzdem verlassen werden soll
     */
    canDeactivate(currentRoute?: ActivatedRouteSnapshot, currentState?: RouterStateSnapshot, nextState?: RouterStateSnapshot): Observable<boolean>;
}
