import { EventEmitter, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export interface ClrFlowBarStep {
    title: Observable<string>;
    enabled: boolean;
    activeSubStep?: ClrFlowBarStep;
    subSteps?: ClrFlowBarStep[];
}
export declare class ClrFlowBar implements OnInit {
    _steps: ClrFlowBarStep[];
    _activeStep: ClrFlowBarStep;
    _activeStepChange: EventEmitter<ClrFlowBarStep>;
    ngOnInit(): void;
    changeActiveStep(step: ClrFlowBarStep): void;
    changeActiveSubStep(subStep: ClrFlowBarStep): void;
    previous(): void;
    next(): void;
    isPreviousAvailable(): boolean;
    isNextAvailable(): boolean;
    isLastStep(): boolean;
    private getCurrentIndex;
    private activeTabHasSubSteps;
    private isFirstSubStep;
    private isLastSubStep;
    private isAnyPreviousStepEnabled;
    private isAnyFollowingStepEnabled;
    private findPreviousEnabledStep;
    private findNextEnabledStep;
    static ɵfac: i0.ɵɵFactoryDeclaration<ClrFlowBar, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ClrFlowBar, "clr-flow-bar", never, { "_steps": { "alias": "clrSteps"; "required": false; }; "_activeStep": { "alias": "clrActiveStep"; "required": false; }; }, { "_activeStepChange": "clrActiveStepChange"; }, never, never, false, never>;
}
