@camstack/types 1.1.32 → 1.1.34

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 (54) hide show
  1. package/dist/addon.js +1 -1
  2. package/dist/addon.mjs +1 -1
  3. package/dist/capabilities/addons.cap.d.ts +1 -1
  4. package/dist/capabilities/alerts.cap.d.ts +5 -5
  5. package/dist/capabilities/camera-streams.cap.d.ts +5 -5
  6. package/dist/capabilities/cap-router-predicates.d.ts +32 -0
  7. package/dist/capabilities/capability-definition.d.ts +18 -13
  8. package/dist/capabilities/consumables.cap.d.ts +1 -1
  9. package/dist/capabilities/custom-model-registry.cap.d.ts +38 -0
  10. package/dist/capabilities/index.d.ts +8 -15
  11. package/dist/capabilities/integrations.cap.d.ts +1 -1
  12. package/dist/capabilities/model-convert.cap.d.ts +22 -3
  13. package/dist/capabilities/model-distributor.cap.d.ts +38 -0
  14. package/dist/capabilities/network-quality.cap.d.ts +1 -1
  15. package/dist/capabilities/nodes.cap.d.ts +1 -1
  16. package/dist/capabilities/pipeline-executor.cap.d.ts +161 -8
  17. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +87 -44
  18. package/dist/capabilities/pipeline-runner.cap.d.ts +10 -69
  19. package/dist/capabilities/snapshot.cap.d.ts +3 -3
  20. package/dist/capabilities/stream-broker.cap.d.ts +9 -1
  21. package/dist/capabilities/system.cap.d.ts +1 -1
  22. package/dist/capabilities/toast.cap.d.ts +1 -1
  23. package/dist/capabilities/webrtc-session.cap.d.ts +15 -1
  24. package/dist/device/index.d.ts +2 -0
  25. package/dist/device/reachability-poll.d.ts +90 -0
  26. package/dist/encode-profile.d.ts +2 -2
  27. package/dist/enums/event-category.d.ts +12 -0
  28. package/dist/generated/addon-api.d.ts +771 -643
  29. package/dist/generated/capability-router-map.d.ts +4 -16
  30. package/dist/generated/device-proxy.d.ts +0 -2
  31. package/dist/generated/method-access-map.d.ts +1 -1
  32. package/dist/generated/system-proxy.d.ts +2 -2
  33. package/dist/index.d.ts +3 -3
  34. package/dist/index.js +568 -350
  35. package/dist/index.mjs +551 -344
  36. package/dist/interfaces/capability.d.ts +0 -7
  37. package/dist/interfaces/event-bus.d.ts +9 -0
  38. package/dist/interfaces/pipeline-executor-capability.d.ts +14 -1
  39. package/dist/interfaces/pipeline-runner-capability.d.ts +11 -11
  40. package/dist/interfaces/recording-config.d.ts +2 -2
  41. package/dist/{sleep-CZDdRBua.mjs → sleep-Cc14_yxc.mjs} +12 -4
  42. package/dist/{sleep-Dirr8nGw.js → sleep-DmP-uxoe.js} +12 -4
  43. package/dist/types/agent-pipeline-settings.d.ts +18 -6
  44. package/dist/types/camera-pipeline.d.ts +17 -3
  45. package/dist/types/model-variant-groups.d.ts +100 -0
  46. package/dist/types/models.d.ts +63 -3
  47. package/package.json +1 -1
  48. package/dist/capabilities/restreamer.cap.d.ts +0 -54
  49. package/dist/capabilities/snapshot-provider.cap.d.ts +0 -43
  50. package/dist/capabilities/streaming-engine.cap.d.ts +0 -61
  51. package/dist/capabilities/webrtc.cap.d.ts +0 -75
  52. package/dist/interfaces/restreamer.d.ts +0 -23
  53. package/dist/interfaces/streaming.d.ts +0 -28
  54. package/dist/interfaces/webrtc-provider.d.ts +0 -34
@@ -748,225 +748,6 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
748
748
  meta: object;
749
749
  }>;
750
750
  }>>;
751
- snapshotProvider: import("@trpc/server").TRPCBuiltRouter<{
752
- ctx: TrpcContext;
753
- meta: object;
754
- errorShape: import("@camstack/types").AugmentedErrorShape;
755
- transformer: true;
756
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
757
- supportsDevice: import("@trpc/server").TRPCQueryProcedure<{
758
- input: {
759
- [x: string]: unknown;
760
- deviceId: number;
761
- };
762
- output: boolean;
763
- meta: object;
764
- }>;
765
- getSnapshot: import("@trpc/server").TRPCQueryProcedure<{
766
- input: {
767
- [x: string]: unknown;
768
- deviceId: number;
769
- streamId?: string | undefined;
770
- };
771
- output: {
772
- base64: string;
773
- contentType: string;
774
- } | null;
775
- meta: object;
776
- }>;
777
- }>>;
778
- webrtcSession: import("@trpc/server").TRPCBuiltRouter<{
779
- ctx: TrpcContext;
780
- meta: object;
781
- errorShape: import("@camstack/types").AugmentedErrorShape;
782
- transformer: true;
783
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
784
- listStreams: import("@trpc/server").TRPCQueryProcedure<{
785
- input: {
786
- [x: string]: unknown;
787
- deviceId: number;
788
- };
789
- output: {
790
- id: string;
791
- label: string;
792
- target: {
793
- kind: "adaptive";
794
- } | {
795
- kind: "profile";
796
- profile: "high" | "low" | "mid";
797
- } | {
798
- kind: "cam-stream";
799
- camStreamId: string;
800
- };
801
- codec: string | null;
802
- resolution: {
803
- width: number;
804
- height: number;
805
- } | null;
806
- status: "error" | "stopped" | "idle" | "connecting" | "streaming" | null;
807
- inputFps: number | null;
808
- decodeFps: number | null;
809
- bitrateKbps: number | null;
810
- }[];
811
- meta: object;
812
- }>;
813
- createSession: import("@trpc/server").TRPCMutationProcedure<{
814
- input: {
815
- [x: string]: unknown;
816
- deviceId: number;
817
- target: {
818
- kind: "adaptive";
819
- } | {
820
- kind: "profile";
821
- profile: "high" | "low" | "mid";
822
- } | {
823
- kind: "cam-stream";
824
- camStreamId: string;
825
- };
826
- hints?: {
827
- viewportWidth?: number | undefined;
828
- viewportHeight?: number | undefined;
829
- devicePixelRatio?: number | undefined;
830
- downlinkMbps?: number | undefined;
831
- prefersTier?: string | undefined;
832
- } | undefined;
833
- relayOnly?: boolean | undefined;
834
- consumerAttribution?: Readonly<{
835
- kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
836
- label?: string | undefined;
837
- media?: "audio" | "video" | "both" | undefined;
838
- targetCodec?: string | undefined;
839
- transport?: "passthrough" | "repacketize" | "transcode" | undefined;
840
- remoteAddr?: string | undefined;
841
- userAgent?: string | undefined;
842
- userId?: string | undefined;
843
- sessionId?: string | undefined;
844
- extra?: Record<string, string> | undefined;
845
- }> | undefined;
846
- };
847
- output: {
848
- sessionId: string;
849
- sdpOffer: string;
850
- };
851
- meta: object;
852
- }>;
853
- handleOffer: import("@trpc/server").TRPCMutationProcedure<{
854
- input: {
855
- [x: string]: unknown;
856
- deviceId: number;
857
- sdpOffer: string;
858
- target?: {
859
- kind: "adaptive";
860
- } | {
861
- kind: "profile";
862
- profile: "high" | "low" | "mid";
863
- } | {
864
- kind: "cam-stream";
865
- camStreamId: string;
866
- } | undefined;
867
- sessionId?: string | undefined;
868
- relayOnly?: boolean | undefined;
869
- nonTrickle?: boolean | undefined;
870
- disableTurn?: boolean | undefined;
871
- disableIpv6?: boolean | undefined;
872
- consumerAttribution?: Readonly<{
873
- kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
874
- label?: string | undefined;
875
- media?: "audio" | "video" | "both" | undefined;
876
- targetCodec?: string | undefined;
877
- transport?: "passthrough" | "repacketize" | "transcode" | undefined;
878
- remoteAddr?: string | undefined;
879
- userAgent?: string | undefined;
880
- userId?: string | undefined;
881
- sessionId?: string | undefined;
882
- extra?: Record<string, string> | undefined;
883
- }> | undefined;
884
- };
885
- output: {
886
- sessionId: string;
887
- sdpAnswer: string;
888
- };
889
- meta: object;
890
- }>;
891
- handleAnswer: import("@trpc/server").TRPCMutationProcedure<{
892
- input: {
893
- [x: string]: unknown;
894
- deviceId: number;
895
- sessionId: string;
896
- sdpAnswer: string;
897
- };
898
- output: void;
899
- meta: object;
900
- }>;
901
- addIceCandidate: import("@trpc/server").TRPCMutationProcedure<{
902
- input: {
903
- [x: string]: unknown;
904
- deviceId: number;
905
- sessionId: string;
906
- candidate: string;
907
- sdpMid?: string | null | undefined;
908
- sdpMLineIndex?: number | null | undefined;
909
- };
910
- output: void;
911
- meta: object;
912
- }>;
913
- getIceCandidates: import("@trpc/server").TRPCQueryProcedure<{
914
- input: {
915
- [x: string]: unknown;
916
- deviceId: number;
917
- sessionId: string;
918
- };
919
- output: {
920
- candidates: {
921
- candidate: string;
922
- sdpMid: string | null;
923
- sdpMLineIndex: number | null;
924
- }[];
925
- done: boolean;
926
- };
927
- meta: object;
928
- }>;
929
- closeSession: import("@trpc/server").TRPCMutationProcedure<{
930
- input: {
931
- [x: string]: unknown;
932
- deviceId: number;
933
- sessionId: string;
934
- };
935
- output: void;
936
- meta: object;
937
- }>;
938
- hasAdaptiveBitrate: import("@trpc/server").TRPCQueryProcedure<{
939
- input: {
940
- [x: string]: unknown;
941
- deviceId: number;
942
- profile: "high" | "low" | "mid";
943
- };
944
- output: boolean;
945
- meta: object;
946
- }>;
947
- getSessionState: import("@trpc/server").TRPCQueryProcedure<{
948
- input: {
949
- [x: string]: unknown;
950
- deviceId: number;
951
- sessionId: string;
952
- };
953
- output: {
954
- pendingRenegotiation: {
955
- target: {
956
- kind: "adaptive";
957
- } | {
958
- kind: "profile";
959
- profile: "high" | "low" | "mid";
960
- } | {
961
- kind: "cam-stream";
962
- camStreamId: string;
963
- };
964
- epoch: number;
965
- } | null;
966
- };
967
- meta: object;
968
- }>;
969
- }>>;
970
751
  accessories: import("@trpc/server").TRPCBuiltRouter<{
971
752
  ctx: TrpcContext;
972
753
  meta: object;
@@ -1424,6 +1205,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
1424
1205
  currentVersion: string;
1425
1206
  latestVersion: string | null;
1426
1207
  hasUpdate: boolean;
1208
+ buildId: string | null;
1427
1209
  description?: string | undefined;
1428
1210
  }[];
