@felixgeelhaar/govee-api-client
Version:
Enterprise-grade TypeScript client library for the Govee Developer REST API
28 lines • 1.1 kB
TypeScript
import { Logger } from 'pino';
import { IGoveeDeviceRepository } from '../domain/repositories/IGoveeDeviceRepository';
import { GoveeDevice } from '../domain/entities/GoveeDevice';
import { DeviceState } from '../domain/entities/DeviceState';
import { Command } from '../domain/entities/Command';
interface GoveeApiConfig {
apiKey: string;
timeout?: number;
logger?: Logger;
}
export declare class GoveeDeviceRepository implements IGoveeDeviceRepository {
private readonly httpClient;
private readonly logger;
private static readonly BASE_URL;
private generateRequestId;
constructor(config: GoveeApiConfig);
private validateConfig;
private setupInterceptors;
private handleHttpError;
findAll(): Promise<GoveeDevice[]>;
findState(deviceId: string, sku: string): Promise<DeviceState>;
sendCommand(deviceId: string, sku: string, command: Command): Promise<void>;
private validateDeviceParams;
private convertCommandToCapability;
private mapCapabilitiesToStateProperties;
}
export {};
//# sourceMappingURL=GoveeDeviceRepository.d.ts.map