import { InteractionManager, Rectangle } from "pixi.js"; import { DBase, DBaseOptions } from "./d-base"; import { DContentOptions } from "./d-content"; import { DFocusable } from "./d-controller-focus"; import { DPane, DPaneOptions, DThemePane } from "./d-pane"; import { DTableBody, DTableBodyOptions } from "./d-table-body"; import { DTableCategory, DTableCategoryOptions } from "./d-table-category"; import { DTableColumn, DTableColumnOptions } from "./d-table-column"; import { DTableData, DTableDataOptions } from "./d-table-data"; import { DTableDataList, DTableDataListOptions } from "./d-table-data-list"; import { DTableHeader, DTableHeaderOptions } from "./d-table-header"; import { DTableScrollBar } from "./d-table-scrollbar"; import { DPaneScrollBarOptions } from "./d-pane-scrollbar"; import { DTableColumnContainer } from "./d-table-column-container"; import { DTableCategoryContainer } from "./d-table-category-container"; export interface DTableOptions = DTableDataList, THEME extends DThemeTable = DThemeTable, CONTENT_OPTIONS extends DBaseOptions = DContentOptions> extends DPaneOptions { columns: DTableColumnOptions[]; category?: DTableCategoryOptions; header?: DTableHeaderOptions; body?: DTableBodyOptions; data?: ROW[] | DTableDataListOptions | DATA; } export interface DThemeTable extends DThemePane { } export declare class DTable = DTableDataList, THEME extends DThemeTable = DThemeTable, CONTENT_OPTIONS extends DBaseOptions = DContentOptions, OPTIONS extends DTableOptions = DTableOptions> extends DPane { protected _column?: DTableColumnContainer; protected _category?: DTableCategoryContainer; protected _headerOffset?: number; protected _header?: DTableHeader | null; protected _bodyOffset?: number; protected _body?: DTableBody; constructor(options?: OPTIONS); get column(): DTableColumnContainer; protected newColumn(): DTableColumnContainer; get columns(): DTableColumn[]; get frozen(): number; get category(): DTableCategoryContainer; protected newCategory(): DTableCategoryContainer; get categories(): DTableCategory[]; protected initContent(content: DBase): void; protected onContentChange(): void; onResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void; protected onDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean; protected newScrollBar(options?: DPaneScrollBarOptions): DTableScrollBar; protected newContent(options?: CONTENT_OPTIONS): DBase; protected getHeaderOffset(): number; protected newHeaderOffset(): number; get header(): DTableHeader | null; protected hasHeader(options?: OPTIONS): boolean; protected newHeader(): DTableHeader | null; protected getBodyOffset(): number; protected newBodyOffset(): number; get body(): DTableBody; protected newBody(): DTableBody; protected toBodyOptions(options?: DTableBodyOptions, data?: ROW[] | DTableDataOptions | DATA): DTableBodyOptions; get data(): DATA; protected getFocusedChildClippingRect(focused: DBase, contentX: number, contentY: number, contentWidth: number, contentHeight: number, width: number, height: number, result: Rectangle): Rectangle; protected toFrozenCellX(cell: DBase): number; protected onKeyDown(e: KeyboardEvent): boolean; protected onKeyDownArrowUpOrDown(e: KeyboardEvent, isDown: boolean): boolean; protected toCell(focused: DFocusable): DBase | null; protected getType(): string; }