@camstack/types 1.1.19 → 1.1.21

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 (36) hide show
  1. package/dist/addon.js +1 -1
  2. package/dist/addon.mjs +1 -1
  3. package/dist/capabilities/battery.cap.d.ts +6 -0
  4. package/dist/capabilities/capability-definition.d.ts +39 -0
  5. package/dist/capabilities/consumables.cap.d.ts +35 -0
  6. package/dist/capabilities/device-manager.cap.d.ts +396 -15
  7. package/dist/capabilities/index.d.ts +1 -1
  8. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +7 -3
  9. package/dist/device/device-binding.d.ts +9 -3
  10. package/dist/device/device-management.d.ts +87 -6
  11. package/dist/device/index.d.ts +2 -2
  12. package/dist/device/schema-fields.d.ts +13 -0
  13. package/dist/expression/ast.d.ts +56 -0
  14. package/dist/expression/builtins.d.ts +19 -0
  15. package/dist/expression/compile.d.ts +17 -0
  16. package/dist/expression/errors.d.ts +16 -0
  17. package/dist/expression/evaluator.d.ts +14 -0
  18. package/dist/expression/index.d.ts +25 -0
  19. package/dist/expression/limits.d.ts +30 -0
  20. package/dist/expression/link-expression.d.ts +44 -0
  21. package/dist/expression/parser.d.ts +12 -0
  22. package/dist/expression/tokenizer.d.ts +38 -0
  23. package/dist/generated/addon-api.d.ts +452 -4
  24. package/dist/generated/device-proxy.d.ts +1 -1
  25. package/dist/generated/method-access-map.d.ts +1 -1
  26. package/dist/generated/system-proxy.d.ts +1 -1
  27. package/dist/index.d.ts +5 -2
  28. package/dist/index.js +1342 -20
  29. package/dist/index.mjs +1313 -21
  30. package/dist/interfaces/agent.d.ts +21 -0
  31. package/dist/{sleep-MHm--th-.mjs → sleep-BO1nweKv.mjs} +1 -0
  32. package/dist/{sleep-BabrCASa.js → sleep-DaQgDq90.js} +1 -0
  33. package/dist/units/convert.d.ts +49 -0
  34. package/dist/units/index.d.ts +8 -0
  35. package/dist/units/unit-table.d.ts +270 -0
  36. package/package.json +1 -1
@@ -4100,6 +4100,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4100
4100
  sourceKey: string;
4101
4101
  cap: string;
4102
4102
  fieldPath: string;
4103
+ kind?: "field" | undefined;
4104
+ } | {
4105
+ kind: "literal";
4106
+ value: string | number | boolean | null;
4107
+ } | {
4108
+ kind: "global";
4109
+ sourceStableId: string;
4110
+ cap: string;
4111
+ fieldPath: string;
4112
+ } | {
4113
+ kind: "expression";
4114
+ expr: string;
4115
+ bindings: Record<string, {
4116
+ sourceKey: string;
4117
+ cap: string;
4118
+ fieldPath: string;
4119
+ kind?: "field" | undefined;
4120
+ } | {
4121
+ kind: "literal";
4122
+ value: string | number | boolean | null;
4123
+ } | {
4124
+ kind: "global";
4125
+ sourceStableId: string;
4126
+ cap: string;
4127
+ fieldPath: string;
4128
+ }>;
4103
4129
  };
4104
4130
  target: {
4105
4131
  cap: string;
@@ -4120,6 +4146,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4120
4146
  } | undefined;
4121
4147
  }[] | undefined;
4122
4148
  role?: string | null | undefined;
4149
+ display?: {
4150
+ icon?: string | undefined;
4151
+ label?: string | undefined;
4152
+ unit?: string | undefined;
4153
+ precision?: number | undefined;
4154
+ hidden?: boolean | undefined;
4155
+ perCap?: Record<string, {
4156
+ unit?: string | undefined;
4157
+ precision?: number | undefined;
4158
+ }> | undefined;
4159
+ } | undefined;
4123
4160
  } | null;
4124
4161
  meta: object;
4125
4162
  }>;
