import { IconDefinition } from '@mezzanine-ui/icons';
import { IconColor } from '@mezzanine-ui/core/icon';
import { NativeElementPropsWithoutKeyAndRef } from '../utils/jsx-types';
export interface IconProps extends NativeElementPropsWithoutKeyAndRef<'i'> {
/**
* Color name provided by palette.
*/
color?: IconColor;
/**
* The icon provided by `@mezzanine-ui/icons` package.
*/
icon: IconDefinition;
/**
* Icon size in px
*/
size?: number;
/**
* Whether to spin the icon or not.
* @default false
*/
spin?: boolean;
/**
* Icon accessible title
*/
title?: string;
}
/**
* 渲染來自 `@mezzanine-ui/icons` 的 SVG 圖示元件。
*
* 透過 `icon` prop 傳入圖示定義物件,支援調整顏色、尺寸與旋轉動畫。
* 當元件綁定 `onClick` 或 `onMouseOver` 事件時,游標樣式會自動切換為 pointer。
* 可透過 `title` prop 提供無障礙標題文字。
*
* @example
* ```tsx
* import Icon from '@mezzanine-ui/react/Icon';
* import { SearchIcon, LoadingIcon, CheckCircleFilledIcon } from '@mezzanine-ui/icons';
*
* // 基本用法
*
*
* // 自訂顏色與尺寸
*
*
* // 旋轉動畫(常用於載入狀態)
*
*
* // 加入無障礙標題
*
* ```
*/
declare const Icon: import("react").ForwardRefExoticComponent>;
export default Icon;