import { ComponentOptionsMixin } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { DefineComponent } from 'vue';
import { PublicProps } from 'vue';
import { StashColorNamesWithShades } from '@leaflink/stash-types/colors';
import { VNode } from 'vue';

declare const __VLS_component: DefineComponent<TableRowProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
"update:isSelected": (isChecked: boolean | (string | number)[]) => any;
"update:isExpanded": (isExpanded: boolean) => any;
}, string, PublicProps, Readonly<TableRowProps> & Readonly<{
"onUpdate:isSelected"?: ((isChecked: boolean | (string | number)[]) => any) | undefined;
"onUpdate:isExpanded"?: ((isExpanded: boolean) => any) | undefined;
}>, {
isExpanded: boolean;
hideExpansionDivider: boolean;
isSelected: boolean;
isSelectDisabled: boolean;
accentColor: StashColorNamesWithShades;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;

declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<{
        default(props: {
            isRowExpanded?: boolean;
            toggleExpand: (value?: boolean) => void;
        }): VNode[];
        expansion(): unknown[];
    }> & {
        default(props: {
            isRowExpanded?: boolean;
            toggleExpand: (value?: boolean) => void;
        }): VNode[];
        expansion(): unknown[];
    };
    refs: {};
    rootEl: any;
};

declare type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;

declare type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};

declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;

declare interface TableRowProps {
    hideExpansionDivider?: boolean;
    isExpanded?: boolean;
    isSelected?: boolean;
    isSelectDisabled?: boolean;
    /**
     * The accent color for the TableRow.
     */
    accentColor?: StashColorNamesWithShades;
}

export { }
