@mega-yfue/eufy-sdk 0.5.0-beta.22 → 0.5.0-beta.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -15,10 +15,11 @@
15
15
  /** The parsed DP capability catalog for one product SKU. */
16
16
  export interface DpCatalog {
17
17
  /**
18
- * For enum-type DPs: the valid integer values as declared in the catalog.
19
- * Absent for non-enum DPs (bool, raw, integer, string).
18
+ * For enum-type DPs: the range members exactly as the catalog lists them, as strings — value names
19
+ * (`"Quiet"`) or numeric strings (`"0"`), whichever the SKU's catalog uses. What a member means is
20
+ * the reading capability's to decide. Absent for non-enum DPs (bool, raw, integer, string).
20
21
  */
21
- readonly enumRanges: ReadonlyMap<number, readonly number[]>;
22
+ readonly enumRanges: ReadonlyMap<number, readonly string[]>;
22
23
  }
23
24
  /** Returned whenever the API call fails or the response shape is not recognised. */
24
25
  export declare const EMPTY_DP_CATALOG: DpCatalog;
@@ -15,7 +15,7 @@ export declare const SUCTION_DP: {
15
15
  * Suction levels — the app's `SuctionEnum` (`getSuctionEnumByValue`). This is a **fixed** value→label
16
16
  * map with **no model argument**: a given int means the same thing on every RoboVac. What varies per
17
17
  * model is only **availability** — a device's `get_product_data_point` range may expose a narrower
18
- * subset (the T2351 catalog lists 0-3) — so the `suction` property stays a raw int rather than being
18
+ * subset (the T2351 catalog lists `Quiet`–`Max`) — so the `suction` property stays a raw int rather than being
19
19
  * constrained per device, and {@link suctionLevelName} names a reported level.
20
20
  *
21
21
  * `BoostIQ` (4) is a real suction level in this scale. The separate `boostIq`
@@ -45,11 +45,11 @@ export declare function suctionLevelName(value: number): string | undefined;
45
45
  export type SuctionActions = Surface<typeof SUCTION_MEMBERS> & {
46
46
  /**
47
47
  * The suction levels this device supports, sourced from the per-SKU `get_product_data_point` catalog
48
- * range for DP 158. Narrower than the full six {@link SuctionLevel} values on many models — a T2351
49
- * reports `[0, 1, 2, 3]`.
48
+ * range for DP 158. Narrower than the full six {@link SuctionLevel} values on many models — a T2351's
49
+ * catalog lists `Quiet`, `Standard`, `Turbo` and `Max`, which answers `[0, 1, 2, 3]`.
50
50
  *
51
- * `undefined` when the catalog is absent or does not cover DP 158. Only meaningful on devices where
52
- * `setSuctionLevel` is installed (AIoT vacuums).
51
+ * `undefined` when the catalog is absent, does not cover DP 158, or lists only members outside the
52
+ * known scale. Only meaningful on devices where `setSuctionLevel` is installed (AIoT vacuums).
53
53
  */
54
54
  readonly supportedLevels?: readonly SuctionLevelValue[];
55
55
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mega-yfue/eufy-sdk",
3
- "version": "0.5.0-beta.22",
3
+ "version": "0.5.0-beta.24",
4
4
  "description": "One typed TypeScript client for the Anker eufy v6 cloud — capability-driven devices, realtime events over P2P/MQTT/push, and live media",
5
5
  "license": "Apache-2.0",
6
6
  "author": "mega-yfue",
@@ -74,16 +74,9 @@
74
74
  "dependencies": {
75
75
  "jpeg-js": "^0.4.4",
76
76
  "mqtt": "^5.16.0",
77
+ "node-datachannel": "^0.33.4",
77
78
  "protobufjs": "^8.8.0"
78
79
  },
79
- "peerDependencies": {
80
- "node-datachannel": "^0.33.4"
81
- },
82
- "peerDependenciesMeta": {
83
- "node-datachannel": {
84
- "optional": true
85
- }
86
- },
87
80
  "devDependencies": {
88
81
  "@types/node": "^26.6.3",
89
82
  "esbuild": "^0.28.2",