@@ -4201,6 +4238,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4201
4238
  sourceKey: string;
4202
4239
  cap: string;
4203
4240
  fieldPath: string;
4241
+ kind?: "field" | undefined;
4242
+ } | {
4243
+ kind: "literal";
4244
+ value: string | number | boolean | null;
4245
+ } | {
4246
+ kind: "global";
4247
+ sourceStableId: string;
4248
+ cap: string;
4249
+ fieldPath: string;
4250
+ } | {
4251
+ kind: "expression";
4252
+ expr: string;
4253
+ bindings: Record<string, {
4254
+ sourceKey: string;
4255
+ cap: string;
4256
+ fieldPath: string;
4257
+ kind?: "field" | undefined;
4258
+ } | {
4259
+ kind: "literal";
4260
+ value: string | number | boolean | null;
4261
+ } | {
4262
+ kind: "global";
4263
+ sourceStableId: string;
4264
+ cap: string;
4265
+ fieldPath: string;
4266
+ }>;
4204
4267
  };
4205
4268
  target: {
4206
4269
  cap: string;
@@ -4224,10 +4287,55 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4224
4287
  output: void;
4225
4288
  meta: object;
4226
4289
  }>;
4290
+ setDisplay: import("@trpc/server").TRPCMutationProcedure<{
4291
+ input: {
4292
+ [x: string]: unknown;
4293
+ deviceId: number;
4294
+ display: {
4295
+ icon?: string | undefined;
4296
+ label?: string | undefined;
4297
+ unit?: string | undefined;
4298
+ precision?: number | undefined;
4299
+ hidden?: boolean | undefined;
4300
+ perCap?: Record<string, {
4301
+ unit?: string | undefined;
4302
+ precision?: number | undefined;
4303
+ }> | undefined;
4304
+ } | null;
4305
+ };
4306
+ output: void;
4307
+ meta: object;
4308
+ }>;
4309
+ getRoleDisplayDefaults: import("@trpc/server").TRPCQueryProcedure<{
4310
+ input: {
4311
+ [x: string]: unknown;
4312
+ };
4313
+ output: {
4314
+ defaults: Record<string, {
4315
+ unit?: string | undefined;
4316
+ precision?: number | undefined;
4317
+ icon?: string | undefined;
4318
+ }>;
4319
+ };
4320
+ meta: object;
4321
+ }>;
4322
+ setRoleDisplayDefaults: import("@trpc/server").TRPCMutationProcedure<{
4323
+ input: {
4324
+ [x: string]: unknown;
4325
+ defaults: Record<string, {
4326
+ unit?: string | undefined;
4327
+ precision?: number | undefined;
4328
+ icon?: string | undefined;
4329
+ }>;
4330
+ };
4331
+ output: void;
4332
+ meta: object;
4333
+ }>;
4227
4334
  getWireableFields: import("@trpc/server").TRPCQueryProcedure<{
4228
4335
  input: {
4229
4336
  [x: string]: unknown;
4230
4337
  deviceId: number;
4338
+ includeSynthesizable?: boolean | undefined;
4231
4339
  };
4232
4340
  output: {
4233
4341
  caps: readonly {
@@ -4236,7 +4344,12 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4236
4344
  path: string;
4237
4345
  kind: "string" | "number" | "boolean" | "enum";
4238
4346
  enumValues?: string[] | undefined;
4347
+ item?: boolean | undefined;
4239
4348
  }[];
4349
+ itemArray?: {
4350
+ path: string;
4351
+ keyField: string;
4352
+ } | undefined;
4240
4353
  }[];
4241
4354
  };
4242
4355
  meta: object;
@@ -4365,6 +4478,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4365
4478
  sourceKey: string;
4366
4479
  cap: string;
4367
4480
  fieldPath: string;
