import { TableRowBaseElement } from './abstracts/TableRowBaseElement';
import type { ITableBodyRowElementProps } from './ITableBodyRowElementProps';
declare const TableBodyRowElement_base: (abstract new (...args: Array<any>) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Valueable").IValueableProps<unknown>) & (abstract new (...args: Array<any>) => import("../../../Behaviors/Selectable").ISelectableProps & import("../../../Behaviors/Selectable").ISelectableEvents & import("../../../Behaviors/Selectable").ISelectable) & typeof TableRowBaseElement & import("../../../Behaviors/Themeable").IThemeableCtor;
/**
 * Table Body Row - A selectable horizontal grouping of body cells within a table body section.
 *
 * @element mosaik-table-body-row
 *
 * @slot - The default slot for body cells.
 *
 * @cssprop {String} --table-body-row-border-color - The row border color CSS custom property.
 * @cssprop {String} --table-body-row-border-radius - The row border radius CSS custom property.
 * @cssprop {String} --table-body-row-border-style - The row border style CSS custom property.
 * @cssprop {String} --table-body-row-border-width - The row border width CSS custom property.
 * @cssprop {String} --table-body-row-font-family - The row font family CSS custom property.
 * @cssprop {String} --table-body-row-font-letter-spacing - The row font letter spacing CSS custom property.
 * @cssprop {String} --table-body-row-font-line-height - The row font line height CSS custom property.
 * @cssprop {String} --table-body-row-font-size - The row font size CSS custom property.
 * @cssprop {String} --table-body-row-font-text-decoration - The row font text decoration CSS custom property.
 * @cssprop {String} --table-body-row-font-text-transform - The row font text transform CSS custom property.
 * @cssprop {String} --table-body-row-font-weight - The row font weight CSS custom property.
 * @cssprop {String} --table-body-row-foreground-color - The row foreground color CSS custom property.
 * @cssprop {String} --table-body-row-gap - The row gap CSS custom property.
 * @cssprop {String} --table-body-row-padding-bottom - The row padding bottom CSS custom property.
 * @cssprop {String} --table-body-row-padding-left - The row padding left CSS custom property.
 * @cssprop {String} --table-body-row-padding-right - The row padding right CSS custom property.
 * @cssprop {String} --table-body-row-padding-top - The row padding top CSS custom property.
 * @cssprop {String} --table-body-row-shadow - The row shadow CSS custom property.
 * @cssprop {String} --table-body-row-shadow-blur - The row shadow blur CSS custom property.
 * @cssprop {String} --table-body-row-shadow-color - The row shadow color CSS custom property.
 * @cssprop {String} --table-body-row-shadow-offset-x - The row shadow offset x CSS custom property.
 * @cssprop {String} --table-body-row-shadow-offset-y - The row shadow offset y CSS custom property.
 * @cssprop {String} --table-body-row-shadow-spread - The row shadow spread CSS custom property.
 * @cssprop {String} --table-body-row-transition-duration - The row transition duration CSS custom property.
 * @cssprop {String} --table-body-row-transition-mode - The row transition mode CSS custom property.
 * @cssprop {String} --table-body-row-transition-property - The row transition property CSS custom property.
 * @cssprop {String} --table-body-row-translate - The row translate CSS custom property.
 *
 * @fires selected {SelectedEvent} - Fired when the row is selected.
 * @fires deselected {DeselectedEvent} - Fired when the row is deselected.
 *
 * @example
 * Selectable body row inside a table body:
 * ```html
 * <mosaik-table selection-mode="single" selection-type="row">
 *   <mosaik-table-body>
 *     <mosaik-table-body-row>
 *       <mosaik-table-body-cell text="Alice"></mosaik-table-body-cell>
 *       <mosaik-table-body-cell text="alice@example.com"></mosaik-table-body-cell>
 *     </mosaik-table-body-row>
 *   </mosaik-table-body>
 * </mosaik-table>
 * ```
 *
 * @public
 */
export declare class TableBodyRowElement extends TableBodyRowElement_base implements ITableBodyRowElementProps {
    private readonly _inheritance;
    private _clickSubscription;
    private _lastSelectionMode;
    private _lastSelectionType;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `is` property.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * @public
     * @override
     */
    disconnectedCallback(): void;
    /**
     * @protected
     * @override
     */
    protected onApplyTemplate(): void;
    /**
     * Re-evaluates the click handler when inherited selection properties change.
     *
     * Note: `selectionMode` and `selectionType` are inherited via context, not
     * declared Lit properties. Lit's `requestUpdate` can silently skip updates
     * for undeclared properties, so we compare with tracked values.
     *
     * @protected
     * @override
     */
    protected updated(changedProperties: Map<PropertyKey, unknown>): void;
    /**
     * Sets up or tears down the click handler based on the inherited selection config.
     *
     * @private
     */
    private updateSelectionClickHandler;
    /**
     * Handles click events for row selection.
     *
     * @private
     */
    private handleRowClick;
}
/**
 * @public
 */
export declare namespace TableBodyRowElement {
    type Props = ITableBodyRowElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-table-body-row': TableBodyRowElement;
    }
}
export {};
//# sourceMappingURL=TableBodyRowElement.d.ts.map