@hashicorp/design-system-components
Version:
Helios Design System Components
46 lines (45 loc) • 1.88 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import Component from '@glimmer/component';
import type { HdsAdvancedTableScope, HdsAdvancedTableThSortOrder } from './types.ts';
import type { HdsFormCheckboxBaseSignature } from '../form/checkbox/base.ts';
import type { HdsAdvancedTableSignature } from './index.ts';
import type { HdsAdvancedTableThSelectableSignature } from './th-selectable.ts';
import type HdsAdvancedTableRow from './models/row.ts';
export interface BaseHdsAdvancedTableTrSignature {
Args: {
selectableColumnKey?: HdsAdvancedTableSignature['Args']['selectableColumnKey'];
isLastRow?: boolean;
isSelectable?: boolean;
isSelected?: boolean;
isParentRow?: boolean;
data?: HdsAdvancedTableRow;
selectionAriaLabelSuffix?: string;
selectionKey?: string;
selectionScope?: HdsAdvancedTableScope;
sortBySelectedOrder?: HdsAdvancedTableThSortOrder;
depth?: number;
didInsert?: (checkbox: HdsFormCheckboxBaseSignature['Element'], selectionKey?: string) => void;
onSelectionChange?: (checkbox?: HdsFormCheckboxBaseSignature['Element'], selectionKey?: string) => void;
willDestroy?: () => void;
onClickSortBySelected?: HdsAdvancedTableThSelectableSignature['Args']['onClickSortBySelected'];
displayRow?: boolean;
hasStickyColumn?: boolean;
isStickyColumnPinned?: boolean;
};
Blocks: {
default?: [
{
orderedCells?: HdsAdvancedTableRow['cells'];
}
];
};
Element: HTMLDivElement;
}
export type HdsAdvancedTableTrSignature = BaseHdsAdvancedTableTrSignature;
export default class HdsAdvancedTableTr extends Component<HdsAdvancedTableTrSignature> {
get selectionKey(): string | undefined;
get classNames(): string;
}