UNPKG

@lion/ui

Version:

A package of extendable web components

41 lines 1.64 kB
/** * @typedef {import('lit-html').nothing} nothing * @typedef {import('lit').TemplateResult} TemplateResult */ export class IconManager { /** @private */ private __iconResolvers; /** * Adds an icon resolver for the given namespace. An icon resolver is a * function which takes an icon set and an icon name and returns an svg * icon as a TemplateResult. This function can be sync or async. * * @param {string} namespace * @param {(iconset: string, icon: string) => TemplateResult | Promise<TemplateResult> | nothing | Promise<nothing> } iconResolver */ addIconResolver(namespace: string, iconResolver: (iconset: string, icon: string) => TemplateResult | Promise<TemplateResult> | nothing | Promise<nothing>): void; /** * Removes an icon resolver for a namespace. * @param {string} namespace */ removeIconResolver(namespace: string): void; /** * Resolves icon for the given parameters. Returns the icon as a svg string. * * @param {string} namespace * @param {string} iconset * @param {string} icon * @returns {Promise<TemplateResult>} */ resolveIcon(namespace: string, iconset: string, icon: string): Promise<TemplateResult>; /** * Resolves icon for the given icon id. Returns the icon as a svg string. * * @param {string} iconId * @returns {Promise<TemplateResult>} */ resolveIconForId(iconId: string): Promise<TemplateResult>; } export type nothing = typeof import("lit-html").nothing; export type TemplateResult = import('lit').TemplateResult; //# sourceMappingURL=IconManager.d.ts.map