import { CustomElement } from '../../Abstracts/CustomElement'; import { IIconElementProps } from './IIconElementProps'; declare const IconElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Sizeable").ISizeableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Appearanceable").IAppearanceableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Disableable").IDisableableProps) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * Icon - A scalable vector graphics element for displaying symbolic imagery and visual communication. * * Renders SVG icons from path data with support for theming, sizing, rotation, and various appearances. * Essential for user interface iconography, providing consistent visual language across applications. * Features built-in accessibility support and performance optimization for vector graphics. * * @name IconElement * @element mosaik-icon * @category Media * * @csspart symbol - The internal SVG symbol container element * * @cssprop {String} --icon-font-family - Font family for icon rendering * @cssprop {String} --icon-font-size - Base font size for icon scaling * @cssprop {String} --icon-font-weight - Font weight for icon strokes * @cssprop {String} --icon-padding-top - Top padding around icon * @cssprop {String} --icon-padding-right - Right padding around icon * @cssprop {String} --icon-padding-bottom - Bottom padding around icon * @cssprop {String} --icon-padding-left - Left padding around icon * @cssprop {String} --icon-gap - Spacing between icon and adjacent content * @cssprop {String} --icon-transition-duration - Animation duration for state changes * @cssprop {String} --icon-transition-mode - Animation timing function * @cssprop {String} --icon-transition-property - CSS properties to animate * @cssprop {Color} --icon-foreground-color - Icon color and stroke color * @cssprop {Color} --icon-background-color - Background color behind icon * @cssprop {Color} --icon-border-color - Border color around icon * @cssprop {String} --icon-border-width - Border width around icon * @cssprop {String} --icon-border-radius - Border radius for icon container * @cssprop {String} --icon-border-style - Border style (solid, dashed, etc.) * @cssprop {String} --icon-shadow - Shadow effect applied to icon * @cssprop {String} --icon-size - Overall size scaling for the icon * * @example * ```html * * * * * * * * Click here * ``` * * @public */ export declare class IconElement extends IconElement_base implements IIconElementProps { private _data; private _angel; private _inline; private _readonly; /** * Constructs a new instance of the `IconElement` class. * * @public */ constructor(); /** * Returns the `is` property. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `data` property. * * @public */ get data(): string; set data(value: string); /** * Gets or sets the `angel` property. * * @public * @attr */ get angel(): number; set angel(value: number); /** * Gets or sets the `inile` property. * * @public * @attr */ get inline(): boolean; set inline(value: boolean); /** * Gets or sets the `readonly` property. * * @public * @attr */ get readonly(): boolean; set readonly(value: boolean); } /** * @public */ export declare namespace IconElement { type Props = IIconElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-icon': IconElement; } } export {}; //# sourceMappingURL=IconElement.d.ts.map