import * as i0 from '@angular/core'; import * as _ng_nest_ui_core from '@ng-nest/ui/core'; import { XBoolean } from '@ng-nest/ui/core'; import { DomSanitizer } from '@angular/platform-browser'; import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs'; /** * Icon * @selector x-icon * @decorator component */ declare const XIconPrefix = "x-icon"; declare const XIconProperty_base: new () => { config: _ng_nest_ui_core.XIconConfig | undefined; }; /** * Icon Property */ declare class XIconProperty extends XIconProperty_base { /** * @zh_CN SVG 图标根路径地址,可以通过全局只配置一次,所有图标资源在 github 上的 ng-nest-icon 中 * @en_US The root address of the SVG icon can be configured only once globally. All icon resources are in ng-nest-icon on github */ readonly href: i0.InputSignal; /** * @zh_CN 图标类型 * @en_US Icon type * @example * * ```html * * * * ``` * */ readonly type: i0.InputSignal; /** * @zh_CN 图标颜色 * @en_US Icon color * @example * * ```html * * ``` * */ readonly color: i0.InputSignal; /** * @zh_CN loading效果(图标一直旋转) * @en_US Loading effect (icon keeps rotating) * @example * * ```html * * ``` * */ readonly spin: i0.InputSignalWithTransform; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * @zh_CN 图标来源 * @en_US Icon source */ type XIconSource = 'ant-design' | 'eva' | 'feather' | 'font-awesome' | 'material-design'; declare const XSouceUrl: { [property: string]: string; }; declare const XViewBox: never[]; declare class XIconComponent extends XIconProperty { private svgElement; private document; private elementRef; private renderer; private cdr; private iconService; private beforeClass; hostClass: boolean; get getSpin(): boolean; get getColor(): string | undefined; inSource: i0.Signal; sourceUrl: i0.Signal; isCustom: i0.Signal; constructor(); setSvgs(svg: string): void; buildSvg(svgStr: string): HTMLElement | undefined; createSvg(svgStr: string): { ele: SVGElement; children: NodeListOf; } | null; setAttributes(svgEle: HTMLElement): void; setAttribute(svg: SVGElement, svgEle: SVGElement, attribute: string, def?: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } type Task = { name: string; observable: Observable; callback: Function; }; declare class XIconService { caches: { [property: string]: any; }; queue: Task[]; activeTaskXm: number; isRunningTask: boolean; limit: number; sanitizer: DomSanitizer; http: HttpClient; customIcon: { [property: string]: string; }; constructor(); addTask(task: Task): void; private execute; private runTask; getSvg(root: string, icon: string, isCustom?: boolean): Observable; getSvgElement(root: string, icon: string, isCustom?: boolean): Observable; register(icon: string, url: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class XIconModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { XIconComponent, XIconModule, XIconPrefix, XIconProperty, XIconService, XSouceUrl, XViewBox }; export type { XIconSource };