import { NotificationController } from '../../common'; import { IExtension } from '../../common/common-interfaces'; import { DataSourceBrowser } from '../../common/_data-source-browser'; import { Dimension, Measure } from '../../model'; import { Dashboard } from '../../model/dashboard'; import { DashboardItem } from '../../model/items/dashboard-item'; import { BaseItemSurface } from './surfaces/_base-item-surface'; import { IDataSectionInfo } from './_interfaces'; export declare var SectionDescriptors: { HiddenDimensions: IDataSectionInfo; HiddenMeasures: IDataSectionInfo; SeriesDimension: IDataSectionInfo; Arguments: IDataSectionInfo; Values: IDataSectionInfo; FilterDimensions: IDataSectionInfo; SparklineArgument: IDataSectionInfo; SingleArgument: IDataSectionInfo; Value: IDataSectionInfo; Latitude: IDataSectionInfo; Longitude: IDataSectionInfo; TooltipDimensions: IDataSectionInfo; TooltipMeasures: IDataSectionInfo; Columns: IDataSectionInfo; Rows: IDataSectionInfo; Weight: IDataSectionInfo; Color: IDataSectionInfo; AttributeDimension: IDataSectionInfo; Argument: IDataSectionInfo; AxisXMeasure: IDataSectionInfo; AxisYMeasure: IDataSectionInfo; }; export interface ISurfaceConstructor { new (dashboardItem: DashboardItem, dashboardModel: Dashboard, dataSourceBrowser: DataSourceBrowser, notificationController: NotificationController, findExtension: (name: string) => IExtension): any; } export declare class SurfaceItemsFactory { private _itemsMap; register(dashboardItemType: string, surfaceTypeConstructor: ISurfaceConstructor): void; createSurfaceItem(dashboardItem: T, dashboardModel: Dashboard, dataSourceBrowser: DataSourceBrowser, notificationController: NotificationController, findExtension: (name: string) => IExtension): BaseItemSurface; } export declare var surfaceItemsFactory: SurfaceItemsFactory;