import { DysonDeviceAirBase } from './dyson-device-air-base.js';
export declare class DysonDeviceAirCoolLink extends DysonDeviceAirBase {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
    static readonly filters: {
        hepa: string[];
    };
}
export declare class DysonDeviceAirCoolLinkDesk extends DysonDeviceAirCoolLink {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
    static readonly filters: {
        hepa: string[];
    };
}
declare const DysonDeviceAirHotCoolLink_base: (abstract new (...args: any[]) => {
    installHandlers(endpoints: import("./endpoint-air.js").EndpointsAir): Promise<void>;
    setTargetTemperature(celsius: number): Promise<void>;
    setHeating(heat: boolean): Promise<void>;
    getEntities(): {
        name: import("./config-types.js").EntityName;
        description: string;
    }[];
    updateClusterAttributes(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): Promise<void>;
    mqttListener: () => void;
    endpoints?: import("./endpoint-air.js").EndpointsAir;
    hasBreeze: boolean;
    hasHepaFilter: boolean;
    hasCarbonFilter: boolean;
    hasDirection: boolean;
    hasLeftRight: boolean;
    hasUpDown: boolean;
    useFanModeOff: boolean;
    makeEndpoints(validatedNames: import("./config-types.js").EntityName[]): import("./endpoint-air.js").EndpointsAir;
    readonly sensorSupport: import("./endpoint-air.js").EndpointOptionsAirSensors;
    getEndpoints(validatedNames: import("./config-types.js").EntityName[]): import("./endpoint-base.js").EndpointBase[];
    start(): Promise<void>;
    stop(): Promise<void>;
    setPower(powerOn: boolean): Promise<void>;
    setFanAuto(): Promise<void>;
    setDirection(forward: boolean): Promise<void>;
    setFanSpeed(speed: number): Promise<void>;
    setNightMode(night: boolean): Promise<void>;
    setOscillateLeftRight(oscillate: boolean): Promise<void>;
    setOscillateUpDown(oscillate: boolean): Promise<void>;
    setOscillateBreeze(breeze: boolean): Promise<void>;
    setState(productState: import("./dyson-mqtt-air.js").DysonMqttProductState): Promise<void>;
    mapDysonFanControlStatus(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): import("./endpoint-air.js").UpdateAirFan;
    mapDysonFilterStatus(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): import("./endpoint-air.js").UpdateAirFilterMonitoring;
    changed: import("./decorator-changed.js").Changed;
    readonly log: import("matterbridge/logger").AnsiLogger;
    readonly config: import("./config-types.js").Config;
    readonly device: import("./dyson-mqtt-client.js").DeviceConfigMqtt;
    readonly mqtt: import("./dyson-mqtt-air.js").DysonMqttAir;
    readonly uniqueId: string;
    readonly classStatic: typeof import("./dyson-device-base.js").DysonDevice;
    readonly modelName: string;
    readonly modelNumber: string;
    readonly deviceName: string;
    readonly serialNumber: string;
    readonly productId: number;
}) & typeof DysonDeviceAirCoolLink;
export declare class DysonDeviceAirHotCoolLink extends DysonDeviceAirHotCoolLink_base {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
    static readonly filters: {
        hepa: string[];
    };
}
export declare class DysonDeviceAirHotCoolLinkA extends DysonDeviceAirHotCoolLink {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare abstract class DysonDeviceAirCoolBase extends DysonDeviceAirBase {
    static readonly filters: {
        hepa: string[];
    };
}
export declare class DysonDeviceAirCool extends DysonDeviceAirCoolBase {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirCoolE extends DysonDeviceAirCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirCoolK extends DysonDeviceAirCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirCoolM extends DysonDeviceAirCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirCoolDesk extends DysonDeviceAirCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHumidifyCool extends DysonDeviceAirCoolBase {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHumidifyCoolE extends DysonDeviceAirHumidifyCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHumidifyCoolK extends DysonDeviceAirHumidifyCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
declare const DysonDeviceAirHotCool_base: (abstract new (...args: any[]) => {
    installHandlers(endpoints: import("./endpoint-air.js").EndpointsAir): Promise<void>;
    setTargetTemperature(celsius: number): Promise<void>;
    setHeating(heat: boolean): Promise<void>;
    getEntities(): {
        name: import("./config-types.js").EntityName;
        description: string;
    }[];
    updateClusterAttributes(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): Promise<void>;
    mqttListener: () => void;
    endpoints?: import("./endpoint-air.js").EndpointsAir;
    hasBreeze: boolean;
    hasHepaFilter: boolean;
    hasCarbonFilter: boolean;
    hasDirection: boolean;
    hasLeftRight: boolean;
    hasUpDown: boolean;
    useFanModeOff: boolean;
    makeEndpoints(validatedNames: import("./config-types.js").EntityName[]): import("./endpoint-air.js").EndpointsAir;
    readonly sensorSupport: import("./endpoint-air.js").EndpointOptionsAirSensors;
    getEndpoints(validatedNames: import("./config-types.js").EntityName[]): import("./endpoint-base.js").EndpointBase[];
    start(): Promise<void>;
    stop(): Promise<void>;
    setPower(powerOn: boolean): Promise<void>;
    setFanAuto(): Promise<void>;
    setDirection(forward: boolean): Promise<void>;
    setFanSpeed(speed: number): Promise<void>;
    setNightMode(night: boolean): Promise<void>;
    setOscillateLeftRight(oscillate: boolean): Promise<void>;
    setOscillateUpDown(oscillate: boolean): Promise<void>;
    setOscillateBreeze(breeze: boolean): Promise<void>;
    setState(productState: import("./dyson-mqtt-air.js").DysonMqttProductState): Promise<void>;
    mapDysonFanControlStatus(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): import("./endpoint-air.js").UpdateAirFan;
    mapDysonFilterStatus(status: import("./dyson-mqtt.js").DysonMqttStatus<import("./dyson-mqtt-air.js").DysonMqttStatusAir>): import("./endpoint-air.js").UpdateAirFilterMonitoring;
    changed: import("./decorator-changed.js").Changed;
    readonly log: import("matterbridge/logger").AnsiLogger;
    readonly config: import("./config-types.js").Config;
    readonly device: import("./dyson-mqtt-client.js").DeviceConfigMqtt;
    readonly mqtt: import("./dyson-mqtt-air.js").DysonMqttAir;
    readonly uniqueId: string;
    readonly classStatic: typeof import("./dyson-device-base.js").DysonDevice;
    readonly modelName: string;
    readonly modelNumber: string;
    readonly deviceName: string;
    readonly serialNumber: string;
    readonly productId: number;
}) & typeof DysonDeviceAirCool;
export declare class DysonDeviceAirHotCool extends DysonDeviceAirHotCool_base {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHotCoolE extends DysonDeviceAirHotCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHotCoolK extends DysonDeviceAirHotCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirHotCoolM extends DysonDeviceAirHotCool {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
}
export declare class DysonDeviceAirBigQuiet extends DysonDeviceAirBase {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
    static readonly filters: {
        hepa: string[];
        carbon: string[];
    };
}
export declare class DysonDeviceCool extends DysonDeviceAirBase {
    static readonly model: {
        type: string;
        number: string;
        name: string;
    };
    static readonly filters: {};
}
export {};
//# sourceMappingURL=dyson-device-air.d.ts.map