4481
+ kind?: "field" | undefined;
4482
+ } | {
4483
+ kind: "literal";
4484
+ value: string | number | boolean | null;
4485
+ } | {
4486
+ kind: "global";
4487
+ sourceStableId: string;
4488
+ cap: string;
4489
+ fieldPath: string;
4490
+ } | {
4491
+ kind: "expression";
4492
+ expr: string;
4493
+ bindings: Record<string, {
4494
+ sourceKey: string;
4495
+ cap: string;
4496
+ fieldPath: string;
4497
+ kind?: "field" | undefined;
4498
+ } | {
4499
+ kind: "literal";
4500
+ value: string | number | boolean | null;
4501
+ } | {
4502
+ kind: "global";
4503
+ sourceStableId: string;
4504
+ cap: string;
4505
+ fieldPath: string;
4506
+ }>;
4368
4507
  };
4369
4508
  target: {
4370
4509
  cap: string;
@@ -4384,6 +4523,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4384
4523
  clamp?: readonly [number, number] | undefined;
4385
4524
  } | undefined;
4386
4525
  }[] | undefined;
4526
+ display?: {
4527
+ icon?: string | undefined;
4528
+ label?: string | undefined;
4529
+ unit?: string | undefined;
4530
+ precision?: number | undefined;
4531
+ hidden?: boolean | undefined;
4532
+ perCap?: Record<string, {
4533
+ unit?: string | undefined;
4534
+ precision?: number | undefined;
4535
+ }> | undefined;
4536
+ } | undefined;
4387
4537
  }[];
4388
4538
  meta: object;
4389
4539
  }>;
@@ -4429,6 +4579,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4429
4579
  sourceKey: string;
4430
4580
  cap: string;
4431
4581
  fieldPath: string;
4582
+ kind?: "field" | undefined;
4583
+ } | {
4584
+ kind: "literal";
4585
+ value: string | number | boolean | null;
4586
+ } | {
4587
+ kind: "global";
4588
+ sourceStableId: string;
4589
+ cap: string;
4590
+ fieldPath: string;
4591
+ } | {
4592
+ kind: "expression";
4593
+ expr: string;
4594
+ bindings: Record<string, {
4595
+ sourceKey: string;
4596
+ cap: string;
4597
+ fieldPath: string;
4598
+ kind?: "field" | undefined;
4599
+ } | {
4600
+ kind: "literal";
4601
+ value: string | number | boolean | null;
4602
+ } | {
4603
+ kind: "global";
4604
+ sourceStableId: string;
4605
+ cap: string;
4606
+ fieldPath: string;
4607
+ }>;
4432
4608
  };
4433
4609
  target: {
4434
4610
  cap: string;
@@ -4448,6 +4624,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4448
4624
  clamp?: readonly [number, number] | undefined;
4449
4625
  } | undefined;
4450
4626
  }[] | undefined;
4627
+ display?: {
4628
+ icon?: string | undefined;
4629
+ label?: string | undefined;
4630
+ unit?: string | undefined;
4631
+ precision?: number | undefined;
4632
+ hidden?: boolean | undefined;
4633
+ perCap?: Record<string, {
4634
+ unit?: string | undefined;
4635
+ precision?: number | undefined;
4636
+ }> | undefined;
4637
+ } | undefined;
4451
4638
  } | null;
4452
4639
  meta: object;
4453
4640
  }>;
@@ -4493,6 +4680,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4493
4680
  sourceKey: string;
4494
4681
  cap: string;
4495
4682
  fieldPath: string;
4683
+ kind?: "field" | undefined;
4684
+ } | {
4685
+ kind: "literal";
4686
+ value: string | number | boolean | null;
4687
+ } | {
4688
+ kind: "global";
4689
+ sourceStableId: string;
4690
+ cap: string;
4691
+ fieldPath: string;
4692
+ } | {
4693
+ kind: "expression";
4694
+ expr: string;
4695
+ bindings: Record<string, {
4696
+ sourceKey: string;
4697
+ cap: string;
4698
+ fieldPath: string;
4699
+ kind?: "field" | undefined;
4700
+ } | {
4701
+ kind: "literal";
4702
+ value: string | number | boolean | null;
4703
+ } | {
4704
+ kind: "global";
4705
+ sourceStableId: string;
4706
+ cap: string;
4707
+ fieldPath: string;
4708
+ }>;
4496
4709
  };
