@camstack/types 1.2.109 → 1.2.111

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 (55) hide show
  1. package/dist/addon.js +1 -1
  2. package/dist/addon.mjs +1 -1
  3. package/dist/capabilities/addons.cap.d.ts +9 -9
  4. package/dist/capabilities/broker.cap.d.ts +4 -4
  5. package/dist/capabilities/camera-streams.cap.d.ts +5 -5
  6. package/dist/capabilities/climate-control.cap.d.ts +8 -8
  7. package/dist/capabilities/core-blocks.cap.d.ts +16 -16
  8. package/dist/capabilities/day-night.cap.d.ts +8 -8
  9. package/dist/capabilities/decoder.cap.d.ts +13 -13
  10. package/dist/capabilities/device-manager.cap.d.ts +5 -5
  11. package/dist/capabilities/face-gallery.cap.d.ts +1 -1
  12. package/dist/capabilities/image-settings.cap.d.ts +16 -16
  13. package/dist/capabilities/llm-runtime.cap.d.ts +3 -3
  14. package/dist/capabilities/llm.cap.d.ts +4 -4
  15. package/dist/capabilities/media-player.cap.d.ts +9 -9
  16. package/dist/capabilities/metrics-provider.cap.d.ts +2 -2
  17. package/dist/capabilities/model-convert.cap.d.ts +3 -3
  18. package/dist/capabilities/motion-detection.cap.d.ts +4 -4
  19. package/dist/capabilities/notification-output.cap.d.ts +9 -9
  20. package/dist/capabilities/notification-rules.cap.d.ts +10 -10
  21. package/dist/capabilities/oauth-integration.cap.d.ts +2 -2
  22. package/dist/capabilities/osd-manager.cap.d.ts +2 -2
  23. package/dist/capabilities/pipeline-analytics.cap.d.ts +191 -54
  24. package/dist/capabilities/pipeline-executor.cap.d.ts +117 -19
  25. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +21 -21
  26. package/dist/capabilities/pipeline-runner.cap.d.ts +6 -6
  27. package/dist/capabilities/platform-probe.cap.d.ts +2 -2
  28. package/dist/capabilities/recording-export.cap.d.ts +7 -7
  29. package/dist/capabilities/recording.cap.d.ts +7 -7
  30. package/dist/capabilities/schemas/detection-shared.d.ts +4 -4
  31. package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
  32. package/dist/capabilities/schemas/streaming-shared.d.ts +11 -11
  33. package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
  34. package/dist/capabilities/storage-migration.cap.d.ts +4 -4
  35. package/dist/capabilities/storage.cap.d.ts +2 -2
  36. package/dist/capabilities/stream-broker.cap.d.ts +50 -50
  37. package/dist/capabilities/user-management.cap.d.ts +20 -20
  38. package/dist/capabilities/vacuum-control.cap.d.ts +26 -26
  39. package/dist/capabilities/webrtc-session.cap.d.ts +4 -4
  40. package/dist/generated/addon-api.d.ts +50 -8
  41. package/dist/generated/method-access-map.d.ts +1 -1
  42. package/dist/generated/method-device-selectors.d.ts +1 -1
  43. package/dist/generated/system-proxy.d.ts +1 -1
  44. package/dist/index.js +2140 -1951
  45. package/dist/index.mjs +2140 -1951
  46. package/dist/interfaces/adoption-job.d.ts +2 -2
  47. package/dist/interfaces/relocate.d.ts +10 -10
  48. package/dist/interfaces/stream-broker.d.ts +2 -2
  49. package/dist/lifecycle/job.d.ts +8 -8
  50. package/dist/{sleep-BJTBu5cu.js → sleep-BCRrMlni.js} +4 -0
  51. package/dist/{sleep-Dj1DG9Od.mjs → sleep-DJlqY62B.mjs} +4 -0
  52. package/dist/types/frame-view.d.ts +10 -24
  53. package/dist/types/labels.d.ts +30 -1
  54. package/dist/types/models.d.ts +4 -4
  55. package/package.json +1 -1
