import { EventEmitter, OnInit, TemplateRef } from '@angular/core';
import { GridsterConfig, GridsterItem, GridsterItemComponentInterface } from 'angular-gridster2';
import { SettingsService } from '@delon/theme';
import { ViewModeEnum } from './item-view/vms/view-mode.enum';
import { IKengicDashboardItem } from './item/vms/i-kengic-dashboard-item';
import { I18nConfig } from '../../vm';
export declare class KengicDashboardComponent implements OnInit {
    settingsService: SettingsService;
    items: Array<IKengicDashboardItem>;
    i18n: I18nConfig;
    itemChange: EventEmitter<{
        item: IKengicDashboardItem;
        itemComponent: GridsterItemComponentInterface;
    }>;
    add: EventEmitter<IKengicDashboardItem>;
    remove: EventEmitter<IKengicDashboardItem>;
    itemTpl: TemplateRef<void>;
    configTpl: TemplateRef<void>;
    isFullScreen: boolean;
    options: GridsterConfig;
    currentItem: IKengicDashboardItem | null;
    kengicDashboardItemViewComponentProp: {
        mode: ViewModeEnum;
    };
    constructor(settingsService: SettingsService);
    ngOnInit(): void;
    /**
     *
     * @param item the item data
     * @param itemComponent the item component
     */
    handleItemChange(item: GridsterItem, itemComponent: GridsterItemComponentInterface): void;
    /**
     * event handler when fullscreen mode changed
     *
     * @param fullscreen whether in fullscreen mode or not
     */
    handleFullScreenChange(fullscreen: boolean): void;
    /**
     * add a new panel
     */
    addPanel(): void;
    handleItemView(item: IKengicDashboardItem): void;
    handleItemEdit(item: IKengicDashboardItem): void;
    handleItemRemove(item: IKengicDashboardItem): void;
    backToGrid(): void;
}
