import type { VNode } from 'vue'; import type { AppConfig } from '@nuxt/schema'; import theme from '#build/b24ui/badge'; import type { UseComponentIconsProps } from '../composables/useComponentIcons'; import type { ComponentConfig } from '../types/tv'; type Badge = ComponentConfig; export interface BadgeProps extends Omit { /** * The element or component this component should render as. * @defaultValue 'span' */ as?: any; label?: string | number; /** * @defaultValue 'air-primary' */ color?: Badge['variants']['color']; /** * If set to `true` the color is inverted. * Used for 'air-primary', 'air-primary-success', 'air-primary-alert', 'air-primary-copilot' and 'air-primary-warning' colors. * @defaultValue false */ inverted?: boolean; /** * @defaultValue 'md' */ size?: Badge['variants']['size']; /** Render the badge with equal padding on all sides. */ square?: boolean; /** * Shows 'underline' on hover * @defaultValue false */ useLink?: boolean; /** * Shows icons.close on the right side * @defaultValue false */ useClose?: boolean; onCloseClick?: ((event: MouseEvent) => void | Promise) | Array<((event: MouseEvent) => void | Promise)>; class?: any; b24ui?: Badge['slots']; } export interface BadgeSlots { leading?(props: { b24ui: Badge['b24ui']; }): VNode[]; default?(props: { b24ui: Badge['b24ui']; }): VNode[]; trailing?(props: { b24ui: Badge['b24ui']; }): VNode[]; } declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: __VLS_WithSlots & Readonly<{}>, { inverted: boolean; as: any; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, BadgeSlots>; type __VLS_WithSlots = T & { new (): { $slots: S; }; };