/** * Icon Component - Lynx 版 MUI Icon * * 由于 Lynx 不支持直接渲染 SVG,本组件提供多种图标显示方案: * * 1. **SVG 文件** - 使用 image 元素加载 SVG 文件 * 2. **字体图标** - 使用 text 元素 + icon font * 3. **Unicode/Emoji** - 直接显示 emoji 或 unicode 字符 * 4. **Base64** - 支持 base64 编码的图标 * * 使用示例: * ```tsx * // SVG 文件 * * * // 字体图标 (需要加载对应字体) * * * // Emoji * 🏠 * * // Unicode * * ``` */ import './Icon.css'; export type IconFontSize = 'inherit' | 'small' | 'medium' | 'large'; export type IconColor = 'inherit' | 'action' | 'disabled' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning'; export interface IconProps { /** SVG 图标文件路径 */ src?: string; /** 字体图标名称 (用于 icon font) */ fontIcon?: string; /** Unicode 字符 */ unicode?: string; /** 字体族 (用于 icon font) */ fontFamily?: string; /** 子元素 (emoji 或文字) */ children?: any; /** 自定义类名 */ className?: string; /** 内联样式 */ style?: Record; /** 颜色 */ color?: IconColor | string; /** 字体大小 */ fontSize?: IconFontSize | string | number; /** 宽度 */ width?: number | string; /** 高度 */ height?: number | string; /** sx 属性 */ sx?: Record; /** 点击事件 */ bindtap?: () => void; } export declare function Icon(props: IconProps): JSX.Element; export default Icon; //# sourceMappingURL=index.d.ts.map