UNPKG

homebridge-lg-thinq-ceiling-fan

Version:

A Homebridge plugin for controlling LG ceiling fans via the LG ThinQ platform with working speed control

33 lines (32 loc) 1.3 kB
import { AuthData, GatewayInfo, LGDevice } from './settings'; export declare class LGApi { private axiosInstance; private authData; private gatewayInfo; private country; private language; private tokenObtainedAt; private lastApiError; private consecutiveErrors; private circuitBreakerOpen; constructor(country?: string, language?: string); private generateRandomString; private createSignature; getGatewayInfo(): Promise<GatewayInfo>; private getUserNumber; authenticateWithToken(refreshToken: string): Promise<AuthData>; authenticateWithCredentials(username: string, password: string): Promise<AuthData>; getDevices(): Promise<LGDevice[]>; getDeviceStatus(deviceId: string): Promise<any>; sendCommand(deviceId: string, command: any): Promise<any>; refreshAccessToken(): Promise<void>; autoRefreshWithCredentials(username: string, password: string): Promise<AuthData>; isTokenExpired(): boolean; private isCircuitBreakerOpen; private recordApiSuccess; private recordApiError; executeWithRetry<T>(apiCall: () => Promise<T>, username?: string, password?: string): Promise<T>; isAuthenticated(): boolean; validateAuthentication(): Promise<boolean>; getAuthData(): AuthData | null; }