import { type AriaAttributes } from "react";
import { type BackgroundShape, type BackgroundType } from "../@types/background.js";
import { type IconType } from "../@types/icon.js";
import { type ThemeColor } from "../@types/themeColors.js";
/**
 * @internal
 */
export interface IUiIconProps {
    type: IconType;
    color?: ThemeColor | "currentColor";
    size?: number;
    disableAnimation?: boolean;
    backgroundSize?: number;
    backgroundColor?: ThemeColor;
    backgroundType?: BackgroundType;
    backgroundShape?: BackgroundShape;
    /**
     * SVGs are inline by default. The icon can be set to block to behave better in flex layouts and similar.
     * @defaultValue "inline"
     */
    layout?: "block" | "inline";
    accessibilityConfig?: {
        ariaLabel?: AriaAttributes["aria-label"];
        ariaHidden?: boolean;
    };
}
/**
 * @internal
 */
export declare function UiIcon({ type, color, layout, disableAnimation, accessibilityConfig, size, backgroundSize, backgroundColor, backgroundType, backgroundShape }: IUiIconProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=UiIcon.d.ts.map