import type { curtain3ServiceData, curtainServiceData } from "../types/bledevicestatus.js"; import type { NobleTypes } from "../types/types.js"; import { Buffer } from "node:buffer"; import { SwitchbotDevice } from "../device.js"; /** * Class representing a WoCurtain device. * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/curtain.md * @see https://github.com/OpenWonderLabs/SwitchBotAPI-BLE/blob/latest/devicetypes/curtain3.md */ export declare class WoCurtain extends SwitchbotDevice { /** * Parses the service data for WoCurtain. * @param {Buffer} serviceData - The service data buffer. * @param {Buffer} manufacturerData - The manufacturer data buffer. * @param {Function} emitLog - The function to emit log messages. * @param {boolean} [reverse] - Whether to reverse the position. * @returns {Promise} - Parsed service data or null if invalid. */ static parseServiceData(serviceData: Buffer, manufacturerData: Buffer, emitLog: (level: string, message: string) => void, reverse?: boolean): Promise; constructor(peripheral: NobleTypes["peripheral"], noble: NobleTypes["noble"]); /** * Opens the curtain. * @param {number} [mode] - Running mode (0x01 = QuietDrift, 0xFF = Default). * @returns {Promise} */ open(mode?: number): Promise; /** * Closes the curtain. * @param {number} [mode] - Running mode (0x01 = QuietDrift, 0xFF = Default). * @returns {Promise} */ close(mode?: number): Promise; /** * Pauses the curtain. * @returns {Promise} */ pause(): Promise; /** * Runs the curtain to the target position. * @param {number} percent - The percentage of the target position. * @param {number} [mode] - Running mode (0x01 = QuietDrift, 0xFF = Default). * @returns {Promise} */ runToPos(percent: number, mode?: number): Promise; /** * Sends a command to the curtain. * @param {number[]} bytes - The command bytes. * @returns {Promise} */ operateCurtain(bytes: number[]): Promise; } //# sourceMappingURL=wocurtain.d.ts.map