@neuracore/types 3.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -55,8 +55,8 @@ export interface RobotStreamTrack {
55
55
  data_type: DataType;
56
56
  label: string;
57
57
  mid: string;
58
- id?: string;
59
- created_at?: string;
58
+ id: string;
59
+ created_at: string;
60
60
  }
61
61
  /**
62
62
  * Represents an update on the available capacity of all robots.
@@ -89,8 +89,8 @@ export interface BaseRecodingUpdatePayload {
89
89
  * is populated during dataset iteration for efficiency.
90
90
  */
91
91
  export interface CameraData {
92
- timestamp?: number;
93
- frame_idx?: number;
92
+ timestamp: number;
93
+ frame_idx: number;
94
94
  extrinsics?: unknown[] | null;
95
95
  intrinsics?: unknown[] | null;
96
96
  frame?: string | null;
@@ -99,7 +99,7 @@ export interface CameraData {
99
99
  * Statistics for CameraData.
100
100
  */
101
101
  export interface CameraDataStats {
102
- type?: Type;
102
+ type: Type;
103
103
  frame: DataItemStats;
104
104
  extrinsics: DataItemStats;
105
105
  intrinsics: DataItemStats;
@@ -112,11 +112,11 @@ export interface CameraDataStats {
112
112
  * and model configuration purposes.
113
113
  */
114
114
  export interface DataItemStats {
115
- mean?: unknown[] | null;
116
- std?: unknown[] | null;
117
- count?: unknown[] | null;
118
- min?: unknown[] | null;
119
- max?: unknown[] | null;
115
+ mean: unknown[] | null;
116
+ std: unknown[] | null;
117
+ count: unknown[] | null;
118
+ min: unknown[] | null;
119
+ max: unknown[] | null;
120
120
  }
121
121
  /**
122
122
  * Custom 1D numerical data for specialized applications.
@@ -125,15 +125,15 @@ export interface DataItemStats {
125
125
  * numerical information that is one-dimensional.
126
126
  */
127
127
  export interface Custom1DData {
128
- timestamp?: number;
129
- type?: Type1;
128
+ timestamp: number;
129
+ type: Type1;
130
130
  data: unknown[] | null;
131
131
  }
132
132
  /**
133
133
  * Statistics for Custom1DData.
134
134
  */
135
135
  export interface Custom1DDataStats {
136
- type?: Type2;
136
+ type: Type2;
137
137
  data: DataItemStats;
138
138
  }
139
139
  /**
@@ -167,24 +167,24 @@ export interface Dataset {
167
167
  created_at: number;
168
168
  modified_at: number;
169
169
  description?: string | null;
170
- tags?: string[];
171
- num_demonstrations?: number;
172
- total_duration_seconds?: number;
173
- size_bytes?: number;
174
- is_shared?: boolean;
175
- metadata?: {
170
+ tags: string[];
171
+ num_demonstrations: number;
172
+ total_duration_seconds: number;
173
+ size_bytes: number;
174
+ is_shared: boolean;
175
+ metadata: {
176
176
  [k: string]: unknown;
177
177
  };
178
- synced_dataset_ids?: {
178
+ synced_dataset_ids: {
179
179
  [k: string]: unknown;
180
180
  };
181
- all_data_types?: {
181
+ all_data_types: {
182
182
  [k: string]: number;
183
183
  };
184
- common_data_types?: {
184
+ common_data_types: {
185
185
  [k: string]: number;
186
186
  };
187
- deleted?: boolean;
187
+ deleted: boolean;
188
188
  }
189
189
  /**
190
190
  * Depth camera data subclass.
@@ -192,12 +192,12 @@ export interface Dataset {
192
192
  * Specialization of CameraData for depth images.
193
193
  */
194
194
  export interface DepthCameraData {
195
- timestamp?: number;
196
- frame_idx?: number;
195
+ timestamp: number;
196
+ frame_idx: number;
197
197
  extrinsics?: unknown[] | null;
198
198
  intrinsics?: unknown[] | null;
199
199
  frame?: string | null;
200
- type?: Type3;
200
+ type: Type3;
201
201
  }
202
202
  /**
203
203
  * End-effector pose data.
@@ -206,15 +206,15 @@ export interface DepthCameraData {
206
206
  * position and unit quaternion orientation [x, y, z, qx, qy, qz, qw].
207
207
  */
208
208
  export interface EndEffectorPoseData {
209
- timestamp?: number;
210
- type?: Type4;
209
+ timestamp: number;
210
+ type: Type4;
211
211
  pose: number[];
212
212
  }
213
213
  /**
214
214
  * Statistics for EndEffectorPoseData.
215
215
  */
216
216
  export interface EndEffectorPoseDataStats {
217
- type?: Type5;
217
+ type: Type5;
218
218
  pose: DataItemStats;
219
219
  }
220
220
  /**
@@ -224,8 +224,8 @@ export interface EndEffectorPoseDataStats {
224
224
  * sensor counts, and episode length for analysis and processing.
225
225
  */
226
226
  export interface EpisodeStatistics {
227
- episode_length?: number;
228
- data?: {
227
+ episode_length: number;
228
+ data: {
229
229
  [k: string]: {
230
230
  [k: string]: DataItemStats;
231
231
  };
@@ -253,7 +253,7 @@ export interface HandshakeMessage {
253
253
  data: string;
254
254
  connection_id: string;
255
255
  type: MessageType;
256
- id?: string;
256
+ id: string;
257
257
  }
258
258
  /**
259
259
  * Request model for starting a training job.
@@ -312,22 +312,22 @@ export interface SynchronizationDetails {
312
312
  [k: string]: string[];
313
313
  };
314
314
  } | null;
315
- max_delay_s?: number;
316
- allow_duplicates?: boolean;
315
+ max_delay_s: number;
316
+ allow_duplicates: boolean;
317
317
  }
318
318
  /**
319
319
  * Robot joint state data including positions, velocities, or torques.
320
320
  */
321
321
  export interface JointData {
322
- timestamp?: number;
323
- type?: Type6;
322
+ timestamp: number;
323
+ type: Type6;
324
324
  value: number;
325
325
  }
326
326
  /**
327
327
  * Statistics for JointData.
328
328
  */
329
329
  export interface JointDataStats {
330
- type?: Type7;
330
+ type: Type7;
331
331
  value: DataItemStats;
332
332
  }
333
333
  /**
@@ -337,15 +337,15 @@ export interface JointDataStats {
337
337
  * or other linguistic data associated with robot demonstrations.
338
338
  */
339
339
  export interface LanguageData {
340
- timestamp?: number;
341
- type?: Type8;
340
+ timestamp: number;
341
+ type: Type8;
342
342
  text: string;
343
343
  }
344
344
  /**
345
345
  * Statistics for LanguageData.
346
346
  */
347
347
  export interface LanguageDataStats {
348
- type?: Type9;
348
+ type: Type9;
349
349
  text: DataItemStats;
350
350
  }
351
351
  /**
@@ -355,7 +355,7 @@ export interface LanguageDataStats {
355
355
  * metrics: A dictionary mapping metric names to their values/metaData
356
356
  */
357
357
  export interface Metrics {
358
- metrics?: {
358
+ metrics: {
359
359
  [k: string]: MetricsData;
360
360
  };
361
361
  }
@@ -371,7 +371,7 @@ export interface MetricsData {
371
371
  data: {
372
372
  [k: string]: number;
373
373
  };
374
- metadata?: {
374
+ metadata: {
375
375
  [k: string]: unknown;
376
376
  };
377
377
  }
@@ -399,27 +399,27 @@ export interface ModelInitDescription {
399
399
  dataset_statistics: {
400
400
  [k: string]: (JointDataStats | CameraDataStats | PoseDataStats | EndEffectorPoseDataStats | ParallelGripperOpenAmountDataStats | PointCloudDataStats | LanguageDataStats | Custom1DDataStats)[];
401
401
  };
402
- output_prediction_horizon?: number;
402
+ output_prediction_horizon: number;
403
403
  }
404
404
  /**
405
405
  * Statistics for PoseData.
406
406
  */
407
407
  export interface PoseDataStats {
408
- type?: Type10;
408
+ type: Type10;
409
409
  pose: DataItemStats;
410
410
  }
411
411
  /**
412
412
  * Statistics for ParallelGripperOpenAmountData.
413
413
  */
414
414
  export interface ParallelGripperOpenAmountDataStats {
415
- type?: Type11;
415
+ type: Type11;
416
416
  open_amount: DataItemStats;
417
417
  }
418
418
  /**
419
419
  * Statistics for PointCloudData.
420
420
  */
421
421
  export interface PointCloudDataStats {
422
- type?: Type12;
422
+ type: Type12;
423
423
  points: DataItemStats;
424
424
  rgb_points: DataItemStats;
425
425
  extrinsics: DataItemStats;
@@ -432,7 +432,7 @@ export interface PointCloudDataStats {
432
432
  * timestamp generation for temporal synchronization and data ordering.
433
433
  */
434
434
  export interface NCData {
435
- timestamp?: number;
435
+ timestamp: number;
436
436
  }
437
437
  /**
438
438
  * Base class for statistics of Neuracore data types.
@@ -472,8 +472,8 @@ export interface OpenConnectionRequest {
472
472
  robot_id: string;
473
473
  robot_instance: number;
474
474
  video_format: VideoFormat;
475
- id?: string;
476
- created_at?: string;
475
+ id: string;
476
+ created_at: string;
477
477
  }
478
478
  /**
479
479
  * Open amount data for parallel end effector gripper.
@@ -481,10 +481,45 @@ export interface OpenConnectionRequest {
481
481
  * Contains the state of parallel gripper opening amounts.
482
482
  */
483
483
  export interface ParallelGripperOpenAmountData {
484
- timestamp?: number;
485
- type?: Type13;
484
+ timestamp: number;
485
+ type: Type13;
486
486
  open_amount: number;
487
487
  }
488
+ /**
489
+ * Represents a pending recording.
490
+ *
491
+ * Attributes:
492
+ * saved_dataset_id: ID of the dataset where the recording is saved
493
+ */
494
+ export interface PendingRecording {
495
+ id: string;
496
+ robot_id: string;
497
+ instance: number;
498
+ org_id: string;
499
+ created_by: string;
500
+ start_time: number;
501
+ end_time?: number | null;
502
+ metadata: RecordingMetadata;
503
+ total_bytes: number;
504
+ is_shared: boolean;
505
+ data_types: DataType[];
506
+ saved_dataset_id: string;
507
+ status: PendingRecordingStatus;
508
+ progress: number;
509
+ }
510
+ /**
511
+ * Metadata details for a recording.
512
+ *
513
+ * Attributes:
514
+ * name: Name of the recording.
515
+ * notes: Optional notes about the recording.
516
+ * status: Current RecordingStatus of the recording
517
+ */
518
+ export interface RecordingMetadata {
519
+ name: string;
520
+ notes: string;
521
+ status: RecordingStatus;
522
+ }
488
523
  /**
489
524
  * 3D point cloud data with optional RGB colouring and camera parameters.
490
525
  *
@@ -492,8 +527,8 @@ export interface ParallelGripperOpenAmountData {
492
527
  * optional colour information and camera calibration for registration.
493
528
  */
494
529
  export interface PointCloudData {
495
- timestamp?: number;
496
- type?: Type14;
530
+ timestamp: number;
531
+ type: Type14;
497
532
  points?: string | null;
498
533
  rgb_points?: string | null;
499
534
  extrinsics?: unknown[] | null;
@@ -507,8 +542,8 @@ export interface PointCloudData {
507
542
  * mapping pose names to [x, y, z, rx, ry, rz] values.
508
543
  */
509
544
  export interface PoseData {
510
- timestamp?: number;
511
- type?: Type15;
545
+ timestamp: number;
546
+ type: Type15;
512
547
  pose: number[];
513
548
  }
514
549
  /**
@@ -517,12 +552,12 @@ export interface PoseData {
517
552
  * Specialization of CameraData for RGB images.
518
553
  */
519
554
  export interface RGBCameraData {
520
- timestamp?: number;
521
- frame_idx?: number;
555
+ timestamp: number;
556
+ frame_idx: number;
522
557
  extrinsics?: unknown[] | null;
523
558
  intrinsics?: unknown[] | null;
524
559
  frame?: string | null;
525
- type?: Type16;
560
+ type: Type16;
526
561
  }
527
562
  /**
528
563
  * Represents a robot recording with flat storage.
@@ -543,43 +578,31 @@ export interface RGBCameraData {
543
578
  export interface Recording {
544
579
  id: string;
545
580
  robot_id: string;
546
- instance?: number;
581
+ instance: number;
547
582
  org_id: string;
548
- created_by?: string;
549
- start_time?: number;
583
+ created_by: string;
584
+ start_time: number;
550
585
  end_time?: number | null;
551
- metadata?: RecordingMetadata;
552
- total_bytes?: number;
553
- is_shared?: boolean;
554
- data_types?: DataType[];
555
- }
556
- /**
557
- * Metadata details for a recording.
558
- *
559
- * Attributes:
560
- * name: Name of the recording.
561
- * notes: Optional notes about the recording.
562
- * status: Current RecordingStatus of the recording
563
- */
564
- export interface RecordingMetadata {
565
- name?: string;
566
- notes?: string;
567
- status?: RecordingStatus;
586
+ metadata: RecordingMetadata;
587
+ total_bytes: number;
588
+ is_shared: boolean;
589
+ data_types: DataType[];
568
590
  }
569
591
  /**
570
- * Represents a single data stream belonging to a recording.
592
+ * Represents a single data trace belonging to a recording.
571
593
  *
572
- * This is used to track upload completion for each stream so that
573
- * a recording can be saved once all streams are uploaded.
594
+ * This is used to track upload completion for each trace so that
595
+ * a recording can be saved once all traces are uploaded.
574
596
  */
575
- export interface RecordingDataStream {
597
+ export interface RecordingDataTrace {
576
598
  id: string;
577
599
  recording_id: string;
578
600
  data_type: DataType;
579
- status?: RecordingDataStreamStatus;
580
- upload_progress: number;
581
- created_at?: number;
601
+ status: RecordingDataTraceStatus;
602
+ created_at: number;
582
603
  uploaded_at: number | null;
604
+ uploaded_bytes: number;
605
+ total_bytes: number;
583
606
  }
584
607
  /**
585
608
  * Notification message for recording lifecycle events.
@@ -590,7 +613,7 @@ export interface RecordingDataStream {
590
613
  export interface RecordingNotification {
591
614
  type: RecordingNotificationType;
592
615
  payload: RecordingStartPayload | RecordingStartPayload[] | BaseRecodingUpdatePayload;
593
- id?: string;
616
+ id: string;
594
617
  }
595
618
  /**
596
619
  * Payload for recording start notifications.
@@ -600,8 +623,8 @@ export interface RecordingStartPayload {
600
623
  robot_id: string;
601
624
  instance: number;
602
625
  created_by: string;
603
- dataset_ids?: string[];
604
- data_types?: DataType[];
626
+ dataset_ids: string[];
627
+ data_types: DataType[];
605
628
  start_time: number;
606
629
  }
607
630
  /**
@@ -710,7 +733,7 @@ export interface SynchronizedDatasetStatistics {
710
733
  [k: string]: string[];
711
734
  };
712
735
  };
713
- dataset_statistics?: {
736
+ dataset_statistics: {
714
737
  [k: string]: (JointDataStats | CameraDataStats | PoseDataStats | EndEffectorPoseDataStats | ParallelGripperOpenAmountDataStats | PointCloudDataStats | LanguageDataStats | Custom1DDataStats)[];
715
738
  };
716
739
  }
@@ -731,9 +754,9 @@ export interface SynchronizedEpisode {
731
754
  * and ensuring consistent data relationships across different sensors.
732
755
  */
733
756
  export interface SynchronizedPoint {
734
- timestamp?: number;
757
+ timestamp: number;
735
758
  robot_id?: string | null;
736
- data?: {
759
+ data: {
737
760
  [k: string]: {
738
761
  [k: string]: JointData | RGBCameraData | DepthCameraData | PoseData | EndEffectorPoseData | ParallelGripperOpenAmountData | PointCloudData | LanguageData | Custom1DData;
739
762
  };
@@ -781,23 +804,23 @@ export interface TrainingJob {
781
804
  launch_time: number;
782
805
  start_time?: number | null;
783
806
  end_time?: number | null;
784
- epoch?: number;
785
- step?: number;
786
- algorithm_config?: {
807
+ epoch: number;
808
+ step: number;
809
+ algorithm_config: {
787
810
  [k: string]: unknown;
788
811
  };
789
- gpu_type?: GPUType1;
790
- num_gpus?: number;
812
+ gpu_type: GPUType1;
813
+ num_gpus: number;
791
814
  resumed_at?: number | null;
792
815
  previous_training_time?: number | null;
793
816
  error?: string | null;
794
- resume_points?: number[];
795
- input_robot_data_spec?: {
817
+ resume_points: number[];
818
+ input_robot_data_spec: {
796
819
  [k: string]: {
797
820
  [k: string]: string[];
798
821
  };
799
822
  };
800
- output_robot_data_spec?: {
823
+ output_robot_data_spec: {
801
824
  [k: string]: {
802
825
  [k: string]: string[];
803
826
  };
@@ -935,6 +958,25 @@ export declare enum VideoFormat {
935
958
  export declare enum Type13 {
936
959
  ParallelGripperOpenAmountData = "ParallelGripperOpenAmountData"
937
960
  }
961
+ /**
962
+ * Recording status options.
963
+ */
964
+ export declare enum RecordingStatus {
965
+ NORMAL = "NORMAL",
966
+ FLAGGED = "FLAGGED"
967
+ }
968
+ /**
969
+ * Pending recording status.
970
+ *
971
+ * STARTED: recording in progress.
972
+ * UPLOADING: at least one trace has upload_progress between 0 and 99.
973
+ * UPLOADED: all traces are completely uploaded.
974
+ */
975
+ export declare enum PendingRecordingStatus {
976
+ STARTED = "STARTED",
977
+ UPLOADING = "UPLOADING",
978
+ UPLOADED = "UPLOADED"
979
+ }
938
980
  export declare enum Type14 {
939
981
  PointCloudData = "PointCloudData"
940
982
  }
@@ -945,17 +987,10 @@ export declare enum Type16 {
945
987
  RGBCameraData = "RGBCameraData"
946
988
  }
947
989
  /**
948
- * Recording status options.
990
+ * Status for a recording data trace upload lifecycle.
949
991
  */
950
- export declare enum RecordingStatus {
951
- normal = "normal",
952
- flagged = "flagged"
953
- }
954
- /**
955
- * Status for a recording data stream upload lifecycle.
956
- */
957
- export declare enum RecordingDataStreamStatus {
958
- PENDING = "PENDING",
992
+ export declare enum RecordingDataTraceStatus {
993
+ QUEUED = "QUEUED",
959
994
  UPLOAD_STARTED = "UPLOAD_STARTED",
960
995
  UPLOAD_COMPLETE = "UPLOAD_COMPLETE"
961
996
  }
@@ -6,7 +6,7 @@
6
6
  /* Do not modify it by hand - just update the pydantic models and then re-run the script
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.GPUType1 = exports.TrainingJobStatus = exports.RecordingNotificationType = exports.RecordingDataStreamStatus = exports.RecordingStatus = exports.Type16 = exports.Type15 = exports.Type14 = exports.Type13 = exports.VideoFormat = exports.Type12 = exports.Type11 = exports.Type10 = exports.Type9 = exports.Type8 = exports.Type7 = exports.Type6 = exports.GPUType = exports.MessageType = exports.Type5 = exports.Type4 = exports.Type3 = exports.Type2 = exports.Type1 = exports.Type = exports.DataType = void 0;
9
+ exports.GPUType1 = exports.TrainingJobStatus = exports.RecordingNotificationType = exports.RecordingDataTraceStatus = exports.Type16 = exports.Type15 = exports.Type14 = exports.PendingRecordingStatus = exports.RecordingStatus = exports.Type13 = exports.VideoFormat = exports.Type12 = exports.Type11 = exports.Type10 = exports.Type9 = exports.Type8 = exports.Type7 = exports.Type6 = exports.GPUType = exports.MessageType = exports.Type5 = exports.Type4 = exports.Type3 = exports.Type2 = exports.Type1 = exports.Type = exports.DataType = void 0;
10
10
  /**
11
11
  * Enumeration of supported data types in the Neuracore system.
12
12
  *
@@ -119,6 +119,27 @@ var Type13;
119
119
  (function (Type13) {
120
120
  Type13["ParallelGripperOpenAmountData"] = "ParallelGripperOpenAmountData";
121
121
  })(Type13 || (exports.Type13 = Type13 = {}));
122
+ /**
123
+ * Recording status options.
124
+ */
125
+ var RecordingStatus;
126
+ (function (RecordingStatus) {
127
+ RecordingStatus["NORMAL"] = "NORMAL";
128
+ RecordingStatus["FLAGGED"] = "FLAGGED";
129
+ })(RecordingStatus || (exports.RecordingStatus = RecordingStatus = {}));
130
+ /**
131
+ * Pending recording status.
132
+ *
133
+ * STARTED: recording in progress.
134
+ * UPLOADING: at least one trace has upload_progress between 0 and 99.
135
+ * UPLOADED: all traces are completely uploaded.
136
+ */
137
+ var PendingRecordingStatus;
138
+ (function (PendingRecordingStatus) {
139
+ PendingRecordingStatus["STARTED"] = "STARTED";
140
+ PendingRecordingStatus["UPLOADING"] = "UPLOADING";
141
+ PendingRecordingStatus["UPLOADED"] = "UPLOADED";
142
+ })(PendingRecordingStatus || (exports.PendingRecordingStatus = PendingRecordingStatus = {}));
122
143
  var Type14;
123
144
  (function (Type14) {
124
145
  Type14["PointCloudData"] = "PointCloudData";
@@ -132,22 +153,14 @@ var Type16;
132
153
  Type16["RGBCameraData"] = "RGBCameraData";
133
154
  })(Type16 || (exports.Type16 = Type16 = {}));
134
155
  /**
135
- * Recording status options.
136
- */
137
- var RecordingStatus;
138
- (function (RecordingStatus) {
139
- RecordingStatus["normal"] = "normal";
140
- RecordingStatus["flagged"] = "flagged";
141
- })(RecordingStatus || (exports.RecordingStatus = RecordingStatus = {}));
142
- /**
143
- * Status for a recording data stream upload lifecycle.
156
+ * Status for a recording data trace upload lifecycle.
144
157
  */
145
- var RecordingDataStreamStatus;
146
- (function (RecordingDataStreamStatus) {
147
- RecordingDataStreamStatus["PENDING"] = "PENDING";
148
- RecordingDataStreamStatus["UPLOAD_STARTED"] = "UPLOAD_STARTED";
149
- RecordingDataStreamStatus["UPLOAD_COMPLETE"] = "UPLOAD_COMPLETE";
150
- })(RecordingDataStreamStatus || (exports.RecordingDataStreamStatus = RecordingDataStreamStatus = {}));
158
+ var RecordingDataTraceStatus;
159
+ (function (RecordingDataTraceStatus) {
160
+ RecordingDataTraceStatus["QUEUED"] = "QUEUED";
161
+ RecordingDataTraceStatus["UPLOAD_STARTED"] = "UPLOAD_STARTED";
162
+ RecordingDataTraceStatus["UPLOAD_COMPLETE"] = "UPLOAD_COMPLETE";
163
+ })(RecordingDataTraceStatus || (exports.RecordingDataTraceStatus = RecordingDataTraceStatus = {}));
151
164
  /**
152
165
  * Types of recording lifecycle notifications.
153
166
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neuracore/types",
3
- "version": "3.0.0",
3
+ "version": "4.1.0",
4
4
  "description": "Shared TypeScript type definitions for Neuracore robotics platform",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",