@plone/components
Version:
ReactJS components for Plone
40 lines (37 loc) • 1.17 kB
TypeScript
import React__default, { ReactElement, JSX } from 'react';
import { DOMProps, AriaLabelingProps } from '@react-types/shared';
interface IconProps extends DOMProps, AriaLabelingProps {
/**
* A screen reader only label for the Icon.
*/
'aria-label'?: string;
/**
* The content to display. Should be an SVG.
*/
children: ReactElement<any>;
/**
* Size of Icon (changes based on scale).
*/
size?: '2xs' | 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl';
/**
* A slot to place the icon in.
* @default 'icon'
*/
slot?: string;
/**
* Indicates whether the element is exposed to an accessibility API.
*/
'aria-hidden'?: boolean | 'false' | 'true';
/**
* Color of the Icon. It can be a HEX color or a CSS custom property.
*/
color?: string;
/**
* Custom class name to apply to the icon.
*/
className?: string;
style?: React__default.CSSProperties;
}
type IconPropsWithoutChildren = Omit<IconProps, 'children'>;
declare function Icon(props: IconProps): JSX.Element;
export { Icon as I, type IconProps as a, type IconPropsWithoutChildren as b };