import { ElementRef, OnDestroy, Renderer2 } from '@angular/core';
import { BaoColors } from '../core/colors';
import { BaoIconDictionary as BaoIconRegistry } from './bao-icon-registry';
import * as i0 from "@angular/core";
/**
* Component to display an icon. It can be used in the following ways:
*
* - Specify the svgIcon input to load an SVG icon from a preset list of icons.
* Examples:
* ``
*/
export declare class BaoIconComponent implements OnDestroy {
private elementRef;
private iconRegistry;
private renderer;
/** The color of the icon, if not specified the icon's parent current text color will be used */
color: BaoColors;
/**
* The size of the icon
*/
size: 'medium' | 'small' | 'x-small' | 'xx-small';
private _svgIcon;
private _title;
private _titleId;
private _elementsWithExternalReferences?;
constructor(elementRef: ElementRef, iconRegistry: BaoIconRegistry, renderer: Renderer2);
/** Name of the icon in the SVG icon set. */
get svgIcon(): string;
/** Title that will be used as an aria-label for the icon */
get title(): string;
get hexColor(): string | void;
get titleId(): string;
set svgIcon(value: string);
set title(value: string);
ngOnDestroy(): void;
private setSvgElement;
private clearSvgElement;
private updateSvgIcon;
private addTitleToSVG;
private removeTitleAttributeFromHost;
private generateUniqueTitleId;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}