import React from 'react';
import { Types } from '@iobroker/type-detector';
export type TypesExtended = Types | 'invalid' | 'hub3' | 'node' | 'hub5' | 'controller';
export interface IconProps {
    /** URL, UTF-8 character, or svg code (data:image/svg...) */
    src?: string | React.JSX.Element | null | undefined;
    /** Class name */
    className?: string;
    /** Style for image */
    style?: React.CSSProperties;
    /** Styles for mui */
    sx?: Record<string, any>;
    /** Tooltip */
    title?: string | true;
    /** Styles for utf-8 characters */
    styleUTF8?: React.CSSProperties;
    /** On error handler */
    onError?: React.ReactEventHandler<HTMLImageElement>;
    /** Reference to image */
    ref?: React.RefObject<HTMLImageElement>;
    /** Alternative text for image */
    alt?: string;
    /** On click handler */
    onClick?: React.MouseEventHandler<any>;
}
export type TypeIconProps = IconProps & {
    type?: TypesExtended;
};
export declare function DeviceTypeIcon(props: TypeIconProps): React.JSX.Element | null;
