UNPKG

homebridge-pura

Version:

Homebridge plugin for Pura smart fragrance diffusers

50 lines (49 loc) 1.3 kB
/** * Pura API Client * Based on pypura library: https://github.com/natekspencer/pypura */ import { Logging } from 'homebridge'; import { PuraDevice, PuraAuthTokens } from './puraTypes.js'; export declare class PuraApi { private userPool; private cognitoUser; private session; private readonly log; constructor(log: Logging); /** * Authenticate with Pura API */ authenticate(username: string, password: string): Promise<PuraAuthTokens>; /** * Refresh authentication tokens */ refreshToken(): Promise<PuraAuthTokens>; /** * Get authorization header for API requests */ private getAuthHeader; /** * Make authenticated API request */ private makeRequest; /** * Get all devices */ getDevices(): Promise<PuraDevice[]>; /** * Set device intensity */ setIntensity(deviceId: string, bay: number, intensity: number): Promise<boolean>; /** * Set always on mode */ setAlwaysOn(deviceId: string, bay: number): Promise<boolean>; /** * Stop all diffusion */ stopAll(deviceId: string): Promise<boolean>; /** * Set timer */ setTimer(deviceId: string, bay: number, intensity: number, durationMinutes: number): Promise<boolean>; }