import { TemplateResult, LitElement, PropertyValues } from 'lit';
import { IconType } from '../Icons.js';
export default class UiIcon extends LitElement {
    private hasIconInternal;
    private iconValue;
    /**
     * An icon to be rendered from the ApiIcons library.
     * When incorrect icon is referenced nothing is rendered.
     * @attribute
     */
    accessor icon: IconType | undefined;
    /**
     * @returns True when the icon was found and is rendered.
     */
    get hasIcon(): boolean;
    connectedCallback(): void;
    protected willUpdate(cp: PropertyValues<this>): void;
    /**
     * Maps icon name to it's definition and sets `hasIcon` value.
     *
     * @param name Icon name
     */
    protected updateIcon(name: IconType | undefined): void;
    /**
     * @return Template result for an icon
     */
    render(): TemplateResult;
}
//# sourceMappingURL=Icon.d.ts.map