1429
1211
  meta: object;
@@ -3050,11 +2832,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
3050
2832
  [x: string]: unknown;
3051
2833
  deviceId: number;
3052
2834
  requirements: Readonly<{
3053
- acceptCodecs?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
2835
+ acceptCodecs?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
3054
2836
  minHeight?: number | undefined;
3055
2837
  minWidth?: number | undefined;
3056
2838
  excludeDerived?: boolean | undefined;
3057
- requireSiblingCodec?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
2839
+ requireSiblingCodec?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
3058
2840
  }>;
3059
2841
  preferences?: Readonly<{
3060
2842
  preferredProviders?: readonly string[] | undefined;
@@ -3438,6 +3220,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
3438
3220
  filename: string;
3439
3221
  sizeMB: number;
3440
3222
  }[] | undefined;
3223
+ legacy?: boolean | undefined;
3224
+ metrics?: {
3225
+ map50?: number | undefined;
3226
+ p95LatencyMs?: Record<string, number> | undefined;
3227
+ } | undefined;
3228
+ license?: string | undefined;
3229
+ group?: {
3230
+ family: string;
3231
+ tier: string;
3232
+ precision?: "fp32" | "int8" | undefined;
3233
+ optimization?: "standard" | "fast" | undefined;
3234
+ resolution?: number | undefined;
3235
+ } | undefined;
3441
3236
  };
3442
3237
  }[];
3443
3238
  meta: object;
@@ -4822,7 +4617,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
4822
4617
  output: {
4823
4618
  id: string;
4824
4619
  label: string;
4825
- protocol: "custom" | "webrtc" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg";
4620
+ protocol: "custom" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg" | "webrtc";
4826
4621
  url?: string | undefined;
4827
4622
  resolution?: Readonly<{
4828
4623
  width: number;
@@ -5472,7 +5267,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
5472
5267
  output: {
5473
5268
  id: string;
5474
5269
  label: string;
5475
- protocol: "custom" | "webrtc" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg";
5270
+ protocol: "custom" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg" | "webrtc";
5476
5271
  url?: string | undefined;
5477
5272
  resolution?: {
5478
5273
  width: number;
@@ -7382,7 +7177,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
7382
7177
  };
7383
7178
  targets: readonly ({
7384
7179
  format: "openvino";
7385
- precisions: readonly ("fp16" | "int8")[];
7180
+ precisions: readonly ("int8" | "fp16")[];
7386
7181
  } | {
7387
7182
  format: "coreml";
7388
7183
  })[];
@@ -7451,13 +7246,26 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
7451
7246
  filename: string;
7452
7247
  sizeMB: number;
7453
7248
  }[] | undefined;
7249
+ legacy?: boolean | undefined;
7250
+ metrics?: {
7251
+ map50?: number | undefined;
7252
+ p95LatencyMs?: Record<string, number> | undefined;
7253
+ } | undefined;
7254
+ license?: string | undefined;
7255
+ group?: {
7256
+ family: string;
7257
+ tier: string;
7258
+ precision?: "fp32" | "int8" | undefined;
7259
+ optimization?: "standard" | "fast" | undefined;
7260
+ resolution?: number | undefined;
7261
+ } | undefined;
7454
7262
  };
7455
7263
  artifacts: readonly {
7456
7264
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
7457
7265
  sizeMB: number;
7458
7266
  validated: boolean;
7459
7267
  files: readonly string[];
7460
- precision?: "fp16" | "int8" | undefined;
7268
+ precision?: "int8" | "fp16" | undefined;
7461
7269
  }[];
7462
7270
  };
7463
7271
  meta: object;
@@ -7536,6 +7344,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
7536
7344
  filename: string;
7537
7345
  sizeMB: number;
7538
7346
  }[] | undefined;
7347
+ legacy?: boolean | undefined;
7348
+ metrics?: {
7349
+ map50?: number | undefined;
7350
+ p95LatencyMs?: Record<string, number> | undefined;
7351
+ } | undefined;
7352
+ license?: string | undefined;
7353
+ group?: {
7354
+ family: string;
7355
+ tier: string;
7356
+ precision?: "fp32" | "int8" | undefined;
7357
+ optimization?: "standard" | "fast" | undefined;
7358
+ resolution?: number | undefined;
7359
+ } | undefined;
7539
7360
  };
7540
7361
  };
7541
7362
  output: {
@@ -9162,6 +8983,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9162
8983
  progress?: number | undefined;
9163
8984
  error?: string | undefined;
9164
8985
  nextRetryAt?: number | undefined;
8986
+ configIssues?: string[] | undefined;
9165
8987
  };
9166
8988
  meta: object;
9167
8989
  }>;
@@ -9188,6 +9010,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9188
9010
  };
9189
9011
  meta: object;
9190
9012
  }>;
9013
+ resetToDefault: import("@trpc/server").TRPCMutationProcedure<{
9014
+ input: any;
9015
+ output: any;
9016
+ meta: object;
9017
+ }>;
9191
9018
  getSchema: import("@trpc/server").TRPCQueryProcedure<{
9192
9019
  input: {
9193
9020
  nodeId?: string | undefined;
@@ -9232,6 +9059,14 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9232
9059
  downloaded: boolean;
9233
9060
  sizeMB: number;
9234
9061
  }>;
9062
+ group?: {
9063
+ family: string;
9064
+ tier: string;
9065
+ precision?: "fp32" | "int8" | undefined;
9066
+ optimization?: "standard" | "fast" | undefined;
9067
+ resolution?: number | undefined;
9068
+ } | undefined;
9069
+ legacy?: boolean | undefined;
9235
9070
  }[];
9236
9071
  defaultModelId: string;
9237
9072
  defaultConfidence: number;
@@ -9265,6 +9100,28 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9265
9100
  output: import("@camstack/types").ConfigUISchema;
9266
9101
  meta: object;
9267
9102
  }>;
9103
+ validatePipeline: import("@trpc/server").TRPCQueryProcedure<{
9104
+ input: {
9105
+ [x: string]: unknown;
9106
+ steps: unknown[];
9107
+ };
9108
+ output: {
9109
+ ok: boolean;
9110
+ issues: readonly {
9111
+ addonId: string;
9112
+ kind: "unknown-addon" | "no-format-build";
9113
+ detail: string;
9114
+ }[];
9115
+ substitutions: readonly {
9116
+ addonId: string;
9117
+ chosen: string;
9118
+ running: string;
9119
+ format: string;
9120
+ }[];
9121
+ format: string;
9122
+ };
9123
+ meta: object;
9124
+ }>;
9268
9125
  listTemplates: import("@trpc/server").TRPCQueryProcedure<{
9269
9126
  input: {
9270
9127
  nodeId?: string | undefined;
@@ -9858,6 +9715,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9858
9715
  };
9859
9716
  meta: object;
9860
9717
  }>;
9718
+ getIngestOwner: import("@trpc/server").TRPCQueryProcedure<{
9719
+ input: {
9720
+ nodeId?: string | undefined;
9721
+ } | undefined;
9722
+ output: {
9723
+ ownerNodeId: string;
9724
+ reachableHost?: string | undefined;
9725
+ configIssue?: string | undefined;
9726
+ };
9727
+ meta: object;
9728
+ }>;
9861
9729
  assignDecoder: import("@trpc/server").TRPCMutationProcedure<{
9862
9730
  input: {
9863
9731
  [x: string]: unknown;
@@ -9964,8 +9832,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9964
9832
  output: {
9965
9833
  addonDefaults: Readonly<Record<string, {
9966
9834
  enabled: boolean;
9967
- modelId: string;
9968
9835
  settings: Readonly<Record<string, unknown>>;
9836
+ modelId?: string | undefined;
9969
9837
  }>>;
9970
9838
  maxCameras: number | null;
9971
9839
  detectWeight?: number | undefined;
@@ -9973,6 +9841,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9973
9841
  decode?: boolean | undefined;
9974
9842
  audio?: boolean | undefined;
9975
9843
  ingest?: boolean | undefined;
9844
+ reachableHost?: string | undefined;
9976
9845
  } | null;
9977
9846
  meta: object;
9978
9847
  }>;
@@ -9985,8 +9854,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9985
9854
  settings: {
9986
9855
  addonDefaults: Readonly<Record<string, {
9987
9856
  enabled: boolean;
9988
- modelId: string;
9989
9857
  settings: Readonly<Record<string, unknown>>;
9858
+ modelId?: string | undefined;
9990
9859
  }>>;
9991
9860
  maxCameras: number | null;
9992
9861
  detectWeight?: number | undefined;
@@ -9994,6 +9863,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
9994
9863
  decode?: boolean | undefined;
9995
9864
  audio?: boolean | undefined;
9996
9865
  ingest?: boolean | undefined;
9866
+ reachableHost?: string | undefined;
9997
9867
  };
9998
9868
  }[];
