import { Location } from '@angular/common';
import { StateContext } from '@ngxs/store';
import { Assistance } from '../../../modules/smz-layouts/core/models/assistance';
import { LayoutState, LoaderData } from '../../../modules/smz-layouts/core/models/layout';
import { LayoutUiActions } from './layout.actions';
import { ContentTheme, SmzContentTheme } from '../../../modules/smz-layouts/core/models/themes';
import { LogoResource } from '../../../modules/smz-layouts/core/models/logo';
import { SmzToastData } from '../../../modules/smz-layouts/core/models/toasts';
import { ColorSchemaDefinition } from '../../../modules/smz-layouts/core/models/color-schemas';
import { BreadcrumbsData } from '../../../modules/smz-layouts/core/models/breadcrumbs';
import { SmzExportDialogData } from '../../../modules/smz-export-dialog/smz-export-dialog.model';
import * as i0 from "@angular/core";
export interface UiStateModel {
    assistance: Assistance;
    themes: {
        content: SmzContentTheme;
        theme: ContentTheme;
        schema: ColorSchemaDefinition | string;
    };
    toast: SmzToastData;
    loader: LoaderData;
    state: LayoutState;
    appLogo: LogoResource;
    lastUserMouseEvent: 'mouseenter' | 'mouseleave';
    breadcrumbs: BreadcrumbsData;
    exportData: SmzExportDialogData;
}
export declare const getInitialState: () => UiStateModel;
export declare class LayoutUiState {
    private location;
    constructor(location: Location);
    onInitialize(ctx: StateContext<UiStateModel>): void;
    onSetTopbarTitle(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetTopbarTitle): void;
    onSetContentTheme(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetContentTheme): void;
    onSetColorSchema(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetColorSchema): void;
    onSetGlobalLoader(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetGlobalLoader): void;
    onShowConfigAssistance(ctx: StateContext<UiStateModel>): void;
    onHideConfigassistance(ctx: StateContext<UiStateModel>): void;
    onSetAssistancePosition(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetAssistancePosition): void;
    onSetAssistanceButtonPosition(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetAssistanceButtonPosition): void;
    onSetToastPosition(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetToastPosition): void;
    onMoveLayout(ctx: StateContext<UiStateModel>, action: LayoutUiActions.MoveLayout): void;
    onRestoreLayoutPosition(ctx: StateContext<UiStateModel>): void;
    onSetLastUserMouseEvent(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetLastUserMouseEvent): void;
    onNavigateBack(ctx: StateContext<UiStateModel>): void;
    onSetBreadcrumbs(ctx: StateContext<UiStateModel>, action: LayoutUiActions.SetBreadcrumbs): void;
    onShowExportDialog(ctx: StateContext<UiStateModel>, action: LayoutUiActions.ShowExportDialog): void;
    onHideExportDialog(ctx: StateContext<UiStateModel>): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<LayoutUiState, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<LayoutUiState>;
}
