@hashicorp/design-system-components
Version:
Helios Design System Components
55 lines (54 loc) • 2.02 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import Component from '@glimmer/component';
import { type FocusableElement } from 'tabbable';
import type Owner from '@ember/owner';
import type { HdsAdvancedTableHorizontalAlignment, HdsAdvancedTableScope, HdsAdvancedTableExpandState } from './types.ts';
import { HdsAdvancedTableHorizontalAlignmentValues } from './types.ts';
export declare const ALIGNMENTS: string[];
export declare const DEFAULT_ALIGN = HdsAdvancedTableHorizontalAlignmentValues.Left;
export interface HdsAdvancedTableThSignature {
Args: {
align?: HdsAdvancedTableHorizontalAlignment;
isVisuallyHidden?: boolean;
scope?: HdsAdvancedTableScope;
tooltip?: string;
rowspan?: number;
colspan?: number;
newLabel?: string;
isExpandable?: boolean;
parentId?: string;
onClickToggle?: () => void;
isExpanded?: HdsAdvancedTableExpandState;
depth?: number;
didInsertExpandButton?: (button: HTMLButtonElement) => void;
willDestroyExpandButton?: (button: HTMLButtonElement) => void;
hasExpandAllButton?: boolean;
isStickyColumn?: boolean;
isStickyColumnPinned?: boolean;
};
Blocks: {
default?: [];
};
Element: HTMLDivElement;
}
export default class HdsAdvancedTableTh extends Component<HdsAdvancedTableThSignature> {
private _labelId;
private _element;
private _shouldTrapFocus;
constructor(owner: Owner, args: HdsAdvancedTableThSignature['Args']);
get scope(): HdsAdvancedTableScope;
get role(): string;
get align(): HdsAdvancedTableHorizontalAlignment;
get rowspan(): string;
get colspan(): string | undefined;
get paddingLeft(): string | undefined;
get classNames(): string;
onFocusTrapDeactivate(): void;
enableFocusTrap(): void;
getInitialFocus(): FocusableElement | undefined;
setElement(element: HTMLDivElement): void;
private _manageExpandButton;
}