import type { CSSResultGroup } from 'lit'; import DSACheckbox from '../checkbox/checkbox'; import DSAIconButton from '../icon-button/icon-button'; import DSATableCell from '../table-cell/table-cell'; import { ShoelaceElement } from '../../internal/shoelace-element'; import { LocalizeController } from '../../utilities/localize'; /** * @summary The table row defines a row of cells in a [table](/components/table) * @documentation https://dsa.service-public-autonomie.fr/latest/librairie-webcomponents/tableau-table/tableau-table/web-Dr8U0zqh * * @dependency dsa-checkbox * @dependency dsa-icon-button * * @slot Content to be placed inside the table row * * @event dsa-table-row-change-selection - Emit when row is selected or unselected upon interaction with the checkbox. * @event dsa-table-row-click - Emitted when the user clicks on the table row. */ export default class DSATableRow extends ShoelaceElement { static styles: CSSResultGroup; static dependencies: { 'dsa-table-cell': typeof DSATableCell; 'dsa-checkbox': typeof DSACheckbox; 'dsa-icon-button': typeof DSAIconButton; }; protected readonly localize: LocalizeController; checkbox: DSACheckbox; expandedButton: DSAIconButton; reorderButton: DSAIconButton; showExpandButton: boolean; private ignoreReorderClick; private dragImageCloneContainer; private get isFirefox(); /** The table-row's role */ role: string; /** The table-row's size */ size: 'small' | 'medium' | 'large'; /** Draws the table-row in a selected state. */ selected: boolean; /** Draws the row in a expanded state to show content underneath */ expandable: boolean; /** `true` if this row can be rearranged by the user. */ reorderable: boolean; /** `true` if this row is currently in rearrange mode. */ rearranging: boolean; /** `true` if row expanded is draw */ expanded: boolean; /** * Accessible label when the expand button is closed, which displays row details when clicked. * If not specified, a default label is used. */ showExpandedLabel: string; /** * Accessible label when the expand button is opened, which hides row details when clicked. * If not specified, a default label is used. */ hideExpandedLabel: string; /** The `aria-label` attribute for the `` for selection. */ selectionLabel: string; /** * The `name` attribute for the `` for selection. * If present, this table row will be a selectable one. */ selectionName: string; /** The `value` attribute for the `` for selection. */ selectionValue: string; /** The `aria-label` attribute for the reorder button. */ reorderLabel: string; /** Displays a loading state. */ loading: boolean; connectedCallback(): void; disconnectedCallback(): void; private handleRowClick; protected handleCheckboxChange(e: Event): void; private emitReorderToggle; private emitReorderMove; private handleReorderKeyDown; private handleReorderClick; private handleReorderBlur; private handleReorderDragStart; private handleReorderDragEnd; private createDragImageClone; private cleanupDragImageClone; protected renderReorderButton(): import("lit").TemplateResult<1>; protected renderFirstCell(): import("lit").TemplateResult<1>; private handleExpandClick; protected renderExpandButton(): import("lit").TemplateResult<1>; handleExpandableChange(): void; handleExpandedChange(): void; handleSelectedChange(): void; render(): import("lit").TemplateResult<1>; private get selectorExpandedRow(); } declare global { interface HTMLElementTagNameMap { 'dsa-table-row': DSATableRow; } }