@miris-inc/core 0.0.8-57afaf4 → 0.0.8-5845fb4

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.
package/dist/AquaApi.wasm CHANGED
Binary file
Binary file
package/dist/core.d.ts CHANGED
@@ -1,16 +1,56 @@
1
+ export declare const AssetFormat: {
2
+ readonly GaussianSplats: 1;
3
+ readonly GES: 2;
4
+ };
5
+
1
6
  declare interface AttributeInfo extends EmbindObject {
2
- readonly dataType: number;
3
- readonly componentCount: number;
4
- readonly dataPtr: number;
5
- readonly dataByteLength: number;
7
+ // Logical elements from the drop metadata: splats for a per-splat attribute, records for a
8
+ // per-surfel one. Not necessarily dataSizeBytes / bytesPerElement.
9
+ readonly elementCount: number;
10
+ readonly dataSizeBytes: number;
6
11
  readonly clientSideId: bigint;
12
+ // An embind CompressionType value, compared by identity against MainModule.CompressionType
13
+ readonly compressionType: unknown;
14
+ readonly minValue: { x: number; y: number; z: number; w: number };
7
15
  readonly maxValue: { x: number; y: number; z: number };
8
16
  }
9
17
 
18
+ export declare class AttributeNames {
19
+ static readonly SPARK_PACKED_SPLAT: string;
20
+ static readonly SPARK_EXTENDED_SPLAT_LOW: string;
21
+ static readonly SPARK_EXTENDED_SPLAT_HIGH: string;
22
+ static readonly SPARK_PACKED_SH1: string;
23
+ static readonly SPARK_PACKED_SH2: string;
24
+ static readonly SPARK_PACKED_SH3: string;
25
+ static readonly SPARK_EXTENDED_SH1: string;
26
+ static readonly SPARK_EXTENDED_SH2: string;
27
+ static readonly SPARK_EXTENDED_SH3_A: string;
28
+ static readonly SPARK_EXTENDED_SH3_B: string;
29
+ static readonly UNUSED: string;
30
+ static readonly SHARK_ELLIPSOIDS: string;
31
+ static readonly SHARK_ELLIPSOIDS_COMPRESSED: string;
32
+ static readonly SHARK_SPHERICAL_HARMONICS: string;
33
+ static readonly COLOR: string;
34
+ static readonly OCTANT_OFFSETS: string;
35
+ static readonly SURFEL_OCTANT_OFFSETS: string;
36
+ static readonly SURFEL_COUNT: string;
37
+ static readonly REFLECTANCE_DATA_V1: string;
38
+ static readonly GLASS_MESH_GEOMETRY: string;
39
+ static readonly GLASS_MESH_PANELS: string;
40
+ static readonly MOD_DEPTH: string;
41
+ }
42
+
43
+ declare type CachedAttribute = {
44
+ paddedData: Uint32Array<ArrayBuffer>;
45
+ originalSizeInUints: number;
46
+ };
47
+
10
48
  export declare class Camera {
11
49
  #private;
12
50
  readonly id: number;
13
51
  update(): void;
52
+ get viewportHeight(): number;
53
+ set viewportHeight(viewportHeight: number);
14
54
  get aspect(): number;
15
55
  set aspect(aspect: number);
16
56
  get fov(): number;
@@ -24,7 +64,7 @@ export declare class Camera {
24
64
  readonly engine: Engine;
25
65
  readonly miris: Miris;
26
66
  readonly scene: Scene;
27
- constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
67
+ constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
28
68
  }
29
69
 
30
70
  export declare type CameraInit = {
@@ -34,6 +74,7 @@ export declare type CameraInit = {
34
74
  far: number;
35
75
  matrix: Matrix4x4Tuple;
36
76
  scene: Scene;
77
+ viewportHeight?: number;
37
78
  };
38
79
 
39
80
  export declare class Change {
@@ -43,7 +84,7 @@ export declare class Change {
43
84
  }
44
85
 
45
86
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
87
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
88
  lod: Lod;
48
89
  };
49
90
 
@@ -69,6 +110,7 @@ declare class Client {
69
110
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
70
111
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
71
112
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
113
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
72
114
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
73
115
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
74
116
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -84,6 +126,8 @@ declare class Client {
84
126
  hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
85
127
  getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
86
128
  getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
129
+ getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
130
+ getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
87
131
  getName(...args: ClientMethodParameters["getName"]): string;
88
132
  setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
89
133
  takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
@@ -91,7 +135,6 @@ declare class Client {
91
135
  takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
92
136
  unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
93
137
  updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
94
- recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
95
138
  }
96
139
 
97
140
  declare type ClientInit = {
@@ -155,6 +198,10 @@ declare class Engine {
155
198
  get module(): MainModule;
156
199
  constructor(moduleOptions?: Record<string, unknown>);
157
200
  get AttributeInfo(): new () => AttributeInfo;
201
+ get CompressionType(): {
202
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
203
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
204
+ };
158
205
  get Handedness(): {
159
206
  Right: number;
160
207
  Left: number;
@@ -190,6 +237,8 @@ declare class Engine {
190
237
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
191
238
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
192
239
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
240
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
241
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
193
242
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
194
243
  free(...args: [size: number]): number;
195
244
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -199,8 +248,8 @@ declare class Engine {
199
248
  attributeName: string,
200
249
  attributeInfo: AttributeInfo
201
250
  ]): AquaStatus;
202
- getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
203
- getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
251
+ getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
252
+ getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
204
253
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
205
254
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
206
255
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -256,9 +305,11 @@ declare class Engine {
256
305
  aspectRatio: number,
257
306
  verticalFov: number,
258
307
  nearPlane: number,
259
- farPlane: number
308
+ farPlane: number,
309
+ viewportHeightPixels: number
260
310
  ]): AquaStatus;
261
311
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
312
+ setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
262
313
  setSceneObjectTransform(...args: [
263
314
  handle: AquaClientHandle,
264
315
  sceneObjectId: number,
@@ -267,6 +318,8 @@ declare class Engine {
267
318
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
268
319
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
269
320
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
321
+ getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
322
+ getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
270
323
  getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
271
324
  setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
272
325
  takeAttribute(...args: [
@@ -279,8 +332,15 @@ declare class Engine {
279
332
  getActiveClientSideIdsCheckSum(): number;
280
333
  unlockScene(...args: [handle: AquaClientHandle]): boolean;
281
334
  updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
282
- recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
283
335
  takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
336
+ /**
337
+ * Advances the runtime by one frame and recomputes the streaming budget. Call once per
338
+ * displayed frame per context, before the per-client updateSceneExecution() calls.
339
+ * `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
340
+ * measurement (first frame, or a resume from a stall) and the frame advances without recording
341
+ * one.
342
+ */
343
+ beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
284
344
  createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
285
345
  cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
286
346
  submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
@@ -298,25 +358,9 @@ export declare class Lod {
298
358
  #private;
299
359
  readonly id: LodInit["id"];
300
360
  readonly store: LodStore;
301
- useExtSplats: boolean;
302
- splatsExtendedData: Uint32Array<ArrayBuffer> | null;
303
- sh1Data: Uint32Array<ArrayBuffer> | null;
304
- sh1Max: number;
305
- sh2Data: Uint32Array<ArrayBuffer> | null;
306
- sh2Max: number;
307
- sh3Data: Uint32Array<ArrayBuffer> | null;
308
- sh3Max: number;
309
- sh3ExtendedData: Uint32Array<ArrayBuffer> | null;
310
361
  get key(): unknown;
311
362
  set key(key: unknown);
312
363
  readonly modelRoot: ModelRoot;
313
- set splats(splats: Uint32Array<ArrayBuffer> | null);
314
- get splats(): Uint32Array<ArrayBuffer> | null;
315
- /**
316
- * Sets the cached world bounds of this object
317
- *
318
- * @deprecated set the local bounds and transform as needed
319
- */
320
364
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
321
365
  /**
322
366
  * Retrieves the cached world bounds of this object
@@ -334,21 +378,30 @@ export declare class Lod {
334
378
  get localBounds(): Float32Array<ArrayBuffer> | null;
335
379
  set lodIndex(index: number);
336
380
  get lodIndex(): number | null;
337
- set paddingCount(count: number);
338
- get paddingCount(): number;
381
+ set paddingSplatsCount(count: number);
382
+ get paddingSplatsCount(): number;
339
383
  set transform(transform: Float32Array<ArrayBuffer> | null);
340
384
  get transform(): Float32Array<ArrayBuffer> | null;
341
- setSh1(sh1Data: Uint32Array<ArrayBuffer>, sh1Max: number): void;
342
- setSh2(sh2Data: Uint32Array<ArrayBuffer>, sh2Max: number): void;
343
- setSh3(sh3Data: Uint32Array<ArrayBuffer>, sh3Max: number): void;
385
+ get _drawnOctantMask(): number;
386
+ set _drawnOctantMask(mask: number);
387
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
388
+ get _hasOctantOffsets(): boolean;
389
+ get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
390
+ get _surfelCount(): number;
391
+ _readOctantOffsets(engine: Engine): void;
392
+ hasAttribute(attributeName: string): boolean;
393
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
394
+ _getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
395
+ _getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
344
396
  dispose(): void;
345
- constructor({ id, modelRoot, lodStore }: LodInit);
397
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
346
398
  }
347
399
 
348
400
  export declare type LodInit = {
349
401
  id: number;
350
402
  modelRoot: ModelRoot;
351
403
  lodStore: LodStore;
404
+ client: Client;
352
405
  };
353
406
 
354
407
  export declare class LodStore {
@@ -364,6 +417,10 @@ export declare class LodStore {
364
417
 
365
418
  declare interface MainModule {
366
419
  AttributeInfo: new () => AttributeInfo;
420
+ CompressionType: {
421
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
422
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
423
+ };
367
424
  Handedness: { Right: number; Left: number };
368
425
  HEAPF32: Float32Array<ArrayBuffer>;
369
426
  HEAPU8: Uint8Array<ArrayBuffer>;
@@ -389,7 +446,9 @@ declare interface MainModule {
389
446
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
390
447
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
391
448
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
449
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
392
450
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
451
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
393
452
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
394
453
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
395
454
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -398,13 +457,17 @@ declare interface MainModule {
398
457
  HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
399
458
  GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
400
459
  GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
460
+ GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
461
+ GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
401
462
  SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
402
463
  SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
403
464
  TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
404
465
  GetActiveClientSideIdsCheckSum(): number;
405
466
  TakeRenderRequired(handle: number): boolean;
467
+ BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
406
468
  modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
407
469
  setMaxCacheSize(maxSizeBytes: number): void;
470
+ SetPreferSharkEncodingProfiles(prefer: boolean): void;
408
471
  }
409
472
 
410
473
  /**
@@ -417,6 +480,7 @@ declare interface MainModule {
417
480
  */
418
481
  export declare class Miris {
419
482
  #private;
483
+ static tryUseShark: boolean;
420
484
  static _instance: Miris;
421
485
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
422
486
  readonly engine: Engine;
@@ -435,17 +499,26 @@ export declare class Miris {
435
499
  protected _xrSession: XRSession | null;
436
500
  protected _requestAnimationFrame: RequestAnimationFrameFn | null;
437
501
  signalResumeFromIdle(): void;
502
+ get _splatCountBudget(): number;
438
503
  /**
439
504
  * Why 43? Because the AVP throttles down to 45Hz :(
440
505
  */
441
506
  static readonly _XR_TARGET_FRAME_RATE = 43;
507
+ /* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
508
+ /* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
509
+ static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
510
+ /* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
511
+ static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
512
+ /* Excluded from this release type: _isMobileDevice */
513
+ /* Excluded from this release type: _sharkSplatCapacity */
514
+ /* Excluded from this release type: _sharkSplatBudgetCap */
442
515
  /* Excluded from this release type: _setTargetFrameRate */
443
516
  /* Excluded from this release type: _setXRModeActive */
444
517
  /* Excluded from this release type: _setSplatCountBudgetOverride */
445
518
  /* Excluded from this release type: _update */
446
519
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
447
520
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
448
- update(): boolean;
521
+ /* Excluded from this release type: _updateForScene */
449
522
  applyChanges(_entries: Change[]): void;
450
523
  _computeAdditionalRenderNeeded(): boolean;
451
524
  onColorSpaceDetected(_isLinear: boolean): void;
@@ -474,6 +547,28 @@ export declare type ModelRootInit = {
474
547
  stream: Stream;
475
548
  };
476
549
 
550
+ /**
551
+ * The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
552
+ * contract, returning bytes rather than words.
553
+ *
554
+ * Use this rather than that one wherever the stride is not a whole number of words:
555
+ * reflectanceDataV1's 26-byte record is not, and an odd record count would lose that record's
556
+ * last field to dataPtrView's truncation.
557
+ */
558
+ export declare type RawByteAttributeWithBounds = {
559
+ bytes: Uint8Array<ArrayBuffer>;
560
+ minValue: {
561
+ x: number;
562
+ y: number;
563
+ z: number;
564
+ };
565
+ maxValue: {
566
+ x: number;
567
+ y: number;
568
+ z: number;
569
+ };
570
+ };
571
+
477
572
  declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
478
573
 
479
574
  declare interface RuntimeSettings extends EmbindObject {
@@ -482,6 +577,7 @@ declare interface RuntimeSettings extends EmbindObject {
482
577
  targetFramesPerSecond: number;
483
578
  xrModeActive: boolean;
484
579
  splatCountBudget: number;
580
+ splatCountBudgetCap: number;
485
581
  }
486
582
 
487
583
  export declare class Scene extends EventTarget {
@@ -493,6 +589,7 @@ export declare class Scene extends EventTarget {
493
589
  readonly id: number;
494
590
  get key(): unknown;
495
591
  set key(key: unknown);
592
+ /* Excluded from this release type: _assetFormat */
496
593
  get viewerKey(): string | null;
497
594
  set viewerKey(viewerKey: string | null);
498
595
  get streams(): Set<Stream>;
@@ -502,21 +599,33 @@ export declare class Scene extends EventTarget {
502
599
  readonly client: Client;
503
600
  readonly handle?: number;
504
601
  constructor({ miris, viewerKey }: SceneInit);
602
+ /**
603
+ * Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
604
+ * displayed frame from the host's animation loop, and render when it returns true.
605
+ *
606
+ * Every scene on the page calls this from its own loop. The first call in a displayed frame
607
+ * drives one engine tick for all of them; the rest recognise the frame and reuse it.
608
+ *
609
+ * @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
610
+ * reads the same for every scene in a displayed frame. Pass it when the host runs its own
611
+ * clock, as an immersive XR session does, because XRFrame time is not the document timeline.
612
+ */
613
+ update(ts?: DOMHighResTimeStamp): boolean;
505
614
  dispose(): void;
506
- /* Excluded from this release type: _getViewingVolumeBounds */
507
615
  fetchAssets(tags?: string | Iterable<string>): Promise<{
508
616
  name: string;
509
617
  thumbnailUrl: string;
510
618
  uuid: string;
511
619
  tags: string[];
512
620
  }[]>;
513
- getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
514
621
  add(stream: Stream): void;
515
622
  getStreamForId(streamObjectId: number): Stream | undefined;
516
623
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
517
624
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
625
+ _recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
518
626
  /* Excluded from this release type: _getFeatureMesh */
519
627
  /* Excluded from this release type: _getDrMap */
628
+ /* Excluded from this release type: _onDrMapLadder */
520
629
  /* Excluded from this release type: _onFeatureData */
521
630
  /* Excluded from this release type: _onSceneLoaded */
522
631
  delete(stream: Stream): void;
@@ -529,6 +638,7 @@ declare interface SceneChangeIds extends EmbindObject {
529
638
  readonly modifiedObjectsCount: number;
530
639
  readonly deactivatedObjectsCount: number;
531
640
  readonly deletedObjectsCount: number;
641
+ readonly remaskedObjectsCount: number;
532
642
  }
533
643
 
534
644
  export declare type SceneInit = {
@@ -540,6 +650,13 @@ declare interface SceneMetadata extends EmbindObject {
540
650
  readonly inputColorSpace: string;
541
651
  }
542
652
 
653
+ declare type SparkAttributeInfo = {
654
+ elementsPerSplat: number;
655
+ discard: boolean;
656
+ };
657
+
658
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
659
+
543
660
  declare interface SpatialFormat extends EmbindObject {
544
661
  metersPerUnit: number;
545
662
  upAxis: number;
@@ -567,6 +684,8 @@ export declare class Stream extends EventTarget {
567
684
  set key(key: unknown);
568
685
  get matrix(): Matrix4x4Tuple;
569
686
  set matrix(matrix: Matrix4x4Tuple);
687
+ get opacity(): number;
688
+ set opacity(opacity: number);
570
689
  get boundingBox(): {
571
690
  min: {
572
691
  x: number;
@@ -597,6 +716,8 @@ export declare class Stream extends EventTarget {
597
716
  constructor(options: StreamInit);
598
717
  _initStream({ uuid }: StreamInit): void;
599
718
  /* Excluded from this release type: _onStreamLoaded */
719
+ getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
720
+ /* Excluded from this release type: _getViewingVolumeObb */
600
721
  /* Excluded from this release type: _onRootLoaded */
601
722
  add(modelRoot: ModelRoot): void;
602
723
  end(): void;