import { EventEmitter, OnInit, AfterViewInit, ChangeDetectorRef } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { NavigationButtonItem } from './models/navigation-button-item';
import { NavigationButtonStepChangedInfo } from './models';
import { TieredMenuItemData } from '@seniorsistemas/angular-components/tiered-menu';
import * as i0 from "@angular/core";
export declare class NavigationButtonComponent implements ControlValueAccessor, OnInit, AfterViewInit {
    private readonly changeDetectorRef;
    steps: NavigationButtonItem[];
    defaultValue: unknown;
    tooltip?: string;
    changeOnInit: boolean;
    stepChanged: EventEmitter<NavigationButtonStepChangedInfo>;
    currentIndex: number;
    isDisabled: boolean;
    tieredMenuItems: TieredMenuItemData[];
    private _onChange?;
    private _onTouched?;
    private _value;
    constructor(changeDetectorRef: ChangeDetectorRef);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    private _setDefaultValue;
    writeValue(value: unknown): void;
    registerOnChange(onChange: (value: unknown) => void): void;
    registerOnTouched(onTouched: () => void): void;
    setDisabledState?(isDisabled: boolean): void;
    onNext(): void;
    onPrevious(): void;
    private _createTieredMenuItems;
    static ɵfac: i0.ɵɵFactoryDeclaration<NavigationButtonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NavigationButtonComponent, "s-navigation-button", never, { "steps": { "alias": "steps"; "required": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; }; "tooltip": { "alias": "tooltip"; "required": false; }; "changeOnInit": { "alias": "changeOnInit"; "required": false; }; }, { "stepChanged": "stepChanged"; }, never, never, false, never>;
}
