UNPKG

rainbird

Version:

The Rainbird library allows you to access your RainBird Controller.

59 lines 3.26 kB
import * as events from 'node:events'; import PQueue from 'p-queue'; import { AcknowledgedResponse } from './responses/AcknowledgedResponse.js'; import { AvailableZonesResponse } from './responses/AvailableZonesResponse.js'; import { ControllerDateGetResponse } from './responses/ControllerDateGetResponse.js'; import { ControllerStateResponse } from './responses/ControllerStateResponse.js'; import { ControllerTimeGetResponse } from './responses/ControllerTimeGetResponse.js'; import { CurrentZoneResponse } from './responses/CurrentZoneResponse.js'; import { IrrigationDelayGetResponse } from './responses/IrrigationDelayGetResponse.js'; import { IrrigationStateResponse } from './responses/IrrigationStateResponse.js'; import { ModelAndVersionResponse } from './responses/ModelAndVersionResponse.js'; import { NotAcknowledgedResponse } from './responses/NotAcknowledgedResponse.js'; import { ProgramZoneStateResponse } from './responses/ProgramZoneStateResponse.js'; import { RainSensorStateResponse } from './responses/RainSensorStateResponse.js'; import { RawResponse } from './responses/RawResponse.js'; import { SerialNumberResponse } from './responses/SerialNumberResponse.js'; export declare class RainBirdClient extends events.EventEmitter { private readonly address; private readonly password; private readonly showRequestResponse; private readonly RETRY_DELAY; queue: PQueue; constructor(address: string, password: string, showRequestResponse: boolean); /** * Emit a log event. * @param level The log level. * @param message The log message. */ emitLog(level: string, message: string): void; getModelAndVersion(): Promise<ModelAndVersionResponse>; getAvailableZones(): Promise<AvailableZonesResponse>; getSerialNumber(): Promise<SerialNumberResponse>; runProgram(program: number): Promise<AcknowledgedResponse | NotAcknowledgedResponse>; runZone(zone: number, duration: number): Promise<AcknowledgedResponse | NotAcknowledgedResponse>; advanceZone(): Promise<AcknowledgedResponse | NotAcknowledgedResponse>; stopIrrigation(): Promise<AcknowledgedResponse | NotAcknowledgedResponse>; getControllerState(): Promise<ControllerStateResponse>; getControllerDate(): Promise<ControllerDateGetResponse>; setControllerDate(day: number, month: number, year: number): Promise<AcknowledgedResponse>; getControllerTime(): Promise<ControllerTimeGetResponse>; setControllerTime(hour: number, minute: number, second: number): Promise<AcknowledgedResponse>; getIrrigationState(): Promise<IrrigationStateResponse>; getRainSensorState(): Promise<RainSensorStateResponse>; getCurrentZone(): Promise<CurrentZoneResponse>; getProgramZoneState(page?: number): Promise<ProgramZoneStateResponse>; getRaw(type: number, page?: number): Promise<RawResponse>; getIrrigationDelay(): Promise<IrrigationDelayGetResponse>; setIrrigstionDelay(days: number): Promise<AcknowledgedResponse>; private sendRequest; private getResponse; private encrypt; private decrypt; private formatRequest; private createRequestConfig; private toBytes; private addPadding; private delay; } //# sourceMappingURL=RainBirdClient.d.ts.map