@@ -46,9 +46,9 @@ export type VacuumState = z.infer<typeof VacuumStateSchema>;
46
46
  export declare const TankStatusSchema: z.ZodObject<{
47
47
  level: z.ZodNullable<z.ZodNumber>;
48
48
  status: z.ZodNullable<z.ZodEnum<{
49
- full: "full";
50
- ok: "ok";
51
49
  low: "low";
50
+ ok: "ok";
51
+ full: "full";
52
52
  }>>;
53
53
  }, z.core.$strip>;
54
54
  export type TankStatus = z.infer<typeof TankStatusSchema>;
@@ -68,33 +68,33 @@ export declare const VacuumControlStatusSchema: z.ZodObject<{
68
68
  cleanWater: z.ZodNullable<z.ZodObject<{
69
69
  level: z.ZodNullable<z.ZodNumber>;
70
70
  status: z.ZodNullable<z.ZodEnum<{
71
- full: "full";
72
- ok: "ok";
73
71
  low: "low";
72
+ ok: "ok";
73
+ full: "full";
74
74
  }>>;
75
75
  }, z.core.$strip>>;
76
76
  dirtyWater: z.ZodNullable<z.ZodObject<{
77
77
  level: z.ZodNullable<z.ZodNumber>;
78
78
  status: z.ZodNullable<z.ZodEnum<{
79
- full: "full";
80
- ok: "ok";
81
79
  low: "low";
80
+ ok: "ok";
81
+ full: "full";
82
82
  }>>;
83
83
  }, z.core.$strip>>;
84
84
  detergent: z.ZodNullable<z.ZodObject<{
85
85
  level: z.ZodNullable<z.ZodNumber>;
86
86
  status: z.ZodNullable<z.ZodEnum<{
87
- full: "full";
88
- ok: "ok";
89
87
  low: "low";
88
+ ok: "ok";
89
+ full: "full";
90
90
  }>>;
91
91
  }, z.core.$strip>>;
92
92
  dustBin: z.ZodNullable<z.ZodObject<{
93
93
  level: z.ZodNullable<z.ZodNumber>;
94
94
  status: z.ZodNullable<z.ZodEnum<{
95
- full: "full";
96
- ok: "ok";
97
95
  low: "low";
96
+ ok: "ok";
97
+ full: "full";
98
98
  }>>;
99
99
  }, z.core.$strip>>;
100
100
  progressPercent: z.ZodNullable<z.ZodNumber>;
@@ -147,33 +147,33 @@ export declare const vacuumControlCapability: {
147
147
  cleanWater: z.ZodNullable<z.ZodObject<{
148
148
  level: z.ZodNullable<z.ZodNumber>;
149
149
  status: z.ZodNullable<z.ZodEnum<{
150
- full: "full";
151
- ok: "ok";
152
150
  low: "low";
151
+ ok: "ok";
152
+ full: "full";
153
153
  }>>;
154
154
  }, z.core.$strip>>;
155
155
  dirtyWater: z.ZodNullable<z.ZodObject<{
156
156
  level: z.ZodNullable<z.ZodNumber>;
157
157
  status: z.ZodNullable<z.ZodEnum<{
158
- full: "full";
159
- ok: "ok";
160
158
  low: "low";
159
+ ok: "ok";
160
+ full: "full";
161
161
  }>>;
162
162
  }, z.core.$strip>>;
163
163
  detergent: z.ZodNullable<z.ZodObject<{
164
164
  level: z.ZodNullable<z.ZodNumber>;
165
165
  status: z.ZodNullable<z.ZodEnum<{
166
- full: "full";
167
- ok: "ok";
168
166
  low: "low";
167
+ ok: "ok";
168
+ full: "full";
169
169
  }>>;
170
170
  }, z.core.$strip>>;
171
171
  dustBin: z.ZodNullable<z.ZodObject<{
172
172
  level: z.ZodNullable<z.ZodNumber>;
173
173
  status: z.ZodNullable<z.ZodEnum<{
174
- full: "full";
175
- ok: "ok";
176
174
  low: "low";
175
+ ok: "ok";
176
+ full: "full";
177
177
  }>>;
178
178
  }, z.core.$strip>>;
179
179
  progressPercent: z.ZodNullable<z.ZodNumber>;
@@ -203,33 +203,33 @@ export declare const vacuumControlCapability: {
203
203
  cleanWater: z.ZodNullable<z.ZodObject<{
204
204
  level: z.ZodNullable<z.ZodNumber>;
205
205
  status: z.ZodNullable<z.ZodEnum<{
206
- full: "full";
207
- ok: "ok";
208
206
  low: "low";
207
+ ok: "ok";
208
+ full: "full";
209
209
  }>>;
210
210
  }, z.core.$strip>>;
211
211
  dirtyWater: z.ZodNullable<z.ZodObject<{
212
212
  level: z.ZodNullable<z.ZodNumber>;
213
213
  status: z.ZodNullable<z.ZodEnum<{
214
- full: "full";
215
- ok: "ok";
216
214
  low: "low";
215
+ ok: "ok";
216
+ full: "full";
217
217
  }>>;
218
218
  }, z.core.$strip>>;
219
219
  detergent: z.ZodNullable<z.ZodObject<{
220
220
  level: z.ZodNullable<z.ZodNumber>;
221
221
  status: z.ZodNullable<z.ZodEnum<{
222
- full: "full";
223
- ok: "ok";
224
222
  low: "low";
223
+ ok: "ok";
224
+ full: "full";
225
225
  }>>;
226
226
  }, z.core.$strip>>;
227
227
  dustBin: z.ZodNullable<z.ZodObject<{
228
228
  level: z.ZodNullable<z.ZodNumber>;
229
229
  status: z.ZodNullable<z.ZodEnum<{
230
- full: "full";
231
- ok: "ok";
232
230
  low: "low";
231
+ ok: "ok";
232
+ full: "full";
233
233
  }>>;
234
234
  }, z.core.$strip>>;
235
235
  progressPercent: z.ZodNullable<z.ZodNumber>;
@@ -67,8 +67,8 @@ export declare const WebrtcStreamChoiceSchema: z.ZodObject<{
67
67
  }, z.core.$strip>>;
68
68
  status: z.ZodNullable<z.ZodEnum<{
69
69
  error: "error";
70
- connecting: "connecting";
71
70
  idle: "idle";
71
+ connecting: "connecting";
72
72
  streaming: "streaming";
73
73
  stopped: "stopped";
74
74
  }>>;
@@ -132,8 +132,8 @@ export declare const webrtcSessionCapability: {
132
132
  }, z.core.$strip>>;
133
133
  status: z.ZodNullable<z.ZodEnum<{
134
134
  error: "error";
135
- connecting: "connecting";
136
135
  idle: "idle";
136
+ connecting: "connecting";
137
137
  streaming: "streaming";
138
138
  stopped: "stopped";
139
139
  }>>;
@@ -188,8 +188,8 @@ export declare const webrtcSessionCapability: {
188
188
  }>;
189
189
  label: z.ZodOptional<z.ZodString>;
190
190
  media: z.ZodOptional<z.ZodEnum<{
191
- audio: "audio";
192
191
  video: "video";
192
+ audio: "audio";
193
193
  both: "both";
194
194
  }>>;
195
195
  targetCodec: z.ZodOptional<z.ZodString>;
@@ -259,8 +259,8 @@ export declare const webrtcSessionCapability: {
259
259
  }>;
260
260
  label: z.ZodOptional<z.ZodString>;
261
261
  media: z.ZodOptional<z.ZodEnum<{
262
- audio: "audio";
263
262
  video: "video";
263
+ audio: "audio";
264
264
  both: "both";
265
265
  }>>;
266
266
  targetCodec: z.ZodOptional<z.ZodString>;
@@ -5024,6 +5024,27 @@ export type AppRouter = TrpcCoreRouter<{
5024
5024
  output: z.infer<typeof pipelineAnalyticsCapability.methods.cancelStorageMigrationMove.output>;
5025
5025
  meta: object;
5026
5026
  }>;
5027
+ relocateMedia: TRPCMutationProcedure<{
5028
+ input: {
5029
+ [x: string]: unknown;
5030
+ } & z.input<typeof pipelineAnalyticsCapability.methods.relocateMedia.input>;
5031
+ output: z.infer<typeof pipelineAnalyticsCapability.methods.relocateMedia.output>;
5032
+ meta: object;
5033
+ }>;
5034
+ listRelocateMediaJobs: TRPCQueryProcedure<{
5035
+ input: {
5036
+ [x: string]: unknown;
5037
+ } & z.input<typeof pipelineAnalyticsCapability.methods.listRelocateMediaJobs.input>;
5038
+ output: z.infer<typeof pipelineAnalyticsCapability.methods.listRelocateMediaJobs.output>;
5039
+ meta: object;
5040
+ }>;
5041
+ cancelRelocateMedia: TRPCMutationProcedure<{
5042
+ input: {
5043
+ [x: string]: unknown;
5044
+ } & z.input<typeof pipelineAnalyticsCapability.methods.cancelRelocateMedia.input>;
5045
+ output: z.infer<typeof pipelineAnalyticsCapability.methods.cancelRelocateMedia.output>;
5046
+ meta: object;
5047
+ }>;
5027
5048
  listOpsLog: TRPCQueryProcedure<{
5028
5049
  input: {
5029
5050
  [x: string]: unknown;
@@ -5087,6 +5108,13 @@ export type AppRouter = TrpcCoreRouter<{
5087
5108
  output: z.infer<typeof pipelineAnalyticsCapability.methods.proposeRetrainAnnotations.output>;
5088
5109
  meta: object;
5089
5110
  }>;
5111
+ runReplayFrameProcessor: TRPCMutationProcedure<{
5112
+ input: {
5113
+ [x: string]: unknown;
5114
+ } & z.input<typeof pipelineAnalyticsCapability.methods.runReplayFrameProcessor.input>;
5115
+ output: z.infer<typeof pipelineAnalyticsCapability.methods.runReplayFrameProcessor.output>;
5116
+ meta: object;
5117
+ }>;
5090
5118
  listRetrainAnnotations: TRPCQueryProcedure<{
5091
5119
  input: {
5092
5120
  [x: string]: unknown;
@@ -5227,6 +5255,20 @@ export type AppRouter = TrpcCoreRouter<{
5227
5255
  output: z.infer<typeof pipelineExecutorCapability.methods.clearDeviceOverrides.output>;
5228
5256
  meta: object;
5229
5257
  }>;
5258
+ getInferenceDeviceHealth: TRPCQueryProcedure<{
5259
+ input: {
5260
+ [x: string]: unknown;
5261
+ } & z.input<typeof pipelineExecutorCapability.methods.getInferenceDeviceHealth.input>;
5262
+ output: z.infer<typeof pipelineExecutorCapability.methods.getInferenceDeviceHealth.output>;
5263
+ meta: object;
5264
+ }>;
5265
+ rearmInferenceDevice: TRPCMutationProcedure<{
5266
+ input: {
5267
+ [x: string]: unknown;
5268
+ } & z.input<typeof pipelineExecutorCapability.methods.rearmInferenceDevice.input>;
5269
+ output: z.infer<typeof pipelineExecutorCapability.methods.rearmInferenceDevice.output>;
5270
+ meta: object;
5271
+ }>;
5230
5272
  getSchema: TRPCQueryProcedure<{
5231
5273
  input: {
5232
5274
  nodeId?: string | undefined;
@@ -8916,14 +8958,14 @@ export type AppRouter = TrpcCoreRouter<{
8916
8958
  }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
8917
8959
  listCapabilities: import("@trpc/server").TRPCQueryProcedure<{
8918
8960
  input: void;
8919
- output: import("packages/types/dist").CapabilityInfo[];
8961
+ output: import("@camstack/types").CapabilityInfo[];
8920
8962
  meta: object;
8921
8963
  }>;
8922
8964
  getCapability: import("@trpc/server").TRPCQueryProcedure<{
8923
8965
  input: {
8924
8966
  name: string;
8925
8967
  };
8926
- output: import("packages/types/dist").CapabilityInfo | null;
8968
+ output: import("@camstack/types").CapabilityInfo | null;
8927
8969
  meta: object;
8928
8970
  }>;
8929
8971
  setActiveSingleton: import("@trpc/server").TRPCMutationProcedure<{
@@ -8995,14 +9037,14 @@ export type AppRouter = TrpcCoreRouter<{
8995
9037
  }>> & import("@trpc/server").TRPCDecorateCreateRouterOptions<{
8996
9038
  listCapabilities: import("@trpc/server").TRPCQueryProcedure<{
8997
9039
  input: void;
8998
- output: import("packages/types/dist").CapabilityInfo[];
9040
+ output: import("@camstack/types").CapabilityInfo[];
8999
9041
  meta: object;
9000
9042
  }>;
9001
9043
  getCapability: import("@trpc/server").TRPCQueryProcedure<{
9002
9044
  input: {
9003
9045
  name: string;
9004
9046
  };
9005
- output: import("packages/types/dist").CapabilityInfo | null;
9047
+ output: import("@camstack/types").CapabilityInfo | null;
9006
9048
  meta: object;
9007
9049
  }>;
9008
9050
  setActiveSingleton: import("@trpc/server").TRPCMutationProcedure<{
@@ -9239,14 +9281,14 @@ export type AppRouter = TrpcCoreRouter<{
9239
9281
  category?: string | undefined;
9240
9282
  limit?: number | undefined;
9241
9283
  } | undefined;
9242
- output: readonly import("packages/types/dist").SystemEvent[];
9284
+ output: readonly import("@camstack/types").SystemEvent[];
9243
9285
  meta: object;
9244
9286
  }>;
9245
9287
  onEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
9246
9288
  input: {
9247
9289
  category?: string | undefined;
9248
9290
  };
9249
- output: AsyncIterable<import("packages/types/dist").SystemEvent, any, any>;
9291
+ output: AsyncIterable<import("@camstack/types").SystemEvent, any, any>;
9250
9292
  meta: object;
9251
9293
  }>;
9252
9294
  onDeviceEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
@@ -9262,14 +9304,14 @@ export type AppRouter = TrpcCoreRouter<{
9262
9304
  category?: string | undefined;
9263
9305
  limit?: number | undefined;
9264
9306
  } | undefined;
9265
- output: readonly import("packages/types/dist").SystemEvent[];
9307
+ output: readonly import("@camstack/types").SystemEvent[];
9266
9308
  meta: object;
9267
9309
  }>;
9268
9310
  onEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
9269
9311
  input: {
9270
9312
  category?: string | undefined;
9271
9313
  };
9272
- output: AsyncIterable<import("packages/types/dist").SystemEvent, any, any>;
9314
+ output: AsyncIterable<import("@camstack/types").SystemEvent, any, any>;
9273
9315
  meta: object;
9274
9316
  }>;
9275
9317
  onDeviceEvent: import("@trpc/server").TRPCSubscriptionProcedure<{
@@ -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: 955 method paths across 123 capabilities.
9
+ * Coverage: 961 method paths across 123 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
@@ -6,7 +6,7 @@
6
6
  * system-scope cap that takes a deviceId was previously never device-filtered
7
7
  * — see the generator header).
8
8
  *
9
- * Coverage: 342 methods carry a device reference, of which
9
+ * Coverage: 343 methods carry a device reference, of which
10
10
  * 127 are on SYSTEM-scope caps.
11
11
  *
12
12
  * Top-level fields, number arrays, and one-level arrays of objects carrying
@@ -83,7 +83,7 @@ export interface SystemProxy {
83
83
  readonly nodes: Pick<InferProvider<typeof nodesCapability>, 'topology' | 'deployAddon' | 'undeployAddon' | 'restartAddon' | 'restartProcess' | 'restartNode' | 'shutdownNode' | 'renameNode' | 'clusterAddonStatus' | 'getCapUsageGraph' | 'getNodeAddons' | 'setProcessLogLevel' | 'executeQuery'>;
84
84
  readonly notificationOutput: Pick<InferProvider<typeof notificationOutputCapability>, 'listTargetKinds' | 'listTargets' | 'discoverTargets' | 'send' | 'testTarget' | 'upsertTarget' | 'deleteTarget' | 'setTargetEnabled'>;
85
85
  readonly osdManager: Pick<InferProvider<typeof osdManagerCapability>, 'getConditionSupport' | 'copyDeviceConfiguration'>;
86
- readonly pipelineExecutor: Pick<InferProvider<typeof pipelineExecutorCapability>, 'getAvailableEngines' | 'getSelectedEngine' | 'getDefaultSteps' | 'getEngineProvisioning' | 'getVideoPipelineSteps' | 'setVideoPipelineSteps' | 'clearDeviceOverrides' | 'getSchema' | 'getGlobalSteps' | 'getGlobalPipelineConfig' | 'getOrchestratorConfigSchema' | 'validatePipeline' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate' | 'getCapabilities' | 'getAddonModels' | 'downloadModel' | 'deleteModel' | 'cacheFrameInPool' | 'inferCached' | 'uncacheFrame' | 'getEffectiveTuning' | 'listLoadedEngines' | 'spinEngine' | 'killEngine' | 'listReferenceImages' | 'getReferenceImage' | 'getReferenceAudioFiles' | 'getReferenceAudio' | 'getAudioCapabilities' | 'runAudioTest' | 'getDetectionConfigSchema'>;
86
+ readonly pipelineExecutor: Pick<InferProvider<typeof pipelineExecutorCapability>, 'getAvailableEngines' | 'getSelectedEngine' | 'getDefaultSteps' | 'getEngineProvisioning' | 'getVideoPipelineSteps' | 'setVideoPipelineSteps' | 'clearDeviceOverrides' | 'getInferenceDeviceHealth' | 'rearmInferenceDevice' | 'getSchema' | 'getGlobalSteps' | 'getGlobalPipelineConfig' | 'getOrchestratorConfigSchema' | 'validatePipeline' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate' | 'getCapabilities' | 'getAddonModels' | 'downloadModel' | 'deleteModel' | 'cacheFrameInPool' | 'inferCached' | 'uncacheFrame' | 'getEffectiveTuning' | 'listLoadedEngines' | 'spinEngine' | 'killEngine' | 'listReferenceImages' | 'getReferenceImage' | 'getReferenceAudioFiles' | 'getReferenceAudio' | 'getAudioCapabilities' | 'runAudioTest' | 'getDetectionConfigSchema'>;
87
87
  readonly pipelineOrchestrator: Pick<InferProvider<typeof pipelineOrchestratorCapability>, 'pauseForStorageMigration' | 'resumeForStorageMigration' | 'rebalance' | 'getPipelineAssignments' | 'getAgentLoad' | 'getGlobalMetrics' | 'getCapabilityBindings' | 'setCapabilityBinding' | 'getIngestOwner' | 'getAudioNodeLoad' | 'getAgentSettings' | 'listAgentSettings' | 'removeAgentSettings' | 'setAgentMaxCameras' | 'setAgentDetectWeight' | 'setAgentCapabilities' | 'setAgentReachableHost' | 'setAgentInferenceDevices' | 'getNodeInferenceDevices' | 'resetNodePipelineDefaults' | 'getCameraStatuses' | 'reconcileFromDisk' | 'getReconcileFromDiskStatus' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate'>;
88
88
  readonly pipelineRunner: Pick<InferProvider<typeof pipelineRunnerCapability>, 'attachCamera' | 'reportMotion' | 'getLocalLoad' | 'getLocalMetrics' | 'getAllCameraMetrics' | 'getLocalCameras' | 'getNativeCrop' | 'runStatelessStep'>;
89
89
  readonly plateGallery: Pick<InferProvider<typeof plateGalleryCapability>, 'getPlateMedia' | 'searchPlates' | 'suggestPlateClusters' | 'correctPlateText' | 'deletePlate' | 'listVehicles' | 'createVehicle' | 'renameVehicle' | 'deleteVehicle' | 'listVehicleSamples' | 'removeVehicleSample' | 'assignPlate' | 'unassignPlate' | 'assignPlates' | 'unassignPlates'>;