import * as i0 from '@angular/core'; import { InputSignal } from '@angular/core'; import * as i2 from '@angular/common'; declare class IconComponent { /** * The icon name to display. * This should be a valid Material Symbols icon name. * For example, 'home', 'settings', 'favorite', etc. */ readonly $value: InputSignal; /** * The color of the icon. * Can be 'error', 'none', 'primary', 'success', or null. * - 'error': Indicates an error state. * - 'none'/null/undefined: No color applied. * - 'primary': Indicates a primary action or state. * - 'success': Indicates a successful action or state. * @default undefined */ readonly $color: InputSignal<'error' | 'none' | 'primary' | 'success' | null | undefined>; /** * The type of Material Symbols icon to use. * Can be 'Material Symbols Outlined', 'Material Symbols Rounded', or 'Material Symbols Sharp'. * - 'Material Symbols Outlined': Uses the outlined style of Material Symbols. * - 'Material Symbols Rounded': Uses the rounded style of Material Symbols. * - 'Material Symbols Sharp': Uses the sharp style of Material Symbols. * @default 'Material Symbols Rounded' */ readonly $type: InputSignal<"Material Symbols Outlined" | "Material Symbols Rounded" | "Material Symbols Sharp">; /** * Whether to fill the icon with color. * @default false */ readonly $fill: InputSignal; /** * The font size of the icon. * This should be a valid CSS font size value, such as '16px', '1rem', '2em', etc. * If not specified, the default font size will be used that is passed from outside. * @default undefined */ readonly $fontSize: InputSignal; /** * The weight of the icon. * Can be 100, 200, 300, 400, 500, 600, or 700. * @default 400 */ readonly $weight: InputSignal<100 | 200 | 300 | 400 | 500 | 600 | 700>; /** * The grade of the icon. * Can be -25, 0, or 200. * - -25: Indicates a lighter grade. * - 0: Indicates a normal grade. * - 200: Indicates a heavier grade. * @default 0 */ readonly $grade: InputSignal<0 | 200 | -25>; /** * The optical size of the icon in pixels. * Can be 20, 24, 40, or 48. * - 20: Small optical size. * - 24: Default optical size. * - 40: Larger optical size. * - 48: Extra large optical size. * @default 24 */ readonly $opticalSizePx: InputSignal<20 | 24 | 40 | 48>; /** * Used to pass all parameters as a single object except for value. * This is useful for passing multiple parameters at once. * @example * * @default undefined */ readonly $params: InputSignal>; private readonly $actualColor; private readonly $actualType; private readonly $actualFontSize; private readonly $actualFill; private readonly $actualWeight; private readonly $actualGrade; private readonly $actualOpticalSizePx; private readonly $fontVariationSettings; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface IconParams { color?: 'error' | 'none' | 'primary' | 'success'; type?: 'Material Symbols Outlined' | 'Material Symbols Rounded' | 'Material Symbols Sharp'; fontSize?: string; fill?: boolean; weight?: 100 | 200 | 300 | 400 | 500 | 600 | 700; grade?: -25 | 0 | 200; opticalSizePx?: 20 | 24 | 40 | 48; } declare class TableauUiIconModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { IconComponent, TableauUiIconModule }; export type { IconParams };