9999
9869
  meta: object;
@@ -10004,8 +9874,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10004
9874
  agentNodeId: string;
10005
9875
  defaults: Record<string, {
10006
9876
  enabled: boolean;
10007
- modelId: string;
10008
9877
  settings: Readonly<Record<string, unknown>>;
9878
+ modelId?: string | undefined;
10009
9879
  }>;
10010
9880
  };
10011
9881
  output: {
@@ -10060,15 +9930,26 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10060
9930
  };
10061
9931
  meta: object;
10062
9932
  }>;
10063
- getCameraSettings: import("@trpc/server").TRPCQueryProcedure<{
9933
+ setAgentReachableHost: import("@trpc/server").TRPCMutationProcedure<{
10064
9934
  input: {
10065
9935
  [x: string]: unknown;
10066
- deviceId: number;
9936
+ agentNodeId: string;
9937
+ reachableHost: string | null;
10067
9938
  };
10068
9939
  output: {
10069
- pinnedAgentNodeId?: string | undefined;
10070
- stepToggles?: Record<string, boolean> | undefined;
10071
- stepOverridesByAgent?: Record<string, Record<string, {
9940
+ success: true;
9941
+ };
9942
+ meta: object;
9943
+ }>;
9944
+ getCameraSettings: import("@trpc/server").TRPCQueryProcedure<{
9945
+ input: {
9946
+ [x: string]: unknown;
9947
+ deviceId: number;
9948
+ };
9949
+ output: {
9950
+ pinnedAgentNodeId?: string | undefined;
9951
+ stepToggles?: Record<string, boolean> | undefined;
9952
+ stepOverridesByAgent?: Record<string, Record<string, {
10072
9953
  enabled?: boolean | undefined;
10073
9954
  modelId?: string | undefined;
10074
9955
  settings?: Readonly<Record<string, unknown>> | undefined;
@@ -10149,22 +10030,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10149
10030
  agentNodeId?: string | undefined;
10150
10031
  };
10151
10032
  output: {
10152
- engine: {
10033
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10034
+ engine?: {
10153
10035
  runtime: "node" | "python";
10154
10036
  backend: string;
10155
10037
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10156
10038
  device?: string | undefined;
10157
- };
10158
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10039
+ } | undefined;
10159
10040
  audio?: {
10160
- engine: {
10041
+ enabled: boolean;
10042
+ engine?: {
10161
10043
  runtime: "node" | "python";
10162
10044
  backend: string;
10163
10045
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10164
10046
  device?: string | undefined;
10165
- };
10166
- modelId: string;
10167
- enabled: boolean;
10047
+ } | undefined;
10048
+ modelId?: string | undefined;
10168
10049
  settings?: Readonly<Record<string, unknown>> | undefined;
10169
10050
  } | null | undefined;
10170
10051
  };
@@ -10181,6 +10062,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10181
10062
  detectionNodeId: string | null;
10182
10063
  decoderNodeId: string | null;
10183
10064
  audioNodeId: string | null;
10065
+ sourceNodeId: string | null;
10184
10066
  pinned: {
10185
10067
  detection: boolean;
10186
10068
  decoder: boolean;
@@ -10271,6 +10153,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10271
10153
  detectionNodeId: string | null;
10272
10154
  decoderNodeId: string | null;
10273
10155
  audioNodeId: string | null;
10156
+ sourceNodeId: string | null;
10274
10157
  pinned: {
10275
10158
  detection: boolean;
10276
10159
  decoder: boolean;
@@ -10358,22 +10241,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10358
10241
  id: string;
10359
10242
  name: string;
10360
10243
  config: {
10361
- engine: {
10244
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10245
+ engine?: {
10362
10246
  runtime: "node" | "python";
10363
10247
  backend: string;
10364
10248
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10365
10249
  device?: string | undefined;
10366
- };
10367
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10250
+ } | undefined;
10368
10251
  audio?: {
10369
- engine: {
10252
+ enabled: boolean;
10253
+ engine?: {
10370
10254
  runtime: "node" | "python";
10371
10255
  backend: string;
10372
10256
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10373
10257
  device?: string | undefined;
10374
- };
10375
- modelId: string;
10376
- enabled: boolean;
10258
+ } | undefined;
10259
+ modelId?: string | undefined;
10377
10260
  settings?: Readonly<Record<string, unknown>> | undefined;
10378
10261
  } | null | undefined;
10379
10262
  };
@@ -10388,22 +10271,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10388
10271
  [x: string]: unknown;
10389
10272
  name: string;
10390
10273
  config: {
10391
- engine: {
10274
+ steps: readonly unknown[];
10275
+ engine?: {
10392
10276
  runtime: "node" | "python";
10393
10277
  backend: string;
10394
10278
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10395
10279
  device?: string | undefined;
10396
- };
10397
- steps: readonly unknown[];
10280
+ } | undefined;
10398
10281
  audio?: {
10399
- engine: {
10282
+ enabled: boolean;
10283
+ engine?: {
10400
10284
  runtime: "node" | "python";
10401
10285
  backend: string;
10402
10286
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10403
10287
  device?: string | undefined;
10404
- };
10405
- modelId: string;
10406
- enabled: boolean;
10288
+ } | undefined;
10289
+ modelId?: string | undefined;
10407
10290
  settings?: Readonly<Record<string, unknown>> | undefined;
10408
10291
  } | null | undefined;
10409
10292
  };
@@ -10413,22 +10296,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10413
10296
  id: string;
10414
10297
  name: string;
10415
10298
  config: {
10416
- engine: {
10299
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10300
+ engine?: {
10417
10301
  runtime: "node" | "python";
10418
10302
  backend: string;
10419
10303
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10420
10304
  device?: string | undefined;
10421
- };
10422
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10305
+ } | undefined;
10423
10306
  audio?: {
10424
- engine: {
10307
+ enabled: boolean;
10308
+ engine?: {
10425
10309
  runtime: "node" | "python";
10426
10310
  backend: string;
10427
10311
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10428
10312
  device?: string | undefined;
10429
- };
10430
- modelId: string;
10431
- enabled: boolean;
10313
+ } | undefined;
10314
+ modelId?: string | undefined;
10432
10315
  settings?: Readonly<Record<string, unknown>> | undefined;
10433
10316
  } | null | undefined;
10434
10317
  };
@@ -10445,22 +10328,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10445
10328
  name?: string | undefined;
10446
10329
  description?: string | undefined;
10447
10330
  config?: {
10448
- engine: {
10331
+ steps: readonly unknown[];
10332
+ engine?: {
10449
10333
  runtime: "node" | "python";
10450
10334
  backend: string;
10451
10335
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10452
10336
  device?: string | undefined;
10453
- };
10454
- steps: readonly unknown[];
10337
+ } | undefined;
10455
10338
  audio?: {
10456
- engine: {
10339
+ enabled: boolean;
10340
+ engine?: {
10457
10341
  runtime: "node" | "python";
10458
10342
  backend: string;
10459
10343
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10460
10344
  device?: string | undefined;
10461
- };
10462
- modelId: string;
10463
- enabled: boolean;
10345
+ } | undefined;
10346
+ modelId?: string | undefined;
10464
10347
  settings?: Readonly<Record<string, unknown>> | undefined;
10465
10348
  } | null | undefined;
10466
10349
  } | undefined;
@@ -10469,22 +10352,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10469
10352
  id: string;
10470
10353
  name: string;
10471
10354
  config: {
10472
- engine: {
10355
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10356
+ engine?: {
10473
10357
  runtime: "node" | "python";
10474
10358
  backend: string;
10475
10359
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10476
10360
  device?: string | undefined;
10477
- };
10478
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
10361
+ } | undefined;
10479
10362
  audio?: {
10480
- engine: {
10363
+ enabled: boolean;
10364
+ engine?: {
10481
10365
  runtime: "node" | "python";
10482
10366
  backend: string;
10483
10367
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10484
10368
  device?: string | undefined;
10485
- };
10486
- modelId: string;
10487
- enabled: boolean;
10369
+ } | undefined;
10370
+ modelId?: string | undefined;
10488
10371
  settings?: Readonly<Record<string, unknown>> | undefined;
10489
10372
  } | null | undefined;
10490
10373
  };
@@ -10524,22 +10407,10 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10524
10407
  detectionFps?: number | undefined;
10525
10408
  motionSources?: ("onboard" | "analyzer")[] | undefined;
10526
10409
  pipelineEnabled?: boolean | undefined;
10527
- engine?: {
10528
- runtime: "node" | "python";
10529
- backend: string;
10530
- format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10531
- device?: string | undefined;
10532
- } | undefined;
10533
10410
  steps?: readonly unknown[] | undefined;
10534
10411
  audio?: {
10535
- engine: {
10536
- runtime: "node" | "python";
10537
- backend: string;
10538
- format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
10539
- device?: string | undefined;
10540
- };
10541
- modelId: string;
10542
10412
  enabled: boolean;
10413
+ modelId?: string | undefined;
10543
10414
  } | null | undefined;
10544
10415
  zones?: readonly {
10545
10416
  id: string;
@@ -10560,6 +10431,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
10560
10431
  } | {
10561
10432
  kind: "remote-restream";
10562
10433
  ownerNodeId: string;
10434
+ ownerReachableHost?: string | undefined;
10563
10435
  hubHostnameOverride?: string | undefined;
10564
10436
  } | undefined;
10565
10437
  };
@@ -12678,7 +12550,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
12678
12550
  bitrateKbps?: number | undefined;
12679
12551
  gopFrames?: number | undefined;
12680
12552
  bf?: number | undefined;
12681
- preset?: "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | undefined;
12553
+ preset?: "fast" | "ultrafast" | "superfast" | "veryfast" | "faster" | "medium" | undefined;
12682
12554
  tune?: "zerolatency" | "film" | "animation" | undefined;
12683
12555
  };
12684
12556
  audio: "passthrough" | {
@@ -12893,7 +12765,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
12893
12765
  input: {
12894
12766
  [x: string]: unknown;
12895
12767
  streamId: string;
12896
- format: "webrtc" | "mjpeg" | "rtsp" | "hls";
12768
+ format: "mjpeg" | "rtsp" | "webrtc" | "hls";
12897
12769
  };
12898
12770
  output: {
12899
12771
  url: string;
@@ -14322,109 +14194,301 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
14322
14194
  meta: object;
14323
14195
  }>;
14324
14196
  }>>;
14325
- zoneAnalytics: import("@trpc/server").TRPCBuiltRouter<{
14197
+ webrtcSession: import("@trpc/server").TRPCBuiltRouter<{
14326
14198
  ctx: TrpcContext;
14327
14199
  meta: object;
14328
14200
  errorShape: import("@camstack/types").AugmentedErrorShape;
14329
14201
  transformer: true;
14330
14202
  }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
14331
- getCurrentSnapshot: import("@trpc/server").TRPCQueryProcedure<{
14203
+ listStreams: import("@trpc/server").TRPCQueryProcedure<{
14332
14204
  input: {
14333
14205
  [x: string]: unknown;
14334
14206
  deviceId: number;
14335
14207
  };
14336
14208
  output: {
14337
- ts: number;
14338
- frameWidth: number;
14339
- frameHeight: number;
14340
- zones: readonly {
14341
- totalObjects: number;
14342
- byClass: Record<string, number>;
14343
- zoneId: string;
14344
- zoneName: string;
14345
- trackIds: readonly string[];
14346
- }[];
14347
- frame: {
14348
- totalObjects: number;
14349
- byClass: Record<string, number>;
14350
- };
14351
- unzoned: {
14352
- totalObjects: number;
14353
- byClass: Record<string, number>;
14209
+ id: string;
14210
+ label: string;
14211
+ target: {
14212
+ kind: "adaptive";
14213
+ } | {
14214
+ kind: "profile";
14215
+ profile: "high" | "low" | "mid";
14216
+ } | {
14217
+ kind: "cam-stream";
14218
+ camStreamId: string;
14354
14219
  };
14355
- } | null;
14220
+ codec: string | null;
14221
+ resolution: {
14222
+ width: number;
14223
+ height: number;
14224
+ } | null;
14225
+ status: "error" | "stopped" | "idle" | "connecting" | "streaming" | null;
14226
+ inputFps: number | null;
14227
+ decodeFps: number | null;
14228
+ bitrateKbps: number | null;
14229
+ }[];
14356
14230
  meta: object;
14357
14231
  }>;
14358
- getZoneHistory: import("@trpc/server").TRPCQueryProcedure<{
14232
+ createSession: import("@trpc/server").TRPCMutationProcedure<{
14359
14233
  input: {
14360
14234
  [x: string]: unknown;
14361
14235
  deviceId: number;
14362
- zoneId: string;
14363
- from: number;
14364
- to: number;
14365
- resolution: "minute" | "5min" | "hour";
14366
- className?: string | undefined;
14236
+ target: {
14237
+ kind: "adaptive";
14238
+ } | {
14239
+ kind: "profile";
14240
+ profile: "high" | "low" | "mid";
14241
+ } | {
14242
+ kind: "cam-stream";
14243
+ camStreamId: string;
14244
+ };
14245
+ hints?: {
14246
+ viewportWidth?: number | undefined;
14247
+ viewportHeight?: number | undefined;
14248
+ devicePixelRatio?: number | undefined;
14249
+ downlinkMbps?: number | undefined;
14250
+ prefersTier?: string | undefined;
14251
+ } | undefined;
14252
+ relayOnly?: boolean | undefined;
14253
+ consumerAttribution?: Readonly<{
14254
+ kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
14255
+ label?: string | undefined;
14256
+ media?: "audio" | "video" | "both" | undefined;
14257
+ targetCodec?: string | undefined;
14258
+ transport?: "passthrough" | "repacketize" | "transcode" | undefined;
14259
+ remoteAddr?: string | undefined;
14260
+ userAgent?: string | undefined;
14261
+ userId?: string | undefined;
14262
+ sessionId?: string | undefined;
14263
+ extra?: Record<string, string> | undefined;
14264
+ }> | undefined;
14265
+ };
14266
+ output: {
14267
+ sessionId: string;
14268
+ sdpOffer: string;
14367
14269
  };
14368
- output: readonly {
14369
- ts: number;
14370
- count: number;
14371
- }[];
14372
14270
  meta: object;
14373
14271
  }>;
14374
- getCameraHistory: import("@trpc/server").TRPCQueryProcedure<{
14272
+ handleOffer: import("@trpc/server").TRPCMutationProcedure<{
14375
14273
  input: {
14376
14274
  [x: string]: unknown;
14377
14275
  deviceId: number;
14378
- from: number;
14379
- to: number;
14380
- resolution: "minute" | "5min" | "hour";
14381
- className?: string | undefined;
14276
+ sdpOffer: string;
14277
+ target?: {
14278
+ kind: "adaptive";
14279
+ } | {
14280
+ kind: "profile";
14281
+ profile: "high" | "low" | "mid";
14282
+ } | {
14283
+ kind: "cam-stream";
14284
+ camStreamId: string;
14285
+ } | undefined;
14286
+ sessionId?: string | undefined;
14287
+ relayOnly?: boolean | undefined;
14288
+ nonTrickle?: boolean | undefined;
14289
+ disableTurn?: boolean | undefined;
14290
+ disableIpv6?: boolean | undefined;
14291
+ consumerAttribution?: Readonly<{
14292
+ kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
14293
+ label?: string | undefined;
14294
+ media?: "audio" | "video" | "both" | undefined;
14295
+ targetCodec?: string | undefined;
14296
+ transport?: "passthrough" | "repacketize" | "transcode" | undefined;
14297
+ remoteAddr?: string | undefined;
14298
+ userAgent?: string | undefined;
14299
+ userId?: string | undefined;
14300
+ sessionId?: string | undefined;
14301
+ extra?: Record<string, string> | undefined;
14302
+ }> | undefined;
14303
+ };
14304
+ output: {
14305
+ sessionId: string;
14306
+ sdpAnswer: string;
14382
14307
  };
14383
- output: readonly {
14384
- ts: number;
14385
- count: number;
14386
- }[];
14387
14308
  meta: object;
14388
14309
  }>;
14389
- getUnzonedHistory: import("@trpc/server").TRPCQueryProcedure<{
14310
+ handleAnswer: import("@trpc/server").TRPCMutationProcedure<{
14390
14311
  input: {
14391
14312
  [x: string]: unknown;
14392
14313
  deviceId: number;
14393
- from: number;
14394
- to: number;
14395
- resolution: "minute" | "5min" | "hour";
14396
- className?: string | undefined;
14314
+ sessionId: string;
14315
+ sdpAnswer: string;
14397
14316
  };
14398
- output: readonly {
14399
- ts: number;
14400
- count: number;
14401
- }[];
14317
+ output: void;
14402
14318
  meta: object;
14403
14319
  }>;
14404
- }>>;
14405
- zoneRules: import("@trpc/server").TRPCBuiltRouter<{
14406
- ctx: TrpcContext;
14407
- meta: object;
14408
- errorShape: import("@camstack/types").AugmentedErrorShape;
14409
- transformer: true;
14410
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
14411
- listRules: import("@trpc/server").TRPCQueryProcedure<{
14320
+ addIceCandidate: import("@trpc/server").TRPCMutationProcedure<{
14412
14321
  input: {
14413
14322
  [x: string]: unknown;
14414
14323
  deviceId: number;
14415
- stage: "motion" | "detection";
14324
+ sessionId: string;
14325
+ candidate: string;
14326
+ sdpMid?: string | null | undefined;
14327
+ sdpMLineIndex?: number | null | undefined;
14416
14328
  };
14417
- output: readonly {
14418
- id: string;
14419
- zoneIds: readonly string[];
14420
- mode: "include" | "exclude";
14421
- enabled: boolean;
14422
- name?: string | undefined;
14423
- classFilter?: readonly string[] | undefined;
14424
- overlapThreshold?: number | undefined;
14425
- bboxInclusionPct?: number | undefined;
14426
- preferMask?: boolean | undefined;
14427
- }[];
14329
+ output: void;
14330
+ meta: object;
14331
+ }>;
14332
+ getIceCandidates: import("@trpc/server").TRPCQueryProcedure<{
14333
+ input: {
14334
+ [x: string]: unknown;
14335
+ deviceId: number;
14336
+ sessionId: string;
14337
+ };
14338
+ output: {
14339
+ candidates: {
14340
+ candidate: string;
14341
+ sdpMid: string | null;
14342
+ sdpMLineIndex: number | null;
14343
+ }[];
14344
+ done: boolean;
14345
+ };
14346
+ meta: object;
14347
+ }>;
14348
+ closeSession: import("@trpc/server").TRPCMutationProcedure<{
14349
+ input: {
14350
+ [x: string]: unknown;
14351
+ deviceId: number;
14352
+ sessionId: string;
14353
+ };
14354
+ output: void;
14355
+ meta: object;
14356
+ }>;
14357
+ hasAdaptiveBitrate: import("@trpc/server").TRPCQueryProcedure<{
14358
+ input: {
14359
+ [x: string]: unknown;
14360
+ deviceId: number;
14361
+ profile: "high" | "low" | "mid";
14362
+ };
14363
+ output: boolean;
14364
+ meta: object;
14365
+ }>;
14366
+ getSessionState: import("@trpc/server").TRPCQueryProcedure<{
14367
+ input: {
14368
+ [x: string]: unknown;
14369
+ deviceId: number;
14370
+ sessionId: string;
14371
+ };
14372
+ output: {
14373
+ pendingRenegotiation: {
14374
+ target: {
14375
+ kind: "adaptive";
14376
+ } | {
14377
+ kind: "profile";
14378
+ profile: "high" | "low" | "mid";
14379
+ } | {
14380
+ kind: "cam-stream";
14381
+ camStreamId: string;
14382
+ };
14383
+ epoch: number;
14384
+ } | null;
14385
+ };
14386
+ meta: object;
14387
+ }>;
14388
+ }>>;
14389
+ zoneAnalytics: import("@trpc/server").TRPCBuiltRouter<{
14390
+ ctx: TrpcContext;
14391
+ meta: object;
14392
+ errorShape: import("@camstack/types").AugmentedErrorShape;
14393
+ transformer: true;
14394
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
14395
+ getCurrentSnapshot: import("@trpc/server").TRPCQueryProcedure<{
14396
+ input: {
14397
+ [x: string]: unknown;
14398
+ deviceId: number;
14399
+ };
14400
+ output: {
14401
+ ts: number;
14402
+ frameWidth: number;
14403
+ frameHeight: number;
14404
+ zones: readonly {
14405
+ totalObjects: number;
14406
+ byClass: Record<string, number>;
14407
+ zoneId: string;
14408
+ zoneName: string;
14409
+ trackIds: readonly string[];
14410
+ }[];
14411
+ frame: {
14412
+ totalObjects: number;
14413
+ byClass: Record<string, number>;
14414
+ };
14415
+ unzoned: {
14416
+ totalObjects: number;
14417
+ byClass: Record<string, number>;
14418
+ };
14419
+ } | null;
14420
+ meta: object;
14421
+ }>;
14422
+ getZoneHistory: import("@trpc/server").TRPCQueryProcedure<{
14423
+ input: {
14424
+ [x: string]: unknown;
14425
+ deviceId: number;
14426
+ zoneId: string;
14427
+ from: number;
14428
+ to: number;
14429
+ resolution: "minute" | "5min" | "hour";
14430
+ className?: string | undefined;
14431
+ };
14432
+ output: readonly {
14433
+ ts: number;
14434
+ count: number;
14435
+ }[];
14436
+ meta: object;
14437
+ }>;
14438
+ getCameraHistory: import("@trpc/server").TRPCQueryProcedure<{
14439
+ input: {
14440
+ [x: string]: unknown;
14441
+ deviceId: number;
14442
+ from: number;
14443
+ to: number;
14444
+ resolution: "minute" | "5min" | "hour";
14445
+ className?: string | undefined;
14446
+ };
14447
+ output: readonly {
14448
+ ts: number;
14449
+ count: number;
14450
+ }[];
14451
+ meta: object;
14452
+ }>;
14453
+ getUnzonedHistory: import("@trpc/server").TRPCQueryProcedure<{
14454
+ input: {
14455
+ [x: string]: unknown;
14456
+ deviceId: number;
14457
+ from: number;
14458
+ to: number;
14459
+ resolution: "minute" | "5min" | "hour";
14460
+ className?: string | undefined;
14461
+ };
14462
+ output: readonly {
14463
+ ts: number;
14464
+ count: number;
14465
+ }[];
14466
+ meta: object;
14467
+ }>;
14468
+ }>>;
14469
+ zoneRules: import("@trpc/server").TRPCBuiltRouter<{
14470
+ ctx: TrpcContext;
14471
+ meta: object;
14472
+ errorShape: import("@camstack/types").AugmentedErrorShape;
14473
+ transformer: true;
14474
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
14475
+ listRules: import("@trpc/server").TRPCQueryProcedure<{
14476
+ input: {
14477
+ [x: string]: unknown;
14478
+ deviceId: number;
14479
+ stage: "motion" | "detection";
14480
+ };
14481
+ output: readonly {
14482
+ id: string;
14483
+ zoneIds: readonly string[];
14484
+ mode: "include" | "exclude";
14485
+ enabled: boolean;
14486
+ name?: string | undefined;
14487
+ classFilter?: readonly string[] | undefined;
14488
+ overlapThreshold?: number | undefined;
14489
+ bboxInclusionPct?: number | undefined;
14490
+ preferMask?: boolean | undefined;
14491
+ }[];
14428
14492
  meta: object;
14429
14493
  }>;
14430
14494
  setRules: import("@trpc/server").TRPCMutationProcedure<{
@@ -15260,225 +15324,6 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
15260
15324
  meta: object;
15261
15325
  }>;
15262
15326
  }>>;
15263
- snapshotProvider: import("@trpc/server").TRPCBuiltRouter<{
15264
- ctx: TrpcContext;
15265
- meta: object;
15266
- errorShape: import("@camstack/types").AugmentedErrorShape;
15267
- transformer: true;
15268
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
15269
- supportsDevice: import("@trpc/server").TRPCQueryProcedure<{
15270
- input: {
15271
- [x: string]: unknown;
15272
- deviceId: number;
15273
- };
15274
- output: boolean;
15275
- meta: object;
15276
- }>;
15277
- getSnapshot: import("@trpc/server").TRPCQueryProcedure<{
15278
- input: {
15279
- [x: string]: unknown;
15280
- deviceId: number;
15281
- streamId?: string | undefined;
15282
- };
15283
- output: {
15284
- base64: string;
15285
- contentType: string;
15286
- } | null;
15287
- meta: object;
15288
- }>;
15289
- }>>;
15290
- webrtcSession: import("@trpc/server").TRPCBuiltRouter<{
15291
- ctx: TrpcContext;
15292
- meta: object;
15293
- errorShape: import("@camstack/types").AugmentedErrorShape;
15294
- transformer: true;
15295
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
15296
- listStreams: import("@trpc/server").TRPCQueryProcedure<{
15297
- input: {
15298
- [x: string]: unknown;
15299
- deviceId: number;
15300
- };
15301
- output: {
15302
- id: string;
15303
- label: string;
15304
- target: {
15305
- kind: "adaptive";
15306
- } | {
15307
- kind: "profile";
15308
- profile: "high" | "low" | "mid";
15309
- } | {
15310
- kind: "cam-stream";
15311
- camStreamId: string;
15312
- };
15313
- codec: string | null;
15314
- resolution: {
15315
- width: number;
15316
- height: number;
15317
- } | null;
15318
- status: "error" | "stopped" | "idle" | "connecting" | "streaming" | null;
15319
- inputFps: number | null;
15320
- decodeFps: number | null;
15321
- bitrateKbps: number | null;
15322
- }[];
15323
- meta: object;
15324
- }>;
15325
- createSession: import("@trpc/server").TRPCMutationProcedure<{
15326
- input: {
15327
- [x: string]: unknown;
15328
- deviceId: number;
15329
- target: {
15330
- kind: "adaptive";
15331
- } | {
15332
- kind: "profile";
15333
- profile: "high" | "low" | "mid";
15334
- } | {
15335
- kind: "cam-stream";
15336
- camStreamId: string;
15337
- };
15338
- hints?: {
15339
- viewportWidth?: number | undefined;
15340
- viewportHeight?: number | undefined;
15341
- devicePixelRatio?: number | undefined;
15342
- downlinkMbps?: number | undefined;
15343
- prefersTier?: string | undefined;
15344
- } | undefined;
15345
- relayOnly?: boolean | undefined;
15346
- consumerAttribution?: Readonly<{
15347
- kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
15348
- label?: string | undefined;
15349
- media?: "audio" | "video" | "both" | undefined;
15350
- targetCodec?: string | undefined;
15351
- transport?: "passthrough" | "repacketize" | "transcode" | undefined;
15352
- remoteAddr?: string | undefined;
15353
- userAgent?: string | undefined;
15354
- userId?: string | undefined;
15355
- sessionId?: string | undefined;
15356
- extra?: Record<string, string> | undefined;
15357
- }> | undefined;
15358
- };
15359
- output: {
15360
- sessionId: string;
15361
- sdpOffer: string;
15362
- };
15363
- meta: object;
15364
- }>;
15365
- handleOffer: import("@trpc/server").TRPCMutationProcedure<{
15366
- input: {
15367
- [x: string]: unknown;
15368
- deviceId: number;
15369
- sdpOffer: string;
15370
- target?: {
15371
- kind: "adaptive";
15372
- } | {
15373
- kind: "profile";
15374
- profile: "high" | "low" | "mid";
15375
- } | {
15376
- kind: "cam-stream";
15377
- camStreamId: string;
15378
- } | undefined;
15379
- sessionId?: string | undefined;
15380
- relayOnly?: boolean | undefined;
15381
- nonTrickle?: boolean | undefined;
15382
- disableTurn?: boolean | undefined;
15383
- disableIpv6?: boolean | undefined;
15384
- consumerAttribution?: Readonly<{
15385
- kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
15386
- label?: string | undefined;
15387
- media?: "audio" | "video" | "both" | undefined;
15388
- targetCodec?: string | undefined;
15389
- transport?: "passthrough" | "repacketize" | "transcode" | undefined;
15390
- remoteAddr?: string | undefined;
15391
- userAgent?: string | undefined;
15392
- userId?: string | undefined;
15393
- sessionId?: string | undefined;
15394
- extra?: Record<string, string> | undefined;
15395
- }> | undefined;
15396
- };
15397
- output: {
15398
- sessionId: string;
15399
- sdpAnswer: string;
15400
- };
15401
- meta: object;
15402
- }>;
15403
- handleAnswer: import("@trpc/server").TRPCMutationProcedure<{
15404
- input: {
15405
- [x: string]: unknown;
15406
- deviceId: number;
15407
- sessionId: string;
15408
- sdpAnswer: string;
15409
- };
15410
- output: void;
15411
- meta: object;
15412
- }>;
15413
- addIceCandidate: import("@trpc/server").TRPCMutationProcedure<{
15414
- input: {
15415
- [x: string]: unknown;
15416
- deviceId: number;
15417
- sessionId: string;
15418
- candidate: string;
15419
- sdpMid?: string | null | undefined;
15420
- sdpMLineIndex?: number | null | undefined;
15421
- };
15422
- output: void;
15423
- meta: object;
15424
- }>;
15425
- getIceCandidates: import("@trpc/server").TRPCQueryProcedure<{
15426
- input: {
15427
- [x: string]: unknown;
15428
- deviceId: number;
15429
- sessionId: string;
15430
- };
15431
- output: {
15432
- candidates: {
15433
- candidate: string;
15434
- sdpMid: string | null;
15435
- sdpMLineIndex: number | null;
15436
- }[];
15437
- done: boolean;
15438
- };
15439
- meta: object;
15440
- }>;
15441
- closeSession: import("@trpc/server").TRPCMutationProcedure<{
15442
- input: {
15443
- [x: string]: unknown;
15444
- deviceId: number;
15445
- sessionId: string;
15446
- };
15447
- output: void;
15448
- meta: object;
15449
- }>;
15450
- hasAdaptiveBitrate: import("@trpc/server").TRPCQueryProcedure<{
15451
- input: {
15452
- [x: string]: unknown;
15453
- deviceId: number;
15454
- profile: "high" | "low" | "mid";
15455
- };
15456
- output: boolean;
15457
- meta: object;
15458
- }>;
15459
- getSessionState: import("@trpc/server").TRPCQueryProcedure<{
15460
- input: {
15461
- [x: string]: unknown;
15462
- deviceId: number;
15463
- sessionId: string;
15464
- };
15465
- output: {
15466
- pendingRenegotiation: {
15467
- target: {
15468
- kind: "adaptive";
15469
- } | {
15470
- kind: "profile";
15471
- profile: "high" | "low" | "mid";
15472
- } | {
15473
- kind: "cam-stream";
15474
- camStreamId: string;
15475
- };
15476
- epoch: number;
15477
- } | null;
15478
- };
15479
- meta: object;
15480
- }>;
15481
- }>>;
15482
15327
  accessories: import("@trpc/server").TRPCBuiltRouter<{
15483
15328
  ctx: TrpcContext;
15484
15329
  meta: object;
@@ -15936,6 +15781,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
15936
15781
  currentVersion: string;
15937
15782
  latestVersion: string | null;
15938
15783
  hasUpdate: boolean;
15784
+ buildId: string | null;
15939
15785
  description?: string | undefined;
15940
15786
  }[];
15941
15787
  meta: object;
@@ -17562,11 +17408,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
17562
17408
  [x: string]: unknown;
17563
17409
  deviceId: number;
17564
17410
  requirements: Readonly<{
17565
- acceptCodecs?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
17411
+ acceptCodecs?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
17566
17412
  minHeight?: number | undefined;
17567
17413
  minWidth?: number | undefined;
17568
17414
  excludeDerived?: boolean | undefined;
17569
- requireSiblingCodec?: readonly ("h264" | "h265" | "mjpeg" | "hevc" | "av1" | "vp8" | "vp9")[] | undefined;
17415
+ requireSiblingCodec?: readonly ("h264" | "h265" | "hevc" | "mjpeg" | "av1" | "vp8" | "vp9")[] | undefined;
17570
17416
  }>;
17571
17417
  preferences?: Readonly<{
17572
17418
  preferredProviders?: readonly string[] | undefined;
@@ -17950,6 +17796,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
17950
17796
  filename: string;
17951
17797
  sizeMB: number;
17952
17798
  }[] | undefined;
17799
+ legacy?: boolean | undefined;
17800
+ metrics?: {
17801
+ map50?: number | undefined;
17802
+ p95LatencyMs?: Record<string, number> | undefined;
17803
+ } | undefined;
17804
+ license?: string | undefined;
17805
+ group?: {
17806
+ family: string;
17807
+ tier: string;
17808
+ precision?: "fp32" | "int8" | undefined;
17809
+ optimization?: "standard" | "fast" | undefined;
17810
+ resolution?: number | undefined;
17811
+ } | undefined;
17953
17812
  };
17954
17813
  }[];
17955
17814
  meta: object;
@@ -19334,7 +19193,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
19334
19193
  output: {
19335
19194
  id: string;
19336
19195
  label: string;
19337
- protocol: "custom" | "webrtc" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg";
19196
+ protocol: "custom" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg" | "webrtc";
19338
19197
  url?: string | undefined;
19339
19198
  resolution?: Readonly<{
19340
19199
  width: number;
@@ -19984,7 +19843,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
19984
19843
  output: {
19985
19844
  id: string;
19986
19845
  label: string;
19987
- protocol: "custom" | "webrtc" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg";
19846
+ protocol: "custom" | "rtsp" | "rtmp" | "annexb" | "http-mjpeg" | "webrtc";
19988
19847
  url?: string | undefined;
19989
19848
  resolution?: {
19990
19849
  width: number;
@@ -21894,7 +21753,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
21894
21753
  };
21895
21754
  targets: readonly ({
21896
21755
  format: "openvino";
21897
- precisions: readonly ("fp16" | "int8")[];
21756
+ precisions: readonly ("int8" | "fp16")[];
21898
21757
  } | {
21899
21758
  format: "coreml";
21900
21759
  })[];
@@ -21963,13 +21822,26 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
21963
21822
  filename: string;
21964
21823
  sizeMB: number;
21965
21824
  }[] | undefined;
21825
+ legacy?: boolean | undefined;
21826
+ metrics?: {
21827
+ map50?: number | undefined;
21828
+ p95LatencyMs?: Record<string, number> | undefined;
21829
+ } | undefined;
21830
+ license?: string | undefined;
21831
+ group?: {
21832
+ family: string;
21833
+ tier: string;
21834
+ precision?: "fp32" | "int8" | undefined;
21835
+ optimization?: "standard" | "fast" | undefined;
21836
+ resolution?: number | undefined;
21837
+ } | undefined;
21966
21838
  };
21967
21839
  artifacts: readonly {
21968
21840
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
21969
21841
  sizeMB: number;
21970
21842
  validated: boolean;
21971
21843
  files: readonly string[];
21972
- precision?: "fp16" | "int8" | undefined;
21844
+ precision?: "int8" | "fp16" | undefined;
21973
21845
  }[];
21974
21846
  };
21975
21847
  meta: object;
@@ -22048,6 +21920,19 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
22048
21920
  filename: string;
22049
21921
  sizeMB: number;
22050
21922
  }[] | undefined;
21923
+ legacy?: boolean | undefined;
21924
+ metrics?: {
21925
+ map50?: number | undefined;
21926
+ p95LatencyMs?: Record<string, number> | undefined;
21927
+ } | undefined;
21928
+ license?: string | undefined;
21929
+ group?: {
21930
+ family: string;
21931
+ tier: string;
21932
+ precision?: "fp32" | "int8" | undefined;
21933
+ optimization?: "standard" | "fast" | undefined;
21934
+ resolution?: number | undefined;
21935
+ } | undefined;
22051
21936
  };
22052
21937
  };
22053
21938
  output: {
@@ -23674,6 +23559,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
23674
23559
  progress?: number | undefined;
23675
23560
  error?: string | undefined;
23676
23561
  nextRetryAt?: number | undefined;
23562
+ configIssues?: string[] | undefined;
23677
23563
  };
23678
23564
  meta: object;
23679
23565
  }>;
@@ -23700,6 +23586,11 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
23700
23586
  };
23701
23587
  meta: object;
23702
23588
  }>;
23589
+ resetToDefault: import("@trpc/server").TRPCMutationProcedure<{
23590
+ input: any;
23591
+ output: any;
23592
+ meta: object;
23593
+ }>;
23703
23594
  getSchema: import("@trpc/server").TRPCQueryProcedure<{
23704
23595
  input: {
23705
23596
  nodeId?: string | undefined;
@@ -23744,6 +23635,14 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
23744
23635
  downloaded: boolean;
23745
23636
  sizeMB: number;
23746
23637
  }>;
23638
+ group?: {
23639
+ family: string;
23640
+ tier: string;
23641
+ precision?: "fp32" | "int8" | undefined;
23642
+ optimization?: "standard" | "fast" | undefined;
23643
+ resolution?: number | undefined;
23644
+ } | undefined;
23645
+ legacy?: boolean | undefined;
23747
23646
  }[];
23748
23647
  defaultModelId: string;
23749
23648
  defaultConfidence: number;
@@ -23777,6 +23676,28 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
23777
23676
  output: import("@camstack/types").ConfigUISchema;
23778
23677
  meta: object;
23779
23678
  }>;
