import React, { Component } from 'react';
import type { Translate } from '../types';
export interface IconObject {
    icon?: string;
    src?: string;
    href?: string;
    name?: ioBroker.StringOrTranslated;
    _id?: string;
}
export type IconSelectorIcon = IconObject | string;
interface IconSelectorProps {
    icons?: IconSelectorIcon[];
    onlyRooms?: boolean;
    onlyDevices?: boolean;
    onSelect?: (icon: string) => void;
    onChange?: (icon: string) => void;
    t: Translate;
    lang: ioBroker.Languages;
}
interface IconSelectorState {
    opened: boolean;
    names: string[];
    filter: string;
    icons: string[] | null;
    loading: boolean;
    isAnyName: boolean;
}
export declare class IconSelector extends Component<IconSelectorProps, IconSelectorState> {
    constructor(props: IconSelectorProps);
    loadAllIcons(): void;
    render(): React.JSX.Element;
}
export {};
