import type { VNode } from 'vue';
export type BxTagType = 'default' | 'success' | 'warning' | 'error' | 'info';
export type BxTagProps = {
    size?: 'tiny' | 'small' | 'medium' | 'large';
    round?: boolean;
    type?: BxTagType;
    bordered?: boolean;
    /**
     * Subtle "outline" look: transparent background with a border + text in the
     * type colour. Reads quieter than the filled default — handy for inline
     * status/role badges inside menus and lists.
     */
    outline?: boolean;
    closeable?: boolean;
    disabled?: boolean;
};
type __VLS_Slots = {
    default?: () => VNode[] | VNode;
    icon?: () => VNode[] | VNode;
};
declare const __VLS_component: import("vue").DefineComponent<BxTagProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    close: () => any;
}, string, import("vue").PublicProps, Readonly<BxTagProps> & Readonly<{
    onClose?: (() => any) | undefined;
}>, {
    round: boolean;
    type: BxTagType;
    size: "tiny" | "small" | "medium" | "large";
    disabled: boolean;
    closeable: boolean;
    bordered: boolean;
    outline: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
