UNPKG

matterbridge-roborock-vacuum-plugin

Version:
84 lines 2.66 kB
import { PlatformConfig } from 'matterbridge'; export type RoborockPluginPlatformConfig = PlatformConfig & { authentication: AuthenticationConfiguration; pluginConfiguration: PluginConfiguration; advancedFeature: AdvancedFeatureConfiguration; }; export interface AuthenticationConfiguration { username: string; region: 'US' | 'EU' | 'CN' | 'RU'; forceAuthentication: boolean; authenticationMethod: 'VerificationCode' | 'Password'; verificationCode?: string; password?: string; } export interface PluginConfiguration { whiteList: string[]; enableServerMode: boolean; enableMultipleMap: boolean; sanitizeSensitiveLogs: boolean; refreshInterval: number; debug: boolean; unregisterOnShutdown: boolean; } export interface AdvancedFeatureConfiguration { enableAdvancedFeature: boolean; settings: AdvancedFeatureSetting; } export interface EmailNotificationSettings { smtpHost?: string; smtpPort?: number; smtpSecure?: boolean; smtpUser?: string; smtpPassword?: string; recipient?: string; } export interface AdvancedFeatureSetting { clearStorageOnStartup: boolean; showRoutinesAsRoom: boolean; includeDockStationStatus: boolean; includeVacuumErrorStatus: boolean; forceRunAtDefault: boolean; useVacationModeToSendVacuumToDock: boolean; enableCleanModeMapping: boolean; cleanModeSettings: CleanModeSettings; overrideMatterConfiguration: boolean; matterOverrideSettings: MatterOverrideSettings; enableEmailNotification: boolean; emailNotificationSettings: EmailNotificationSettings; } export interface DeviceProductNameOverride { serialNumber: string; productName: string; } export interface MatterOverrideSettings { matterVendorName: string; matterVendorId: number; matterProductName: string; matterProductId: number; deviceProductNames?: DeviceProductNameOverride[]; } export interface CleanModeSettings { vacuuming: VacuumingCleanModeSetting; mopping: MoppingCleanModeSetting; vacmop: VacMopCleanModeSetting; } interface VacuumingCleanModeSetting { fanMode: string; mopRouteMode: string; } interface MoppingCleanModeSetting { waterFlowMode: string; mopRouteMode: string; distanceOff: number; } interface VacMopCleanModeSetting { fanMode: string; waterFlowMode: string; mopRouteMode: string; distanceOff: number; } export declare function createDefaultAdvancedFeature(): AdvancedFeatureConfiguration; export declare function createDefaultCleanModeSettings(): CleanModeSettings; export {}; //# sourceMappingURL=RoborockPluginPlatformConfig.d.ts.map