gridApi.d.ts 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364
  1. import { ColumnApi } from "./columnController/columnApi";
  2. import { GridPanel } from "./gridPanel/gridPanel";
  3. import { ColDef, ColGroupDef, IAggFunc } from "./entities/colDef";
  4. import { RowNode } from "./entities/rowNode";
  5. import { Column } from "./entities/column";
  6. import { GridCore } from "./gridCore";
  7. import { IRowModel } from "./interfaces/iRowModel";
  8. import { CellRange, CellRangeParams } from "./interfaces/iRangeController";
  9. import { CellPosition } from "./entities/cellPosition";
  10. import { IViewportDatasource } from "./interfaces/iViewportDatasource";
  11. import { IFilterComp } from "./interfaces/iFilter";
  12. import { CsvExportParams } from "./interfaces/exportParams";
  13. import { ExcelExportParams } from "./interfaces/iExcelCreator";
  14. import { IDatasource } from "./interfaces/iDatasource";
  15. import { IServerSideDatasource } from "./interfaces/iServerSideDatasource";
  16. import { AlignedGridsService } from "./alignedGridsService";
  17. import { AgEvent, ColumnEventType } from "./events";
  18. import { ICellRendererComp } from "./rendering/cellRenderers/iCellRenderer";
  19. import { ICellEditorComp } from "./interfaces/iCellEditor";
  20. import { HeaderRootComp } from "./headerRendering/headerRootComp";
  21. import { IStatusPanelComp } from "./interfaces/iStatusPanel";
  22. import { SideBarDef } from "./entities/sideBar";
  23. import { ChartModel } from "./interfaces/IChartService";
  24. import { ChartRef, ProcessChartOptionsParams } from "./entities/gridOptions";
  25. import { ChartOptions, ChartType } from "./interfaces/iChartOptions";
  26. import { IToolPanel } from "./interfaces/iToolPanel";
  27. import { RowNodeTransaction } from "./interfaces/rowNodeTransaction";
  28. import { RowDataTransaction } from "./interfaces/rowDataTransaction";
  29. import { RowDropZoneParams, RowDropZoneEvents } from "./gridPanel/rowDragFeature";
  30. export interface StartEditingCellParams {
  31. rowIndex: number;
  32. colKey: string | Column;
  33. rowPinned?: string;
  34. keyPress?: number;
  35. charPress?: string;
  36. }
  37. export interface GetCellsParams {
  38. rowNodes?: RowNode[];
  39. columns?: (string | Column)[];
  40. }
  41. export interface RefreshCellsParams extends GetCellsParams {
  42. force?: boolean;
  43. suppressFlash?: boolean;
  44. }
  45. export interface FlashCellsParams extends GetCellsParams {
  46. flashDelay?: number;
  47. fadeDelay?: number;
  48. }
  49. export interface GetCellRendererInstancesParams extends GetCellsParams {
  50. }
  51. export interface GetCellEditorInstancesParams extends GetCellsParams {
  52. }
  53. export interface RedrawRowsParams {
  54. rowNodes?: RowNode[];
  55. }
  56. export interface CreateRangeChartParams {
  57. cellRange: CellRangeParams;
  58. chartType: ChartType;
  59. chartPalette?: string;
  60. chartContainer?: HTMLElement;
  61. suppressChartRanges?: boolean;
  62. aggFunc?: string | IAggFunc;
  63. processChartOptions?: (params: ProcessChartOptionsParams) => ChartOptions<any>;
  64. }
  65. export interface CreatePivotChartParams {
  66. chartType: ChartType;
  67. chartPalette?: string;
  68. chartContainer?: HTMLElement;
  69. processChartOptions?: (params: ProcessChartOptionsParams) => ChartOptions<any>;
  70. }
  71. export interface DetailGridInfo {
  72. api?: GridApi;
  73. columnApi?: ColumnApi;
  74. id: string;
  75. }
  76. export declare class GridApi {
  77. private immutableService;
  78. private csvCreator;
  79. private excelCreator;
  80. private rowRenderer;
  81. private filterManager;
  82. private columnController;
  83. private selectionController;
  84. private gridOptionsWrapper;
  85. private valueService;
  86. private alignedGridsService;
  87. private eventService;
  88. private pinnedRowModel;
  89. private context;
  90. private rowModel;
  91. private sortController;
  92. private paginationProxy;
  93. private focusController;
  94. private dragAndDropService;
  95. private rangeController;
  96. private clipboardService;
  97. private aggFuncService;
  98. private menuFactory;
  99. private contextMenuFactory;
  100. private cellRendererFactory;
  101. private valueCache;
  102. private animationFrameService;
  103. private statusBarService;
  104. private chartService;
  105. private undoRedoService;
  106. private gridPanel;
  107. private gridCore;
  108. private headerRootComp;
  109. private clientSideRowModel;
  110. private infiniteRowModel;
  111. private serverSideRowModel;
  112. private detailGridInfoMap;
  113. private destroyCalled;
  114. registerGridComp(gridPanel: GridPanel): void;
  115. registerGridCore(gridCore: GridCore): void;
  116. registerHeaderRootComp(headerRootComp: HeaderRootComp): void;
  117. private init;
  118. /** Used internally by grid. Not intended to be used by the client. Interface may change between releases. */
  119. __getAlignedGridService(): AlignedGridsService;
  120. addDetailGridInfo(id: string, gridInfo: DetailGridInfo): void;
  121. removeDetailGridInfo(id: string): void;
  122. getDetailGridInfo(id: string): DetailGridInfo;
  123. forEachDetailGridInfo(callback: (gridInfo: DetailGridInfo, index: number) => void): void;
  124. getDataAsCsv(params?: CsvExportParams): string;
  125. exportDataAsCsv(params?: CsvExportParams): void;
  126. getDataAsExcel(params?: ExcelExportParams): string;
  127. exportDataAsExcel(params?: ExcelExportParams): void;
  128. /** @deprecated */
  129. setEnterpriseDatasource(datasource: IServerSideDatasource): void;
  130. setServerSideDatasource(datasource: IServerSideDatasource): void;
  131. setDatasource(datasource: IDatasource): void;
  132. setViewportDatasource(viewportDatasource: IViewportDatasource): void;
  133. setRowData(rowData: any[]): void;
  134. /** @deprecated */
  135. setFloatingTopRowData(rows: any[]): void;
  136. /** @deprecated */
  137. setFloatingBottomRowData(rows: any[]): void;
  138. /** @deprecated */
  139. getFloatingTopRowCount(): number;
  140. /** @deprecated */
  141. getFloatingBottomRowCount(): number;
  142. /** @deprecated */
  143. getFloatingTopRow(index: number): RowNode;
  144. /** @deprecated */
  145. getFloatingBottomRow(index: number): RowNode;
  146. setPinnedTopRowData(rows: any[]): void;
  147. setPinnedBottomRowData(rows: any[]): void;
  148. getPinnedTopRowCount(): number;
  149. getPinnedBottomRowCount(): number;
  150. getPinnedTopRow(index: number): RowNode;
  151. getPinnedBottomRow(index: number): RowNode;
  152. setColumnDefs(colDefs: (ColDef | ColGroupDef)[], source?: ColumnEventType): void;
  153. setAutoGroupColumnDef(colDef: ColDef, source?: ColumnEventType): void;
  154. expireValueCache(): void;
  155. getVerticalPixelRange(): {
  156. top: number;
  157. bottom: number;
  158. };
  159. getHorizontalPixelRange(): {
  160. left: number;
  161. right: number;
  162. };
  163. setAlwaysShowVerticalScroll(show: boolean): void;
  164. refreshToolPanel(): void;
  165. refreshCells(params?: RefreshCellsParams): void;
  166. flashCells(params?: FlashCellsParams): void;
  167. redrawRows(params?: RedrawRowsParams): void;
  168. timeFullRedraw(count?: number): void;
  169. /** @deprecated */
  170. refreshView(): void;
  171. /** @deprecated */
  172. refreshRows(rowNodes: RowNode[]): void;
  173. /** @deprecated */
  174. rowDataChanged(rows: any): void;
  175. /** @deprecated */
  176. softRefreshView(): void;
  177. /** @deprecated */
  178. refreshGroupRows(): void;
  179. setFunctionsReadOnly(readOnly: boolean): void;
  180. refreshHeader(): void;
  181. isAnyFilterPresent(): boolean;
  182. /** @deprecated */
  183. isAdvancedFilterPresent(): boolean;
  184. isColumnFilterPresent(): boolean;
  185. isQuickFilterPresent(): boolean;
  186. getModel(): IRowModel;
  187. setRowNodeExpanded(rowNode: RowNode, expanded: boolean): void;
  188. onGroupExpandedOrCollapsed(deprecated_refreshFromIndex?: any): void;
  189. refreshInMemoryRowModel(step?: string): any;
  190. refreshClientSideRowModel(step?: string): any;
  191. isAnimationFrameQueueEmpty(): boolean;
  192. getRowNode(id: string): RowNode;
  193. getSizesForCurrentTheme(): {
  194. rowHeight: number;
  195. headerHeight: number;
  196. };
  197. expandAll(): void;
  198. collapseAll(): void;
  199. getToolPanelInstance(id: string): IToolPanel;
  200. addVirtualRowListener(eventName: string, rowIndex: number, callback: Function): void;
  201. addRenderedRowListener(eventName: string, rowIndex: number, callback: Function): void;
  202. setQuickFilter(newFilter: any): void;
  203. selectIndex(index: any, tryMulti: any, suppressEvents: any): void;
  204. deselectIndex(index: number, suppressEvents?: boolean): void;
  205. selectNode(node: RowNode, tryMulti?: boolean, suppressEvents?: boolean): void;
  206. deselectNode(node: RowNode, suppressEvents?: boolean): void;
  207. selectAll(): void;
  208. deselectAll(): void;
  209. selectAllFiltered(): void;
  210. deselectAllFiltered(): void;
  211. recomputeAggregates(): void;
  212. sizeColumnsToFit(): void;
  213. showLoadingOverlay(): void;
  214. showNoRowsOverlay(): void;
  215. hideOverlay(): void;
  216. isNodeSelected(node: any): any;
  217. getSelectedNodesById(): {
  218. [nodeId: number]: RowNode;
  219. };
  220. getSelectedNodes(): RowNode[];
  221. getSelectedRows(): any[];
  222. getBestCostNodeSelection(): any;
  223. getRenderedNodes(): RowNode[];
  224. ensureColIndexVisible(index: any): void;
  225. ensureColumnVisible(key: string | Column): void;
  226. ensureIndexVisible(index: any, position?: string | null): void;
  227. ensureNodeVisible(comparator: any, position?: string | null): void;
  228. forEachLeafNode(callback: (rowNode: RowNode) => void): void;
  229. forEachNode(callback: (rowNode: RowNode, index: number) => void): void;
  230. forEachNodeAfterFilter(callback: (rowNode: RowNode, index: number) => void): void;
  231. forEachNodeAfterFilterAndSort(callback: (rowNode: RowNode, index: number) => void): void;
  232. getFilterApiForColDef(colDef: any): any;
  233. getFilterInstance(key: string | Column, callback?: (filter: IFilterComp) => void): IFilterComp;
  234. getFilterApi(key: string | Column): IFilterComp;
  235. destroyFilter(key: string | Column): void;
  236. getStatusPanel(key: string): IStatusPanelComp;
  237. getColumnDef(key: string | Column): ColDef;
  238. onFilterChanged(): void;
  239. onSortChanged(): void;
  240. setSortModel(sortModel: any, source?: ColumnEventType): void;
  241. getSortModel(): {
  242. colId: string;
  243. sort: string;
  244. }[];
  245. setFilterModel(model: any): void;
  246. getFilterModel(): {
  247. [key: string]: any;
  248. };
  249. getFocusedCell(): CellPosition;
  250. clearFocusedCell(): void;
  251. setFocusedCell(rowIndex: number, colKey: string | Column, floating?: string): void;
  252. setSuppressRowDrag(value: boolean): void;
  253. setSuppressMoveWhenRowDragging(value: boolean): void;
  254. setSuppressRowClickSelection(value: boolean): void;
  255. addRowDropZone(params: RowDropZoneParams): void;
  256. removeRowDropZone(params: RowDropZoneParams): void;
  257. getRowDropZoneParams(events: RowDropZoneEvents): RowDropZoneParams;
  258. setHeaderHeight(headerHeight: number): void;
  259. setGridAutoHeight(gridAutoHeight: boolean): void;
  260. setDomLayout(domLayout: string): void;
  261. setEnableCellTextSelection(selectable: boolean): void;
  262. setGroupHeaderHeight(headerHeight: number): void;
  263. setFloatingFiltersHeight(headerHeight: number): void;
  264. setPivotGroupHeaderHeight(headerHeight: number): void;
  265. setPivotHeaderHeight(headerHeight: number): void;
  266. isSideBarVisible(): boolean;
  267. setSideBarVisible(show: boolean): void;
  268. setSideBarPosition(position: 'left' | 'right'): void;
  269. showToolPanel(show: boolean): void;
  270. openToolPanel(key: string): void;
  271. closeToolPanel(): void;
  272. getOpenedToolPanel(): string;
  273. getSideBar(): SideBarDef;
  274. setSideBar(def: SideBarDef): void;
  275. setSuppressClipboardPaste(value: boolean): void;
  276. isToolPanelShowing(): boolean;
  277. doLayout(): void;
  278. resetRowHeights(): void;
  279. setGroupRemoveSingleChildren(value: boolean): void;
  280. setGroupRemoveLowestSingleChildren(value: boolean): void;
  281. onRowHeightChanged(): void;
  282. getValue(colKey: string | Column, rowNode: RowNode): any;
  283. addEventListener(eventType: string, listener: Function): void;
  284. addGlobalListener(listener: Function): void;
  285. removeEventListener(eventType: string, listener: Function): void;
  286. removeGlobalListener(listener: Function): void;
  287. dispatchEvent(event: AgEvent): void;
  288. destroy(): void;
  289. resetQuickFilter(): void;
  290. getRangeSelections(): any;
  291. getCellRanges(): CellRange[];
  292. camelCaseToHumanReadable(camelCase: string): string;
  293. addRangeSelection(deprecatedNoLongerUsed: any): void;
  294. addCellRange(params: CellRangeParams): void;
  295. clearRangeSelection(): void;
  296. undoCellEditing(): void;
  297. redoCellEditing(): void;
  298. getChartModels(): ChartModel[];
  299. createRangeChart(params: CreateRangeChartParams): ChartRef | undefined;
  300. createPivotChart(params: CreatePivotChartParams): ChartRef | undefined;
  301. copySelectedRowsToClipboard(includeHeader: boolean, columnKeys?: (string | Column)[]): void;
  302. copySelectedRangeToClipboard(includeHeader: boolean): void;
  303. copySelectedRangeDown(): void;
  304. showColumnMenuAfterButtonClick(colKey: string | Column, buttonElement: HTMLElement): void;
  305. showColumnMenuAfterMouseClick(colKey: string | Column, mouseEvent: MouseEvent | Touch): void;
  306. hidePopupMenu(): void;
  307. setPopupParent(ePopupParent: HTMLElement): void;
  308. tabToNextCell(): boolean;
  309. tabToPreviousCell(): boolean;
  310. getCellRendererInstances(params?: GetCellRendererInstancesParams): ICellRendererComp[];
  311. getCellEditorInstances(params?: GetCellEditorInstancesParams): ICellEditorComp[];
  312. getEditingCells(): CellPosition[];
  313. stopEditing(cancel?: boolean): void;
  314. startEditingCell(params: StartEditingCellParams): void;
  315. addAggFunc(key: string, aggFunc: IAggFunc): void;
  316. addAggFuncs(aggFuncs: {
  317. [key: string]: IAggFunc;
  318. }): void;
  319. clearAggFuncs(): void;
  320. applyTransaction(rowDataTransaction: RowDataTransaction): RowNodeTransaction;
  321. /** @deprecated */
  322. updateRowData(rowDataTransaction: RowDataTransaction): RowNodeTransaction;
  323. applyTransactionAsync(rowDataTransaction: RowDataTransaction, callback?: (res: RowNodeTransaction) => void): void;
  324. /** @deprecated */
  325. batchUpdateRowData(rowDataTransaction: RowDataTransaction, callback?: (res: RowNodeTransaction) => void): void;
  326. insertItemsAtIndex(index: number, items: any[], skipRefresh?: boolean): void;
  327. removeItems(rowNodes: RowNode[], skipRefresh?: boolean): void;
  328. addItems(items: any[], skipRefresh?: boolean): void;
  329. refreshVirtualPageCache(): void;
  330. refreshInfinitePageCache(): void;
  331. refreshInfiniteCache(): void;
  332. purgeVirtualPageCache(): void;
  333. purgeInfinitePageCache(): void;
  334. purgeInfiniteCache(): void;
  335. /** @deprecated */
  336. purgeEnterpriseCache(route?: string[]): void;
  337. purgeServerSideCache(route?: string[]): void;
  338. getVirtualRowCount(): number;
  339. getInfiniteRowCount(): number;
  340. isMaxRowFound(): boolean;
  341. setVirtualRowCount(rowCount: number, maxRowFound?: boolean): void;
  342. setInfiniteRowCount(rowCount: number, maxRowFound?: boolean): void;
  343. getVirtualPageState(): any;
  344. getInfinitePageState(): any;
  345. getCacheBlockState(): any;
  346. checkGridSize(): void;
  347. getFirstRenderedRow(): number;
  348. getFirstDisplayedRow(): number;
  349. getLastRenderedRow(): number;
  350. getLastDisplayedRow(): number;
  351. getDisplayedRowAtIndex(index: number): RowNode;
  352. getDisplayedRowCount(): number;
  353. paginationIsLastPageFound(): boolean;
  354. paginationGetPageSize(): number;
  355. paginationSetPageSize(size: number): void;
  356. paginationGetCurrentPage(): number;
  357. paginationGetTotalPages(): number;
  358. paginationGetRowCount(): number;
  359. paginationGoToNextPage(): void;
  360. paginationGoToPreviousPage(): void;
  361. paginationGoToFirstPage(): void;
  362. paginationGoToLastPage(): void;
  363. paginationGoToPage(page: number): void;
  364. }