/** * Driver command types and interfaces for Eufy driver * * Defines all command interfaces for driver-level operations in the Eufy Security WebSocket API. * Includes authentication, connection, event, and log commands. */ import { DRIVER_COMMANDS, DriverCommandType, StorageType } from "./constants"; import { BaseCommand } from "../types/commands"; /** * EventFilterType is used for event queries, as per upstream API documentation. */ export interface EventFilterType { stationSN?: string; storageType?: StorageType; } /** * Base interface for driver commands */ export interface BaseDriverCommand extends BaseCommand { } /** * Connect to Eufy Cloud command */ export interface ConnectCommand extends BaseDriverCommand { } /** * Disconnect from Eufy Cloud command */ export interface DisconnectCommand extends BaseDriverCommand { } /** * Check if driver is connected to Eufy Cloud */ export interface IsConnectedCommand extends BaseDriverCommand { } /** * Check if push notifications are connected */ export interface IsPushConnectedCommand extends BaseDriverCommand { } /** * Set verification code for 2FA */ export interface SetVerifyCodeCommand extends BaseDriverCommand { captchaId: string; verifyCode: string; } /** * Set captcha for login */ export interface SetCaptchaCommand extends BaseDriverCommand { captchaId: string; captcha: string; } /** * Poll refresh command */ export interface PollRefreshCommand extends BaseDriverCommand { } /** * Get video events command */ export interface GetVideoEventsCommand extends BaseDriverCommand { startTimestampMs?: number; endTimestampMs?: number; filter?: EventFilterType; maxResults?: number; } /** * Get alarm events command */ export interface GetAlarmEventsCommand extends BaseDriverCommand { startTimestampMs?: number; endTimestampMs?: number; filter?: EventFilterType; maxResults?: number; } /** * Get history events command */ export interface GetHistoryEventsCommand extends BaseDriverCommand { startTimestampMs?: number; endTimestampMs?: number; filter?: EventFilterType; maxResults?: number; } /** * Check if MQTT is connected */ export interface IsMqttConnectedCommand extends BaseDriverCommand { } /** * Set log level command */ export interface SetLogLevelCommand extends BaseDriverCommand { level: string; } /** * Get log level command */ export interface GetLogLevelCommand extends BaseDriverCommand { } /** * Start listening to logs command */ export interface StartListeningLogsCommand extends BaseDriverCommand { } /** * Stop listening to logs command */ export interface StopListeningLogsCommand extends BaseDriverCommand { } /** * Check if listening to logs is started */ export interface IsListeningLogsCommand extends BaseDriverCommand { } /** * Union type for all driver commands */ export type DriverCommand = ConnectCommand | DisconnectCommand | IsConnectedCommand | IsPushConnectedCommand | SetVerifyCodeCommand | SetCaptchaCommand | PollRefreshCommand | GetVideoEventsCommand | GetAlarmEventsCommand | GetHistoryEventsCommand | IsMqttConnectedCommand | SetLogLevelCommand | GetLogLevelCommand | StartListeningLogsCommand | StopListeningLogsCommand | IsListeningLogsCommand; //# sourceMappingURL=commands.d.ts.map