import { SizeProp } from '@fortawesome/fontawesome-svg-core';
import { CSSProperties } from 'react';
import { CoreUITheme } from '../../style/theme';
import { iconTable } from './iconTable';
type IconProps = {
    'aria-label'?: string;
    color?: string;
    size?: string;
    icon?: string;
    title?: string;
};
export declare const customIcons: Record<string, ((props: IconProps) => JSX.Element) & {
    displayName?: string;
}>;
export type IconName = keyof typeof iconTable | keyof typeof customIcons;
export type IconColor = keyof CoreUITheme;
type Props = {
    name: IconName;
    size?: SizeProp;
    color?: IconColor | CSSProperties['color'];
    ariaLabel?: string;
    withWrapper?: boolean;
    style?: CSSProperties;
    onClick?: (event: React.MouseEvent) => void;
    title?: string;
};
export declare const IconWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {
    size: SizeProp;
}, never>;
declare function Icon({ withWrapper, ...props }: Props): import("react/jsx-runtime").JSX.Element;
export { Icon, iconTable };
//# sourceMappingURL=Icon.component.d.ts.map