import Context from './Context';
import expandSvg from './svg/expand.svg?raw';
import svgcheckboxCheck from './svg/checkbox-check.svg?raw';
import svgSelect from './svg/select.svg?raw';
import svgSortable from './svg/sortable.svg?raw';
import svgLoading from './svg/loading.svg?raw';
import svgDrag from './svg/drag.svg?raw';
type ConfigColorNameType = 'LOADING_ICON_COLOR' | 'EXPAND_ICON_COLOR' | 'SHRINK_ICON_COLOR' | 'CHECKBOX_COLOR' | 'SORT_ICON_COLOR' | 'ICON_EDIT_COLOR' | 'ICON_SELECT_COLOR' | 'CHECKBOX_DISABLED_COLOR' | 'CHECKBOX_UNCHECK_COLOR';
type ConfigTypeName = 'LOADING_ICON_SVG' | 'EXPAND_ICON_SVG' | 'SHRINK_ICON_SVG' | 'CHECKBOX_UNCHECK_SVG' | 'CHECKBOX_CHECK_SVG' | 'CHECKBOX_DISABLED_SVG' | 'ICON_EDIT_SVG' | 'ICON_SELECT_SVG' | 'CHECKBOX_CHECK_DISABLED_SVG' | 'CHECKBOX_INDETERMINATE_SVG' | 'SORT_ASC_ICON_SVG' | 'SORT_DESC_ICON_SVG' | 'SORTABLE_ICON_SVG' | 'DRAG_ROW_ICON_SVG';
interface SvgIcon extends IconType {
    configName?: ConfigTypeName;
    configColorName?: ConfigColorNameType;
}
export interface IconType {
    name: string;
    svg: string;
    color: string;
    isBlob?: boolean;
}
declare const svgSortAsc: string;
declare const svgSortDesc: string;
export { expandSvg, svgcheckboxCheck, svgSelect, svgSortable, svgSortAsc, svgSortDesc, svgLoading, svgDrag };
export default class Icons {
    private ctx;
    private list;
    icons: Map<string, HTMLImageElement>;
    constructor(ctx: Context);
    init(): Promise<void>;
    private createImageFromSVG;
    get(name: string): HTMLImageElement | undefined;
    getSvg(name: string): SvgIcon | undefined;
}
