UNPKG

iobroker.roborock

Version:
207 lines (186 loc) 4.8 kB
export interface Q10DevicePoint { x: number; y: number; } export interface Q10DevicePose extends Q10DevicePoint { phi?: number; } export interface Q10MapArrPoint { x: number; y: number; } export interface Q10MapPixelPoint { x: number; y: number; } export interface Q10PixelPose extends Q10MapPixelPoint { phi?: number; } export interface Q10SourceArea { id?: number; type: "erase" | "virtualWall" | "forbid" | "mop" | "threshold" | "carpet"; areaType?: number; name?: string; points: Q10DevicePoint[]; } export interface Q10SourceObstacle { point: Q10DevicePoint; type?: "obstacle" | "skip"; } export interface Q10SourceSuspectedPoint { point: Q10DevicePoint; type: "threshold" | "easycard" | "cliff"; } export interface Q10SourcePathPoint extends Q10DevicePoint { type?: number; update?: number; } export interface Q10SourceRoom { roomID: number; roomName: string; roomNameDataStr?: string; roomType: number; roomMaterial: number; cleanOrder: number; cleanCount: number; funLevel: number; waterLevel: number; cleanType: number; cleanLine: number; } export interface Q10SourceData { version: number; mapId: number; mapWidth: number; mapHeight: number; mapRate: number; resolution: number; xMin: number; yMin: number; chargePosition?: Q10DevicePose; robotPosition?: Q10DevicePose; rooms: Q10SourceRoom[]; eraseAreas: Q10SourceArea[]; virtualWalls: Q10SourceArea[]; forbidAreas: Q10SourceArea[]; mopAreas: Q10SourceArea[]; thresholdAreas: Q10SourceArea[]; carpetAreas: Q10SourceArea[]; pathPoints: Q10SourcePathPoint[]; obstacles: Q10SourceObstacle[]; skipPoints: Q10SourceObstacle[]; suspectedPoints: Q10SourceSuspectedPoint[]; dataReadIdx?: number; tempRoomColorPlanStr?: string; tempClipEraseRoomColorPlanStr?: string; mapCeramicTilePath?: Q10MapArrPoint[][]; mapHorizontalFloorBoardPath?: Q10MapArrPoint[][]; mapVerticalFloorBoardPath?: Q10MapArrPoint[][]; carpetGrid?: Buffer; hasSelfIdentificationCarpet: boolean; } export interface Q10RuntimeStatePatch { virtualWalls?: Q10SourceArea[]; forbidAreas?: Q10SourceArea[]; mopAreas?: Q10SourceArea[]; thresholdAreas?: Q10SourceArea[]; carpetAreas?: Q10SourceArea[]; suspectedPoints?: Q10SourceSuspectedPoint[]; pathPoints?: Q10SourcePathPoint[]; } export interface Q10CreatorArea { id?: number; type: Q10SourceArea["type"]; areaType?: number; name?: string; points: Q10MapPixelPoint[]; } export interface Q10CreatorLine { id?: number; type: "virtualWall"; points: [Q10MapPixelPoint, Q10MapPixelPoint]; } export interface Q10CreatorRoomModel { roomID: number; gridValue: number; roomName: string; roomType: number; roomMaterial: number; cleanOrder: number; cleanCount: number; funLevel: number; waterLevel: number; cleanType: number; cleanLine: number; colorID: number; centerPoint: Q10MapPixelPoint; transCenterPoint: Q10MapPixelPoint; borderArr: Q10MapPixelPoint[][]; borderEdge: { left: number; top: number; right: number; bottom: number }; bounds: { left: number; top: number; right: number; bottom: number }; } export interface Q10CreatorObstacle { point: Q10MapPixelPoint; type: "obstacle" | "skip"; } export interface Q10CreatorSuspectedPoint { point: Q10MapPixelPoint; type: "threshold" | "easycard" | "cliff"; } export interface Q10CreatorPathPoint extends Q10MapPixelPoint { type?: number; update?: number; } export interface Q10CreatorSelfIdentifiedCarpet { id: number; carpetID: number; left: number; top: number; right: number; bottom: number; width: number; height: number; lt: Q10MapPixelPoint; rb: Q10MapPixelPoint; mask: Buffer; } export interface Q10CreatorRoomTangentInfo { roomID1: number; roomID2: number; tangent: 0 | 1; } export interface Q10CreatorData { q10Detected: true; mapRate: number; mapWidth: number; mapHeight: number; roomModels: Q10CreatorRoomModel[]; clipEraseRoomModels: Q10CreatorRoomModel[]; eraseAreas: Q10CreatorArea[]; virtualWalls: Q10CreatorLine[]; forbidAreas: Q10CreatorArea[]; mopAreas: Q10CreatorArea[]; thresholdAreas: Q10CreatorArea[]; carpetAreas: Q10CreatorArea[]; obstaclePixels: Q10CreatorObstacle[]; skipPixels: Q10CreatorObstacle[]; suspectedPoints: Q10CreatorSuspectedPoint[]; pathPixels: Q10CreatorPathPoint[]; chargerPixel?: Q10PixelPose; robotPixel?: Q10PixelPose; selfIdentifiedCarpets: Q10CreatorSelfIdentifiedCarpet[]; roomTangentInfo: Q10CreatorRoomTangentInfo[]; clipEraseRoomTangentInfo: Q10CreatorRoomTangentInfo[]; clipEraseMapGrid?: Buffer; materialPaths: { ceramicTile: Q10MapPixelPoint[][]; horizontalFloorBoard: Q10MapPixelPoint[][]; verticalFloorBoard: Q10MapPixelPoint[][]; }; roomMaterialRoomIds: { ceramicTile: number[]; horizontalFloorBoard: number[]; verticalFloorBoard: number[]; other: number[]; }; }