declare const _exports: ({
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    extend: {
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    extend: {
        ota: {
            isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
            updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
            useTestURL: () => void;
        };
        onEvent: (type: any, data: any, device: any, options: any, state: any) => Promise<void>;
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    extend: {
        ota: {
            isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
            updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
            useTestURL: () => void;
        };
        onEvent: (type: any, data: any, device: any, options: any, state: any) => Promise<void>;
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
    meta: {
        turnsOffAtBrightness1: boolean;
    };
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    extend: {
        ota: {
            isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
            updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
            useTestURL: () => void;
        };
        onEvent: (type: any, data: any, device: any, options: any, state: any) => Promise<void>;
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
    toZigbee: any[];
    meta: {
        supportsHueAndSaturation: boolean;
    };
} | {
    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;
        };
    } | FromZigbeeConverter)[];
    exposes: (exposes.Numeric | exposes.Enum)[];
    toZigbee: undefined[];
    meta: {
        battery: {
            dontDividePercentage: boolean;
        };
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
} | {
    zigbeeModel: string[];
    model: string;
    description: string;
    vendor: string;
    extend: {
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
} | {
    zigbeeModel: string[];
    model: string;
    description: string;
    vendor: string;
    fromZigbee: ({
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: any;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: any;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
        };
    })[];
    exposes: (exposes.Numeric | exposes.Enum)[];
    toZigbee: {
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Composite[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: any;
        };
    } | FromZigbeeConverter | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
        };
    })[];
    exposes: (exposes.Numeric | exposes.Enum)[];
    toZigbee: {
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    meta: {
        disableActionGroup: boolean;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    zigbeeModel: string[];
    model: string;
    description: string;
    vendor: string;
    fromZigbee: any[];
    exposes: any[];
    extend: {
        exposes: any[];
        fromZigbee: any[];
        toZigbee: any[];
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string;
        options: (exposes.Numeric | exposes.Binary)[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            occupancy: boolean;
            illuminance_above_threshold: boolean;
        };
    } | {
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            requested_brightness_level: any;
            requested_brightness_percent: number;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
        };
    })[];
    toZigbee: undefined[];
    exposes: any[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    zigbeeModel: string[];
    model: string;
    description: string;
    vendor: string;
    fromZigbee: {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            linkquality: any;
        };
    }[];
    toZigbee: undefined[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: 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) => {
            battery: any;
        };
    })[];
    toZigbee: ({
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    } | {
        key: string[];
        convertSet: (entity: any, key: any, value: any, meta: any) => Promise<void>;
    })[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Cover)[];
} | {
    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) => {
            battery: any;
        };
    })[];
    toZigbee: ({
        key: string[];
        convertSet: (entity: any, key: any, value: 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>;
    })[];
    meta: {
        battery: {
            dontDividePercentage: boolean;
        };
    };
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    exposes: (exposes.Numeric | exposes.Cover)[];
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: any;
        };
    } | FromZigbeeConverter | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            battery: any;
        };
    })[];
    exposes: (exposes.Numeric | exposes.Enum)[];
    toZigbee: {
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    exposes: any[];
    meta: {
        fanStateOn: string;
    };
    fromZigbee: {
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            replace_filter: boolean;
            filter_age: number;
            led_enable: boolean;
            child_lock: string;
            fan_speed: any;
            fan_mode: any;
            fan_state: string;
        };
    }[];
    toZigbee: {
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
    ota: {
        isUpdateAvailable: (device: any, logger: any, requestPayload?: any) => Promise<any>;
        updateToLatest: (device: any, logger: any, onProgress: any) => Promise<any>;
        useTestURL: () => void;
    };
} | {
    zigbeeModel: string[];
    model: string;
    vendor: string;
    description: string;
    fromZigbee: ({
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            [x: number]: any;
        };
    } | {
        cluster: string;
        type: string[];
        options: exposes.Numeric[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            humidity: any;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            pm25: any;
        };
    } | {
        cluster: string;
        type: string[];
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            voc_index: any;
        };
    })[];
    toZigbee: undefined[];
    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;
    };
    exposes: exposes.Numeric[];
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
} | {
    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;
        };
    } | FromZigbeeConverter | {
        cluster: number;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: string;
        };
    } | {
        cluster: string;
        type: string;
        convert: (model: any, msg: any, publish: any, options: any, meta: any) => {
            action: string;
        };
    })[];
    exposes: (exposes.Numeric | exposes.Enum)[];
    toZigbee: {
        key: string[];
        convertGet: (entity: any, key: any, meta: any) => Promise<void>;
    }[];
    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;
    };
    configure: (device: any, coordinatorEndpoint: any, logger: any) => Promise<void>;
})[];
export = _exports;
import exposes = require("../lib/exposes");
//# sourceMappingURL=ikea.d.ts.map