@miris-inc/core 0.0.8-e61da89 → 0.0.8-e68f11f

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,59 @@
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 SURFEL_OWNER_GROUPS: string;
38
+ static readonly OCTANT_CELL: string;
39
+ static readonly REFLECTANCE_DATA_V1: string;
40
+ static readonly REFLECTANCE_DATA_V2: string;
41
+ static readonly GLASS_MESH_GEOMETRY: string;
42
+ static readonly GLASS_MESH_PANELS: string;
43
+ static readonly MOD_DEPTH: string;
44
+ }
45
+
46
+ declare type CachedAttribute = {
47
+ paddedData: Uint32Array<ArrayBuffer>;
48
+ originalSizeInUints: number;
49
+ };
50
+
10
51
  export declare class Camera {
11
52
  #private;
12
53
  readonly id: number;
13
54
  update(): void;
55
+ get viewportHeight(): number;
56
+ set viewportHeight(viewportHeight: number);
14
57
  get aspect(): number;
15
58
  set aspect(aspect: number);
16
59
  get fov(): number;
@@ -24,7 +67,7 @@ export declare class Camera {
24
67
  readonly engine: Engine;
25
68
  readonly miris: Miris;
26
69
  readonly scene: Scene;
27
- constructor({ aspect, fov, near, far, matrix, scene }: CameraInit);
70
+ constructor({ aspect, fov, near, far, matrix, scene, viewportHeight, }: CameraInit);
28
71
  }
29
72
 
30
73
  export declare type CameraInit = {
@@ -34,6 +77,7 @@ export declare type CameraInit = {
34
77
  far: number;
35
78
  matrix: Matrix4x4Tuple;
36
79
  scene: Scene;
80
+ viewportHeight?: number;
37
81
  };
38
82
 
39
83
  export declare class Change {
@@ -43,7 +87,7 @@ export declare class Change {
43
87
  }
44
88
 
45
89
  export declare type ChangeInit = {
46
- type: "created" | "activated" | "modified" | "deactivated" | "deleted";
90
+ type: "created" | "activated" | "modified" | "deactivated" | "deleted" | "remasked";
47
91
  lod: Lod;
48
92
  };
49
93
 
@@ -69,6 +113,7 @@ declare class Client {
69
113
  getSceneMetadata(...args: ClientMethodParameters["getSceneMetadata"]): number;
70
114
  getSceneObjectParent(...args: ClientMethodParameters["getSceneObjectParent"]): number;
71
115
  getSceneObjectType(...args: ClientMethodParameters["getSceneObjectType"]): SceneObjectType;
116
+ getDrawnOctantMask(...args: ClientMethodParameters["getDrawnOctantMask"]): number;
72
117
  getLocalTransform(...args: ClientMethodParameters["getLocalTransform"]): AquaStatus;
73
118
  getWorldTransform(...args: ClientMethodParameters["getWorldTransform"]): AquaStatus;
74
119
  hasAttribute(...args: ClientMethodParameters["hasAttribute"]): boolean;
@@ -84,6 +129,8 @@ declare class Client {
84
129
  hasFeature(...args: ClientMethodParameters["hasFeature"]): boolean;
85
130
  getFeatureVersion(...args: ClientMethodParameters["getFeatureVersion"]): number;
86
131
  getFeatureState(...args: ClientMethodParameters["getFeatureState"]): number;
132
+ getAssetFormatVersion(...args: ClientMethodParameters["getAssetFormatVersion"]): number;
133
+ getDrMapLadderRoughnessLevels(...args: ClientMethodParameters["getDrMapLadderRoughnessLevels"]): number[];
87
134
  getName(...args: ClientMethodParameters["getName"]): string;
88
135
  setVariantSelection(...args: ClientMethodParameters["setVariantSelection"]): AquaStatus;
89
136
  takeAttribute(...args: ClientMethodParameters["takeAttribute"]): AquaStatus;
@@ -91,7 +138,6 @@ declare class Client {
91
138
  takeRenderRequired(...args: ClientMethodParameters["takeRenderRequired"]): boolean;
92
139
  unlockScene(...args: ClientMethodParameters["unlockScene"]): boolean;
93
140
  updateSceneExecution(...args: ClientMethodParameters["updateSceneExecution"]): AquaStatus;
94
- recordFrameTime(...args: ClientMethodParameters["recordFrameTime"]): AquaStatus;
95
141
  }
96
142
 
97
143
  declare type ClientInit = {
@@ -155,6 +201,10 @@ declare class Engine {
155
201
  get module(): MainModule;
156
202
  constructor(moduleOptions?: Record<string, unknown>);
157
203
  get AttributeInfo(): new () => AttributeInfo;
204
+ get CompressionType(): {
205
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
206
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
207
+ };
158
208
  get Handedness(): {
159
209
  Right: number;
160
210
  Left: number;
@@ -190,6 +240,8 @@ declare class Engine {
190
240
  deletedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
191
241
  dataPtrView(...args: [attributeInfo: AttributeInfo]): Uint32Array;
192
242
  deactivatedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
243
+ remaskedObjectIdsView(...args: [sceneChangeIds: SceneChangeIds]): Uint32Array;
244
+ getDrawnOctantMask(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
193
245
  destroyClient(...args: [handle: AquaClientHandle]): AquaStatus;
194
246
  free(...args: [size: number]): number;
195
247
  getAssetsAsync(...args: [handle: AquaClientHandle, tags: StringVector]): AssetInfo[];
@@ -199,8 +251,8 @@ declare class Engine {
199
251
  attributeName: string,
200
252
  attributeInfo: AttributeInfo
201
253
  ]): AquaStatus;
202
- getDefaultCameraId(...args: [handle: AquaClientHandle]): number;
203
- getViewingVolumeId(...args: [handle: AquaClientHandle]): number;
254
+ getDefaultCameraId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
255
+ getViewingVolumeId(...args: [handle: AquaClientHandle, streamObjectId: number]): number;
204
256
  getLocalBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
205
257
  getWorldBoundingBox(...args: [handle: AquaClientHandle, sceneObjectId: number, boxData: number]): AquaStatus;
206
258
  getLodIndex(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
@@ -256,9 +308,11 @@ declare class Engine {
256
308
  aspectRatio: number,
257
309
  verticalFov: number,
258
310
  nearPlane: number,
259
- farPlane: number
311
+ farPlane: number,
312
+ viewportHeightPixels: number
260
313
  ]): AquaStatus;
261
314
  setMaxCacheSize(...args: [maxSizeBytes: number]): void;
315
+ setPreferSharkEncodingProfiles(...args: [preferShark: boolean]): void;
262
316
  setSceneObjectTransform(...args: [
263
317
  handle: AquaClientHandle,
264
318
  sceneObjectId: number,
@@ -267,6 +321,8 @@ declare class Engine {
267
321
  hasFeature(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): boolean;
268
322
  getFeatureVersion(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
269
323
  getFeatureState(...args: [handle: AquaClientHandle, sceneObjectId: number, feature: number]): number;
324
+ getDrMapLadderRoughnessLevels(...args: [handle: AquaClientHandle, sceneObjectId: number]): number[];
325
+ getAssetFormatVersion(...args: [handle: AquaClientHandle, sceneObjectId: number]): number;
270
326
  getName(...args: [handle: AquaClientHandle, sceneObjectId: number]): string;
271
327
  setVariantSelection(...args: [handle: AquaClientHandle, sceneObjectId: number]): AquaStatus;
272
328
  takeAttribute(...args: [
@@ -279,8 +335,15 @@ declare class Engine {
279
335
  getActiveClientSideIdsCheckSum(): number;
280
336
  unlockScene(...args: [handle: AquaClientHandle]): boolean;
281
337
  updateSceneExecution(...args: [handle: AquaClientHandle]): AquaStatus;
282
- recordFrameTime(...args: [handle: AquaClientHandle, frameTimeMs: number]): AquaStatus;
283
338
  takeRenderRequired(...args: [handle: AquaClientHandle]): boolean;
339
+ /**
340
+ * Advances the runtime by one frame and recomputes the streaming budget. Call once per
341
+ * displayed frame per context, before the per-client updateSceneExecution() calls.
342
+ * `previousFrameTimeMs` is how long the previous frame took; pass 0 when there is no plausible
343
+ * measurement (first frame, or a resume from a stall) and the frame advances without recording
344
+ * one.
345
+ */
346
+ beginFrame(...args: [contextHandle: AquaContextHandle, previousFrameTimeMs: number]): AquaStatus;
284
347
  createDeserializeWorker(_url: string, _workerUrl: string, poolSize: number): boolean;
285
348
  cancelRequest(requestIdLow: number, requestIdHigh: number): boolean;
286
349
  submitToWorker(requestIdLow: number, requestIdHigh: number, descriptorBuffer: ArrayBuffer, contextPtr: number): boolean;
@@ -298,25 +361,9 @@ export declare class Lod {
298
361
  #private;
299
362
  readonly id: LodInit["id"];
300
363
  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
364
  get key(): unknown;
311
365
  set key(key: unknown);
312
366
  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
367
  set bounds(bounds: Float32Array<ArrayBuffer> | null);
321
368
  /**
322
369
  * Retrieves the cached world bounds of this object
@@ -334,21 +381,32 @@ export declare class Lod {
334
381
  get localBounds(): Float32Array<ArrayBuffer> | null;
335
382
  set lodIndex(index: number);
336
383
  get lodIndex(): number | null;
337
- set paddingCount(count: number);
338
- get paddingCount(): number;
384
+ set paddingSplatsCount(count: number);
385
+ get paddingSplatsCount(): number;
339
386
  set transform(transform: Float32Array<ArrayBuffer> | null);
340
387
  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;
388
+ get _drawnOctantMask(): number;
389
+ set _drawnOctantMask(mask: number);
390
+ get _octantOffsets(): Uint32Array<ArrayBuffer> | null;
391
+ get _hasOctantOffsets(): boolean;
392
+ get _surfelOctantOffsets(): Uint32Array<ArrayBuffer> | null;
393
+ get _surfelCount(): number;
394
+ get _surfelOwnerGroups(): Uint32Array<ArrayBuffer> | null;
395
+ get _octantCell(): Uint32Array<ArrayBuffer> | null;
396
+ _readOctantOffsets(engine: Engine): void;
397
+ hasAttribute(attributeName: string): boolean;
398
+ getDataFromAttribute(engine: Engine, attributeName: string, attributeInfo: AttributeInfo): CachedAttribute | null;
399
+ _getRawByteAttribute(engine: Engine, attributeName: string): Uint8Array<ArrayBuffer> | null;
400
+ _getRawByteAttributeWithBounds(engine: Engine, attributeName: string): RawByteAttributeWithBounds | null;
344
401
  dispose(): void;
345
- constructor({ id, modelRoot, lodStore }: LodInit);
402
+ constructor({ id, modelRoot, lodStore, client }: LodInit);
346
403
  }
347
404
 
348
405
  export declare type LodInit = {
349
406
  id: number;
350
407
  modelRoot: ModelRoot;
351
408
  lodStore: LodStore;
409
+ client: Client;
352
410
  };
353
411
 
354
412
  export declare class LodStore {
@@ -364,6 +422,10 @@ export declare class LodStore {
364
422
 
365
423
  declare interface MainModule {
366
424
  AttributeInfo: new () => AttributeInfo;
425
+ CompressionType: {
426
+ SHARK_ELLIPSOID_COMPRESSED: unknown;
427
+ SHARK_ELLIPSOID_COMPRESSED_ROOT_RELATIVE: unknown;
428
+ };
367
429
  Handedness: { Right: number; Left: number };
368
430
  HEAPF32: Float32Array<ArrayBuffer>;
369
431
  HEAPU8: Uint8Array<ArrayBuffer>;
@@ -389,7 +451,9 @@ declare interface MainModule {
389
451
  createdObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
390
452
  dataPtrView(attributeInfo: AttributeInfo): Uint32Array;
391
453
  deactivatedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
454
+ remaskedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
392
455
  deletedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
456
+ GetDrawnOctantMask(handle: number, sceneObjectId: number): number;
393
457
  GetAssetsAsync(handle: number, tags: StringVector): unknown[];
394
458
  GetSceneChanges(handle: number, sceneChangeIds: SceneChangeIds): void;
395
459
  GetSceneChangesCounts(handle: number, sceneChangeIds: SceneChangeIds): void;
@@ -398,13 +462,17 @@ declare interface MainModule {
398
462
  HasFeature(handle: number, sceneObjectId: number, feature: number): boolean;
399
463
  GetFeatureVersion(handle: number, sceneObjectId: number, feature: number): number;
400
464
  GetFeatureState(handle: number, sceneObjectId: number, feature: number): number;
465
+ GetAssetFormatVersion(handle: number, sceneObjectId: number): number;
466
+ GetDrMapLadderRoughnessLevels(handle: number, sceneObjectId: number): number[];
401
467
  SetClientSpatialFormat(handle: number, spatialFormat: SpatialFormat): { value: number };
402
468
  SetRuntimeSettings(handle: number, settings: RuntimeSettings): { value: number };
403
469
  TakeEvictedClientSideAttributeIds(handle: number): EmbindVector<bigint>;
404
470
  GetActiveClientSideIdsCheckSum(): number;
405
471
  TakeRenderRequired(handle: number): boolean;
472
+ BeginFrame(contextHandle: number, previousFrameTimeMs: number): number;
406
473
  modifiedObjectIdsView(sceneChangeIds: SceneChangeIds): Uint32Array;
407
474
  setMaxCacheSize(maxSizeBytes: number): void;
475
+ SetPreferSharkEncodingProfiles(prefer: boolean): void;
408
476
  }
409
477
 
410
478
  /**
@@ -417,6 +485,7 @@ declare interface MainModule {
417
485
  */
418
486
  export declare class Miris {
419
487
  #private;
488
+ static tryUseShark: boolean;
420
489
  static _instance: Miris;
421
490
  static instance<T extends typeof Miris>(this: T): Promise<InstanceType<T>>;
422
491
  readonly engine: Engine;
@@ -435,17 +504,27 @@ export declare class Miris {
435
504
  protected _xrSession: XRSession | null;
436
505
  protected _requestAnimationFrame: RequestAnimationFrameFn | null;
437
506
  signalResumeFromIdle(): void;
507
+ get _splatCountBudget(): number;
438
508
  /**
439
509
  * Why 43? Because the AVP throttles down to 45Hz :(
440
510
  */
441
511
  static readonly _XR_TARGET_FRAME_RATE = 43;
512
+ /* Excluded from this release type: _XR_SPLAT_COUNT_BUDGET */
513
+ /* Excluded from this release type: _SHARK_SPLAT_CAPACITY_MOBILE */
514
+ static readonly _SHARK_SPLAT_CAPACITY_DESKTOP = 3000000;
515
+ /* Excluded from this release type: _SHARK_SPLAT_BUDGET_CAP_MOBILE */
516
+ static readonly _SHARK_SPLAT_BUDGET_CAP_DESKTOP = 2500000;
517
+ /* Excluded from this release type: _isMobileDevice */
518
+ /* Excluded from this release type: _sharkSplatCapacity */
519
+ /* Excluded from this release type: _limitSharkSplatCapacity */
520
+ /* Excluded from this release type: _sharkSplatBudgetCap */
442
521
  /* Excluded from this release type: _setTargetFrameRate */
443
522
  /* Excluded from this release type: _setXRModeActive */
444
523
  /* Excluded from this release type: _setSplatCountBudgetOverride */
445
524
  /* Excluded from this release type: _update */
446
525
  getLocalTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
447
526
  getWorldTransform(client: Client, sceneObjectId: number): Float32Array<ArrayBuffer> | undefined;
448
- update(): boolean;
527
+ /* Excluded from this release type: _updateForScene */
449
528
  applyChanges(_entries: Change[]): void;
450
529
  _computeAdditionalRenderNeeded(): boolean;
451
530
  onColorSpaceDetected(_isLinear: boolean): void;
@@ -474,6 +553,28 @@ export declare type ModelRootInit = {
474
553
  stream: Stream;
475
554
  };
476
555
 
556
+ /**
557
+ * The byte-exact counterpart of getRawUint32Attribute above: same no-padding, no-takeAttribute
558
+ * contract, returning bytes rather than words.
559
+ *
560
+ * Use this rather than that one wherever the stride is not a whole number of words: the
561
+ * reflectance records' 18- and 26-byte strides are not, and an odd record count would lose that
562
+ * record's last field to dataPtrView's truncation.
563
+ */
564
+ export declare type RawByteAttributeWithBounds = {
565
+ bytes: Uint8Array<ArrayBuffer>;
566
+ minValue: {
567
+ x: number;
568
+ y: number;
569
+ z: number;
570
+ };
571
+ maxValue: {
572
+ x: number;
573
+ y: number;
574
+ z: number;
575
+ };
576
+ };
577
+
477
578
  declare type RequestAnimationFrameFn = ((callback: FrameRequestCallback) => number) | ((callback: XRFrameRequestCallback) => void);
478
579
 
479
580
  declare interface RuntimeSettings extends EmbindObject {
@@ -482,6 +583,7 @@ declare interface RuntimeSettings extends EmbindObject {
482
583
  targetFramesPerSecond: number;
483
584
  xrModeActive: boolean;
484
585
  splatCountBudget: number;
586
+ splatCountBudgetCap: number;
485
587
  }
486
588
 
487
589
  export declare class Scene extends EventTarget {
@@ -493,6 +595,7 @@ export declare class Scene extends EventTarget {
493
595
  readonly id: number;
494
596
  get key(): unknown;
495
597
  set key(key: unknown);
598
+ /* Excluded from this release type: _assetFormat */
496
599
  get viewerKey(): string | null;
497
600
  set viewerKey(viewerKey: string | null);
498
601
  get streams(): Set<Stream>;
@@ -502,21 +605,33 @@ export declare class Scene extends EventTarget {
502
605
  readonly client: Client;
503
606
  readonly handle?: number;
504
607
  constructor({ miris, viewerKey }: SceneInit);
608
+ /**
609
+ * Drives a frame and answers whether *this* scene's canvas needs repainting. Call it once per
610
+ * displayed frame from the host's animation loop, and render when it returns true.
611
+ *
612
+ * Every scene on the page calls this from its own loop. The first call in a displayed frame
613
+ * drives one engine tick for all of them; the rest recognise the frame and reuse it.
614
+ *
615
+ * @param ts the host's frame timestamp. Optional - the document timeline supplies one, and it
616
+ * reads the same for every scene in a displayed frame. Pass it when the host runs its own
617
+ * clock, as an immersive XR session does, because XRFrame time is not the document timeline.
618
+ */
619
+ update(ts?: DOMHighResTimeStamp): boolean;
505
620
  dispose(): void;
506
- /* Excluded from this release type: _getViewingVolumeBounds */
507
621
  fetchAssets(tags?: string | Iterable<string>): Promise<{
508
622
  name: string;
509
623
  thumbnailUrl: string;
510
624
  uuid: string;
511
625
  tags: string[];
512
626
  }[]>;
513
- getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
514
627
  add(stream: Stream): void;
515
628
  getStreamForId(streamObjectId: number): Stream | undefined;
516
629
  getStreamForDescendentId(descendentObjectId: number): Stream | null;
517
630
  getModelRootForDescendentId(descendentObjectId: number): ModelRoot | null;
631
+ _recordAssetFormat(modelRoot: ModelRoot, formatVersion: number): void;
518
632
  /* Excluded from this release type: _getFeatureMesh */
519
633
  /* Excluded from this release type: _getDrMap */
634
+ /* Excluded from this release type: _onDrMapLadder */
520
635
  /* Excluded from this release type: _onFeatureData */
521
636
  /* Excluded from this release type: _onSceneLoaded */
522
637
  delete(stream: Stream): void;
@@ -529,6 +644,7 @@ declare interface SceneChangeIds extends EmbindObject {
529
644
  readonly modifiedObjectsCount: number;
530
645
  readonly deactivatedObjectsCount: number;
531
646
  readonly deletedObjectsCount: number;
647
+ readonly remaskedObjectsCount: number;
532
648
  }
533
649
 
534
650
  export declare type SceneInit = {
@@ -540,6 +656,13 @@ declare interface SceneMetadata extends EmbindObject {
540
656
  readonly inputColorSpace: string;
541
657
  }
542
658
 
659
+ declare type SparkAttributeInfo = {
660
+ elementsPerSplat: number;
661
+ discard: boolean;
662
+ };
663
+
664
+ export declare const sparkAttributeList: Record<string, SparkAttributeInfo>;
665
+
543
666
  declare interface SpatialFormat extends EmbindObject {
544
667
  metersPerUnit: number;
545
668
  upAxis: number;
@@ -567,6 +690,8 @@ export declare class Stream extends EventTarget {
567
690
  set key(key: unknown);
568
691
  get matrix(): Matrix4x4Tuple;
569
692
  set matrix(matrix: Matrix4x4Tuple);
693
+ get opacity(): number;
694
+ set opacity(opacity: number);
570
695
  get boundingBox(): {
571
696
  min: {
572
697
  x: number;
@@ -597,6 +722,8 @@ export declare class Stream extends EventTarget {
597
722
  constructor(options: StreamInit);
598
723
  _initStream({ uuid }: StreamInit): void;
599
724
  /* Excluded from this release type: _onStreamLoaded */
725
+ getDefaultCameraTransform(): Float32Array<ArrayBuffer> | null | undefined;
726
+ /* Excluded from this release type: _getViewingVolumeObb */
600
727
  /* Excluded from this release type: _onRootLoaded */
601
728
  add(modelRoot: ModelRoot): void;
602
729
  end(): void;