import { BaseTapoDevice, TapoCredentials, TapoApiRequest, TapoApiResponse, PlugDeviceInfo, PlugUsageInfo, FeatureNotSupportedError, DeviceCapabilityError, Result, DeviceMethodOptions } from '../../types'; /** * P110 Smart Plug - Plug with energy monitoring capabilities */ export declare class P110Plug extends BaseTapoDevice { private unifiedProtocol; private featureCache; private deviceModel?; private requestQueue; constructor(ip: string, credentials: TapoCredentials); private checkDeviceConnectivity; connect(): Promise; disconnect(): Promise; /** * Check if device is currently authenticated */ isAuthenticated(): boolean; getDeviceInfo(): Promise; /** * Check if the device supports energy monitoring features * P110 supports energy monitoring */ hasEnergyMonitoring(): Promise; /** * Check if the device supports a specific feature */ supportsFeature(feature: string): Promise; turnOn(): Promise; turnOff(): Promise; toggle(): Promise; on(): Promise; off(): Promise; isOn(): Promise; /** * Get current power consumption in watts */ getCurrentPower(options?: DeviceMethodOptions): Promise; /** * Get energy usage data */ getEnergyUsage(): Promise; /** * Get energy data with detailed statistics */ getEnergyData(): Promise; getUsageInfo(options?: DeviceMethodOptions): Promise; /** * Get usage info using Result pattern for better error handling */ getUsageInfoResult(): Promise>; getTodayEnergy(options?: DeviceMethodOptions): Promise; getMonthEnergy(options?: DeviceMethodOptions): Promise; getTodayRuntime(options?: DeviceMethodOptions): Promise; getMonthRuntime(options?: DeviceMethodOptions): Promise; isOverheated(): Promise; getOnTime(): Promise; setDeviceInfo(params: Record): Promise; protected sendRequest(request: TapoApiRequest): Promise>; }