import * as ko from 'knockout'; import { DataItem, DataItemLink } from '../../../model/data-item/data-item'; import { IDisposable } from '../../../model/disposable-object'; import { DataDashboardItem } from '../../../model/items/data-dashboard-item'; import { DataItemContainer } from '../../../model/items/data-item-container'; import { AccordionTab } from '../../properties-controller/_accordion-tab'; import { DataItemSurface } from '../binding-details/_data-item-surface'; import { DataDashboardItemSurface } from '../surfaces/_base-item-surface'; import { IDataSectionInfo, IDataSectionSurface, IItemsCollection } from '../_interfaces'; export interface IGroupedItemsHolder { groupIndex: undefined | number; position: number; items: Array; } export declare class DataItemCollectionSurface implements IDisposable, IDataSectionSurface, IItemsCollection { itemSurface: DataDashboardItemSurface; sectionInfo: IDataSectionInfo; extendTabsHandler?: (tabs: AccordionTab[], model: any) => void; warning?: ko.Subscribable; private _disposables; dataItems: ko.ObservableArray; supportGroups: boolean; constructor(itemSurface: DataDashboardItemSurface, sectionInfo: IDataSectionInfo, extendTabsHandler?: (tabs: AccordionTab[], model: any) => void, warning?: ko.Subscribable); groups: ko.Computed>; get items(): ko.ObservableArray; private _addDataItem; addClick: () => void; private _removeDataItem; removeDataItem: (data: DataItemLink) => void; dataItemDisplayNameProvider: (dataItem: DataItem) => string; selectDataItem: (data: DataItemLink) => void; dataItemSurface: ko.Observable; newItemSample: ko.Observable; relocateItem(item: DataItemContainer | DataItemLink, placeholderIndex: number): void; isOlap(): boolean; errorFactory(link: DataItemLink): ko.Observable; template: string; dispose(): void; }