import { ChildInfo } from './@types/ChildListInfo'; import DeviceInfo from './@types/DeviceInfo'; import Protocol from './@types/Protocol'; import { Logger } from 'homebridge'; import commands from './commands'; export interface HandshakeData { cookie?: string; expire: number; } type Commands = typeof commands; type Command = keyof Commands; type CommandReturnType = ReturnType; export default class TPLink { private readonly ip; private readonly email; private readonly password; private readonly log; get protocol(): Protocol; private _protocol; private readonly lock; private api; private classSetup; private tryResendCommand; private _prevPowerState; private _unsentData; private commandCache; private infoCache?; private childInfoCache; constructor(ip: string, email: string, password: string, log: Logger); setup(): Promise; cacheSendCommand(deviceId: string, command: T, ...args: Parameters): Promise>; getInfo(): Promise; getChildInfo(childId: string): Promise; sendCommand(command: T, ...args: Parameters): Promise>; sendHubCommand(command: T, childId: string, ...args: Parameters): Promise>; private sendCommandWithNoLock; private checkProtocol; } export {}; //# sourceMappingURL=TPLink.d.ts.map