4497
4710
  target: {
4498
4711
  cap: string;
@@ -4512,6 +4725,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4512
4725
  clamp?: readonly [number, number] | undefined;
4513
4726
  } | undefined;
4514
4727
  }[] | undefined;
4728
+ display?: {
4729
+ icon?: string | undefined;
4730
+ label?: string | undefined;
4731
+ unit?: string | undefined;
4732
+ precision?: number | undefined;
4733
+ hidden?: boolean | undefined;
4734
+ perCap?: Record<string, {
4735
+ unit?: string | undefined;
4736
+ precision?: number | undefined;
4737
+ }> | undefined;
4738
+ } | undefined;
4515
4739
  }[];
4516
4740
  meta: object;
4517
4741
  }>;
@@ -4650,7 +4874,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4650
4874
  deviceId: number;
4651
4875
  entries: {
4652
4876
  capName: string;
4653
- kind: "native" | "wrapped";
4877
+ kind: "linked" | "native" | "wrapped";
4654
4878
  providerAddonId: string;
4655
4879
  providerNodeId: string;
4656
4880
  nativeAddonId: string;
@@ -4666,7 +4890,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4666
4890
  deviceId: number;
4667
4891
  entries: {
4668
4892
  capName: string;
4669
- kind: "native" | "wrapped";
4893
+ kind: "linked" | "native" | "wrapped";
4670
4894
  providerAddonId: string;
4671
4895
  providerNodeId: string;
4672
4896
  nativeAddonId: string;
@@ -18124,6 +18348,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18124
18348
  sourceKey: string;
18125
18349
  cap: string;
18126
18350
  fieldPath: string;
18351
+ kind?: "field" | undefined;
18352
+ } | {
18353
+ kind: "literal";
18354
+ value: string | number | boolean | null;
18355
+ } | {
18356
+ kind: "global";
18357
+ sourceStableId: string;
18358
+ cap: string;
18359
+ fieldPath: string;
18360
+ } | {
18361
+ kind: "expression";
18362
+ expr: string;
18363
+ bindings: Record<string, {
18364
+ sourceKey: string;
18365
+ cap: string;
18366
+ fieldPath: string;
18367
+ kind?: "field" | undefined;
18368
+ } | {
18369
+ kind: "literal";
18370
+ value: string | number | boolean | null;
18371
+ } | {
18372
+ kind: "global";
18373
+ sourceStableId: string;
18374
+ cap: string;
18375
+ fieldPath: string;
18376
+ }>;
18127
18377
  };
18128
18378
  target: {
18129
18379
  cap: string;
@@ -18144,6 +18394,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18144
18394
  } | undefined;
18145
18395
  }[] | undefined;
18146
18396
  role?: string | null | undefined;
18397
+ display?: {
18398
+ icon?: string | undefined;
18399
+ label?: string | undefined;
18400
+ unit?: string | undefined;
18401
+ precision?: number | undefined;
18402
+ hidden?: boolean | undefined;
18403
+ perCap?: Record<string, {
18404
+ unit?: string | undefined;
18405
+ precision?: number | undefined;
18406
+ }> | undefined;
18407
+ } | undefined;
18147
18408
  } | null;
18148
18409
  meta: object;
18149
18410
  }>;
@@ -18225,6 +18486,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18225
18486
  sourceKey: string;
18226
18487
  cap: string;
18227
18488
  fieldPath: string;
18489
+ kind?: "field" | undefined;
18490
+ } | {
18491
+ kind: "literal";
18492
+ value: string | number | boolean | null;
18493
+ } | {
18494
+ kind: "global";
18495
+ sourceStableId: string;
18496
+ cap: string;
18497
+ fieldPath: string;
18498
+ } | {
18499
+ kind: "expression";
18500
+ expr: string;
18501
+ bindings: Record<string, {
18502
+ sourceKey: string;
18503
+ cap: string;
18504
+ fieldPath: string;
18505
+ kind?: "field" | undefined;
18506
+ } | {
18507
+ kind: "literal";
18508
+ value: string | number | boolean | null;
18509
+ } | {
18510
+ kind: "global";
18511
+ sourceStableId: string;
18512
+ cap: string;
18513
+ fieldPath: string;
18514
+ }>;
18228
18515
  };
