import React, { DetailedHTMLProps } from 'react';
export type IconSize = {
size: '16' | '20' | '24' | '32' | '40';
};
type IconSize1 = {
size: '16';
};
type IconSize2 = {
size?: '20';
};
type IconSize3 = {
size: '24';
};
type IconSize4 = {
size: '32';
};
type IconSize5 = {
size: '40';
};
type IconSizeAll = IconSize1 | IconSize2 | IconSize3 | IconSize4 | IconSize5;
export interface IconProps extends DetailedHTMLProps, HTMLSpanElement> {
svg: React.ReactElement;
spin?: boolean;
rotate?: number;
type?: string;
}
type IconProps2 = IconProps & IconSizeAll;
declare const Icon: React.ForwardRefExoticComponent<(Omit | Omit | Omit | Omit | Omit) & React.RefAttributes>;
type SvgFn1 = (props: React.SVGProps & IconSize1) => JSX.Element;
type SvgFn2 = (props: React.SVGProps & IconSize2) => JSX.Element;
type SvgFn3 = (props: React.SVGProps & IconSize3) => JSX.Element;
type SvgFn4 = (props: React.SVGProps & IconSize4) => JSX.Element;
type SvgFn5 = (props: React.SVGProps & IconSize5) => JSX.Element;
type SvgFn = SvgFn1 | SvgFn2 | SvgFn3 | SvgFn4 | SvgFn5;
declare const convertIcon: (Svg: SvgFn, iconType: string) => React.ForwardRefExoticComponent & TSize> & React.RefAttributes>;
export { convertIcon };
export default Icon;