import { type PropertyDeclarations, type TemplateResult } from 'lit'; import type { DirectiveResult } from 'lit/directive.js'; import type { StyleMapDirective } from 'lit/directives/style-map.js'; import { AriaIconController } from '../../controllers/aria-icon-controller.js'; import { ElementSlug } from '../../definitions/enums.js'; import type { IconElementEventMap } from '../../definitions/events.js'; import type { IconElementSanitizeConfig } from '../../definitions/interfaces.js'; import { AracnaBaseElement as BaseElement } from '../core/base-element.js'; declare global { interface HTMLElementTagNameMap { 'aracna-icon': IconElement; } } declare class IconElement extends BaseElement { protected aria: AriaIconController; /** * Properties */ /** */ cache?: boolean; color?: string; fill?: string; sanitize?: boolean; sanitizeConfig?: IconElementSanitizeConfig; stroke?: string; strokeLineCap?: string; strokeLineJoin?: string; strokeWidth?: string; /** * Internals */ /** */ protected _src?: string; /** * States */ /** */ svgElement?: SVGSVGElement; connectedCallback(): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; generateSVGElement(src: string | undefined): Promise; fetchSource(src?: string): Promise; parseSVGString(string: string): Promise; render(): TemplateResult<1>; get slug(): ElementSlug; get src(): string | undefined; set src(src: string | undefined); get svgElementInnerHTML(): string; get svgElementStyle(): DirectiveResult; get svgElementTemplate(): TemplateResult; get svgElementViewBox(): string | undefined; static properties: PropertyDeclarations; } export { IconElement as AracnaIconElement };