18229
18516
  target: {
18230
18517
  cap: string;
@@ -18248,10 +18535,55 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18248
18535
  output: void;
18249
18536
  meta: object;
18250
18537
  }>;
18538
+ setDisplay: import("@trpc/server").TRPCMutationProcedure<{
18539
+ input: {
18540
+ [x: string]: unknown;
18541
+ deviceId: number;
18542
+ display: {
18543
+ icon?: string | undefined;
18544
+ label?: string | undefined;
18545
+ unit?: string | undefined;
18546
+ precision?: number | undefined;
18547
+ hidden?: boolean | undefined;
18548
+ perCap?: Record<string, {
18549
+ unit?: string | undefined;
18550
+ precision?: number | undefined;
18551
+ }> | undefined;
18552
+ } | null;
18553
+ };
18554
+ output: void;
18555
+ meta: object;
18556
+ }>;
18557
+ getRoleDisplayDefaults: import("@trpc/server").TRPCQueryProcedure<{
18558
+ input: {
18559
+ [x: string]: unknown;
18560
+ };
18561
+ output: {
18562
+ defaults: Record<string, {
18563
+ unit?: string | undefined;
18564
+ precision?: number | undefined;
18565
+ icon?: string | undefined;
18566
+ }>;
18567
+ };
18568
+ meta: object;
18569
+ }>;
18570
+ setRoleDisplayDefaults: import("@trpc/server").TRPCMutationProcedure<{
18571
+ input: {
18572
+ [x: string]: unknown;
18573
+ defaults: Record<string, {
18574
+ unit?: string | undefined;
18575
+ precision?: number | undefined;
18576
+ icon?: string | undefined;
18577
+ }>;
18578
+ };
18579
+ output: void;
18580
+ meta: object;
18581
+ }>;
18251
18582
  getWireableFields: import("@trpc/server").TRPCQueryProcedure<{
18252
18583
  input: {
18253
18584
  [x: string]: unknown;
18254
18585
  deviceId: number;
18586
+ includeSynthesizable?: boolean | undefined;
18255
18587
  };
18256
18588
  output: {
18257
18589
  caps: readonly {
@@ -18260,7 +18592,12 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18260
18592
  path: string;
18261
18593
  kind: "string" | "number" | "boolean" | "enum";
18262
18594
  enumValues?: string[] | undefined;
18595
+ item?: boolean | undefined;
18263
18596
  }[];
18597
+ itemArray?: {
18598
+ path: string;
18599
+ keyField: string;
18600
+ } | undefined;
18264
18601
  }[];
18265
18602
  };
18266
18603
  meta: object;
@@ -18389,6 +18726,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18389
18726
  sourceKey: string;
18390
18727
  cap: string;
18391
18728
  fieldPath: string;
18729
+ kind?: "field" | undefined;
18730
+ } | {
18731
+ kind: "literal";
18732
+ value: string | number | boolean | null;
18733
+ } | {
18734
+ kind: "global";
18735
+ sourceStableId: string;
18736
+ cap: string;
18737
+ fieldPath: string;
18738
+ } | {
18739
+ kind: "expression";
18740
+ expr: string;
18741
+ bindings: Record<string, {
18742
+ sourceKey: string;
18743
+ cap: string;
18744
+ fieldPath: string;
18745
+ kind?: "field" | undefined;
18746
+ } | {
18747
+ kind: "literal";
18748
+ value: string | number | boolean | null;
18749
+ } | {
18750
+ kind: "global";
18751
+ sourceStableId: string;
18752
+ cap: string;
18753
+ fieldPath: string;
18754
+ }>;
18392
18755
  };
18393
18756
  target: {
18394
18757
  cap: string;
@@ -18408,6 +18771,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18408
18771
  clamp?: readonly [number, number] | undefined;
18409
18772
  } | undefined;
18410
18773
  }[] | undefined;
