@camstack/types 1.0.4 → 1.0.6

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 (59) hide show
  1. package/dist/addon.d.ts +34 -0
  2. package/dist/addon.js +22 -0
  3. package/dist/addon.mjs +3 -0
  4. package/dist/capabilities/addons.cap.d.ts +10 -10
  5. package/dist/capabilities/advanced-notifier.cap.d.ts +4 -4
  6. package/dist/capabilities/alerts.cap.d.ts +10 -10
  7. package/dist/capabilities/audio-codec.cap.d.ts +2 -2
  8. package/dist/capabilities/camera-streams.cap.d.ts +15 -15
  9. package/dist/capabilities/consumables.cap.d.ts +4 -4
  10. package/dist/capabilities/cover.cap.d.ts +4 -4
  11. package/dist/capabilities/decoder.cap.d.ts +1 -1
  12. package/dist/capabilities/index.d.ts +2 -1
  13. package/dist/capabilities/local-network.cap.d.ts +6 -6
  14. package/dist/capabilities/log-destination.cap.d.ts +5 -5
  15. package/dist/capabilities/media-player.cap.d.ts +4 -4
  16. package/dist/capabilities/mesh-network.cap.d.ts +3 -3
  17. package/dist/capabilities/metrics-provider.cap.d.ts +33 -3
  18. package/dist/capabilities/network-access.cap.d.ts +7 -7
  19. package/dist/capabilities/oauth-integration.cap.d.ts +2 -2
  20. package/dist/capabilities/pipeline-executor.cap.d.ts +48 -1
  21. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +524 -4
  22. package/dist/capabilities/platform-probe.cap.d.ts +1 -1
  23. package/dist/capabilities/restreamer.cap.d.ts +2 -2
  24. package/dist/capabilities/schemas/streaming-shared.d.ts +9 -9
  25. package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
  26. package/dist/capabilities/storage.cap.d.ts +1 -1
  27. package/dist/capabilities/stream-broker.cap.d.ts +28 -28
  28. package/dist/capabilities/stream-params.cap.d.ts +14 -14
  29. package/dist/capabilities/user-management.cap.d.ts +20 -20
  30. package/dist/capabilities/vacuum-control.cap.d.ts +13 -13
  31. package/dist/capabilities/valve.cap.d.ts +4 -4
  32. package/dist/capabilities/webrtc-session.cap.d.ts +12 -12
  33. package/dist/deps/binary-downloader.d.ts +1 -1
  34. package/dist/deps/ffmpeg-downloader.d.ts +1 -1
  35. package/dist/deps/python-downloader.d.ts +1 -1
  36. package/dist/device/base-device-provider.d.ts +4 -1
  37. package/dist/encode-profile.d.ts +2 -2
  38. package/dist/enums/event-category.d.ts +12 -0
  39. package/dist/err-msg-COpsHMw2.js +18 -0
  40. package/dist/err-msg-IQTHeDzc.mjs +13 -0
  41. package/dist/generated/addon-api.d.ts +438 -12
  42. package/dist/generated/device-proxy.d.ts +1 -1
  43. package/dist/generated/method-access-map.d.ts +1 -1
  44. package/dist/generated/system-proxy.d.ts +3 -3
  45. package/dist/health/wiring-health.d.ts +16 -16
  46. package/dist/index.js +1435 -4646
  47. package/dist/index.mjs +485 -3711
  48. package/dist/interfaces/event-bus.d.ts +15 -0
  49. package/dist/interfaces/metrics-provider.d.ts +3 -1
  50. package/dist/interfaces/pipeline-executor-capability.d.ts +8 -0
  51. package/dist/lifecycle/job.d.ts +6 -6
  52. package/dist/node.js +3 -3
  53. package/dist/node.mjs +1 -1
  54. package/dist/schemas/auth-records.d.ts +4 -4
  55. package/dist/sleep-D7JeS58T.mjs +3507 -0
  56. package/dist/sleep-DnS0eJh_.js +3920 -0
  57. package/dist/storage/filesystem-storage-provider.d.ts +2 -1
  58. package/dist/types/agent-pipeline-settings.d.ts +7 -0
  59. package/package.json +6 -1
@@ -1756,6 +1756,21 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
1756
1756
  };
1757
1757
  meta: object;
1758
1758
  }>;
