@hashicorp/design-system-components
Version:
Helios Design System Components
61 lines (60 loc) • 2.23 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import type { HdsAdvancedTableThReorderHandleSignature } from '../th-reorder-handle.ts';
import type HdsAdvancedTableModel from './table.ts';
import type { HdsDropdownToggleButtonSignature } from '../../dropdown/toggle/button.ts';
import type { HdsAdvancedTableCell, HdsAdvancedTableHorizontalAlignment, HdsAdvancedTableColumn as HdsAdvancedTableColumnType } from '../types';
export declare const DEFAULT_WIDTH = "1fr";
export declare const DEFAULT_MIN_WIDTH = "150px";
export declare const DEFAULT_MAX_WIDTH = "800px";
export default class HdsAdvancedTableColumn {
label: string;
align?: HdsAdvancedTableHorizontalAlignment;
isBeingDragged: boolean;
isExpandable?: boolean;
isSortable?: boolean;
isVisuallyHidden?: boolean;
key: string;
tooltip?: string;
sortingFunction?: (a: unknown, b: unknown) => number;
thElement?: HTMLDivElement;
reorderHandleElement?: HdsAdvancedTableThReorderHandleSignature['Element'];
thContextMenuToggleElement?: HdsDropdownToggleButtonSignature['Element'];
transientWidth?: `${number}px`;
width: string;
minWidth: `${number}px`;
maxWidth: `${number}px`;
originalWidth: string;
widthDebts: Record<string, number>;
table: HdsAdvancedTableModel;
get cells(): HdsAdvancedTableCell[];
get appliedWidth(): string;
get pxAppliedWidth(): number | undefined;
get pxTransientWidth(): number | undefined;
set pxTransientWidth(value: number | undefined);
get pxWidth(): number;
set pxWidth(value: number);
get pxMinWidth(): number;
get pxMaxWidth(): number;
get index(): number;
get isFirst(): boolean;
get isLast(): boolean;
get siblings(): {
previous?: HdsAdvancedTableColumn;
next?: HdsAdvancedTableColumn;
};
constructor(args: {
column: HdsAdvancedTableColumnType;
table: HdsAdvancedTableModel;
});
private collectWidthDebts;
private _sourceFundsForPayment;
private payWidthDebts;
private settleWidthDebts;
private _setWidthValues;
focusReorderHandle(): void;
setPxTransientWidth(newPxWidth: number): void;
restoreWidth(): void;
}