23679
+ validatePipeline: import("@trpc/server").TRPCQueryProcedure<{
23680
+ input: {
23681
+ [x: string]: unknown;
23682
+ steps: unknown[];
23683
+ };
23684
+ output: {
23685
+ ok: boolean;
23686
+ issues: readonly {
23687
+ addonId: string;
23688
+ kind: "unknown-addon" | "no-format-build";
23689
+ detail: string;
23690
+ }[];
23691
+ substitutions: readonly {
23692
+ addonId: string;
23693
+ chosen: string;
23694
+ running: string;
23695
+ format: string;
23696
+ }[];
23697
+ format: string;
23698
+ };
23699
+ meta: object;
23700
+ }>;
23780
23701
  listTemplates: import("@trpc/server").TRPCQueryProcedure<{
23781
23702
  input: {
23782
23703
  nodeId?: string | undefined;
@@ -24370,6 +24291,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24370
24291
  };
24371
24292
  meta: object;
24372
24293
  }>;
24294
+ getIngestOwner: import("@trpc/server").TRPCQueryProcedure<{
24295
+ input: {
24296
+ nodeId?: string | undefined;
24297
+ } | undefined;
24298
+ output: {
24299
+ ownerNodeId: string;
24300
+ reachableHost?: string | undefined;
24301
+ configIssue?: string | undefined;
24302
+ };
24303
+ meta: object;
24304
+ }>;
24373
24305
  assignDecoder: import("@trpc/server").TRPCMutationProcedure<{
24374
24306
  input: {
24375
24307
  [x: string]: unknown;
@@ -24476,8 +24408,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24476
24408
  output: {
24477
24409
  addonDefaults: Readonly<Record<string, {
24478
24410
  enabled: boolean;
24479
- modelId: string;
24480
24411
  settings: Readonly<Record<string, unknown>>;
24412
+ modelId?: string | undefined;
24481
24413
  }>>;
24482
24414
  maxCameras: number | null;
24483
24415
  detectWeight?: number | undefined;
@@ -24485,6 +24417,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24485
24417
  decode?: boolean | undefined;
24486
24418
  audio?: boolean | undefined;
24487
24419
  ingest?: boolean | undefined;
24420
+ reachableHost?: string | undefined;
24488
24421
  } | null;
24489
24422
  meta: object;
24490
24423
  }>;
@@ -24497,8 +24430,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24497
24430
  settings: {
24498
24431
  addonDefaults: Readonly<Record<string, {
24499
24432
  enabled: boolean;
24500
- modelId: string;
24501
24433
  settings: Readonly<Record<string, unknown>>;
24434
+ modelId?: string | undefined;
24502
24435
  }>>;
24503
24436
  maxCameras: number | null;
24504
24437
  detectWeight?: number | undefined;
@@ -24506,6 +24439,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24506
24439
  decode?: boolean | undefined;
24507
24440
  audio?: boolean | undefined;
24508
24441
  ingest?: boolean | undefined;
24442
+ reachableHost?: string | undefined;
24509
24443
  };
24510
24444
  }[];