1759
+ getEngineProvisioning: import("@trpc/server").TRPCQueryProcedure<{
1760
+ input: {
1761
+ [x: string]: unknown;
1762
+ nodeId: string;
1763
+ };
1764
+ output: {
1765
+ runtimeId: "onnx" | "coreml" | "openvino" | null;
1766
+ device: string | null;
1767
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
1768
+ progress?: number | undefined;
1769
+ error?: string | undefined;
1770
+ nextRetryAt?: number | undefined;
1771
+ };
1772
+ meta: object;
1773
+ }>;
1759
1774
  getVideoPipelineSteps: import("@trpc/server").TRPCQueryProcedure<{
1760
1775
  input: {
1761
1776
  nodeId?: string | undefined;
@@ -2704,6 +2719,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
2704
2719
  modelId: string;
2705
2720
  settings: Readonly<Record<string, unknown>>;
2706
2721
  }>>;
2722
+ maxCameras: number | null;
2707
2723
  } | null;
2708
2724
  meta: object;
2709
2725
  }>;
@@ -2719,6 +2735,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
2719
2735
  modelId: string;
2720
2736
  settings: Readonly<Record<string, unknown>>;
2721
2737
  }>>;
2738
+ maxCameras: number | null;
2722
2739
  };
2723
2740
  }[];
2724
2741
  meta: object;
@@ -2749,6 +2766,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
2749
2766
  };
2750
2767
  meta: object;
2751
2768
  }>;
2769
+ setAgentMaxCameras: import("@trpc/server").TRPCMutationProcedure<{
2770
+ input: {
2771
+ [x: string]: unknown;
2772
+ agentNodeId: string;
2773
+ maxCameras: number | null;
2774
+ };
2775
+ output: {
2776
+ success: true;
2777
+ };
2778
+ meta: object;
2779
+ }>;
2752
2780
  getCameraSettings: import("@trpc/server").TRPCQueryProcedure<{
2753
2781
  input: {
2754
2782
  [x: string]: unknown;
@@ -2859,6 +2887,186 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
2859
2887
  };
2860
2888
  meta: object;
2861
2889
  }>;
