import { LayoutUtilProps, Size, Svg } from '../../types'; import { ComponentPropsWithoutRef } from 'react'; /** * Props for the Icon component * @extends Omit, "children"> * @extends Omit */ export type IconProps = Omit, "children"> & Omit & { /** * Apply a specific color to the icon. */ color?: string; /** * The size of the icon. * @default medium */ size?: Extract; /** * Assets passed in using svgr. */ svg: Svg; /** * Whether the icon should inherit the color from its parent element. * @default false */ inherit?: boolean; }; /** * Icon component for displaying SVG icons with consistent styling and sizing. * * Features: * - SVG icon rendering with consistent styling * - Four predefined sizes: small, medium, large, xlarge * - Custom color support with optional inheritance * - Layout utilities for positioning and spacing * - Support for all standard span element props * - Flexible color inheritance and custom color options * - Consistent sizing across different icon sets * * @example * import Close from "@servicetitan/anvil2/assets/icons/material/round/close.svg"; * * * * @example * import Info from "@servicetitan/anvil2/assets/icons/material/round/info.svg"; * * */ export declare const Icon: import('react').ForwardRefExoticComponent, HTMLSpanElement>, "ref">, "children"> & Omit & { /** * Apply a specific color to the icon. */ color?: string; /** * The size of the icon. * @default medium */ size?: Extract; /** * Assets passed in using svgr. */ svg: Svg; /** * Whether the icon should inherit the color from its parent element. * @default false */ inherit?: boolean; } & import('react').RefAttributes>;