export = definition;
declare const definition: ({
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
            voltage: number;
            battery_low: boolean;
        };
    } | {
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            water_leak: boolean;
            tamper: boolean;
            battery_low: boolean;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            alarm_on_motion: string;
        };
    })[];
    toZigbee: {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                alarm_on_motion: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    meta: {
        battery: {
            voltageToPercentage: string;
        };
        multiEndpoint?: undefined;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: any[];
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
            voltage: number;
            battery_low: boolean;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            smoke: boolean;
            tamper: boolean;
            battery_low: boolean;
            supervision_reports: boolean;
            restore_reports: boolean;
            trouble: boolean;
            ac_status: boolean;
            test: boolean;
            battery_defect: boolean;
        };
    })[];
    toZigbee: any[];
    meta: {
        battery?: undefined;
        multiEndpoint?: undefined;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Binary)[];
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            occupancy: boolean;
            tamper: boolean;
            battery_low: boolean;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => any;
    })[];
    toZigbee: any[];
    meta: {
        battery: {
            voltageToPercentage: string;
        };
        multiEndpoint?: undefined;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Binary)[];
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    ota: {
        getImageMeta: (current: any, logger: any, device: any) => Promise<{
            fileVersion: any;
            fileSize: any;
            url: any;
            sha512: any;
            force: any;
        }>;
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useIndexOverride: (indexFileName: any) => void;
        setDataDir: (dir: any) => void;
    };
    fromZigbee: ({
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {};
    } | {
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => Promise<void>;
    })[];
    toZigbee: ({
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            readAfterWriteTime: number;
            state: {
                keypad_lockout: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                local_temperature_calibration: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        options: exposes.Enum[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                occupied_heating_setpoint: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                window_open: any;
                boost?: undefined;
                system_mode?: undefined;
                pi_heating_demand?: undefined;
                remote_temperature?: undefined;
            };
        } | {
            state: {
                boost: any;
                window_open?: undefined;
                system_mode?: undefined;
                pi_heating_demand?: undefined;
                remote_temperature?: undefined;
            };
        } | {
            state: {
                system_mode: any;
                window_open?: undefined;
                boost?: undefined;
                pi_heating_demand?: undefined;
                remote_temperature?: undefined;
            };
        } | {
            state: {
                pi_heating_demand: any;
                window_open?: undefined;
                boost?: undefined;
                system_mode?: undefined;
                remote_temperature?: undefined;
            };
        } | {
            state: {
                remote_temperature: any;
                window_open?: undefined;
                boost?: undefined;
                system_mode?: undefined;
                pi_heating_demand?: undefined;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                display_orientation: any;
                display_onTime?: undefined;
                display_brightness?: undefined;
                child_lock?: undefined;
                displayed_temperature?: undefined;
            };
        } | {
            state: {
                display_onTime: any;
                display_orientation?: undefined;
                display_brightness?: undefined;
                child_lock?: undefined;
                displayed_temperature?: undefined;
            };
        } | {
            state: {
                display_brightness: any;
                display_orientation?: undefined;
                display_onTime?: undefined;
                child_lock?: undefined;
                displayed_temperature?: undefined;
            };
        } | {
            state: {
                child_lock: any;
                display_orientation?: undefined;
                display_onTime?: undefined;
                display_brightness?: undefined;
                displayed_temperature?: undefined;
            };
        } | {
            state: {
                displayed_temperature: any;
                display_orientation?: undefined;
                display_onTime?: undefined;
                display_brightness?: undefined;
                child_lock?: undefined;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    })[];
    exposes: any[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    meta?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            sensitivity: string;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            humidity: any;
            co2: number;
            temperature: any;
            illuminance_lux: any;
            battery: number;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            pre_alarm: string;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            heartbeat: string;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            self_test: boolean;
            smoke: boolean;
            siren_state: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => Promise<{
            siren_state: any;
        }>;
    })[];
    toZigbee: {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                sensitivity: any;
                pre_alarm?: undefined;
                heartbeat?: undefined;
                siren_state?: undefined;
            };
        } | {
            state: {
                pre_alarm: any;
                sensitivity?: undefined;
                heartbeat?: undefined;
                siren_state?: undefined;
            };
        } | {
            state: {
                heartbeat: any;
                sensitivity?: undefined;
                pre_alarm?: undefined;
                siren_state?: undefined;
            };
        } | {
            state: {
                siren_state: string;
                sensitivity?: undefined;
                pre_alarm?: undefined;
                heartbeat?: undefined;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: any[];
    meta?: undefined;
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    ota: {
        getImageMeta: (current: any, logger: any, device: any) => Promise<{
            fileVersion: any;
            fileSize: any;
            url: any;
            sha512: any;
            force: any;
        }>;
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useIndexOverride: (indexFileName: any) => void;
        setDataDir: (dir: any) => void;
    };
    fromZigbee: ({
        cluster: string;
        type: string[];
        options: (definition: any) => exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            power: any;
            energy: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            power_factor: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Binary[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {};
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            [x: number]: any;
        };
    })[];
    toZigbee: ({
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                power_on_behavior: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state?: undefined;
        } | {
            state: {
                state: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    })[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Enum | exposes.Switch)[];
    meta?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: {
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            contact: boolean;
            battery_low: boolean;
            action: any;
        };
    }[];
    toZigbee: any[];
    exposes: (exposes.Binary | exposes.Enum)[];
    meta?: undefined;
    configure?: undefined;
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        options: (definition: any) => exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            power: any;
            energy: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            power_factor: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Binary[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {};
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            [x: number]: any;
        };
    })[];
    toZigbee: ({
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                power_on_behavior: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state?: undefined;
        } | {
            state: {
                state: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    })[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Enum | exposes.Switch)[];
    meta?: undefined;
    ota?: undefined;
    endpoint?: undefined;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        options: exposes.Binary[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {};
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            [x: number]: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: any[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            device_type: string;
            switch_type: string;
            calibration_closing_time: any;
            calibration_opening_time: any;
            motor_state: string;
        };
    })[];
    toZigbee: ({
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                power_on_behavior: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state?: undefined;
        } | {
            state: {
                state: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        options: exposes.Binary[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state: {
                [x: string]: any;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<{
            state?: undefined;
        } | {
            state: {
                state: any;
                device_type?: undefined;
                switch_type?: undefined;
                child_lock?: undefined;
                calibration_closing_time?: undefined;
                calibration_opening_time?: undefined;
            };
        } | {
            state: {
                device_type: any;
                state?: undefined;
                switch_type?: undefined;
                child_lock?: undefined;
                calibration_closing_time?: undefined;
                calibration_opening_time?: undefined;
            };
        } | {
            state: {
                switch_type: any;
                state?: undefined;
                device_type?: undefined;
                child_lock?: undefined;
                calibration_closing_time?: undefined;
                calibration_opening_time?: undefined;
            };
        } | {
            state: {
                child_lock: any;
                state?: undefined;
                device_type?: undefined;
                switch_type?: undefined;
                calibration_closing_time?: undefined;
                calibration_opening_time?: undefined;
            };
        } | {
            state: {
                calibration_closing_time: any;
                state?: undefined;
                device_type?: undefined;
                switch_type?: undefined;
                child_lock?: undefined;
                calibration_opening_time?: undefined;
            };
        } | {
            state: {
                calibration_opening_time: any;
                state?: undefined;
                device_type?: undefined;
                switch_type?: undefined;
                child_lock?: undefined;
                calibration_closing_time?: undefined;
            };
        }>;
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    })[];
    meta: {
        multiEndpoint: boolean;
        battery?: undefined;
    };
    endpoint: (device: any) => {
        left: number;
        right: number;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: any[];
    ota?: undefined;
})[];
import exposes = require("../lib/exposes");
//# sourceMappingURL=bosch.d.ts.map