import { type TIcon } from '../../types/icons.types'; interface IProps { /** * @description The icon to render. Accepts a class string for the * legacy font-icon set (e.g. `'vc-icon-search'`), a Lucide icon name * as a string (e.g. `'bell-plus'`, `'BellPlus'`, `'apple'`), or a * Vue component such as a Lucide icon * (`import { Search } from '@lucide/vue'`). * * Prefer a static Lucide component import for icons known at build * time; use string names for values resolved at runtime (e.g. database). */ icon?: TIcon; /** * @description Explicit size for the icon. For component-based icons * (e.g. Lucide), forwarded as the component's `size` prop. For * class-string icons, applied as inline `font-size`, `width`, and * `height`. When omitted, component icons inherit their parent's * `font-size` via CSS (`width/height: 1em`) — this matches how the * legacy `` font icons size themselves, so the same `text-*` * utilities drive both icon kinds. Set this only when you need to * override the cascade (e.g. standalone icons outside a sized host). */ size?: number | string; /** * @description Stroke width forwarded to component-based icons. * Ignored for class-string icons. */ strokeWidth?: number | string; /** * @description Explicit color forwarded to component-based icons. * When omitted, the icon inherits its parent's color via the SVG's * built-in `currentColor` default. Ignored for class-string icons. */ color?: string; loading?: boolean; } declare const _default: import("vue").DefineComponent, { strokeWidth: number; icon: undefined; size: undefined; color: undefined; }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly, { strokeWidth: number; icon: undefined; size: undefined; color: undefined; }>>> & Readonly<{}>, { size: string | number; icon: TIcon; color: string; strokeWidth: string | number; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {};