@seamapi/types 0.17.0 → 0.19.0

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.
Files changed (37) hide show
  1. package/lib/seam/connect/route-types.d.ts +877 -12
  2. package/lib/seam/connect/unstable/model-types.d.ts +1 -1
  3. package/lib/seam/connect/unstable/models/capability-properties/access-code.d.ts +70 -0
  4. package/lib/seam/connect/unstable/models/capability-properties/access-code.js +28 -0
  5. package/lib/seam/connect/unstable/models/capability-properties/access-code.js.map +1 -0
  6. package/lib/seam/connect/unstable/models/capability-properties/index.d.ts +286 -0
  7. package/lib/seam/connect/unstable/models/capability-properties/index.js +10 -0
  8. package/lib/seam/connect/unstable/models/capability-properties/index.js.map +1 -0
  9. package/lib/seam/connect/unstable/models/capability-properties/lock.d.ts +24 -0
  10. package/lib/seam/connect/unstable/models/capability-properties/lock.js +11 -0
  11. package/lib/seam/connect/unstable/models/capability-properties/lock.js.map +1 -0
  12. package/lib/seam/connect/unstable/models/capability-properties/thermostat.d.ts +302 -0
  13. package/lib/seam/connect/unstable/models/capability-properties/thermostat.js +46 -0
  14. package/lib/seam/connect/unstable/models/capability-properties/thermostat.js.map +1 -0
  15. package/lib/seam/connect/unstable/models/device-metadata.d.ts +722 -0
  16. package/lib/seam/connect/unstable/models/device-metadata.js +143 -0
  17. package/lib/seam/connect/unstable/models/device-metadata.js.map +1 -0
  18. package/lib/seam/connect/unstable/models/index.d.ts +1 -0
  19. package/lib/seam/connect/unstable/models/index.js +1 -0
  20. package/lib/seam/connect/unstable/models/index.js.map +1 -1
  21. package/lib/seam/connect/unstable/models/managed-device.d.ts +1549 -7
  22. package/lib/seam/connect/unstable/models/managed-device.js +31 -9
  23. package/lib/seam/connect/unstable/models/managed-device.js.map +1 -1
  24. package/lib/seam/connect/unstable/schemas.d.ts +1 -1
  25. package/lib/seam/connect/unstable/schemas.js +1 -1
  26. package/lib/seam/connect/unstable/schemas.js.map +1 -1
  27. package/package.json +4 -1
  28. package/src/lib/seam/connect/route-types.ts +1201 -12
  29. package/src/lib/seam/connect/unstable/model-types.ts +4 -0
  30. package/src/lib/seam/connect/unstable/models/capability-properties/access-code.ts +33 -0
  31. package/src/lib/seam/connect/unstable/models/capability-properties/index.ts +26 -0
  32. package/src/lib/seam/connect/unstable/models/capability-properties/lock.ts +11 -0
  33. package/src/lib/seam/connect/unstable/models/capability-properties/thermostat.ts +53 -0
  34. package/src/lib/seam/connect/unstable/models/device-metadata.ts +162 -0
  35. package/src/lib/seam/connect/unstable/models/index.ts +1 -0
  36. package/src/lib/seam/connect/unstable/models/managed-device.ts +44 -9
  37. package/src/lib/seam/connect/unstable/schemas.ts +5 -1
@@ -1,21 +1,43 @@
1
1
  import { z } from 'zod';
2
2
  import { capabilities } from './capabilities-supported.js';
3
+ import { capability_properties } from './capability-properties/index.js';
4
+ import { device_metadata } from './device-metadata.js';
3
5
  import { any_device_type } from './device-type.js';
