import { DBase } from "./d-base"; import { DTableBodyCell, DTableBodyCellOnChange } from "./d-table-body-cell"; import { DTableBodyCellOptions } from "./d-table-body-cell-options"; import { DTableColumn } from "./d-table-column"; import { DTableDataSupplimental } from "./d-table-data"; import { DTableDataSelectionType } from "./d-table-data-selection"; import { DTableRow, DTableRowOptions, DThemeTableRow } from "./d-table-row"; export interface DTableBodyRowSelectionOptions { type?: DTableDataSelectionType; } export interface DTableBodyRowOptions extends DTableRowOptions { height?: number; cell?: DTableBodyCellOptions; selection?: DTableBodyRowSelectionOptions; } export interface DThemeTableBodyRow extends DThemeTableRow { } export type DTableBodyRowOnChange = (newValue: VALUE, oldValue: VALUE, row: ROW, rowIndex: number, columnIndex: number, column: DTableColumn, emitter: EMITTER) => void; export declare class DTableBodyRow = DTableBodyRowOptions> extends DTableRow, THEME, OPTIONS> { protected _value?: ROW; protected _supplimental?: DTableDataSupplimental | null; protected _index: number; protected _onChange: DTableBodyRowOnChange; protected _onCellChangeBound: DTableBodyCellOnChange; protected _columnIndexToCellOptions: Map>; constructor(onChange: DTableBodyRowOnChange, isEven: boolean, columnIndexToCellOptions: Map>, columns: DTableColumn[], frozen: number, options: OPTIONS); protected onCellChange(newValue: unknown, oldValue: unknown, row: ROW, rowIndex: number, columnIndex: number, column: DTableColumn): void; protected newCell(columnIndex: number, column: DTableColumn, columns: DTableColumn[], options?: OPTIONS): DBase; protected newCellEditable(columnIndex: number, column: DTableColumn, onChange: DTableBodyCellOnChange, options: any): DBase; protected newCellUnediable(columnIndex: number, column: DTableColumn, onChange: DTableBodyCellOnChange, options: any): DBase; protected newCellSelect(columnIndex: number, column: DTableColumn, onChange: DTableBodyCellOnChange, options: any): DBase; protected newCellAction(columnIndex: number, column: DTableColumn, onChange: DTableBodyCellOnChange, options: any): DBase; protected toCellOptions(columnIndex: number, column: DTableColumn, options?: OPTIONS): DTableBodyCellOptions; protected getType(): string; /** * Returns a row data if exists. * Returns undefined if a row data does not exit. * * @returns a row data or undefined. */ get value(): ROW | undefined; /** * Returns a row index if a row data exists. * Returns -1 if a row data does not exit. * * @returns a row index or -1. */ get index(): number; protected isCell(target: any): target is DTableBodyCell; set(value: ROW, supplimental: DTableDataSupplimental | null, rowIndex: number, forcibly?: boolean): void; protected onSet(value: ROW, rowIndex: number): void; unset(forcibly?: boolean): void; protected onUnset(): void; protected getContentPositionX(): number; }