import { PlatformConfig } from 'homebridge';
import { BasicLogger } from './logger';
export interface PluginConfiguration extends PlatformConfig {
    mqtt?: MqttConfiguration;
    devices?: DeviceConfiguration[];
    httpPort?: number;
    broadcastAddress: string;
    manufacturer?: string;
    threeSpeedUnit?: boolean;
    coolingMinTemp: number;
    coolingMaxTemp: number;
    heatingMinTemp: number;
    heatingMaxTemp: number;
}
export interface DeviceConfiguration extends Record<string, unknown> {
    id: string;
    sensorTopic: string;
    sensorTemperatureKey?: string;
}
export interface MqttSensor extends Record<string, unknown> {
    temperature?: number;
}
export declare const isPluginConfiguration: (x: PlatformConfig, logger?: BasicLogger | undefined) => x is PluginConfiguration;
export declare const isDeviceConfiguration: (x: DeviceConfiguration) => boolean;
export interface MqttConfiguration extends Record<string, unknown> {
    base_topic: string;
    server: string;
    ca?: string;
    key?: string;
    cert?: string;
    user?: string;
    password?: string;
    client_id?: string;
    reject_unauthorized?: boolean;
    keepalive?: number;
    version?: 3 | 4 | 5;
    disable_qos?: boolean;
}
export declare const isMqttConfiguration: (x: any) => x is MqttConfiguration;
export declare const isMqttSensor: (x: any, temperatureKey: string) => x is MqttSensor;
//# sourceMappingURL=configModel.d.ts.map