6
+ export const battery_status = z.enum(['critical', 'low', 'good', 'full']);
7
+ export const common_device_properties = z.object({
8
+ online: z.boolean(),
9
+ name: z.string(),
10
+ model: z.object({
11
+ display_name: z.string(),
12
+ }),
13
+ has_direct_power: z.boolean().optional(),
14
+ battery_level: z.number().min(0).max(1).optional(),
15
+ battery: z
16
+ .object({
17
+ level: z.number().min(0).max(1),
18
+ status: battery_status,
19
+ })
20
+ .optional(),
21
+ // todo: use enum
22
+ manufacturer: z.string().optional(),
23
+ image_url: z.string().url().optional(),
24
+ image_alt_text: z.string().optional(),
25
+ serial_number: z.string().optional(),
26
+ });
4
27
  export const managed_device = z.object({
5
28
  device_id: z.string().uuid(),
6
29
  device_type: any_device_type,
7
30
  capabilities_supported: z.array(capabilities),
8
- properties: z
31
+ properties: common_device_properties
32
+ .and(device_metadata)
33
+ .and(capability_properties),
34
+ location: z
35
+ // todo: optional instead of nullable
9
36
  .object({
10
- online: z.boolean(),
11
- name: z.string(),
12
- model: z.object({
13
- display_name: z.string(),
14
- }),
37
+ location_name: z.string().optional(),
38
+ timezone: z.string().optional(),
15
39
  })
16
- .and(z.record(z.string(), z.any())),
17
- // todo: better type
18
- location: z.any(),
40
+ .nullable(),
19
41
  connected_account_id: z.string().uuid(),
20
42
  workspace_id: z.string().uuid(),
21
43
  errors: z.array(z.object({
@@ -1 +1 @@
1
- {"version":3,"file":"managed-device.js","sourceRoot":"","sources":["../../../../../src/lib/seam/connect/unstable/models/managed-device.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC5B,WAAW,EAAE,eAAe;IAC5B,sBAAsB,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;IAC7C,UAAU,EAAE,CAAC;SACV,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;QACnB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;YACd,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;SACzB,CAAC;KACH,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACrC,oBAAoB;IACpB,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE;IACjB,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IACvC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE;IAC/B,MAAM,EAAE,CAAC,CAAC,KAAK,CACb,CAAC,CAAC,MAAM,CAAC;QACP,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC,CACH;IACD,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;QACP,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC,CACH;IACD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;CAC5B,CAAC,CAAA"}
1
+ {"version":3,"file":"managed-device.js","sourceRoot":"","sources":["../../../../../src/lib/seam/connect/unstable/models/managed-device.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export { any_device_type, capabilities as capabilities_supported, lock_device_type, managed_device, noise_sensor_device_type, thermostat_device_type, unmanaged_device, } from './models/index.js';
1
+ export { any_device_type, battery_status, capabilities, climate_setting, climate_setting_schedule, common_device_properties, lock_device_type, managed_device, noise_sensor_device_type, thermostat_device_type, unmanaged_device, } from './models/index.js';
@@ -1,2 +1,2 @@
1
- export { any_device_type, capabilities as capabilities_supported, lock_device_type, managed_device, noise_sensor_device_type, thermostat_device_type, unmanaged_device, } from './models/index.js';
1
+ export { any_device_type, battery_status, capabilities, climate_setting, climate_setting_schedule, common_device_properties, lock_device_type, managed_device, noise_sensor_device_type, thermostat_device_type, unmanaged_device, } from './models/index.js';
2
2
  //# sourceMappingURL=schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/unstable/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,YAAY,IAAI,sBAAsB,EACtC,gBAAgB,EAChB,cAAc,EACd,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/unstable/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,cAAc,EACd,YAAY,EACZ,eAAe,EACf,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,mBAAmB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@seamapi/types",
3
- "version": "0.17.0",
3
+ "version": "0.19.0",
4
4
  "description": "TypeScript types for the Seam API.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -83,5 +83,8 @@
83
83
  "tsx": "^3.12.1",
84
84
  "typescript": "^5.0.2",
85
85
  "zod": "^3.21.4"
86
+ },
87
+ "dependencies": {
88
+ "type-fest": "^4.1.0"
86
89
  }
87
90
  }