///
///
import * as ko from 'knockout';
import { DashboardItem } from '../../model/items/dashboard-item';
import { baseItem, ViewerItemVisualMode } from '../../viewer-parts/viewer-items/_base-item';
import { DashboardItemCaptionToolbarOptions } from '../../viewer-parts/widgets/caption-toolbar/caption-toolbar-options';
import { CaptionToolbar, ItemCaptionToolbarViewOptions } from '../../viewer-parts/widgets/caption-toolbar/_caption-toolbar-base';
import { ViewerItemFactory } from '../../viewer-parts/_viewer-item-factory';
import { ViewerItemAdaptersManager } from './adapters/_item-viewer-adapter-factory';
export type ItemCreatingType = 'primary' | 'secondary';
export interface IDashboardContext {
beforeApplyViewerItemOptions?: JQueryCallback;
viewerItemCreated?: JQueryCallback;
viewerItemDispose?: JQueryCallback;
addContextToolbarItems?: JQueryCallback;
viewerItemCreator?: any;
refresh?: (itemName?: string) => void;
isDesignMode?: ko.Observable;
useNeutralFilterMode?: () => boolean;
viewerItemsManager?: ViewerItemAdaptersManager;
}
export declare class DashboardItemContext implements IDashboardItemContext {
constructor(options?: IDashboardItemContextOptions);
addContextToolbarItems: JQuery.Callbacks;
viewerItemCreated: JQuery.Callbacks;
viewerItemDispose: JQuery.Callbacks;
beforeApplyViewerItemOptions: JQuery.Callbacks;
captionToolbarCreated: JQuery.Callbacks;
createCaptionToolbar: (viewerItem: baseItem, container: HTMLElement, controlContainer: HTMLElement, popupContainer: HTMLElement, viewOptions: ItemCaptionToolbarViewOptions) => CaptionToolbar;
itemFactory?: ViewerItemFactory;
ignoreDesignMode?: boolean;
disabled?: ko.Subscribable;
visualMode?: ko.Subscribable;
boundaryContainer?: HTMLElement;
itemCreatingType?: ItemCreatingType;
}
export interface IDashboardItemContext {
addContextToolbarItems?: JQueryCallback;
viewerItemCreated?: JQueryCallback;
viewerItemDispose?: JQueryCallback;
beforeApplyViewerItemOptions?: JQueryCallback;
createCaptionToolbar?: (viewerItem: baseItem, container: HTMLElement, controlContainer: HTMLElement, popupContainer: HTMLElement, viewOptions: ItemCaptionToolbarViewOptions) => CaptionToolbar;
itemFactory?: ViewerItemFactory;
ignoreDesignMode?: boolean;
disabled?: ko.Subscribable;
visualMode?: ko.Subscribable;
boundaryContainer?: HTMLElement;
itemCreatingType?: ItemCreatingType;
}
export interface IDashboardItemContextOptions {
addContextToolbarItems?: (options: DashboardItemCaptionToolbarOptions, item: DashboardItem) => void;
createCaptionToolbar?: (viewerItem: baseItem, container: HTMLElement, controlContainer: HTMLElement, popupContainer: HTMLElement, viewOptions: ItemCaptionToolbarViewOptions) => CaptionToolbar;
viewerItemCreated?: (item: DashboardItem, viewerItem: baseItem) => void;
viewerItemDispose?: (item: DashboardItem, viewerItem: baseItem) => void;
beforeApplyViewerItemOptions?: (item: DashboardItem, options: any, isCreation: boolean) => void;
itemFactory?: ViewerItemFactory;
ignoreDesignMode?: boolean;
disabled?: ko.Subscribable;
visualMode?: ko.Subscribable;
boundaryContainer?: HTMLElement;
itemCreatingType?: ItemCreatingType;
}