24511
24445
  meta: object;
@@ -24516,8 +24450,8 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24516
24450
  agentNodeId: string;
24517
24451
  defaults: Record<string, {
24518
24452
  enabled: boolean;
24519
- modelId: string;
24520
24453
  settings: Readonly<Record<string, unknown>>;
24454
+ modelId?: string | undefined;
24521
24455
  }>;
24522
24456
  };
24523
24457
  output: {
@@ -24572,6 +24506,17 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24572
24506
  };
24573
24507
  meta: object;
24574
24508
  }>;
24509
+ setAgentReachableHost: import("@trpc/server").TRPCMutationProcedure<{
24510
+ input: {
24511
+ [x: string]: unknown;
24512
+ agentNodeId: string;
24513
+ reachableHost: string | null;
24514
+ };
24515
+ output: {
24516
+ success: true;
24517
+ };
24518
+ meta: object;
24519
+ }>;
24575
24520
  getCameraSettings: import("@trpc/server").TRPCQueryProcedure<{
24576
24521
  input: {
24577
24522
  [x: string]: unknown;
@@ -24661,22 +24606,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24661
24606
  agentNodeId?: string | undefined;
24662
24607
  };
24663
24608
  output: {
24664
- engine: {
24609
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24610
+ engine?: {
24665
24611
  runtime: "node" | "python";
24666
24612
  backend: string;
24667
24613
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24668
24614
  device?: string | undefined;
24669
- };
24670
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24615
+ } | undefined;
24671
24616
  audio?: {
24672
- engine: {
24617
+ enabled: boolean;
24618
+ engine?: {
24673
24619
  runtime: "node" | "python";
24674
24620
  backend: string;
24675
24621
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24676
24622
  device?: string | undefined;
24677
- };
24678
- modelId: string;
24679
- enabled: boolean;
24623
+ } | undefined;
24624
+ modelId?: string | undefined;
24680
24625
  settings?: Readonly<Record<string, unknown>> | undefined;
24681
24626
  } | null | undefined;
24682
24627
  };
@@ -24693,6 +24638,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24693
24638
  detectionNodeId: string | null;
24694
24639
  decoderNodeId: string | null;
24695
24640
  audioNodeId: string | null;
24641
+ sourceNodeId: string | null;
24696
24642
  pinned: {
24697
24643
  detection: boolean;
24698
24644
  decoder: boolean;
@@ -24783,6 +24729,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24783
24729
  detectionNodeId: string | null;
24784
24730
  decoderNodeId: string | null;
24785
24731
  audioNodeId: string | null;
24732
+ sourceNodeId: string | null;
24786
24733
  pinned: {
24787
24734
  detection: boolean;
24788
24735
  decoder: boolean;
@@ -24870,22 +24817,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24870
24817
  id: string;
24871
24818
  name: string;
24872
24819
  config: {
24873
- engine: {
24820
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24821
+ engine?: {
24874
24822
  runtime: "node" | "python";
24875
24823
  backend: string;
24876
24824
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24877
24825
  device?: string | undefined;
24878
- };
24879
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24826
+ } | undefined;
24880
24827
  audio?: {
24881
- engine: {
24828
+ enabled: boolean;
24829
+ engine?: {
24882
24830
  runtime: "node" | "python";
24883
24831
  backend: string;
24884
24832
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24885
24833
  device?: string | undefined;
24886
- };
24887
- modelId: string;
24888
- enabled: boolean;
24834
+ } | undefined;
24835
+ modelId?: string | undefined;
24889
24836
  settings?: Readonly<Record<string, unknown>> | undefined;
24890
24837
  } | null | undefined;
24891
24838
  };
@@ -24900,22 +24847,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24900
24847
  [x: string]: unknown;
24901
24848
  name: string;
24902
24849
  config: {
24903
- engine: {
24850
+ steps: readonly unknown[];
24851
+ engine?: {
24904
24852
  runtime: "node" | "python";
24905
24853
  backend: string;
24906
24854
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24907
24855
  device?: string | undefined;
24908
- };
24909
- steps: readonly unknown[];
24856
+ } | undefined;
24910
24857
  audio?: {
24911
- engine: {
24858
+ enabled: boolean;
24859
+ engine?: {
24912
24860
  runtime: "node" | "python";
24913
24861
  backend: string;
24914
24862
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24915
24863
  device?: string | undefined;
24916
- };
24917
- modelId: string;
24918
- enabled: boolean;
24864
+ } | undefined;
24865
+ modelId?: string | undefined;
24919
24866
  settings?: Readonly<Record<string, unknown>> | undefined;
24920
24867
  } | null | undefined;
24921
24868
  };
@@ -24925,22 +24872,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24925
24872
  id: string;
24926
24873
  name: string;
24927
24874
  config: {
24928
- engine: {
24875
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24876
+ engine?: {
24929
24877
  runtime: "node" | "python";
24930
24878
  backend: string;
24931
24879
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24932
24880
  device?: string | undefined;
24933
- };
24934
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24881
+ } | undefined;
24935
24882
  audio?: {
24936
- engine: {
24883
+ enabled: boolean;
24884
+ engine?: {
24937
24885
  runtime: "node" | "python";
24938
24886
  backend: string;
24939
24887
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24940
24888
  device?: string | undefined;
24941
- };
24942
- modelId: string;
24943
- enabled: boolean;
24889
+ } | undefined;
24890
+ modelId?: string | undefined;
24944
24891
  settings?: Readonly<Record<string, unknown>> | undefined;
24945
24892
  } | null | undefined;
24946
24893
  };
@@ -24957,22 +24904,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24957
24904
  name?: string | undefined;
24958
24905
  description?: string | undefined;
24959
24906
  config?: {
24960
- engine: {
24907
+ steps: readonly unknown[];
24908
+ engine?: {
24961
24909
  runtime: "node" | "python";
24962
24910
  backend: string;
24963
24911
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24964
24912
  device?: string | undefined;
24965
- };
24966
- steps: readonly unknown[];
24913
+ } | undefined;
24967
24914
  audio?: {
24968
- engine: {
24915
+ enabled: boolean;
24916
+ engine?: {
24969
24917
  runtime: "node" | "python";
24970
24918
  backend: string;
24971
24919
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24972
24920
  device?: string | undefined;
24973
- };
24974
- modelId: string;
24975
- enabled: boolean;
24921
+ } | undefined;
24922
+ modelId?: string | undefined;
24976
24923
  settings?: Readonly<Record<string, unknown>> | undefined;
24977
24924
  } | null | undefined;
24978
24925
  } | undefined;
@@ -24981,22 +24928,22 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
24981
24928
  id: string;
24982
24929
  name: string;
24983
24930
  config: {
24984
- engine: {
24931
+ steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24932
+ engine?: {
24985
24933
  runtime: "node" | "python";
24986
24934
  backend: string;
24987
24935
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24988
24936
  device?: string | undefined;
24989
- };
24990
- steps: readonly import("@camstack/types").PipelineStepInputOutput[];
24937
+ } | undefined;
24991
24938
  audio?: {
24992
- engine: {
24939
+ enabled: boolean;
24940
+ engine?: {
24993
24941
  runtime: "node" | "python";
24994
24942
  backend: string;
24995
24943
  format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
24996
24944
  device?: string | undefined;
24997
- };
24998
- modelId: string;
24999
- enabled: boolean;
24945
+ } | undefined;
24946
+ modelId?: string | undefined;
25000
24947
  settings?: Readonly<Record<string, unknown>> | undefined;
25001
24948
  } | null | undefined;
25002
24949
  };
@@ -25036,22 +24983,10 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
25036
24983
  detectionFps?: number | undefined;
25037
24984
  motionSources?: ("onboard" | "analyzer")[] | undefined;
25038
24985
  pipelineEnabled?: boolean | undefined;
25039
- engine?: {
25040
- runtime: "node" | "python";
25041
- backend: string;
25042
- format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
25043
- device?: string | undefined;
25044
- } | undefined;
25045
24986
  steps?: readonly unknown[] | undefined;
25046
24987
  audio?: {
25047
- engine: {
25048
- runtime: "node" | "python";
25049
- backend: string;
25050
- format: "onnx" | "coreml" | "openvino" | "tflite" | "pt";
25051
- device?: string | undefined;
25052
- };
25053
- modelId: string;
25054
24988
  enabled: boolean;
24989
+ modelId?: string | undefined;
25055
24990
  } | null | undefined;
25056
24991
  zones?: readonly {
25057
24992
  id: string;
@@ -25072,6 +25007,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
25072
25007
  } | {
25073
25008
  kind: "remote-restream";
25074
25009
  ownerNodeId: string;
25010
+ ownerReachableHost?: string | undefined;
25075
25011
  hubHostnameOverride?: string | undefined;
25076
25012
  } | undefined;
25077
25013
  };
@@ -27190,7 +27126,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
27190
27126
  bitrateKbps?: number | undefined;
27191
27127
  gopFrames?: number | undefined;
27192
27128
  bf?: number | undefined;
27193
- preset?: "ultrafast" | "superfast" | "veryfast" | "faster" | "fast" | "medium" | undefined;
27129
+ preset?: "fast" | "ultrafast" | "superfast" | "veryfast" | "faster" | "medium" | undefined;
27194
27130
  tune?: "zerolatency" | "film" | "animation" | undefined;
27195
27131
  };
27196
27132
  audio: "passthrough" | {
@@ -27405,7 +27341,7 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
27405
27341
  input: {
27406
27342
  [x: string]: unknown;
27407
27343
  streamId: string;
27408
- format: "webrtc" | "mjpeg" | "rtsp" | "hls";
27344
+ format: "mjpeg" | "rtsp" | "webrtc" | "hls";
27409
27345
  };
27410
27346
  output: {
27411
27347
  url: string;
@@ -28834,6 +28770,198 @@ export type AppRouter = import("@trpc/server/unstable-core-do-not-import").Route
28834
28770
  meta: object;
28835
28771
  }>;
28836
28772
  }>>;
28773
+ webrtcSession: import("@trpc/server").TRPCBuiltRouter<{
28774
+ ctx: TrpcContext;
28775
+ meta: object;
28776
+ errorShape: import("@camstack/types").AugmentedErrorShape;
28777
+ transformer: true;
28778
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
28779
+ listStreams: import("@trpc/server").TRPCQueryProcedure<{
28780
+ input: {
28781
+ [x: string]: unknown;
28782
+ deviceId: number;
28783
+ };
28784
+ output: {
28785
+ id: string;
28786
+ label: string;
28787
+ target: {
28788
+ kind: "adaptive";
28789
+ } | {
28790
+ kind: "profile";
28791
+ profile: "high" | "low" | "mid";
28792
+ } | {
28793
+ kind: "cam-stream";
28794
+ camStreamId: string;
28795
+ };
28796
+ codec: string | null;
28797
+ resolution: {
28798
+ width: number;
28799
+ height: number;
28800
+ } | null;
28801
+ status: "error" | "stopped" | "idle" | "connecting" | "streaming" | null;
28802
+ inputFps: number | null;
28803
+ decodeFps: number | null;
28804
+ bitrateKbps: number | null;
28805
+ }[];
28806
+ meta: object;
28807
+ }>;
28808
+ createSession: import("@trpc/server").TRPCMutationProcedure<{
28809
+ input: {
28810
+ [x: string]: unknown;
28811
+ deviceId: number;
28812
+ target: {
28813
+ kind: "adaptive";
28814
+ } | {
28815
+ kind: "profile";
28816
+ profile: "high" | "low" | "mid";
28817
+ } | {
28818
+ kind: "cam-stream";
28819
+ camStreamId: string;
28820
+ };
28821
+ hints?: {
28822
+ viewportWidth?: number | undefined;
28823
+ viewportHeight?: number | undefined;
28824
+ devicePixelRatio?: number | undefined;
28825
+ downlinkMbps?: number | undefined;
28826
+ prefersTier?: string | undefined;
28827
+ } | undefined;
28828
+ relayOnly?: boolean | undefined;
28829
+ consumerAttribution?: Readonly<{
28830
+ kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
28831
+ label?: string | undefined;
28832
+ media?: "audio" | "video" | "both" | undefined;
28833
+ targetCodec?: string | undefined;
28834
+ transport?: "passthrough" | "repacketize" | "transcode" | undefined;
28835
+ remoteAddr?: string | undefined;
28836
+ userAgent?: string | undefined;
28837
+ userId?: string | undefined;
28838
+ sessionId?: string | undefined;
28839
+ extra?: Record<string, string> | undefined;
28840
+ }> | undefined;
28841
+ };
28842
+ output: {
28843
+ sessionId: string;
28844
+ sdpOffer: string;
28845
+ };
28846
+ meta: object;
28847
+ }>;
28848
+ handleOffer: import("@trpc/server").TRPCMutationProcedure<{
28849
+ input: {
28850
+ [x: string]: unknown;
28851
+ deviceId: number;
28852
+ sdpOffer: string;
28853
+ target?: {
28854
+ kind: "adaptive";
28855
+ } | {
28856
+ kind: "profile";
28857
+ profile: "high" | "low" | "mid";
28858
+ } | {
28859
+ kind: "cam-stream";
28860
+ camStreamId: string;
28861
+ } | undefined;
28862
+ sessionId?: string | undefined;
28863
+ relayOnly?: boolean | undefined;
28864
+ nonTrickle?: boolean | undefined;
28865
+ disableTurn?: boolean | undefined;
28866
+ disableIpv6?: boolean | undefined;
28867
+ consumerAttribution?: Readonly<{
28868
+ kind: "unknown" | "snapshot" | "recording" | "pipeline" | "alexa" | "homekit" | "webrtc-browser" | "webrtc-mobile" | "webrtc-whep" | "rtsp-listen" | "derived-broker" | "warmup";
28869
+ label?: string | undefined;
28870
+ media?: "audio" | "video" | "both" | undefined;
28871
+ targetCodec?: string | undefined;
28872
+ transport?: "passthrough" | "repacketize" | "transcode" | undefined;
28873
+ remoteAddr?: string | undefined;
28874
+ userAgent?: string | undefined;
28875
+ userId?: string | undefined;
28876
+ sessionId?: string | undefined;
28877
+ extra?: Record<string, string> | undefined;
28878
+ }> | undefined;
28879
+ };
28880
+ output: {
28881
+ sessionId: string;
28882
+ sdpAnswer: string;
28883
+ };
28884
+ meta: object;
28885
+ }>;
28886
+ handleAnswer: import("@trpc/server").TRPCMutationProcedure<{
28887
+ input: {
28888
+ [x: string]: unknown;
28889
+ deviceId: number;
28890
+ sessionId: string;
28891
+ sdpAnswer: string;
28892
+ };
28893
+ output: void;
28894
+ meta: object;
28895
+ }>;
28896
+ addIceCandidate: import("@trpc/server").TRPCMutationProcedure<{
28897
+ input: {
28898
+ [x: string]: unknown;
28899
+ deviceId: number;
28900
+ sessionId: string;
28901
+ candidate: string;
28902
+ sdpMid?: string | null | undefined;
28903
+ sdpMLineIndex?: number | null | undefined;
28904
+ };
28905
+ output: void;
28906
+ meta: object;
28907
+ }>;
28908
+ getIceCandidates: import("@trpc/server").TRPCQueryProcedure<{
28909
+ input: {
28910
+ [x: string]: unknown;
28911
+ deviceId: number;
28912
+ sessionId: string;
28913
+ };
28914
+ output: {
28915
+ candidates: {
28916
+ candidate: string;
28917
+ sdpMid: string | null;
28918
+ sdpMLineIndex: number | null;
28919
+ }[];
28920
+ done: boolean;
28921
+ };
28922
+ meta: object;
28923
+ }>;
28924
+ closeSession: import("@trpc/server").TRPCMutationProcedure<{
28925
+ input: {
28926
+ [x: string]: unknown;
28927
+ deviceId: number;
28928
+ sessionId: string;
28929
+ };
28930
+ output: void;
28931
+ meta: object;
28932
+ }>;
28933
+ hasAdaptiveBitrate: import("@trpc/server").TRPCQueryProcedure<{
28934
+ input: {
28935
+ [x: string]: unknown;
28936
+ deviceId: number;
28937
+ profile: "high" | "low" | "mid";
28938
+ };
28939
+ output: boolean;
28940
+ meta: object;
28941
+ }>;
28942
+ getSessionState: import("@trpc/server").TRPCQueryProcedure<{
28943
+ input: {
28944
+ [x: string]: unknown;
28945
+ deviceId: number;
28946
+ sessionId: string;
28947
+ };
28948
+ output: {
28949
+ pendingRenegotiation: {
28950
+ target: {
28951
+ kind: "adaptive";
28952
+ } | {
28953
+ kind: "profile";
28954
+ profile: "high" | "low" | "mid";
28955
+ } | {
28956
+ kind: "cam-stream";
28957
+ camStreamId: string;
28958
+ };
28959
+ epoch: number;
28960
+ } | null;
28961
+ };
28962
+ meta: object;
28963
+ }>;
28964
+ }>>;
28837
28965
  zoneAnalytics: import("@trpc/server").TRPCBuiltRouter<{
28838
28966
  ctx: TrpcContext;
28839
28967
  meta: object;