import { EventEmitter } from '@angular/core';
import { HeaderViewMode } from '../../enums/header-view-mode.enum';
import { SignInType } from '../../enums/sign-in-type.enum';
import { ButtonType } from '../../enums/button-type.enum';
import { DividerMode } from '../../enums/divider-mode.enum';
import { DividerAxis } from '../../enums/divider-axis.enum';
import { DividerDensity } from '../../enums/divider-density.enum';
import { DividerType } from '../../enums/divider-type.enum';
import { Router } from '@angular/router';
import { TimerType } from '../../enums/timer-type.enum';
import { SignInMode } from '../../enums/sign-in-mode.enum';
import * as i0 from "@angular/core";
export interface LanguageOption {
    code: string;
    name?: string;
}
export declare class HeaderComponent {
    router: Router;
    viewMode: HeaderViewMode;
    hasMenu: boolean;
    hasLogo: boolean;
    logoUrl: string;
    logoAlt: string;
    title: string;
    description?: string;
    hasTimer: boolean;
    timeLogout: number;
    timeCritical: number;
    hasNotificationIcon: boolean;
    userName: string;
    signinMode: SignInMode;
    hasDividerIcon: boolean;
    hasActionIcons: boolean;
    hasLanguageSelector: boolean;
    languageOptions: LanguageOption[];
    currentLanguageCode: string;
    hasThemeToggle: boolean;
    menuEvent: EventEmitter<void>;
    criticalTimeEvent: EventEmitter<void>;
    timeOutEvent: EventEmitter<void>;
    timeEvent: EventEmitter<void>;
    notificationIconEvent: EventEmitter<void>;
    signinEvent: EventEmitter<void>;
    logoutEvent: EventEmitter<void>;
    themeToggleEvent: EventEmitter<HeaderViewMode>;
    languageChangeEvent: EventEmitter<string>;
    viewModeChange: EventEmitter<HeaderViewMode>;
    readonly headerViewModes: typeof HeaderViewMode;
    readonly dividerModes: typeof DividerMode;
    readonly dividerTypes: typeof DividerType;
    readonly dividerDensities: typeof DividerDensity;
    readonly dividerAxis: typeof DividerAxis;
    readonly signinTypes: typeof SignInType;
    readonly signinModes: typeof SignInMode;
    readonly buttonTypes: typeof ButtonType;
    readonly timerTypes: typeof TimerType;
    languageDropdownOpen: boolean;
    constructor(router: Router);
    toggleMenu(): void;
    goToHome(): void;
    get firstAndLastName(): string;
    toggleLanguageDropdown(): void;
    selectLanguage(langCode: string): void;
    get currentLanguageDisplay(): string;
    /**
     * Toggle entre os modos de tema do header (claro/escuro)
     */
    toggleTheme(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<HeaderComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<HeaderComponent, "cfc-header", never, { "viewMode": { "alias": "viewMode"; "required": false; }; "hasMenu": { "alias": "hasMenu"; "required": false; }; "hasLogo": { "alias": "hasLogo"; "required": false; }; "logoUrl": { "alias": "logoUrl"; "required": false; }; "logoAlt": { "alias": "logoAlt"; "required": false; }; "title": { "alias": "title"; "required": false; }; "description": { "alias": "description"; "required": false; }; "hasTimer": { "alias": "hasTimer"; "required": false; }; "timeLogout": { "alias": "timeLogout"; "required": false; }; "timeCritical": { "alias": "timeCritical"; "required": false; }; "hasNotificationIcon": { "alias": "hasNotificationIcon"; "required": false; }; "userName": { "alias": "userName"; "required": false; }; "signinMode": { "alias": "signinMode"; "required": false; }; "hasDividerIcon": { "alias": "hasDividerIcon"; "required": false; }; "hasActionIcons": { "alias": "hasActionIcons"; "required": false; }; "hasLanguageSelector": { "alias": "hasLanguageSelector"; "required": false; }; "languageOptions": { "alias": "languageOptions"; "required": false; }; "currentLanguageCode": { "alias": "currentLanguageCode"; "required": false; }; "hasThemeToggle": { "alias": "hasThemeToggle"; "required": false; }; }, { "menuEvent": "menuEvent"; "criticalTimeEvent": "criticalTimeEvent"; "timeOutEvent": "timeOutEvent"; "timeEvent": "timeEvent"; "notificationIconEvent": "notificationIconEvent"; "signinEvent": "signinEvent"; "logoutEvent": "logoutEvent"; "themeToggleEvent": "themeToggleEvent"; "languageChangeEvent": "languageChangeEvent"; "viewModeChange": "viewModeChange"; }, never, ["[actionIcons]"], false, never>;
}
