import type { VueComponent } from '@/types';
import { type BadgeProps } from '../BccBadge/BccBadge.vue';
export type TagProps = Omit<BadgeProps, 'value' | 'squared'> & {
    /** Icon component shown on the left (or right when iconRight is true). */
    icon?: VueComponent;
    /** When true, icon slot is on the right; when a component, shows that icon on the right. */
    iconRight?: VueComponent | boolean;
    /** When true, tag uses rounded corners; when false, passes squared to BccBadge. */
    rounded?: boolean;
    /** Applies hover/pointer styles so the tag looks and behaves like a clickable control. */
    clickable?: boolean;
    /** Label text for the tag when not using the default slot. */
    text?: string;
    truncate?: boolean;
};
declare var __VLS_13: {};
type __VLS_Slots = {} & {
    default?: (props: typeof __VLS_13) => any;
};
declare const __VLS_base: import("vue").DefineComponent<TagProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<TagProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
