homebridge-homewizard-energy-socket
Version:
This Homebridge plugin exposes your HomeWizard Energy Sockets to Apple HomeKit. So you can use the Home App to switch your Energy Sockets on or off and integrate the Energy Sockets into your Home Automations.
39 lines • 1.87 kB
TypeScript
import { Logger } from 'homebridge';
import { HomeWizardApiBasicInformationResponse, HomeWizardApiIdentifyResponse, HomeWizardApiStatePutParams, HomeWizardApiStateResponse, EnergySocketDataResponse, P1MeterDataResponse, HomeWizardDeviceTypes } from './types';
import { Dispatcher } from 'undici';
export declare class HomeWizardApiError extends Error {
constructor(message: string);
}
export declare class HomeWizardApiResponseError extends HomeWizardApiError {
url: string;
statusCode: number;
response: string;
constructor(message: string, url: string, statusCode: number, response: string);
}
interface HomeWizardApiOptions {
apiVersion?: 'v1';
logger: Logger;
}
export declare class HomeWizardApi {
private readonly log;
private readonly url;
private apiVersion;
constructor(url: string, options: HomeWizardApiOptions);
get endpoints(): {
basic: string;
state: string;
identify: string;
data: string;
};
get loggerPrefix(): string;
isResponseOk(response: Dispatcher.ResponseData): boolean;
throwApiResponseError(url: string, method: string, response: Dispatcher.ResponseData): Promise<never>;
getBasicInformation(): Promise<HomeWizardApiBasicInformationResponse>;
getState(): Promise<HomeWizardApiStateResponse>;
putState<Keys extends keyof HomeWizardApiStateResponse>(params: HomeWizardApiStatePutParams<Keys>): Promise<HomeWizardApiStatePutParams<Keys>>;
putIdentify(firmwareVersion: number | null): Promise<HomeWizardApiIdentifyResponse>;
getData<T extends EnergySocketDataResponse>(productType: HomeWizardDeviceTypes.WIFI_ENERGY_SOCKET, disableLogs?: boolean): Promise<T>;
getData<T extends P1MeterDataResponse>(productType: HomeWizardDeviceTypes.WIFI_PI_METER, disableLogs?: boolean): Promise<T>;
}
export {};
//# sourceMappingURL=api.d.ts.map