import * as react_jsx_runtime from 'react/jsx-runtime';
import * as class_variance_authority_types from 'class-variance-authority/types';
import * as React from 'react';
import { VariantProps } from 'class-variance-authority';

declare const tableSlotCellVariants: (props?: ({
    variant?: "number" | "default" | "progress" | "icon" | "checkbox" | "badge" | "media" | "avatar" | "empty" | null | undefined;
    state?: "default" | "selected" | "failed" | null | undefined;
} & class_variance_authority_types.ClassProp) | undefined) => string;
interface TableSlotCellBaseProps extends Omit<React.ComponentProps<"div">, "children">, VariantProps<typeof tableSlotCellVariants> {
}
interface TableSlotCellDefaultProps extends TableSlotCellBaseProps {
    variant?: "default";
    label?: string;
    leadIcon?: React.ReactNode;
    tailIcon?: React.ReactNode;
}
interface TableSlotCellAvatarProps extends TableSlotCellBaseProps {
    variant: "avatar";
    label?: string;
    avatarSrc?: string;
    avatarFallback?: string;
    tailIcon?: React.ReactNode;
}
interface TableSlotCellMediaProps extends TableSlotCellBaseProps {
    variant: "media";
    label?: string;
    description?: string;
    thumbnailSrc?: string;
    thumbnailAlt?: string;
    thumbnailClassName?: string;
    tailIcon?: React.ReactNode;
}
interface TableSlotCellBadgeProps extends TableSlotCellBaseProps {
    variant: "badge";
    badgeLabel?: string;
    badgeIcon?: React.ReactNode;
    badgeClassName?: string;
    tailIcon?: React.ReactNode;
}
interface TableSlotCellProgressProps extends TableSlotCellBaseProps {
    variant: "progress";
    progressValue?: number;
    tailIcon?: React.ReactNode;
}
interface TableSlotCellCheckboxProps extends TableSlotCellBaseProps {
    variant: "checkbox";
    checked?: boolean;
    indeterminate?: boolean;
    onCheckedChange?: (checked: boolean) => void;
}
interface TableSlotCellIconProps extends TableSlotCellBaseProps {
    variant: "icon";
    icon?: React.ReactNode;
}
interface TableSlotCellNumberProps extends TableSlotCellBaseProps {
    variant: "number";
    value?: string | number;
}
interface TableSlotCellEmptyProps extends TableSlotCellBaseProps {
    variant: "empty";
}
type TableSlotCellProps = TableSlotCellDefaultProps | TableSlotCellMediaProps | TableSlotCellAvatarProps | TableSlotCellBadgeProps | TableSlotCellProgressProps | TableSlotCellCheckboxProps | TableSlotCellIconProps | TableSlotCellNumberProps | TableSlotCellEmptyProps;
declare function TableSlotCell(props: TableSlotCellProps): react_jsx_runtime.JSX.Element;

export { TableSlotCell, type TableSlotCellProps, tableSlotCellVariants };