18774
+ display?: {
18775
+ icon?: string | undefined;
18776
+ label?: string | undefined;
18777
+ unit?: string | undefined;
18778
+ precision?: number | undefined;
18779
+ hidden?: boolean | undefined;
18780
+ perCap?: Record<string, {
18781
+ unit?: string | undefined;
18782
+ precision?: number | undefined;
18783
+ }> | undefined;
18784
+ } | undefined;
18411
18785
  }[];
18412
18786
  meta: object;
18413
18787
  }>;
@@ -18453,6 +18827,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18453
18827
  sourceKey: string;
18454
18828
  cap: string;
18455
18829
  fieldPath: string;
18830
+ kind?: "field" | undefined;
18831
+ } | {
18832
+ kind: "literal";
18833
+ value: string | number | boolean | null;
18834
+ } | {
18835
+ kind: "global";
18836
+ sourceStableId: string;
18837
+ cap: string;
18838
+ fieldPath: string;
18839
+ } | {
18840
+ kind: "expression";
18841
+ expr: string;
18842
+ bindings: Record<string, {
18843
+ sourceKey: string;
18844
+ cap: string;
18845
+ fieldPath: string;
18846
+ kind?: "field" | undefined;
18847
+ } | {
18848
+ kind: "literal";
18849
+ value: string | number | boolean | null;
18850
+ } | {
18851
+ kind: "global";
18852
+ sourceStableId: string;
18853
+ cap: string;
18854
+ fieldPath: string;
18855
+ }>;
18456
18856
  };
18457
18857
  target: {
18458
18858
  cap: string;
@@ -18472,6 +18872,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18472
18872
  clamp?: readonly [number, number] | undefined;
18473
18873
  } | undefined;
18474
18874
  }[] | undefined;
18875
+ display?: {
18876
+ icon?: string | undefined;
18877
+ label?: string | undefined;
18878
+ unit?: string | undefined;
18879
+ precision?: number | undefined;
18880
+ hidden?: boolean | undefined;
18881
+ perCap?: Record<string, {
18882
+ unit?: string | undefined;
18883
+ precision?: number | undefined;
18884
+ }> | undefined;
18885
+ } | undefined;
18475
18886
  } | null;
18476
18887
  meta: object;
18477
18888
  }>;
@@ -18517,6 +18928,32 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18517
18928
  sourceKey: string;
18518
18929
  cap: string;
18519
18930
  fieldPath: string;
18931
+ kind?: "field" | undefined;
18932
+ } | {
18933
+ kind: "literal";
18934
+ value: string | number | boolean | null;
18935
+ } | {
18936
+ kind: "global";
18937
+ sourceStableId: string;
18938
+ cap: string;
18939
+ fieldPath: string;
18940
+ } | {
18941
+ kind: "expression";
18942
+ expr: string;
18943
+ bindings: Record<string, {
18944
+ sourceKey: string;
18945
+ cap: string;
18946
+ fieldPath: string;
18947
+ kind?: "field" | undefined;
18948
+ } | {
18949
+ kind: "literal";
18950
+ value: string | number | boolean | null;
18951
+ } | {
18952
+ kind: "global";
18953
+ sourceStableId: string;
18954
+ cap: string;
18955
+ fieldPath: string;
18956
+ }>;
18520
18957
  };
18521
18958
  target: {
18522
18959
  cap: string;
@@ -18536,6 +18973,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18536
18973
  clamp?: readonly [number, number] | undefined;
18537
18974
  } | undefined;
18538
18975
  }[] | undefined;
18976
+ display?: {
18977
+ icon?: string | undefined;
18978
+ label?: string | undefined;
18979
+ unit?: string | undefined;
18980
+ precision?: number | undefined;
18981
+ hidden?: boolean | undefined;
18982
+ perCap?: Record<string, {
18983
+ unit?: string | undefined;
18984
+ precision?: number | undefined;
18985
+ }> | undefined;
18986
+ } | undefined;
18539
18987
  }[];
18540
18988
  meta: object;
18541
18989
  }>;
@@ -18674,7 +19122,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18674
19122
  deviceId: number;
