import { Icon } from '../../interfaces/paginable-table-header';
import * as i0 from "@angular/core";
/**
* Defines the supported icon types.
* @typedef {'font-awesome' | 'material' | 'bootstrap'} IconType
*/
export type IconType = 'font-awesome' | 'material' | 'bootstrap';
/**
* @component HubIconComponent
* @selector ng-hub-ui-icon
* @description A versatile icon component that supports multiple icon libraries.
*
* @example
*
*/
export declare class HubIconComponent implements Icon {
/**
* @input config
* @description Sets the icon configuration. Can be a string or an Icon object.
* @type {string | Icon}
*/
set config(value: string | Icon);
/**
* @input type
* @description The type of icon (font-awesome, material, or bootstrap).
* @type {IconType}
*/
type: IconType;
/**
* @input value
* @description The icon value or class name.
* @type {string}
*/
value: string;
/**
* @input variant
* @description The variant of the icon (if applicable).
* @type {string}
*/
variant: string;
/**
* @getter classlist
* @description Computes the CSS classes for the icon based on its type and value.
* @returns {string | null} The computed CSS class string or null if no value is set.
*/
get classlist(): string | null;
/**
* @getter content
* @description Gets the content for material icons.
* @returns {string | null} The icon content for material icons, or null for other types.
*/
get content(): string | null;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}