import { Progressbar } from './progressbar.model';
import { ErrorHandler, ApplicationError } from './errorhandler.model';
export interface AppStatus {
    status?: string | StatusCategory;
    type?: StatusTypes;
    i18n?: {
        enabled?: boolean;
        params?: Array<string | number>;
    };
    icon?: StatusIcons;
    showAppVersion?: boolean;
    statusDialog?: boolean;
    percentage?: boolean;
    timeout?: number;
    stepIndex?: number;
    options?: AlertOptions;
    showLoader?: boolean;
}
export interface MethodStatus {
    model: string;
    icon?: StatusIcons;
    status?: string | StatusCategory;
    i18n?: {
        enabled?: boolean;
        params: Array<string | number>;
    };
    progress?: Progressbar;
    percentage?: boolean;
    log?: ErrorHandler;
}
export declare enum StatusTypes {
    message = 1,
    error = 2,
    success = 3,
    warning = 4,
    loading = 5,
    alert = 6
}
export declare const StatusIcons: {
    home: "home";
    study: "study";
    log: "log";
    error: "error";
    success: "success";
    warn: "warn";
    import: "import";
    export: "export";
    loading: "loading";
};
export declare type StatusIcons = (typeof StatusIcons)[keyof typeof StatusIcons];
export interface StatusMeta {
    description: string;
    status: StatusCategory;
    error?: ApplicationError;
}
export declare enum StatusCategory {
    failed = 0,
    completed = 1,
    pending = 2,
    inProgress = 3
}
export declare class ProcessSteps {
    levels: Array<StatusMeta>;
    totalSteps: number;
    completed: boolean;
    constructor(process: Array<string>);
}
export interface AlertOptions {
    message: string;
    icon?: string;
    background?: string;
    clearAll?: boolean;
    stop?: boolean;
}
