import * as React from "react";
import { type VariantProps } from "class-variance-authority";
import type { LucideIcon } from "lucide-react";
declare const tagVariants: (props?: ({
    color?: "blue" | "green" | "indigo" | "lime" | "magenta" | "orange" | "purple" | "red" | "turquoise" | "yellow" | "neutral" | "deep-orange" | "amber" | null | undefined;
    size?: "sm" | "md" | "lg" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
export interface TagProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'prefix' | 'color'>, VariantProps<typeof tagVariants> {
    /** 左側 icon（LucideIcon），由 Tag 統一 16px。與 avatar 互斥。 */
    icon?: LucideIcon;
    /** 左側 avatar（ReactNode），與 icon 互斥。 */
    avatar?: React.ReactNode;
    /** 可移除——Tag 自動渲染 remove 按鈕並控制尺寸與互動樣式(從集合移除 item) */
    onRemove?: () => void;
    /** 深底模式（step-6 背景 + on-emphasis 配對前景;亮色 hue yellow/amber/orange/lime 用深字 --on-emphasis-dark,green 白字例外） */
    solid?: boolean;
    /**
     * 2026-05-15 Q3 真 SSOT fix(per user verbatim「同空間兩判斷點」+「不要冰山一角」):
     * Tag 寬度由 parent constrain,不套預設 max-w-40(160px)。用於 cell-as-input narrow cell
     * (< 160px)時 Tag fit cell 寬度 + truncate ellipsis,而非 160px 後被 cell `overflow-hidden`
     * 硬切。對齊「同 cell width → 同 overflow 判斷」SSOT。Default false 保 backward compat
     * (wrap layout / pill rail 等仍受 160px 保護)。
     */
    unbounded?: boolean;
}
declare const Tag: React.ForwardRefExoticComponent<TagProps & React.RefAttributes<HTMLDivElement>>;
export declare const tagMeta: {
    readonly component: "Tag";
    readonly family: 3;
    readonly variants: {
        readonly neutral: {
            readonly purpose: "通用分類、草稿、無特定語義(secondary 底)";
        };
        readonly blue: {
            readonly purpose: "categorical 色相(--color-blue-*)";
        };
        readonly green: {
            readonly purpose: "categorical 色相(--color-green-*)";
        };
        readonly 'deep-orange': {
            readonly purpose: "categorical 色相(--color-deep-orange-*,hue 38)";
        };
        readonly yellow: {
            readonly purpose: "categorical 色相(--color-yellow-*,淺底深字)";
        };
        readonly red: {
            readonly purpose: "categorical 色相(--color-red-*,品牌紅家族 hue 25;≠ 語意 --error)";
        };
        readonly orange: {
            readonly purpose: "categorical 色相(--color-orange-*)";
        };
        readonly amber: {
            readonly purpose: "categorical 色相(--color-amber-*,淺底深字)";
        };
        readonly lime: {
            readonly purpose: "categorical 色相(--color-lime-*)";
        };
        readonly turquoise: {
            readonly purpose: "categorical 色相(--color-turquoise-*)";
        };
        readonly indigo: {
            readonly purpose: "categorical 色相(--color-indigo-*)";
        };
        readonly purple: {
            readonly purpose: "categorical 色相(--color-purple-*)";
        };
        readonly magenta: {
            readonly purpose: "categorical 色相(--color-magenta-*)";
        };
    };
    readonly sizes: {
        readonly sm: {
            readonly height: 20;
            readonly iconSize: 16;
            readonly typography: "caption";
        };
        readonly md: {
            readonly height: 24;
            readonly iconSize: 16;
            readonly typography: "body";
        };
        readonly lg: {
            readonly height: 24;
            readonly iconSize: 16;
            readonly typography: "body";
        };
    };
    readonly states: readonly ["default"];
    readonly tokens: {
        readonly bg: readonly ["bg-neutral-active", "bg-neutral-hover", "bg-secondary", "bg-transparent"];
        readonly fg: readonly ["text-foreground", "text-inverse-fg"];
        readonly ring: readonly [];
    };
    readonly defaultVariant: "neutral";
    readonly defaultSize: "md";
};
export { Tag, tagVariants };
//# sourceMappingURL=tag.d.ts.map