18675
19123
  entries: {
18676
19124
  capName: string;
18677
- kind: "native" | "wrapped";
19125
+ kind: "linked" | "native" | "wrapped";
18678
19126
  providerAddonId: string;
18679
19127
  providerNodeId: string;
18680
19128
  nativeAddonId: string;
@@ -18690,7 +19138,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18690
19138
  deviceId: number;
18691
19139
  entries: {
18692
19140
  capName: string;
18693
- kind: "native" | "wrapped";
19141
+ kind: "linked" | "native" | "wrapped";
18694
19142
  providerAddonId: string;
18695
19143
  providerNodeId: string;
18696
19144
  nativeAddonId: string;
@@ -254,7 +254,7 @@ export interface DeviceProxy {
254
254
  readonly cameraPipelineConfig: Pick<InferDeviceProxyCap<typeof cameraPipelineConfigCapability>, 'getDeviceSettingsContribution' | 'getDeviceLiveContribution' | 'applyDeviceSettingsPatch'>;
255
255
  readonly deviceAdoption: Pick<InferDeviceProxyCap<typeof deviceAdoptionCapability>, 'getStatus'>;
256
256
  readonly deviceExport: Pick<InferDeviceProxyCap<typeof deviceExportCapability>, 'getDeviceSettingsContribution' | 'getDeviceLiveContribution' | 'applyDeviceSettingsPatch'>;
257
- readonly deviceManager: Pick<InferDeviceProxyCap<typeof deviceManagerCapability>, 'loadConfig' | 'loadRuntimeState' | 'loadMeta' | 'setName' | 'setLocation' | 'setType' | 'setIntegrationId' | 'setLinkDeviceId' | 'setPrimaryChildEntityId' | 'setChildLayout' | 'setDeviceLinks' | 'getWireableFields' | 'setRole' | 'applyInitialMeta' | 'setMetadata' | 'setDisabled' | 'getDevice' | 'getStreamSources' | 'getConfigSchema' | 'getSettingsSchema' | 'updateConfig' | 'enable' | 'disable' | 'remove' | 'getStreamProfileMap' | 'setStreamProfileMap' | 'probeStreams' | 'getBindings' | 'getAllBindings' | 'setWrapperActive' | 'getDeviceSettingsAggregate' | 'getDeviceLiveInfoAggregate' | 'getDeviceAggregate' | 'runDeviceAction' | 'updateDeviceField' | 'updateDeviceFieldsBatch' | 'testField' | 'getDeviceStatusAggregate'>;
257
+ readonly deviceManager: Pick<InferDeviceProxyCap<typeof deviceManagerCapability>, 'loadConfig' | 'loadRuntimeState' | 'loadMeta' | 'setName' | 'setLocation' | 'setType' | 'setIntegrationId' | 'setLinkDeviceId' | 'setPrimaryChildEntityId' | 'setChildLayout' | 'setDeviceLinks' | 'setDisplay' | 'getWireableFields' | 'setRole' | 'applyInitialMeta' | 'setMetadata' | 'setDisabled' | 'getDevice' | 'getStreamSources' | 'getConfigSchema' | 'getSettingsSchema' | 'updateConfig' | 'enable' | 'disable' | 'remove' | 'getStreamProfileMap' | 'setStreamProfileMap' | 'probeStreams' | 'getBindings' | 'getAllBindings' | 'setWrapperActive' | 'getDeviceSettingsAggregate' | 'getDeviceLiveInfoAggregate' | 'getDeviceAggregate' | 'runDeviceAction' | 'updateDeviceField' | 'updateDeviceFieldsBatch' | 'testField' | 'getDeviceStatusAggregate'>;
258
258
  readonly deviceState: Pick<InferDeviceProxyCap<typeof deviceStateCapability>, 'getSnapshot' | 'getCapSlice' | 'setCapSlice'>;
259
259
  readonly faceGallery: Pick<InferDeviceProxyCap<typeof faceGalleryCapability>, 'getFaceByTrack'>;
260
260
  readonly networkQuality: Pick<InferDeviceProxyCap<typeof networkQualityCapability>, 'getDeviceStats' | 'reportClientStats'>;
@@ -6,7 +6,7 @@
6
6
  * scope+access check inside `protectedProcedure` (see
7
7
  * `server/backend/src/api/trpc/trpc.middleware.ts`).
8
8
  *
9
- * Coverage: 724 method paths across 110 capabilities.
9
+ * Coverage: 727 method paths across 110 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
@@ -58,7 +58,7 @@ export interface SystemProxy {
58
58
  readonly decoder: Pick<InferProvider<typeof decoderCapability>, 'supportsCodec' | 'getInfo' | 'createSession' | 'destroySession' | 'pushPacket' | 'openStream' | 'pullFrames' | 'pullHandles' | 'getFrame' | 'getShmStats' | 'updateConfig' | 'getStats' | 'listActiveSessions' | 'reprobeHwaccel'>;
59
59
  readonly deviceAdoption: Pick<InferProvider<typeof deviceAdoptionCapability>, 'listCandidateFilters' | 'listCandidates' | 'getCandidate' | 'refresh' | 'adopt' | 'release' | 'resync'>;
60
60
  readonly deviceExport: Pick<InferProvider<typeof deviceExportCapability>, 'getStatus' | 'listSupportedDeviceKinds' | 'listExposedDevices' | 'exposeDevice' | 'unexposeDevice'>;
61
- readonly deviceManager: Pick<InferProvider<typeof deviceManagerCapability>, 'allocateDeviceId' | 'registerDevice' | 'removeDevice' | 'persistConfig' | 'listLocations' | 'addLocation' | 'removeLocation' | 'listPersistedByAddon' | 'listAll' | 'getChildren' | 'removeByIntegration' | 'listWrappersForCap' | 'listBindableCapsForDeviceType' | 'discoverDevices' | 'adoptDevice' | 'getCreationSchema' | 'createDevice' | 'testCreationField' | 'adoptionListCandidateFilters' | 'adoptionListCandidates' | 'adoptionRefresh' | 'adoptionAdopt' | 'adoptionRelease' | 'adoptionResync' | 'discoveryProviders' | 'discoverAllProviders' | 'discoverProvider' | 'providerCreationType' | 'providerDiscoveryParamsSchema'>;
61
+ readonly deviceManager: Pick<InferProvider<typeof deviceManagerCapability>, 'allocateDeviceId' | 'registerDevice' | 'removeDevice' | 'persistConfig' | 'getRoleDisplayDefaults' | 'setRoleDisplayDefaults' | 'listLocations' | 'addLocation' | 'removeLocation' | 'listPersistedByAddon' | 'listAll' | 'getChildren' | 'removeByIntegration' | 'listWrappersForCap' | 'listBindableCapsForDeviceType' | 'discoverDevices' | 'adoptDevice' | 'getCreationSchema' | 'createDevice' | 'testCreationField' | 'adoptionListCandidateFilters' | 'adoptionListCandidates' | 'adoptionRefresh' | 'adoptionAdopt' | 'adoptionRelease' | 'adoptionResync' | 'discoveryProviders' | 'discoverAllProviders' | 'discoverProvider' | 'providerCreationType' | 'providerDiscoveryParamsSchema'>;
62
62
  readonly deviceProvider: Pick<InferProvider<typeof deviceProviderCapability>, 'start' | 'stop' | 'getStatus' | 'getDevices' | 'supportsDiscovery' | 'discoverDevices' | 'getDiscoveryParamsSchema' | 'getManualCreationType' | 'adoptDiscoveredDevice' | 'supportsManualCreation' | 'getChildCreationSchema' | 'createDevice' | 'testCreationField'>;
63
63
  readonly deviceState: Pick<InferProvider<typeof deviceStateCapability>, 'getAllSnapshots'>;
64
64
  readonly faceGallery: Pick<InferProvider<typeof faceGalleryCapability>, 'listIdentities' | 'createIdentity' | 'renameIdentity' | 'deleteIdentity' | 'listIdentitySamples' | 'removeSample' | 'listRecentFaces' | 'getFaceMedia' | 'assignFace' | 'unassignFace' | 'deleteFace' | 'assignFaces' | 'unassignFaces' | 'suggestFaceClusters'>;