import { ForwardRefExoticComponent, ReactNode, RefAttributes } from 'react';
import { StyledComponent } from 'styled-components';
import { WithHTMLAttributes } from '@synerise/ds-utils';
import { IconName } from './useIconComponent';
export type { IconName };
export type BaseIconProps = {
color?: string;
/**
* Icon name - use this to render an icon by its name (e.g., 'InfoM', 'AddM').
* This is the recommended way to use icons.
* @example
* ```tsx
*
*
* ```
*/
iconName?: IconName;
/**
* Display name for the icon (used as title attribute)
*/
name?: string;
size?: string | number;
stroke?: boolean;
/**
* @deprecated Use the `iconName` prop instead with the icon name as a string.
* @example
* // Before (deprecated):
* } />
*
* // After (recommended):
*
*/
component?: ReactNode;
};
export type IconProps = WithHTMLAttributes;
export type StyledIcon = StyledComponent>, object, CustomProps, never>;