import ExtensionColumnOptions from "../ExtensionColumnOptions"; import ExtensionOptions from "../ExtensionOptions"; import GridFormatter from "../GridFormatter"; import Extensions from "../Extensions"; import { Core, ElementWrapper, ILayoutGrid, DataTable, DataView, SortableTitlePlugin } from "../Core/index.js"; import Ext from "../../../tr-grid-util/es6/Ext.js"; import CollapsibleHeaderPlugin from "./CollapsibleHeaderPlugin.js"; import ResizableTitlePlugin from "./ResizableTitlePlugin.js"; import DragAndDropTitlePlugin from "./DragAndDropTitlePlugin.js"; import DraggableContentPlugin from "./DraggableContentPlugin.js"; import ColumnWidthAdjustingPlugin from "./ColumnWidthAdjustingPlugin.js"; import RowSelectionPlugin from "./RowSelectionPlugin.js"; import ColumnSelectionPlugin from "./ColumnSelectionPlugin.js"; declare namespace CompositeGrid { type ColumnFormatter = { render?: ((...params: any[]) => any), bind?: ((...params: any[]) => any), transform?: any }; type Options = ExtensionOptions & { columns?: (CompositeGrid.Column)[], rowHighlight?: boolean, rowSelection?: (any | boolean | "single"), columnSelection?: boolean, columnReorder?: boolean, pinnedColumnReorder?: boolean, columnResizability?: boolean, stepScroll?: boolean, rowHeight?: number, header?: CompositeGrid.HeaderOptions, freezeColumn?: number, autoHideScrollbar?: boolean, pinnedRightColumns?: number, sorting?: SortableTitlePlugin.Options, dataModel?: CompositeGrid.DataModel, extensions?: Extensions[], scrollbarParent?: Element, contentRightPadding?: number, contentBottomPadding?: number, linearWheelScrolling?: boolean, textSelect?: boolean, rowVirtualization?: boolean, columnVirtualization?: boolean, topFreezingCount?: (number|null|boolean), bottomFreezingCount?: (number|null), borders?: boolean, gridlines?: boolean, verticalLines?: boolean, contentVerticalLines?: boolean, horizontalLines?: boolean, dataConflationRate?: number }; type HeaderOptions = { rowHeight?: number }; type SortingOptions = { multicolumn?: boolean|number, multiColumn?: boolean|number, threeStatesSorting?: boolean, sortLogic?: { [key: string]: ((...params: any[]) => any) } }; type Column = ExtensionColumnOptions & { field: string, dataType?: string, tooltip?: (string|boolean|null), title?: string, id?: string, alignment?: ("l" | "left" | "r" | "right" | "c" | "center"), width?: number, size?: number, minWidth?: number, minSize?: number, visible?: boolean, resizable?: boolean, textSelect?: boolean, scalable?: boolean, formatter?: GridFormatter & CompositeGrid.ColumnFormatter, styles?: { [key: string]: string }, classes?: { [key: string]: string }, stationary?: boolean, sortable?: boolean, sortBy?: string, sortLogic?: DataTable.SortLogic, sortingLogic?: DataTable.SortLogic, sorter?: DataTable.SortLogic }; type DataModel = { fields?: (string)[], format?: string, data?: any[]|any }; } declare class CompositeGrid extends ElementWrapper { constructor(opt_initializer?: (Element|null), opt_model?: CompositeGrid.Options); public getModel(): any; public getColumns(): (any)[]|null; public addColumn(columnModel: any): void; public addColumns(columnModels: (any)[]): void; public insertColumn(atIndex: number, columnModel: any): void; public insertColumns(atIndex: number, columnModels: (any)[]): void; public setColumnFormatter(colIndex: number, formatter?: CompositeGrid.ColumnFormatter|((...params: any[]) => any)): void; public updateColumn(idOrIndex: number|string, columnModel: any): void; public setColumnName(colIndex: number, name: string): void; public setColumnVisible(index: number, visibility: boolean): void; public hideColumn(index: number, opt_hidden?: boolean): void; public hideColumns(colIndices: (number)[], hidden?: boolean): void; public showAllColumns(): void; public removeColumn(index: number): void; public removeColumns(colIds: (string|number)[]): void; public removeAllColumns(): void; public addColumnGroup(columnGroupModel: any): void; public removeColumnGroup(id: string): void; public updateColumnGroup(id: string, columnGroupModel: any): void; public autoResizeAllColumns(): void; public moveColumn(fromColIndex: number|(number)[], toColIndex: number): boolean; public freezeColumn(opt_colIndex?: number, pinnedRightColumns?: number): void; public pinColumn(columnList: string|(string)[]): void; public unpinColumn(columnList: string|(string)[]): void; public getPinnedColumns(): (string)[]|null; public restorePinnedColumns(pinnedColumns: (string)[]): void; public addData(data: any|(any|any[])[], format?: string): void; public getDataView(): DataView|null; public getDataTable(): DataTable|null; public getDataRows(rowIndices: (number)[]): (any)[]|null; public getColumnModel(colRef: number|string): any; public getColumnField(colRef: number|string): string; public getColumnFields(): (string)[]; public getColumnId(columnIndex: number): string; public getColumnIndex(columnId: string): number; public findColumnIndex(columnId: (string|number)[]|string, opt_includeNotFound?: boolean): (number)[]|number|null; public getColumnCount(): number; public getColumnDataType(colIndex: number): string; public expandAllGroups(): void; public collapseAllGroups(): void; public getGroupExpandingStates(): { [key: string]: boolean }|null; public restoreGroupExpandingStates(states: any, opt_default?: boolean): void; public sortColumn(columnRef: string|number, direction: string): void; public getSortingStates(): (any)[]|null; public restoreSortingStates(states: (any)[]): void; public clearAllSorting(): void; public nextPage(): boolean; public previousPage(): boolean; public goToPage(page: number): boolean; public getCurrentPage(): number; public getPageSize(): number; public getTotalPages(): number; public selectRows(rowIndex: number, length: number): void; public unselectRows(rowIndex: number, length: number): void; public clearSelection(): void; public getSelectedRows(): (number)[]|null; public getSelectedDataRows(): (any)[]|null; public getSection(sectionRef: Core.SectionReference): ILayoutGrid|null; public addHeaderSection(sectionName: string): ILayoutGrid|null; public removeHeaderSection(sectionName: string): void; public addFooterSection(sectionName: string): ILayoutGrid|null; public removeFooterSection(sectionName: string): void; public scrollToRow(rowIndex: number, opt_topOfTheView?: boolean): void; public scrollToColumn(colIndex: number, opt_leftOfView?: boolean): void; public getCoreGrid(): Core|null; public getRelativePosition(obj: ElementWrapper|Element|Event|MouseEvent): any; public registerFormatter(name: string, formatter: any): void; public update(): void; public dispose(): void; public hideRow(rowId: number | string): void; public hideRows(rowIds: number | string | (number | string)[]): void; public showRows(rowIds: number | string | (number | string)[], opt_show?: boolean): void; public unhideAllRows(): void; public hasHiddenRow(): boolean; public deactivateRendering(disabled?: boolean): void; public showLoadingMask(position?: string): void; public hideLoadingMask(): void; public isLayoutFrozen(): boolean; public freezeLayout(bool?: boolean): boolean; public unfreezeLayout(): void; public getScrollLeft(): number; public setScrollLeft(px: number): void; public getScrollTop(): number; public setScrollTop(px: number): void; public requestRowRefresh(): void; public getConfigObject(gridOptions?: any): any; public setPagingState(currentPage: number, totalRows: number): void; } declare function tgtColModel(colIndex: number, name: string): void; declare function dataModel(): DataView|null; declare function colCount(columnIndex: number): string; export default CompositeGrid; export { CompositeGrid };