import { Config } from '../config';
import { ServiceBase } from './../data/service-base';
import { DialogOpenResult, DialogService } from 'aurelia-dialog';
import * as breeze from 'breeze-client';
import { FloatingBoxViewModel } from './dialogs/floating-box';
import { BoxSize } from '../constants/constants';
import { ActionDialogBoxInputParameters } from '../model/common-model';
export declare class Box {
    private dialogService;
    private config;
    constructor(dialogService: DialogService, config: Config);
    showError(message: string, title: string, actions?: ActionDialogBoxInputParameters[], isTranslated?: boolean, lock?: boolean, keyboard?: boolean): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showQuestion(message: string, title: string, actions?: ActionDialogBoxInputParameters[], lock?: boolean, keyboard?: boolean): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showWarning(message: string, title: string, actions?: ActionDialogBoxInputParameters[], lock?: boolean, keyboard?: boolean): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showNotification(message: string, title: string, actions?: ActionDialogBoxInputParameters[], lock?: boolean, keyboard?: boolean): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showEditDialog(viewModel: any, entityIdToEdit: number, title: string, optionsOrCallback?: Partial<ShowEditDialogOptions> | ((entity: any) => void | Promise<void>), optionsObj?: Partial<ShowEditDialogOptions>): import("aurelia-dialog").DialogOpenPromise<import("aurelia-dialog").DialogCancellableOpenResult>;
    showCustomDialog(viewModel: any, entityIdToEdit: number, title: string, optionsOrCallback?: Partial<ShowEditDialogOptions> | ((entity: any) => void | Promise<void>), optionsObj?: Partial<ShowEditDialogOptions>): import("aurelia-dialog").DialogOpenPromise<import("aurelia-dialog").DialogCancellableOpenResult>;
    showInput(message: string, title: string, required?: boolean, lock?: boolean, keyboard?: boolean, icon?: string): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showRichInput(message: string, title: string, content: string, lock?: boolean, keyboard?: boolean, icon?: string): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showSelect(message: string, title: string, service: ServiceBase<breeze.Entity>, optionsText: string, optionsValue: string, icon?: string, lock?: boolean, keyboard?: boolean, isMultiple?: boolean, select?: number | Array<number>, sortColumn?: string, filterProperties?: Array<string>): import("aurelia-dialog").DialogOpenPromise<DialogOpenResult>;
    showFloatingBox(viewModel: FloatingBoxViewModel, lock?: boolean, keyboard?: boolean): import("aurelia-dialog").DialogOpenPromise<import("aurelia-dialog").DialogCancellableOpenResult>;
}
export declare class ShowEditDialogOptions {
    callback?: (entity: any) => void | Promise<void>;
    canSave: boolean;
    lock: boolean;
    keyboard: boolean;
    actions: ActionDialogBoxInputParameters[];
    icon: string;
    containerClass: string;
    overlayClass: string;
    position: 'left' | 'right';
    size: BoxSize;
    model: any;
    constructor(data?: Partial<ShowEditDialogOptions>);
}