2890
+ getCameraStatus: import("@trpc/server").TRPCQueryProcedure<{
2891
+ input: {
2892
+ [x: string]: unknown;
2893
+ deviceId: number;
2894
+ };
2895
+ output: {
2896
+ deviceId: number;
2897
+ assignment: {
2898
+ detectionNodeId: string | null;
2899
+ decoderNodeId: string | null;
2900
+ audioNodeId: string | null;
2901
+ pinned: {
2902
+ detection: boolean;
2903
+ decoder: boolean;
2904
+ audio: boolean;
2905
+ };
2906
+ reasons: {
2907
+ detection?: string | undefined;
2908
+ decoder?: string | undefined;
2909
+ audio?: string | undefined;
2910
+ };
2911
+ };
2912
+ source: {
2913
+ streams: readonly {
2914
+ camStreamId: string;
2915
+ codec: string;
2916
+ width: number;
2917
+ height: number;
2918
+ fps: number;
2919
+ kind: string;
2920
+ }[];
2921
+ };
2922
+ broker: {
2923
+ profiles: readonly {
2924
+ profile: string;
2925
+ status: string;
2926
+ codec: string;
2927
+ width: number;
2928
+ height: number;
2929
+ subscribers: number;
2930
+ inFps: number;
2931
+ outFps: number;
2932
+ }[];
2933
+ webrtcSessions: number;
2934
+ rtspRestream: boolean;
2935
+ } | null;
2936
+ decoder: {
2937
+ nodeId: string;
2938
+ formats: readonly string[];
2939
+ sessionCount: number;
2940
+ shm: {
2941
+ framesWritten: number;
2942
+ getFrameHits: number;
2943
+ getFrameMisses: number;
2944
+ budgetMb: number;
2945
+ };
2946
+ } | null;
2947
+ motion: {
2948
+ enabled: boolean;
2949
+ fps: number;
2950
+ } | null;
2951
+ detection: {
2952
+ nodeId: string;
2953
+ engine: {
2954
+ backend: string;
2955
+ device: string;
2956
+ };
2957
+ phase: "idle" | "active" | "watching";
2958
+ configuredFps: number;
2959
+ actualFps: number;
2960
+ queueDepth: number;
2961
+ avgInferenceMs: number;
2962
+ provisioning: {
2963
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
2964
+ error?: string | undefined;
2965
+ };
2966
+ } | null;
2967
+ audio: {
2968
+ nodeId: string;
2969
+ enabled: boolean;
2970
+ } | null;
2971
+ recording: {
2972
+ mode: "events" | "off" | "continuous";
2973
+ active: boolean;
2974
+ storageBytes: number;
2975
+ } | null;
2976
+ fetchedAt: number;
2977
+ };
2978
+ meta: object;
2979
+ }>;
2980
+ getCameraStatuses: import("@trpc/server").TRPCQueryProcedure<{
2981
+ input: {
2982
+ [x: string]: unknown;
2983
+ deviceIds?: number[] | undefined;
2984
+ };
2985
+ output: readonly {
2986
+ deviceId: number;
2987
+ assignment: {
2988
+ detectionNodeId: string | null;
2989
+ decoderNodeId: string | null;
2990
+ audioNodeId: string | null;
2991
+ pinned: {
2992
+ detection: boolean;
2993
+ decoder: boolean;
2994
+ audio: boolean;
2995
+ };
2996
+ reasons: {
2997
+ detection?: string | undefined;
2998
+ decoder?: string | undefined;
2999
+ audio?: string | undefined;
3000
+ };
3001
+ };
3002
+ source: {
3003
+ streams: readonly {
3004
+ camStreamId: string;
3005
+ codec: string;
3006
+ width: number;
3007
+ height: number;
3008
+ fps: number;
3009
+ kind: string;
3010
+ }[];
3011
+ };
3012
+ broker: {
3013
+ profiles: readonly {
3014
+ profile: string;
3015
+ status: string;
3016
+ codec: string;
3017
+ width: number;
3018
+ height: number;
3019
+ subscribers: number;
3020
+ inFps: number;
3021
+ outFps: number;
3022
+ }[];
3023
+ webrtcSessions: number;
3024
+ rtspRestream: boolean;
3025
+ } | null;
3026
+ decoder: {
3027
+ nodeId: string;
3028
+ formats: readonly string[];
3029
+ sessionCount: number;
3030
+ shm: {
3031
+ framesWritten: number;
3032
+ getFrameHits: number;
3033
+ getFrameMisses: number;
3034
+ budgetMb: number;
3035
+ };
3036
+ } | null;
3037
+ motion: {
3038
+ enabled: boolean;
3039
+ fps: number;
3040
+ } | null;
3041
+ detection: {
3042
+ nodeId: string;
3043
+ engine: {
3044
+ backend: string;
3045
+ device: string;
3046
+ };
3047
+ phase: "idle" | "active" | "watching";
3048
+ configuredFps: number;
3049
+ actualFps: number;
3050
+ queueDepth: number;
3051
+ avgInferenceMs: number;
3052
+ provisioning: {
3053
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
3054
+ error?: string | undefined;
3055
+ };
3056
+ } | null;
3057
+ audio: {
3058
+ nodeId: string;
3059
+ enabled: boolean;
3060
+ } | null;
3061
+ recording: {
3062
+ mode: "events" | "off" | "continuous";
3063
+ active: boolean;
3064
+ storageBytes: number;
3065
+ } | null;
3066
+ fetchedAt: number;
3067
+ }[];
3068
+ meta: object;
3069
+ }>;
2862
3070
  listTemplates: import("@trpc/server").TRPCQueryProcedure<{
2863
3071
  input: {
2864
3072
  nodeId?: string | undefined;
@@ -5263,7 +5471,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
5263
5471
  profile: "high" | "low" | "mid";
5264
5472
  brokerId: string;
5265
5473
  sourceCamStreamId: string | null;
5266
- status: "error" | "idle" | "connecting" | "streaming" | "unassigned";
5474
+ status: "error" | "idle" | "connecting" | "unassigned" | "streaming";
5267
5475
  resolution?: {
5268
5476
  width: number;
5269
5477
  height: number;
@@ -5318,11 +5526,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
5318
5526
  [x: string]: unknown;
5319
5527
  deviceId: number;
5320
5528
  requirements: Readonly<{
5321
- acceptCodecs?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
5529
+ acceptCodecs?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
5322
5530
  minHeight?: number | undefined;
5323
5531
  minWidth?: number | undefined;
5324
5532
  excludeDerived?: boolean | undefined;
5325
- requireSiblingCodec?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
5533
+ requireSiblingCodec?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
5326
5534
  }>;
5327
5535
  preferences?: Readonly<{
5328
5536
  preferredProviders?: readonly string[] | undefined;
@@ -8546,6 +8754,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
8546
8754
  };
8547
8755
  meta: object;
8548
8756
  }>;
8757
+ dumpHeapSnapshot: import("@trpc/server").TRPCMutationProcedure<{
8758
+ input: any;
8759
+ output: any;
8760
+ meta: object;
8761
+ }>;
8549
8762
  }>>;
8550
8763
  motion: import("@trpc/server").TRPCBuiltRouter<{
8551
8764
  ctx: TrpcContext;
@@ -11400,7 +11613,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
11400
11613
  encodeProfile?: {
11401
11614
  video: {
11402
11615
  codec: "h264" | "h265" | "copy";
11403
- profile?: "main" | "baseline" | "high" | undefined;
11616
+ profile?: "main" | "high" | "baseline" | undefined;
11404
11617
  width?: number | undefined;
11405
11618
  height?: number | undefined;
11406
11619
  fps?: number | undefined;
@@ -11490,7 +11703,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
11490
11703
  profile: "high" | "low" | "mid";
11491
11704
  brokerId: string;
11492
11705
  sourceCamStreamId: string | null;
11493
- status: "error" | "idle" | "connecting" | "streaming" | "unassigned";
11706
+ status: "error" | "idle" | "connecting" | "unassigned" | "streaming";
11494
11707
  resolution?: {
11495
11708
  width: number;
11496
11709
  height: number;
@@ -11957,7 +12170,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
11957
12170
  framerate?: number | undefined;
11958
12171
  bitrate?: number | undefined;
11959
12172
  bitrateMode?: "vbr" | "cbr" | undefined;
11960
- encoderProfile?: "main" | "baseline" | "high" | undefined;
12173
+ encoderProfile?: "main" | "high" | "baseline" | undefined;
11961
12174
  gop?: number | undefined;
11962
12175
  audio?: boolean | undefined;
11963
12176
  };
@@ -14902,6 +15115,21 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
14902
15115
  };
14903
15116
  meta: object;
14904
15117
  }>;
15118
+ getEngineProvisioning: import("@trpc/server").TRPCQueryProcedure<{
15119
+ input: {
15120
+ [x: string]: unknown;
15121
+ nodeId: string;
15122
+ };
15123
+ output: {
15124
+ runtimeId: "onnx" | "coreml" | "openvino" | null;
15125
+ device: string | null;
15126
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
15127
+ progress?: number | undefined;
15128
+ error?: string | undefined;
15129
+ nextRetryAt?: number | undefined;
15130
+ };
15131
+ meta: object;
15132
+ }>;
14905
15133
  getVideoPipelineSteps: import("@trpc/server").TRPCQueryProcedure<{
14906
15134
  input: {
14907
15135
  nodeId?: string | undefined;
@@ -15850,6 +16078,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
15850
16078
  modelId: string;
15851
16079
  settings: Readonly<Record<string, unknown>>;
15852
16080
  }>>;
16081
+ maxCameras: number | null;
15853
16082
  } | null;
15854
16083
  meta: object;
15855
16084
  }>;
@@ -15865,6 +16094,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
15865
16094
  modelId: string;
15866
16095
  settings: Readonly<Record<string, unknown>>;
15867
16096
  }>>;
