import * as React from 'react';

interface IconFontProps {
  tabIndex?: number;
  type?: string;
  className?: string;
  theme?: ThemeType;
  title?: string;
  onKeyUp?: React.KeyboardEventHandler<HTMLElement>;
  onClick?: React.MouseEventHandler<HTMLElement>;
  component?: React.ComponentType<CustomIconComponentProps | React.SVGProps<SVGSVGElement>>;
  twoToneColor?: string;
  viewBox?: string;
  spin?: boolean;
  rotate?: number;
  style?: React.CSSProperties;
  prefixCls?: string;
  role?: string;
}

interface IconFontFactory {
  static registerIconFont: (scriptUrl: string) => void;
}

declare const IconFont: React.StatelessComponent<IconFontProps> & IconFontFactory;

export default IconFont;
