export interface Message {
    tasmotaType?: string;
    cmd_t?: string;
    stat_t?: string;
    uniq_id?: string;
    dev_cla?: string;
    pl_on?: string;
    pl_off?: string;
    payload_high_speed?: string;
    payload_medium_speed?: string;
    payload_low_speed?: string;
    val_tpl?: string;
    bri_val_tpl?: string;
    speeds?: string[];
    [key: string]: any;
}
export declare function renameKeys<T extends Record<string, any>>(obj: T | T[], mapShortToLong: Record<string, string>): T | T[];
export declare function replaceStringsInObject(obj: Record<string, any>, findStr: string, replaceStr: string, cache?: Map<any, any>): Record<string, any>;
export declare function normalizeMessage(message: Message): Message;
export declare function findVal<T>(object: Record<string, any>, key: string): T | undefined;
export declare function HSVtoRGB(h: any, s: number, v: number): number[];
export declare function RGBtoHSV(r: number, g: number, b: number): {
    h: number;
    s: number;
    v: number;
};
export declare function RGBtoScaledHSV(r: string, g: string, b: string): {
    h: number;
    s: number;
    v: number;
};
export declare function ScaledHSVtoRGB(h: number, s: number, v: number): number[];
export declare function HSBtoTasmota(h: number, s: number, b: number): number[];