16097
+ maxCameras: number | null;
15868
16098
  };
15869
16099
  }[];
15870
16100
  meta: object;
@@ -15895,6 +16125,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
15895
16125
  };
15896
16126
  meta: object;
15897
16127
  }>;
16128
+ setAgentMaxCameras: import("@trpc/server").TRPCMutationProcedure<{
16129
+ input: {
16130
+ [x: string]: unknown;
16131
+ agentNodeId: string;
16132
+ maxCameras: number | null;
16133
+ };
16134
+ output: {
16135
+ success: true;
16136
+ };
16137
+ meta: object;
16138
+ }>;
15898
16139
  getCameraSettings: import("@trpc/server").TRPCQueryProcedure<{
15899
16140
  input: {
15900
16141
  [x: string]: unknown;
@@ -16005,6 +16246,186 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
16005
16246
  };
16006
16247
  meta: object;
16007
16248
  }>;
16249
+ getCameraStatus: import("@trpc/server").TRPCQueryProcedure<{
16250
+ input: {
16251
+ [x: string]: unknown;
16252
+ deviceId: number;
16253
+ };
16254
+ output: {
16255
+ deviceId: number;
16256
+ assignment: {
16257
+ detectionNodeId: string | null;
16258
+ decoderNodeId: string | null;
16259
+ audioNodeId: string | null;
16260
+ pinned: {
16261
+ detection: boolean;
16262
+ decoder: boolean;
16263
+ audio: boolean;
16264
+ };
16265
+ reasons: {
16266
+ detection?: string | undefined;
16267
+ decoder?: string | undefined;
16268
+ audio?: string | undefined;
16269
+ };
16270
+ };
16271
+ source: {
16272
+ streams: readonly {
16273
+ camStreamId: string;
16274
+ codec: string;
16275
+ width: number;
16276
+ height: number;
16277
+ fps: number;
16278
+ kind: string;
16279
+ }[];
16280
+ };
16281
+ broker: {
16282
+ profiles: readonly {
16283
+ profile: string;
16284
+ status: string;
16285
+ codec: string;
16286
+ width: number;
16287
+ height: number;
16288
+ subscribers: number;
16289
+ inFps: number;
16290
+ outFps: number;
16291
+ }[];
16292
+ webrtcSessions: number;
16293
+ rtspRestream: boolean;
16294
+ } | null;
16295
+ decoder: {
16296
+ nodeId: string;
16297
+ formats: readonly string[];
16298
+ sessionCount: number;
16299
+ shm: {
16300
+ framesWritten: number;
16301
+ getFrameHits: number;
16302
+ getFrameMisses: number;
16303
+ budgetMb: number;
16304
+ };
16305
+ } | null;
16306
+ motion: {
16307
+ enabled: boolean;
16308
+ fps: number;
16309
+ } | null;
16310
+ detection: {
16311
+ nodeId: string;
16312
+ engine: {
16313
+ backend: string;
16314
+ device: string;
16315
+ };
16316
+ phase: "idle" | "active" | "watching";
16317
+ configuredFps: number;
16318
+ actualFps: number;
16319
+ queueDepth: number;
16320
+ avgInferenceMs: number;
16321
+ provisioning: {
16322
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
16323
+ error?: string | undefined;
16324
+ };
16325
+ } | null;
16326
+ audio: {
16327
+ nodeId: string;
16328
+ enabled: boolean;
16329
+ } | null;
16330
+ recording: {
16331
+ mode: "events" | "off" | "continuous";
16332
+ active: boolean;
16333
+ storageBytes: number;
16334
+ } | null;
16335
+ fetchedAt: number;
16336
+ };
16337
+ meta: object;
16338
+ }>;
16339
+ getCameraStatuses: import("@trpc/server").TRPCQueryProcedure<{
16340
+ input: {
16341
+ [x: string]: unknown;
16342
+ deviceIds?: number[] | undefined;
16343
+ };
16344
+ output: readonly {
16345
+ deviceId: number;
16346
+ assignment: {
16347
+ detectionNodeId: string | null;
16348
+ decoderNodeId: string | null;
16349
+ audioNodeId: string | null;
16350
+ pinned: {
16351
+ detection: boolean;
16352
+ decoder: boolean;
16353
+ audio: boolean;
16354
+ };
16355
+ reasons: {
16356
+ detection?: string | undefined;
16357
+ decoder?: string | undefined;
16358
+ audio?: string | undefined;
16359
+ };
16360
+ };
16361
+ source: {
16362
+ streams: readonly {
16363
+ camStreamId: string;
16364
+ codec: string;
16365
+ width: number;
16366
+ height: number;
16367
+ fps: number;
16368
+ kind: string;
16369
+ }[];
16370
+ };
16371
+ broker: {
16372
+ profiles: readonly {
16373
+ profile: string;
16374
+ status: string;
16375
+ codec: string;
16376
+ width: number;
16377
+ height: number;
16378
+ subscribers: number;
16379
+ inFps: number;
16380
+ outFps: number;
16381
+ }[];
16382
+ webrtcSessions: number;
16383
+ rtspRestream: boolean;
16384
+ } | null;
16385
+ decoder: {
16386
+ nodeId: string;
16387
+ formats: readonly string[];
16388
+ sessionCount: number;
16389
+ shm: {
16390
+ framesWritten: number;
16391
+ getFrameHits: number;
16392
+ getFrameMisses: number;
16393
+ budgetMb: number;
16394
+ };
16395
+ } | null;
16396
+ motion: {
16397
+ enabled: boolean;
16398
+ fps: number;
16399
+ } | null;
16400
+ detection: {
16401
+ nodeId: string;
16402
+ engine: {
16403
+ backend: string;
16404
+ device: string;
16405
+ };
16406
+ phase: "idle" | "active" | "watching";
16407
+ configuredFps: number;
16408
+ actualFps: number;
16409
+ queueDepth: number;
16410
+ avgInferenceMs: number;
16411
+ provisioning: {
16412
+ state: "idle" | "failed" | "ready" | "installing" | "verifying";
16413
+ error?: string | undefined;
16414
+ };
16415
+ } | null;
16416
+ audio: {
16417
+ nodeId: string;
16418
+ enabled: boolean;
16419
+ } | null;
16420
+ recording: {
16421
+ mode: "events" | "off" | "continuous";
16422
+ active: boolean;
16423
+ storageBytes: number;
16424
+ } | null;
16425
+ fetchedAt: number;
16426
+ }[];
16427
+ meta: object;
16428
+ }>;
16008
16429
  listTemplates: import("@trpc/server").TRPCQueryProcedure<{
16009
16430
  input: {
16010
16431
  nodeId?: string | undefined;
@@ -18409,7 +18830,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18409
18830
  profile: "high" | "low" | "mid";
18410
18831
  brokerId: string;
18411
18832
  sourceCamStreamId: string | null;
18412
- status: "error" | "idle" | "connecting" | "streaming" | "unassigned";
18833
+ status: "error" | "idle" | "connecting" | "unassigned" | "streaming";
18413
18834
  resolution?: {
18414
18835
  width: number;
18415
18836
  height: number;
@@ -18464,11 +18885,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
18464
18885
  [x: string]: unknown;
18465
18886
  deviceId: number;
18466
18887
  requirements: Readonly<{
18467
- acceptCodecs?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
18888
+ acceptCodecs?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
18468
18889
  minHeight?: number | undefined;
18469
18890
  minWidth?: number | undefined;
18470
18891
  excludeDerived?: boolean | undefined;
18471
- requireSiblingCodec?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
18892
+ requireSiblingCodec?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
18472
18893
  }>;
18473
18894
  preferences?: Readonly<{
18474
18895
  preferredProviders?: readonly string[] | undefined;
@@ -21692,6 +22113,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
21692
22113
  };
21693
22114
  meta: object;
21694
22115
  }>;
22116
+ dumpHeapSnapshot: import("@trpc/server").TRPCMutationProcedure<{
22117
+ input: any;
22118
+ output: any;
22119
+ meta: object;
22120
+ }>;
21695
22121
  }>>;
21696
22122
  motion: import("@trpc/server").TRPCBuiltRouter<{
21697
22123
  ctx: TrpcContext;
@@ -24546,7 +24972,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24546
24972
  encodeProfile?: {
24547
24973
  video: {
24548
24974
  codec: "h264" | "h265" | "copy";
24549
- profile?: "main" | "baseline" | "high" | undefined;
24975
+ profile?: "main" | "high" | "baseline" | undefined;
24550
24976
  width?: number | undefined;
24551
24977
  height?: number | undefined;
24552
24978
  fps?: number | undefined;
@@ -24636,7 +25062,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24636
25062
  profile: "high" | "low" | "mid";
24637
25063
  brokerId: string;
24638
25064
  sourceCamStreamId: string | null;
24639
- status: "error" | "idle" | "connecting" | "streaming" | "unassigned";
25065
+ status: "error" | "idle" | "connecting" | "unassigned" | "streaming";
24640
25066
  resolution?: {
24641
25067
  width: number;
24642
25068
  height: number;
@@ -25103,7 +25529,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
25103
25529
  framerate?: number | undefined;
25104
25530
  bitrate?: number | undefined;
25105
25531
  bitrateMode?: "vbr" | "cbr" | undefined;
25106
- encoderProfile?: "main" | "baseline" | "high" | undefined;
25532
+ encoderProfile?: "main" | "high" | "baseline" | undefined;
25107
25533
  gop?: number | undefined;
25108
25534
  audio?: boolean | undefined;
25109
25535
  };
@@ -259,7 +259,7 @@ export interface DeviceProxy {
259
259
  readonly faceGallery: Pick<InferDeviceProxyCap<typeof faceGalleryCapability>, 'getFaceByTrack'>;
260
260
  readonly networkQuality: Pick<InferDeviceProxyCap<typeof networkQualityCapability>, 'getDeviceStats' | 'reportClientStats'>;
261
261
  readonly pipelineExecutor: Pick<InferDeviceProxyCap<typeof pipelineExecutorCapability>, 'runPipeline' | 'runPipelineBatch'>;
262
- readonly pipelineOrchestrator: Pick<InferDeviceProxyCap<typeof pipelineOrchestratorCapability>, 'assignPipeline' | 'unassignPipeline' | 'getPipelineAssignment' | 'getCameraMetrics' | 'assignDecoder' | 'unassignDecoder' | 'assignAudio' | 'unassignAudio' | 'getAudioAssignment' | 'getAudioAssignments' | 'getDecoderAssignment' | 'getCameraSettings' | 'setCameraStepToggle' | 'getCameraStepOverrides' | 'setCameraStepOverride' | 'setCameraPipelineForAgent' | 'resolvePipeline' | 'getDeviceSettingsContribution' | 'getDeviceLiveContribution' | 'applyDeviceSettingsPatch'>;
262
+ readonly pipelineOrchestrator: Pick<InferDeviceProxyCap<typeof pipelineOrchestratorCapability>, 'assignPipeline' | 'unassignPipeline' | 'getPipelineAssignment' | 'getCameraMetrics' | 'assignDecoder' | 'unassignDecoder' | 'assignAudio' | 'unassignAudio' | 'getAudioAssignment' | 'getAudioAssignments' | 'getDecoderAssignment' | 'getCameraSettings' | 'setCameraStepToggle' | 'getCameraStepOverrides' | 'setCameraStepOverride' | 'setCameraPipelineForAgent' | 'resolvePipeline' | 'getCameraStatus' | 'getDeviceSettingsContribution' | 'getDeviceLiveContribution' | 'applyDeviceSettingsPatch'>;
263
263
  readonly pipelineRunner: Pick<InferDeviceProxyCap<typeof pipelineRunnerCapability>, 'detachCamera' | 'getCameraMetrics'>;
264
264
  readonly plateGallery: Pick<InferDeviceProxyCap<typeof plateGalleryCapability>, 'listPlates' | 'getPlateByTrack'>;
265
265
  readonly recording: Pick<InferDeviceProxyCap<typeof recordingCapability>, 'getAvailability' | 'getDaysWithRecordings' | 'getPlaybackManifest' | 'getDeviceConfig' | 'locateSegment' | 'readSegmentBytes' | 'setDeviceConfig' | 'rescanStorage' | 'pruneFootage' | 'getStatus' | 'getDeviceSettingsContribution' | 'getDeviceLiveContribution' | 'applyDeviceSettingsPatch'>;
@@ -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: 698 method paths across 107 capabilities.
9
+ * Coverage: 703 method paths across 107 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
@@ -65,14 +65,14 @@ export interface SystemProxy {
65
65
  readonly integrations: Pick<InferProvider<typeof integrationsCapability>, 'list' | 'get' | 'getByAddonId' | 'create' | 'update' | 'delete' | 'getSettings' | 'setSettings' | 'getAvailableTypes' | 'testConnection'>;
66
66
  readonly localNetwork: Pick<InferProvider<typeof localNetworkCapability>, 'list' | 'getPreferred' | 'getConnectionEndpoints' | 'getAllowedAddresses' | 'setAllowedAddresses' | 'resetAllowlistToBestMatch'>;
67
67
  readonly meshNetwork: Pick<InferProvider<typeof meshNetworkCapability>, 'getStatus' | 'join' | 'startLogin' | 'leave' | 'logout' | 'listPeers' | 'testConnection'>;
68
- readonly metricsProvider: Pick<InferProvider<typeof metricsProviderCapability>, 'collectSnapshot' | 'getCached' | 'getCurrent' | 'getDiskSpace' | 'getGpuInfo' | 'getCpuTemperature' | 'getProcessStats' | 'listAddonInstances' | 'getAddonStats' | 'listNodeProcesses' | 'killProcess'>;
68
+ readonly metricsProvider: Pick<InferProvider<typeof metricsProviderCapability>, 'collectSnapshot' | 'getCached' | 'getCurrent' | 'getDiskSpace' | 'getGpuInfo' | 'getCpuTemperature' | 'getProcessStats' | 'listAddonInstances' | 'getAddonStats' | 'listNodeProcesses' | 'killProcess' | 'dumpHeapSnapshot'>;
69
69
  readonly mqttBroker: Pick<InferProvider<typeof mqttBrokerCapability>, 'listBrokers' | 'getBrokerConfig' | 'addBroker' | 'removeBroker' | 'testConnection' | 'startEmbeddedBroker' | 'stopEmbeddedBroker' | 'getStatus'>;
70
70
  readonly networkAccess: Pick<InferProvider<typeof networkAccessCapability>, 'start' | 'stop' | 'getEndpoint' | 'getStatus' | 'listEndpoints'>;
71
71
  readonly networkQuality: Pick<InferProvider<typeof networkQualityCapability>, 'getAllStats'>;
72
72
  readonly nodes: Pick<InferProvider<typeof nodesCapability>, 'topology' | 'deployAddon' | 'undeployAddon' | 'restartAddon' | 'restartProcess' | 'restartNode' | 'shutdownNode' | 'renameNode' | 'clusterAddonStatus' | 'getCapUsageGraph' | 'getNodeAddons' | 'setProcessLogLevel' | 'executeQuery'>;
73
73
  readonly notificationOutput: Pick<InferProvider<typeof notificationOutputCapability>, 'send' | 'sendTest'>;
74
- readonly pipelineExecutor: Pick<InferProvider<typeof pipelineExecutorCapability>, 'getAvailableEngines' | 'getSelectedEngine' | 'getDefaultSteps' | 'reprobeEngine' | 'getVideoPipelineSteps' | 'setVideoPipelineSteps' | 'getSchema' | 'getGlobalSteps' | 'getGlobalPipelineConfig' | 'getOrchestratorConfigSchema' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate' | 'getCapabilities' | 'getAddonModels' | 'downloadModel' | 'deleteModel' | 'detect' | 'cacheFrameInPool' | 'inferCached' | 'uncacheFrame' | 'getEffectiveTuning' | 'listLoadedEngines' | 'spinEngine' | 'killEngine' | 'listReferenceImages' | 'getReferenceImage' | 'getReferenceAudioFiles' | 'getReferenceAudio' | 'getAudioCapabilities' | 'runAudioTest' | 'getDetectionConfigSchema'>;
75
- readonly pipelineOrchestrator: Pick<InferProvider<typeof pipelineOrchestratorCapability>, 'rebalance' | 'getPipelineAssignments' | 'getAgentLoad' | 'getGlobalMetrics' | 'getCapabilityBindings' | 'setCapabilityBinding' | 'getDecoderAssignments' | 'getAudioNodeLoad' | 'getAgentSettings' | 'listAgentSettings' | 'setAgentAddonDefaults' | 'removeAgentSettings' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate'>;
74
+ readonly pipelineExecutor: Pick<InferProvider<typeof pipelineExecutorCapability>, 'getAvailableEngines' | 'getSelectedEngine' | 'getDefaultSteps' | 'reprobeEngine' | 'getEngineProvisioning' | 'getVideoPipelineSteps' | 'setVideoPipelineSteps' | 'getSchema' | 'getGlobalSteps' | 'getGlobalPipelineConfig' | 'getOrchestratorConfigSchema' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate' | 'getCapabilities' | 'getAddonModels' | 'downloadModel' | 'deleteModel' | 'detect' | 'cacheFrameInPool' | 'inferCached' | 'uncacheFrame' | 'getEffectiveTuning' | 'listLoadedEngines' | 'spinEngine' | 'killEngine' | 'listReferenceImages' | 'getReferenceImage' | 'getReferenceAudioFiles' | 'getReferenceAudio' | 'getAudioCapabilities' | 'runAudioTest' | 'getDetectionConfigSchema'>;
75
+ readonly pipelineOrchestrator: Pick<InferProvider<typeof pipelineOrchestratorCapability>, 'rebalance' | 'getPipelineAssignments' | 'getAgentLoad' | 'getGlobalMetrics' | 'getCapabilityBindings' | 'setCapabilityBinding' | 'getDecoderAssignments' | 'getAudioNodeLoad' | 'getAgentSettings' | 'listAgentSettings' | 'setAgentAddonDefaults' | 'removeAgentSettings' | 'setAgentMaxCameras' | 'getCameraStatuses' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate'>;
76
76
  readonly pipelineRunner: Pick<InferProvider<typeof pipelineRunnerCapability>, 'attachCamera' | 'reportMotion' | 'getLocalLoad' | 'getLocalMetrics' | 'getAllCameraMetrics' | 'getLocalCameras'>;
77
77
  readonly plateGallery: Pick<InferProvider<typeof plateGalleryCapability>, 'getPlateMedia' | 'searchPlates' | 'suggestPlateClusters' | 'correctPlateText' | 'deletePlate'>;
78
78
  readonly recording: Pick<InferProvider<typeof recordingCapability>, 'getStorageUsage'>;