@dcl/playground-assets 7.8.1-14131012904.commit-6157fcb → 7.8.2-14264974837.commit-e768832

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/beta.d.ts CHANGED
@@ -178,11 +178,32 @@ export declare const AvatarAttach: LastWriteWinElementSetComponentDefinition<PBA
178
178
  /** @public */
179
179
  export declare const AvatarBase: LastWriteWinElementSetComponentDefinition<PBAvatarBase>;
180
180
 
181
+ /**
182
+ * @public
183
+ */
184
+ export declare const enum AvatarControlType {
185
+ /** CCT_NONE - avatar cannot move */
186
+ CCT_NONE = 0,
187
+ /** CCT_RELATIVE - avatar moves relative to the camera origin */
188
+ CCT_RELATIVE = 1,
189
+ /** CCT_TANK - avatar moves like a tank: left/right rotate the player, forward/backward advance/retreat the player */
190
+ CCT_TANK = 2
191
+ }
192
+
181
193
  /** @public */
182
194
  export declare const AvatarEmoteCommand: GrowOnlyValueSetComponentDefinition<PBAvatarEmoteCommand>;
183
195
 
184
- /** @public */
185
- export declare const AvatarEquippedData: LastWriteWinElementSetComponentDefinition<PBAvatarEquippedData>;
196
+ export declare const AvatarEquippedData: AvatarEquippedDataComponentDefinitionExtended;
197
+
198
+ /**
199
+ * @public
200
+ */
201
+ export declare interface AvatarEquippedDataComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<AvatarEquippedDataType> {
202
+ }
203
+
204
+ export declare type AvatarEquippedDataType = Omit<PBAvatarEquippedData, 'forceRender'> & {
205
+ forceRender?: string[] | undefined;
206
+ };
186
207
 
187
208
  /** @public */
188
209
  export declare const AvatarModifierArea: LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>;
@@ -198,8 +219,48 @@ export declare const enum AvatarModifierType {
198
219
  AMT_DISABLE_PASSPORTS = 1
199
220
  }
200
221
 
201
- /** @public */
202
- export declare const AvatarShape: LastWriteWinElementSetComponentDefinition<PBAvatarShape>;
222
+ /**
223
+ * @public
224
+ */
225
+ export declare interface AvatarMovementSettings {
226
+ controlMode?: AvatarControlType | undefined;
227
+ /** if not explicitly set, the following properties default to user's preference settings */
228
+ runSpeed?: number | undefined;
229
+ /** how fast the player gets up to speed or comes to rest. higher = more responsive */
230
+ friction?: number | undefined;
231
+ /** how fast the player accelerates vertically when not on a solid surface, in m/s. should normally be negative */
232
+ gravity?: number | undefined;
233
+ /** how high the player can jump, in meters. should normally be positive. gravity must have the same sign for jumping to be possible */
234
+ jumpHeight?: number | undefined;
235
+ /** max fall speed in m/s. should normally be negative */
236
+ maxFallSpeed?: number | undefined;
237
+ /** speed the player turns in tank mode, in radians/s */
238
+ turnSpeed?: number | undefined;
239
+ /** speed the player walks at, in m/s */
240
+ walkSpeed?: number | undefined;
241
+ /** whether to allow player to move at a slower speed (e.g. with a walk-key or when using a gamepad/joystick). defaults to true */
242
+ allowWeightedMovement?: boolean | undefined;
243
+ }
244
+
245
+ /**
246
+ * @public
247
+ */
248
+ export declare namespace AvatarMovementSettings {
249
+ export function encode(message: AvatarMovementSettings, writer?: _m0.Writer): _m0.Writer;
250
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): AvatarMovementSettings;
251
+ }
252
+
253
+ export declare const AvatarShape: AvatarShapeComponentDefinitionExtended;
254
+
255
+ /**
256
+ * @public
257
+ */
258
+ export declare interface AvatarShapeComponentDefinitionExtended extends LastWriteWinElementSetComponentDefinition<AvatarShapeType> {
259
+ }
260
+
261
+ export declare type AvatarShapeType = Omit<PBAvatarShape, 'forceRender'> & {
262
+ forceRender?: string[] | undefined;
263
+ };
203
264
 
204
265
  /**
205
266
  * @public
@@ -473,6 +534,12 @@ export declare interface ByteBuffer {
473
534
  */
474
535
  export declare type Callback = () => void;
475
536
 
537
+ /** @public */
538
+ export declare const CameraLayer: LastWriteWinElementSetComponentDefinition<PBCameraLayer>;
539
+
540
+ /** @public */
541
+ export declare const CameraLayers: LastWriteWinElementSetComponentDefinition<PBCameraLayers>;
542
+
476
543
  /** @public */
477
544
  export declare const CameraMode: LastWriteWinElementSetComponentDefinition<PBCameraMode>;
478
545
 
@@ -530,6 +597,39 @@ export declare const enum CameraType {
530
597
 
531
598
  export declare type Children = ReactEcs.JSX.ReactNode;
532
599
 
600
+ /**
601
+ * @public
602
+ */
603
+ export declare interface CinematicSettings {
604
+ /** Entity that defines the cinematic camera transform. */
605
+ cameraEntity: number;
606
+ /**
607
+ * Position -> camera's position
608
+ * Rotation -> camera's direction
609
+ * scale.z -> zoom level
610
+ * scale.x and scale.y -> unused
611
+ */
612
+ allowManualRotation?: boolean | undefined;
613
+ /** how far the camera can rotate around the y-axis / look left/right, in radians. default unrestricted */
614
+ yawRange?: number | undefined;
615
+ /** how far the camera can rotate around the x-axis / look up-down, in radians. default unrestricted */
616
+ pitchRange?: number | undefined;
617
+ /** note: cameras can never look up/down further than Vec3::Y */
618
+ rollRange?: number | undefined;
619
+ /** minimum zoom level. must be greater than 0. defaults to the input zoom level */
620
+ zoomMin?: number | undefined;
621
+ /** maximum zoom level. must be greater than 0. defaults to the input zoom level */
622
+ zoomMax?: number | undefined;
623
+ }
624
+
625
+ /**
626
+ * @public
627
+ */
628
+ export declare namespace CinematicSettings {
629
+ export function encode(message: CinematicSettings, writer?: _m0.Writer): _m0.Writer;
630
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): CinematicSettings;
631
+ }
632
+
533
633
  /** ColliderLayer determines the kind of collision to detect, in OR-able bit flag form. */
534
634
  /**
535
635
  * @public
@@ -1303,12 +1403,18 @@ export declare const componentDefinitionByName: {
1303
1403
  "core::AvatarModifierArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarModifierArea>>;
1304
1404
  "core::AvatarShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBAvatarShape>>;
1305
1405
  "core::Billboard": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBBillboard>>;
1406
+ "core::CameraLayer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayer>>;
1407
+ "core::CameraLayers": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraLayers>>;
1306
1408
  "core::CameraMode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraMode>>;
1307
1409
  "core::CameraModeArea": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBCameraModeArea>>;
1308
1410
  "core::EngineInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBEngineInfo>>;
1411
+ "core::GlobalLight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGlobalLight>>;
1309
1412
  "core::GltfContainer": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainer>>;
1310
1413
  "core::GltfContainerLoadingState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>>;
1414
+ "core::GltfNode": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNode>>;
1415
+ "core::GltfNodeState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBGltfNodeState>>;
1311
1416
  "core::InputModifier": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBInputModifier>>;
1417
+ "core::Light": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBLight>>;
1312
1418
  "core::MainCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMainCamera>>;
1313
1419
  "core::Material": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMaterial>>;
1314
1420
  "core::MeshCollider": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBMeshCollider>>;
@@ -1318,19 +1424,24 @@ export declare const componentDefinitionByName: {
1318
1424
  "core::PointerEvents": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPointerEvents>>;
1319
1425
  "core::PointerEventsResult": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBPointerEventsResult>>;
1320
1426
  "core::PointerLock": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPointerLock>>;
1427
+ "core::PrimaryPointerInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBPrimaryPointerInfo>>;
1321
1428
  "core::Raycast": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycast>>;
1322
1429
  "core::RaycastResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRaycastResult>>;
1323
1430
  "core::RealmInfo": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBRealmInfo>>;
1431
+ "core::Spotlight": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBSpotlight>>;
1324
1432
  "core::TextShape": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextShape>>;
1433
+ "core::TextureCamera": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTextureCamera>>;
1325
1434
  "core::Tween": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTween>>;
1326
1435
  "core::TweenSequence": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenSequence>>;
1327
1436
  "core::TweenState": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBTweenState>>;
1328
1437
  "core::UiBackground": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiBackground>>;
1438
+ "core::UiCanvas": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvas>>;
1329
1439
  "core::UiCanvasInformation": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>>;
1330
1440
  "core::UiDropdown": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdown>>;
1331
1441
  "core::UiDropdownResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiDropdownResult>>;
1332
1442
  "core::UiInput": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInput>>;
1333
1443
  "core::UiInputResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiInputResult>>;
1444
+ "core::UiScrollResult": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiScrollResult>>;
1334
1445
  "core::UiText": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiText>>;
1335
1446
  "core::UiTransform": LwwComponentGetter<LastWriteWinElementSetComponentDefinition<PBUiTransform>>;
1336
1447
  "core::VideoEvent": GSetComponentGetter<GrowOnlyValueSetComponentDefinition<PBVideoEvent>>;
@@ -1901,6 +2012,9 @@ export declare type EntityComponents = {
1901
2012
  onMouseUp: Callback;
1902
2013
  onMouseEnter: Callback;
1903
2014
  onMouseLeave: Callback;
2015
+ onMouseDrag: Callback;
2016
+ onMouseDragLocked: Callback;
2017
+ onMouseDragEnd: Callback;
1904
2018
  };
1905
2019
 
1906
2020
  /** @public */
@@ -2052,6 +2166,9 @@ export declare type GlobalDirectionRaycastSystemOptions = {
2052
2166
  direction?: PBVector3;
2053
2167
  };
2054
2168
 
2169
+ /** @public */
2170
+ export declare const GlobalLight: LastWriteWinElementSetComponentDefinition<PBGlobalLight>;
2171
+
2055
2172
  export declare type GlobalTargetRaycastOptions = RaycastSystemOptions & GlobalTargetRaycastSystemOptions;
2056
2173
 
2057
2174
  export declare type GlobalTargetRaycastSystemOptions = {
@@ -2064,6 +2181,21 @@ export declare const GltfContainer: LastWriteWinElementSetComponentDefinition<PB
2064
2181
  /** @public */
2065
2182
  export declare const GltfContainerLoadingState: LastWriteWinElementSetComponentDefinition<PBGltfContainerLoadingState>;
2066
2183
 
2184
+ /** @public */
2185
+ export declare const GltfNode: LastWriteWinElementSetComponentDefinition<PBGltfNode>;
2186
+
2187
+ /** @public */
2188
+ export declare const GltfNodeState: LastWriteWinElementSetComponentDefinition<PBGltfNodeState>;
2189
+
2190
+ /**
2191
+ * @public
2192
+ */
2193
+ export declare const enum GltfNodeStateValue {
2194
+ GNSV_PENDING = 0,
2195
+ GNSV_FAILED = 1,
2196
+ GNSV_READY = 2
2197
+ }
2198
+
2067
2199
  /**
2068
2200
  * @public
2069
2201
  */
@@ -2658,6 +2790,9 @@ export declare interface LastWriteWinElementSetComponentDefinition<T> extends Ba
2658
2790
  getOrCreateMutable(entity: Entity, initialValue?: T): T;
2659
2791
  }
2660
2792
 
2793
+ /** @public */
2794
+ export declare const Light: LastWriteWinElementSetComponentDefinition<PBLight>;
2795
+
2661
2796
  /**
2662
2797
  * User key event Listeners
2663
2798
  * @public
@@ -2671,6 +2806,12 @@ export declare type Listeners = {
2671
2806
  onMouseEnter?: Callback;
2672
2807
  /** triggered on mouse leave event */
2673
2808
  onMouseLeave?: Callback;
2809
+ /** triggered on mouse drag event */
2810
+ onMouseDrag?: Callback;
2811
+ /** triggered on mouse drag event */
2812
+ onMouseDragLocked?: Callback;
2813
+ /** triggered on mouse drag event */
2814
+ onMouseDragEnd?: Callback;
2674
2815
  };
2675
2816
 
2676
2817
  /**
@@ -3539,6 +3680,14 @@ export declare interface MeshColliderComponentDefinitionExtended extends LastWri
3539
3680
  * @param colliderMask - the set of layer where the collider reacts, default: Physics and Pointer
3540
3681
  */
3541
3682
  setSphere(entity: Entity, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3683
+ /**
3684
+ * @public
3685
+ * Set a gltf internal mesh in the MeshCollider component
3686
+ * @param entity - entity to create or replace the MeshRenderer component
3687
+ * @param source - the path to the gltf
3688
+ * @param meshName - the name of the mesh in the gltf
3689
+ */
3690
+ setGltfMesh(entity: Entity, source: string, meshName: string, colliderLayers?: ColliderLayer | ColliderLayer[]): void;
3542
3691
  }
3543
3692
 
3544
3693
  export declare const MeshRenderer: MeshRendererComponentDefinitionExtended;
@@ -3575,6 +3724,14 @@ export declare interface MeshRendererComponentDefinitionExtended extends LastWri
3575
3724
  * @param entity - entity to create or replace the MeshRenderer component
3576
3725
  */
3577
3726
  setSphere(entity: Entity): void;
3727
+ /**
3728
+ * @public
3729
+ * Set a gltf internal mesh in the MeshRenderer component
3730
+ * @param entity - entity to create or replace the MeshRenderer component
3731
+ * @param source - the path to the gltf
3732
+ * @param meshName - the name of the mesh in the gltf
3733
+ */
3734
+ setGltfMesh(entity: Entity, source: string, meshName: string): void;
3578
3735
  }
3579
3736
 
3580
3737
  /* Excluded from this release type: MessageBus */
@@ -3968,6 +4125,25 @@ export declare const onVideoEvent: Observable<{
3968
4125
  totalVideoLength: number;
3969
4126
  }>;
3970
4127
 
4128
+ /**
4129
+ * @public
4130
+ */
4131
+ export declare interface Orthographic {
4132
+ /**
4133
+ * vertical extent of the visible range in meters
4134
+ * defaults to 4m
4135
+ */
4136
+ verticalRange?: number | undefined;
4137
+ }
4138
+
4139
+ /**
4140
+ * @public
4141
+ */
4142
+ export declare namespace Orthographic {
4143
+ export function encode(message: Orthographic, writer?: _m0.Writer): _m0.Writer;
4144
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Orthographic;
4145
+ }
4146
+
3971
4147
  /**
3972
4148
  * @public
3973
4149
  * The overflow property controls what happens to content that is too big to fit into an area
@@ -4194,6 +4370,8 @@ export declare namespace PBAvatarEmoteCommand {
4194
4370
  export declare interface PBAvatarEquippedData {
4195
4371
  wearableUrns: string[];
4196
4372
  emoteUrns: string[];
4373
+ /** slots that will render even if hidden */
4374
+ forceRender: string[];
4197
4375
  }
4198
4376
 
4199
4377
  /**
@@ -4228,6 +4406,9 @@ export declare interface PBAvatarModifierArea {
4228
4406
  excludeIds: string[];
4229
4407
  /** list of modifiers to apply */
4230
4408
  modifiers: AvatarModifierType[];
4409
+ movementSettings?: AvatarMovementSettings | undefined;
4410
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4411
+ useColliderRange?: boolean | undefined;
4231
4412
  }
4232
4413
 
4233
4414
  /**
@@ -4284,6 +4465,8 @@ export declare interface PBAvatarShape {
4284
4465
  wearables: string[];
4285
4466
  /** available emotes (default empty) */
4286
4467
  emotes: string[];
4468
+ /** slots that will render even if hidden */
4469
+ forceRender: string[];
4287
4470
  }
4288
4471
 
4289
4472
  /**
@@ -4318,6 +4501,51 @@ export declare namespace PBBillboard {
4318
4501
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBBillboard;
4319
4502
  }
4320
4503
 
4504
+ /**
4505
+ * @public
4506
+ */
4507
+ export declare interface PBCameraLayer {
4508
+ /**
4509
+ * layer to which these settings apply. must be > 0
4510
+ * Layer 0 is the default "real world" layer viewed by the player and cannot be modified.
4511
+ */
4512
+ layer: number;
4513
+ /** should the sun light affect this layer? default false */
4514
+ directionalLight?: boolean | undefined;
4515
+ /** should this layer show player avatars? default false */
4516
+ showAvatars?: boolean | undefined;
4517
+ /** should this layer show the sky? default false */
4518
+ showSkybox?: boolean | undefined;
4519
+ /** should this layer show distance fog? default false */
4520
+ showFog?: boolean | undefined;
4521
+ /** ambient light overrides for this layer. default -> use same as main camera */
4522
+ ambientColorOverride?: PBColor3 | undefined;
4523
+ ambientBrightnessOverride?: number | undefined;
4524
+ }
4525
+
4526
+ /**
4527
+ * @public
4528
+ */
4529
+ export declare namespace PBCameraLayer {
4530
+ export function encode(message: PBCameraLayer, writer?: _m0.Writer): _m0.Writer;
4531
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayer;
4532
+ }
4533
+
4534
+ /**
4535
+ * @public
4536
+ */
4537
+ export declare interface PBCameraLayers {
4538
+ layers: number[];
4539
+ }
4540
+
4541
+ /**
4542
+ * @public
4543
+ */
4544
+ export declare namespace PBCameraLayers {
4545
+ export function encode(message: PBCameraLayers, writer?: _m0.Writer): _m0.Writer;
4546
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBCameraLayers;
4547
+ }
4548
+
4321
4549
  /**
4322
4550
  * The CameraMode component can be used to determine whether the player is using a first-person o
4323
4551
  * third-person view.
@@ -4340,7 +4568,7 @@ export declare namespace PBCameraMode {
4340
4568
 
4341
4569
  /**
4342
4570
  * The CameraModeArea component can be attached to an Entity to define a region of space where
4343
- * the player's camera mode (1st-person or 3rd-person) is overridden.
4571
+ * the player's camera mode (1st-person, 3rd-person or cinematic) is overridden.
4344
4572
  *
4345
4573
  * The Entity's Transform position determines the center-point of the region, while its size is
4346
4574
  * given as a vector in the `area` property below. The Transform rotation is applied, but the scale
@@ -4350,6 +4578,8 @@ export declare namespace PBCameraMode {
4350
4578
  *
4351
4579
  * Note that, while commonly used to delineate a 2D area in a scene (hence the name), the region
4352
4580
  * is actually a 3D volume.
4581
+ *
4582
+ * When mode is set to CtCinematic, the cinematic_settings field must also be provided.
4353
4583
  */
4354
4584
  /**
4355
4585
  * @public
@@ -4359,6 +4589,9 @@ export declare interface PBCameraModeArea {
4359
4589
  area: PBVector3 | undefined;
4360
4590
  /** the camera mode to enforce */
4361
4591
  mode: CameraType;
4592
+ cinematicSettings?: CinematicSettings | undefined;
4593
+ /** if true, the player will be considered inside the area when they are within 0.3m of the area. default true */
4594
+ useColliderRange?: boolean | undefined;
4362
4595
  }
4363
4596
 
4364
4597
  /**
@@ -4430,6 +4663,39 @@ export declare namespace PBEngineInfo {
4430
4663
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBEngineInfo;
4431
4664
  }
4432
4665
 
4666
+ /**
4667
+ * defines the global scene light settings. must be added to the scene root.
4668
+ * to control sunlight color, intensity, shadows etc, you can also add a PBLight to the scene root.
4669
+ */
4670
+ /**
4671
+ * @public
4672
+ */
4673
+ export declare interface PBGlobalLight {
4674
+ /**
4675
+ * the direction the directional light shines in.
4676
+ * default depends on time of day and explorer implementation
4677
+ */
4678
+ direction?: PBVector3 | undefined;
4679
+ /**
4680
+ * ambient light color
4681
+ * default: White
4682
+ */
4683
+ ambientColor?: PBColor3 | undefined;
4684
+ /**
4685
+ * ambient light intensity. the explorer default ambient brightness is multiplied by this non-physical quantity.
4686
+ * default 1
4687
+ */
4688
+ ambientBrightness?: number | undefined;
4689
+ }
4690
+
4691
+ /**
4692
+ * @public
4693
+ */
4694
+ export declare namespace PBGlobalLight {
4695
+ export function encode(message: PBGlobalLight, writer?: _m0.Writer): _m0.Writer;
4696
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGlobalLight;
4697
+ }
4698
+
4433
4699
  /**
4434
4700
  * GltfContainer loads a GLTF file (and any additional files packaged inside) attached to an Entity.
4435
4701
  *
@@ -4465,6 +4731,25 @@ export declare namespace PBGltfContainer {
4465
4731
  */
4466
4732
  export declare interface PBGltfContainerLoadingState {
4467
4733
  currentState: LoadingState;
4734
+ /** all node paths in the gltf, which can be used with a GltfNode to inspect and modify the gltf contents */
4735
+ nodePaths: string[];
4736
+ /** all meshes in the gltf. unnamed meshes will be auto-assigned a name of the form `MeshX` or `MeshX/PrimitiveY` */
4737
+ meshNames: string[];
4738
+ /**
4739
+ * where X is the mesh index and Y is the primitive index (and there is more than 1 primitive). note this may
4740
+ * conflict with manually named meshes - to avoid any issues make sure all your meshes are explicitly named.
4741
+ */
4742
+ materialNames: string[];
4743
+ /**
4744
+ * X is the material index. note this may conflict with manually named materials - to avoid any issues make
4745
+ * sure all your materials are explicitly named.
4746
+ */
4747
+ skinNames: string[];
4748
+ /**
4749
+ * X is the skin index. note this may conflict with manually named skins - to avoid any issues make sure all
4750
+ * your skins are explicitly named.
4751
+ */
4752
+ animationNames: string[];
4468
4753
  }
4469
4754
 
4470
4755
  /**
@@ -4475,6 +4760,77 @@ export declare namespace PBGltfContainerLoadingState {
4475
4760
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfContainerLoadingState;
4476
4761
  }
4477
4762
 
4763
+ /**
4764
+ * a GltfNode links a scene entity with a node from within a gltf, allowing the scene to inspect it or modify it.
4765
+ * This component must be added to a direct child of an entity with a PBGltfContainer component, or
4766
+ * to a direct child of another entity with a GltfNode component, and the referenced gltf node must be a descendent of the gltf node
4767
+ * in the parent.
4768
+ * The name must match the path of one of the nodes within the Gltf. These are available on the GltfContainerLoadingState component.
4769
+ *
4770
+ * The renderer will attach a PBGltfNodeState to the entity describing the state. Once the state is `GNS_READY`,
4771
+ * - the `Transform` will be updated to match the position of the node within the gltf (relative to the gltf root, or the parent node),
4772
+ * - a `MeshRenderer` with a GltfMesh mesh type will be added (if the gltf node has a mesh).
4773
+ * - a `MeshCollider` with a GltfMesh mesh type will be added (if the gltf node has a collider).
4774
+ * - a `Material` component including a GltfMaterial reference will be added (if the gltf node has a material).
4775
+ *
4776
+ * After creation, if an animation moves the node, the `Transform` will be updated.
4777
+ *
4778
+ * From the scene, you can modify various components to alter the gltf node:
4779
+ * - modifying the `Transform` position/rotation/scale will move the node. The position is interpreted relative to the gltf root (or parent node),
4780
+ * regardless of any intermediate gltf node hierarchy.
4781
+ * If an animation is playing, the animation takes priority and the scene entity's position will be updated to match the animation.
4782
+ * - `Visibility` can be added to hide or show the node and it's children in the gltf hierarchy.
4783
+ * - `MeshRenderer` can be added/modified/removed to create/modify/remove a mesh on the node.
4784
+ * - `MeshCollider` can be added/modified/removed to create/modify/remove a collider on the node.
4785
+ * - `Material` can be added or modified to change the material properties. If the gltf node has a material, the original material will be
4786
+ * used as a base, and any gltf features (e.g. occlusion maps) from the gtlf spec that the renderer supports but that are not exposed in the
4787
+ * PBMaterial will be maintained.
4788
+ *
4789
+ * The scene can add additional entities as children to the gltf node, but structural modifications of the gltf are not possible:
4790
+ * - changing the scene hierarchy will not change the gltf node hierarchy. Moving the entity out of the gltf will sever the link and
4791
+ * change the state to `GNS_FAILED`.
4792
+ * - deleting the scene entity will not delete the gltf node.
4793
+ *
4794
+ * Removing the GltfNode will revert any changes to the original gltf. If the GltfNode component is removed and the mesh/collider/material
4795
+ * are not removed, this will result in a duplication of these components as the previously-linked entity will retain it's components and
4796
+ * the gltf node will also be displayed.
4797
+ */
4798
+ /**
4799
+ * @public
4800
+ */
4801
+ export declare interface PBGltfNode {
4802
+ /** the path of the target node in the Gltf. */
4803
+ path: string;
4804
+ }
4805
+
4806
+ /**
4807
+ * @public
4808
+ */
4809
+ export declare namespace PBGltfNode {
4810
+ export function encode(message: PBGltfNode, writer?: _m0.Writer): _m0.Writer;
4811
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNode;
4812
+ }
4813
+
4814
+ /**
4815
+ * The state of a linked gltf node.
4816
+ * If the state is GNSV_FAILED, the renderer may describe the failure in the error string.
4817
+ */
4818
+ /**
4819
+ * @public
4820
+ */
4821
+ export declare interface PBGltfNodeState {
4822
+ state: GltfNodeStateValue;
4823
+ error?: string | undefined;
4824
+ }
4825
+
4826
+ /**
4827
+ * @public
4828
+ */
4829
+ export declare namespace PBGltfNodeState {
4830
+ export function encode(message: PBGltfNodeState, writer?: _m0.Writer): _m0.Writer;
4831
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBGltfNodeState;
4832
+ }
4833
+
4478
4834
  /**
4479
4835
  * @public
4480
4836
  */
@@ -4514,6 +4870,62 @@ export declare namespace PBInputModifier_StandardInput {
4514
4870
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBInputModifier_StandardInput;
4515
4871
  }
4516
4872
 
4873
+ /**
4874
+ * defines a light source.
4875
+ * the world has a default directional light (like sunlight) which can be overridden by adding the light component to the scene root.
4876
+ * a PBGlobalLight component can also be added to the root to control the directional light direction.
4877
+ * point lights (lightbulbs) or spotlights can be created by attaching the light component to non-root entities.
4878
+ */
4879
+ /**
4880
+ * @public
4881
+ */
4882
+ export declare interface PBLight {
4883
+ /**
4884
+ * whether the light is on
4885
+ * default true
4886
+ */
4887
+ enabled?: boolean | undefined;
4888
+ /**
4889
+ * light brightness in lux (lumens/m^2).
4890
+ *
4891
+ * for global directional light, this applies as a constant value at all surfaces and distances (though the effect on the surface still depends on incidence angle).
4892
+ * the default global light illuminance varies from 400 (sunrise/sunset) to 10,000 (midday).
4893
+ * for typical values, see https://en.wikipedia.org/wiki/Lux#Illuminance
4894
+ *
4895
+ * for point and spot lights, this is the lumens/m^2 at 1m distance from the light. to transform from raw lumens,
4896
+ * divide lumens by ~12 (4*pi).
4897
+ * e.g. a 100w household bulb with 1200 lumens would have an illuminance of ~100.
4898
+ * a lighthouse bulb with 200,000 lumens would have an illuminance of ~15,000 (ignoring beam reflections)
4899
+ *
4900
+ * default
4901
+ * for point/spotlights: 10,000
4902
+ * for global directional light: depends on explorer implementation. may vary on light direction, time of day, etc
4903
+ */
4904
+ illuminance?: number | undefined;
4905
+ /**
4906
+ * whether the light should cast shadows.
4907
+ * note: even when set to true the engine may not display shadows, or may only show shadows for a limited number
4908
+ * of lights depending on the implementation, platform, and user settings.
4909
+ * default
4910
+ * for point/spotlights: false / off
4911
+ * for global directional light: true / on
4912
+ */
4913
+ shadows?: boolean | undefined;
4914
+ /**
4915
+ * light color
4916
+ * default White
4917
+ */
4918
+ color?: PBColor3 | undefined;
4919
+ }
4920
+
4921
+ /**
4922
+ * @public
4923
+ */
4924
+ export declare namespace PBLight {
4925
+ export function encode(message: PBLight, writer?: _m0.Writer): _m0.Writer;
4926
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBLight;
4927
+ }
4928
+
4517
4929
  /**
4518
4930
  * PBMainCamera.virtualCameraEntity defines which VirtualCamera entity is active at the moment.
4519
4931
  * This component may hold 'repeated common.CameraTransition' transitionOverrides in the future
@@ -4545,6 +4957,14 @@ export declare interface PBMaterial {
4545
4957
  $case: "pbr";
4546
4958
  pbr: PBMaterial_PbrMaterial;
4547
4959
  } | undefined;
4960
+ /**
4961
+ * A gltf material that may provide additional features not supported by the PbMaterial fields.
4962
+ * If both gltf and material fields are provided, the gltf will be used only for extended features not
4963
+ * supported by the PbMaterial.
4964
+ * If this is provided and the `material` field is not provided, the renderer will update the material
4965
+ * field with data that reflects the gltf material once it is loaded.
4966
+ */
4967
+ gltf?: PBMaterial_GltfMaterial | undefined;
4548
4968
  }
4549
4969
 
4550
4970
  /**
@@ -4555,6 +4975,22 @@ export declare namespace PBMaterial {
4555
4975
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial;
4556
4976
  }
4557
4977
 
4978
+ /**
4979
+ * @public
4980
+ */
4981
+ export declare interface PBMaterial_GltfMaterial {
4982
+ gltfSrc: string;
4983
+ name: string;
4984
+ }
4985
+
4986
+ /**
4987
+ * @public
4988
+ */
4989
+ export declare namespace PBMaterial_GltfMaterial {
4990
+ export function encode(message: PBMaterial_GltfMaterial, writer?: _m0.Writer): _m0.Writer;
4991
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMaterial_GltfMaterial;
4992
+ }
4993
+
4558
4994
  /**
4559
4995
  * @public
4560
4996
  */
@@ -4651,6 +5087,9 @@ export declare interface PBMeshCollider {
4651
5087
  } | {
4652
5088
  $case: "plane";
4653
5089
  plane: PBMeshCollider_PlaneMesh;
5090
+ } | {
5091
+ $case: "gltf";
5092
+ gltf: PBMeshCollider_GltfMesh;
4654
5093
  } | undefined;
4655
5094
  }
4656
5095
 
@@ -4696,6 +5135,25 @@ export declare namespace PBMeshCollider_CylinderMesh {
4696
5135
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_CylinderMesh;
4697
5136
  }
4698
5137
 
5138
+ /** A collider constructed from a Gltf Mesh. */
5139
+ /**
5140
+ * @public
5141
+ */
5142
+ export declare interface PBMeshCollider_GltfMesh {
5143
+ /** the GLTF file path as listed in the scene's manifest. */
5144
+ gltfSrc: string;
5145
+ /** the name of the mesh asset */
5146
+ name: string;
5147
+ }
5148
+
5149
+ /**
5150
+ * @public
5151
+ */
5152
+ export declare namespace PBMeshCollider_GltfMesh {
5153
+ export function encode(message: PBMeshCollider_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5154
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshCollider_GltfMesh;
5155
+ }
5156
+
4699
5157
  /** PlaneMesh is a 2D rectangle described by the Entity's Transform. */
4700
5158
  /**
4701
5159
  * @public
@@ -4728,13 +5186,11 @@ export declare namespace PBMeshCollider_SphereMesh {
4728
5186
 
4729
5187
  /**
4730
5188
  * The MeshRenderer component renders a basic geometric shape for an Entity. It can be a cube, a
4731
- * plane, a sphere or a cylinder.
5189
+ * plane, a sphere, a cylinder, or a Gltf mesh.
4732
5190
  *
4733
5191
  * The cube and plane variants can include a UV texture mapping, so specific areas of a material
4734
5192
  * texture are rendered on different faces of the shape. They are serialized as a sequence of 2D
4735
5193
  * `float` coordinates, one for each corner of each side of each face.
4736
- *
4737
- * More complex shapes require the use of a `GltfContainer` component.
4738
5194
  */
4739
5195
  /**
4740
5196
  * @public
@@ -4752,6 +5208,9 @@ export declare interface PBMeshRenderer {
4752
5208
  } | {
4753
5209
  $case: "plane";
4754
5210
  plane: PBMeshRenderer_PlaneMesh;
5211
+ } | {
5212
+ $case: "gltf";
5213
+ gltf: PBMeshRenderer_GltfMesh;
4755
5214
  } | undefined;
4756
5215
  }
4757
5216
 
@@ -4799,6 +5258,25 @@ export declare namespace PBMeshRenderer_CylinderMesh {
4799
5258
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_CylinderMesh;
4800
5259
  }
4801
5260
 
5261
+ /** A mesh from a Gltf. */
5262
+ /**
5263
+ * @public
5264
+ */
5265
+ export declare interface PBMeshRenderer_GltfMesh {
5266
+ /** the GLTF file path as listed in the scene's manifest. */
5267
+ gltfSrc: string;
5268
+ /** the name of the mesh asset */
5269
+ name: string;
5270
+ }
5271
+
5272
+ /**
5273
+ * @public
5274
+ */
5275
+ export declare namespace PBMeshRenderer_GltfMesh {
5276
+ export function encode(message: PBMeshRenderer_GltfMesh, writer?: _m0.Writer): _m0.Writer;
5277
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBMeshRenderer_GltfMesh;
5278
+ }
5279
+
4802
5280
  /** PlaneMesh renders a 2D rectangular shape. */
4803
5281
  /**
4804
5282
  * @public
@@ -5017,6 +5495,30 @@ export declare namespace PBPosition {
5017
5495
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBPosition;
5018
5496
  }
5019
5497
 
5498
+ /**
5499
+ * @public
5500
+ */
5501
+ export declare interface PBPrimaryPointerInfo {
5502
+ pointerType?: PointerType | undefined;
5503
+ /** in pixels */
5504
+ screenCoordinates?: PBVector2 | undefined;
5505
+ /** in pixels */
5506
+ screenDelta?: PBVector2 | undefined;
5507
+ /**
5508
+ * ray direction that can be used with the primary camera origin for
5509
+ * raycasting from the cursor into the world
5510
+ */
5511
+ worldRayDirection?: PBVector3 | undefined;
5512
+ }
5513
+
5514
+ /**
5515
+ * @public
5516
+ */
5517
+ export declare namespace PBPrimaryPointerInfo {
5518
+ export function encode(message: PBPrimaryPointerInfo, writer?: _m0.Writer): _m0.Writer;
5519
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBPrimaryPointerInfo;
5520
+ }
5521
+
5020
5522
  /**
5021
5523
  * @public
5022
5524
  */
@@ -5138,6 +5640,39 @@ export declare namespace PBRealmInfo {
5138
5640
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBRealmInfo;
5139
5641
  }
5140
5642
 
5643
+ /**
5644
+ * defines a spotlight.
5645
+ * spotlights are point lights that emit light only in a cone around the transform's forward direction.
5646
+ * add this component together with the PBLight component to transform a point light into a spotlight.
5647
+ * note that spotlights do not model any internal reflections / focus, they only restrict the area of effect.
5648
+ * so for e.g. a torch beam, the bulb illuminance should be multiplied by the solid angle.
5649
+ * a typical torch with a beam width of 15 degrees would use outer angle of 0.15 (7.5 degrees in radians),
5650
+ * and an illuminance approximately equal to the bulb's lumens, e.g. 1200.
5651
+ */
5652
+ /**
5653
+ * @public
5654
+ */
5655
+ export declare interface PBSpotlight {
5656
+ /**
5657
+ * the cone radius in radians. distance away from forward in which the light is visible.
5658
+ * for a torch a value around 0.15 is appropriate.
5659
+ */
5660
+ angle: number;
5661
+ /**
5662
+ * optional angle at which the light is brightest. should be <= outer angle.
5663
+ * if specified, the light will fall off smoothly between `inner_angle` and `angle`.
5664
+ */
5665
+ innerAngle?: number | undefined;
5666
+ }
5667
+
5668
+ /**
5669
+ * @public
5670
+ */
5671
+ export declare namespace PBSpotlight {
5672
+ export function encode(message: PBSpotlight, writer?: _m0.Writer): _m0.Writer;
5673
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBSpotlight;
5674
+ }
5675
+
5141
5676
  /**
5142
5677
  * The TextShape component renders customizable floating text.
5143
5678
  *
@@ -5202,6 +5737,46 @@ export declare namespace PBTextShape {
5202
5737
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextShape;
5203
5738
  }
5204
5739
 
5740
+ /**
5741
+ * @public
5742
+ */
5743
+ export declare interface PBTextureCamera {
5744
+ /** rendered texture width */
5745
+ width?: number | undefined;
5746
+ /** rendered texture height */
5747
+ height?: number | undefined;
5748
+ /**
5749
+ * which layer of entities to render. entity layers can be specified by adding PBCameraLayers to target entities.
5750
+ * defaults to 0
5751
+ */
5752
+ layer?: number | undefined;
5753
+ /** default black */
5754
+ clearColor?: PBColor4 | undefined;
5755
+ /** default infinity */
5756
+ farPlane?: number | undefined;
5757
+ mode?: {
5758
+ $case: "perspective";
5759
+ perspective: Perspective;
5760
+ } | {
5761
+ $case: "orthographic";
5762
+ orthographic: Orthographic;
5763
+ } | undefined;
5764
+ /**
5765
+ * controls whether this camera acts as a receiver for audio on sources with matching `PBCameraLayers`.
5766
+ * range: 0 (off) - 1 (full volume)
5767
+ * default: 0
5768
+ */
5769
+ volume?: number | undefined;
5770
+ }
5771
+
5772
+ /**
5773
+ * @public
5774
+ */
5775
+ export declare namespace PBTextureCamera {
5776
+ export function encode(message: PBTextureCamera, writer?: _m0.Writer): _m0.Writer;
5777
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBTextureCamera;
5778
+ }
5779
+
5205
5780
  /**
5206
5781
  * @public
5207
5782
  */
@@ -5291,6 +5866,25 @@ export declare namespace PBUiBackground {
5291
5866
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiBackground;
5292
5867
  }
5293
5868
 
5869
+ /** The UiCanvas component can be attached to a ui root entity to specify properties of the ui texture. */
5870
+ /**
5871
+ * @public
5872
+ */
5873
+ export declare interface PBUiCanvas {
5874
+ width: number;
5875
+ height: number;
5876
+ /** default = (0.0, 0.0, 0.0, 0.0) / transparent */
5877
+ color?: PBColor4 | undefined;
5878
+ }
5879
+
5880
+ /**
5881
+ * @public
5882
+ */
5883
+ export declare namespace PBUiCanvas {
5884
+ export function encode(message: PBUiCanvas, writer?: _m0.Writer): _m0.Writer;
5885
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiCanvas;
5886
+ }
5887
+
5294
5888
  /** This component is created by the renderer and used by the scenes to know the resolution of the UI canvas */
5295
5889
  /**
5296
5890
  * @public
@@ -5407,6 +6001,21 @@ export declare namespace PBUiInputResult {
5407
6001
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiInputResult;
5408
6002
  }
5409
6003
 
6004
+ /**
6005
+ * @public
6006
+ */
6007
+ export declare interface PBUiScrollResult {
6008
+ value: PBVector2 | undefined;
6009
+ }
6010
+
6011
+ /**
6012
+ * @public
6013
+ */
6014
+ export declare namespace PBUiScrollResult {
6015
+ export function encode(message: PBUiScrollResult, writer?: _m0.Writer): _m0.Writer;
6016
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): PBUiScrollResult;
6017
+ }
6018
+
5410
6019
  /**
5411
6020
  * @public
5412
6021
  */
@@ -5423,6 +6032,10 @@ export declare interface PBUiText {
5423
6032
  fontSize?: number | undefined;
5424
6033
  /** wrap text when the border is reached (default: TW_WRAP) */
5425
6034
  textWrap?: TextWrap | undefined;
6035
+ /** width of the outline (default: 0) */
6036
+ outlineWidth?: number | undefined;
6037
+ /** RGBA color of the outline (default: opaque black) */
6038
+ outlineColor?: PBColor4 | undefined;
5426
6039
  }
5427
6040
 
5428
6041
  /**
@@ -5548,6 +6161,16 @@ export declare interface PBUiTransform {
5548
6161
  borderBottomColor?: PBColor4 | undefined;
5549
6162
  borderLeftColor?: PBColor4 | undefined;
5550
6163
  borderRightColor?: PBColor4 | undefined;
6164
+ /** default: 1 */
6165
+ opacity?: number | undefined;
6166
+ /** reference for scroll_position. default empty */
6167
+ elementId?: string | undefined;
6168
+ /** default position=(0,0) */
6169
+ scrollPosition?: ScrollPositionValue | undefined;
6170
+ /** default ShowScrollBar.SSB_BOTH */
6171
+ scrollVisible?: ShowScrollBar | undefined;
6172
+ /** default 0 */
6173
+ zIndex?: number | undefined;
5551
6174
  }
5552
6175
 
5553
6176
  /**
@@ -5677,6 +6300,25 @@ export declare namespace PBVisibilityComponent {
5677
6300
  export function decode(input: _m0.Reader | Uint8Array, length?: number): PBVisibilityComponent;
5678
6301
  }
5679
6302
 
6303
+ /**
6304
+ * @public
6305
+ */
6306
+ export declare interface Perspective {
6307
+ /**
6308
+ * vertical field of view in radians
6309
+ * defaults to pi/4 = 45 degrees
6310
+ */
6311
+ fieldOfView?: number | undefined;
6312
+ }
6313
+
6314
+ /**
6315
+ * @public
6316
+ */
6317
+ export declare namespace Perspective {
6318
+ export function encode(message: Perspective, writer?: _m0.Writer): _m0.Writer;
6319
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): Perspective;
6320
+ }
6321
+
5680
6322
  /**
5681
6323
  * Represens a plane by the equation ax + by + cz + d = 0
5682
6324
  * @public
@@ -5832,6 +6474,24 @@ export declare interface PointerEventsSystem {
5832
6474
  * @param entity - Entity where the callback was attached
5833
6475
  */
5834
6476
  removeOnPointerHoverLeave(entity: Entity): void;
6477
+ /**
6478
+ * @public
6479
+ * Remove the callback for onPointerDrag event
6480
+ * @param entity - Entity where the callback was attached
6481
+ */
6482
+ removeOnPointerDrag(entity: Entity): void;
6483
+ /**
6484
+ * @public
6485
+ * Remove the callback for onPointerDragLocked event
6486
+ * @param entity - Entity where the callback was attached
6487
+ */
6488
+ removeOnPointerDragLocked(entity: Entity): void;
6489
+ /**
6490
+ * @public
6491
+ * Remove the callback for onPointerDragEnd event
6492
+ * @param entity - Entity where the callback was attached
6493
+ */
6494
+ removeOnPointerDragEnd(entity: Entity): void;
5835
6495
  /**
5836
6496
  * @public
5837
6497
  * Execute callback when the user press the InputButton pointing at the entity
@@ -5886,6 +6546,37 @@ export declare interface PointerEventsSystem {
5886
6546
  entity: Entity;
5887
6547
  opts?: Partial<EventSystemOptions>;
5888
6548
  }, cb: EventSystemCallback): void;
6549
+ /**
6550
+ * @public
6551
+ * Execute callback when the user clicks and drags the pointer from inside the entity
6552
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6553
+ * @param cb - Function to execute when click fires
6554
+ */
6555
+ onPointerDrag(pointerData: {
6556
+ entity: Entity;
6557
+ opts?: Partial<EventSystemOptions>;
6558
+ }, cb: EventSystemCallback): void;
6559
+ /**
6560
+ * @public
6561
+ * Execute callback when the user clicks and drags the pointer from inside the entity,
6562
+ * locking the cursor in place
6563
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6564
+ * @param cb - Function to execute when click fires
6565
+ */
6566
+ onPointerDragLocked(pointerData: {
6567
+ entity: Entity;
6568
+ opts?: Partial<EventSystemOptions>;
6569
+ }, cb: EventSystemCallback): void;
6570
+ /**
6571
+ * @public
6572
+ * Execute callback when the user releases the button after a drag
6573
+ * @param pointerData - Entity to attach the callback - Opts to trigger Feedback and Button
6574
+ * @param cb - Function to execute when click fires
6575
+ */
6576
+ onPointerDragEnd(pointerData: {
6577
+ entity: Entity;
6578
+ opts?: Partial<EventSystemOptions>;
6579
+ }, cb: EventSystemCallback): void;
5889
6580
  }
5890
6581
 
5891
6582
  /**
@@ -5902,7 +6593,10 @@ export declare const enum PointerEventType {
5902
6593
  PET_UP = 0,
5903
6594
  PET_DOWN = 1,
5904
6595
  PET_HOVER_ENTER = 2,
5905
- PET_HOVER_LEAVE = 3
6596
+ PET_HOVER_LEAVE = 3,
6597
+ PET_DRAG_LOCKED = 4,
6598
+ PET_DRAG = 5,
6599
+ PET_DRAG_END = 6
5906
6600
  }
5907
6601
 
5908
6602
  /**
@@ -5922,6 +6616,17 @@ export declare type PointerFilterType = 'none' | 'block';
5922
6616
  /** @public */
5923
6617
  export declare const PointerLock: LastWriteWinElementSetComponentDefinition<PBPointerLock>;
5924
6618
 
6619
+ /**
6620
+ * @public
6621
+ */
6622
+ export declare const enum PointerType {
6623
+ POT_NONE = 0,
6624
+ POT_MOUSE = 1,
6625
+ POT_PAD = 2,
6626
+ POT_TOUCH = 3,
6627
+ POT_WAND = 4
6628
+ }
6629
+
5925
6630
  /**
5926
6631
  * Type used for defining the position of the element. i.e. margin, padding
5927
6632
  * @public
@@ -5959,6 +6664,9 @@ export declare type PositionType = 'absolute' | 'relative';
5959
6664
  */
5960
6665
  export declare type PositionUnit = `${number}px` | `${number}%` | number | `${number}` | ScaleUnit;
5961
6666
 
6667
+ /** @public */
6668
+ export declare const PrimaryPointerInfo: LastWriteWinElementSetComponentDefinition<PBPrimaryPointerInfo>;
6669
+
5962
6670
  export declare enum ProcessMessageResultType {
5963
6671
  /**
5964
6672
  * Typical message and new state set.
@@ -6513,6 +7221,7 @@ export declare type RaycastSystemOptions = {
6513
7221
  export declare interface ReactBasedUiSystem {
6514
7222
  destroy(): void;
6515
7223
  setUiRenderer(ui: UiComponent): void;
7224
+ setTextureRenderer(entity: Entity, ui: UiComponent): void;
6516
7225
  }
6517
7226
 
6518
7227
  /**
@@ -6543,15 +7252,6 @@ export declare namespace ReactEcs {
6543
7252
  }
6544
7253
  }
6545
7254
  const createElement: any;
6546
- export type SetStateAction<T> = T | ((prevState: T) => T);
6547
- export type Dispatch<T> = (action: SetStateAction<T>) => void;
6548
- export type StateHook = <T>(initialState: T | (() => T)) => [T, Dispatch<T>];
6549
- export type DependencyList = ReadonlyArray<any>;
6550
- export type EffectCallback = () => void | (() => void | undefined);
6551
- export type EffectHook = (effect: EffectCallback, deps?: DependencyList) => void;
6552
- const useEffect: EffectHook;
6553
- const useState: StateHook;
6554
- {};
6555
7255
  }
6556
7256
 
6557
7257
  /**
@@ -6975,6 +7675,43 @@ export declare namespace Schemas {
6975
7675
  }) => void;
6976
7676
  }
6977
7677
 
7678
+ /**
7679
+ * @public
7680
+ */
7681
+ export declare interface ScrollPositionValue {
7682
+ value?: {
7683
+ $case: "position";
7684
+ position: PBVector2;
7685
+ } | {
7686
+ $case: "reference";
7687
+ reference: string;
7688
+ } | undefined;
7689
+ }
7690
+
7691
+ /**
7692
+ * @public
7693
+ */
7694
+ export declare namespace ScrollPositionValue {
7695
+ export function encode(message: ScrollPositionValue, writer?: _m0.Writer): _m0.Writer;
7696
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): ScrollPositionValue;
7697
+ }
7698
+
7699
+ /**
7700
+ * @public
7701
+ * The scroll-visible determines if the scrollbars are shown when the scroll overflow is enabled
7702
+ */
7703
+ export declare type ScrollVisibleType = 'horizontal' | 'vertical' | 'both' | 'hidden';
7704
+
7705
+ /**
7706
+ * @public
7707
+ */
7708
+ export declare const enum ShowScrollBar {
7709
+ SSB_BOTH = 0,
7710
+ SSB_ONLY_VERTICAL = 1,
7711
+ SSB_ONLY_HORIZONTAL = 2,
7712
+ SSB_HIDDEN = 3
7713
+ }
7714
+
6978
7715
  /**
6979
7716
  * @public
6980
7717
  */
@@ -6982,6 +7719,9 @@ export declare interface Spec {
6982
7719
  [key: string]: ISchema;
6983
7720
  }
6984
7721
 
7722
+ /** @public */
7723
+ export declare const Spotlight: LastWriteWinElementSetComponentDefinition<PBSpotlight>;
7724
+
6985
7725
  /* Excluded from this release type: SyncComponents */
6986
7726
 
6987
7727
  /**
@@ -7051,6 +7791,9 @@ export declare namespace Texture {
7051
7791
  export function decode(input: _m0.Reader | Uint8Array, length?: number): Texture;
7052
7792
  }
7053
7793
 
7794
+ /** @public */
7795
+ export declare const TextureCamera: LastWriteWinElementSetComponentDefinition<PBTextureCamera>;
7796
+
7054
7797
  /**
7055
7798
  * @public
7056
7799
  */
@@ -7143,6 +7886,9 @@ export declare interface TextureUnion {
7143
7886
  } | {
7144
7887
  $case: "videoTexture";
7145
7888
  videoTexture: VideoTexture;
7889
+ } | {
7890
+ $case: "uiTexture";
7891
+ uiTexture: UiCanvasTexture;
7146
7892
  } | undefined;
7147
7893
  }
7148
7894
 
@@ -7350,6 +8096,8 @@ export declare interface UiBackgroundProps {
7350
8096
  uvs?: number[];
7351
8097
  /** AvatarTexture for the background */
7352
8098
  avatarTexture?: UiAvatarTexture;
8099
+ /** VideoTexture for the background */
8100
+ videoTexture?: UiVideoTexture;
7353
8101
  /** Texture for the background */
7354
8102
  texture?: UiTexture;
7355
8103
  }
@@ -7369,9 +8117,31 @@ export declare interface UiButtonProps extends UiLabelProps, EntityPropTypes {
7369
8117
  disabled?: boolean;
7370
8118
  }
7371
8119
 
8120
+ /** @public */
8121
+ export declare const UiCanvas: LastWriteWinElementSetComponentDefinition<PBUiCanvas>;
8122
+
7372
8123
  /** @public */
7373
8124
  export declare const UiCanvasInformation: LastWriteWinElementSetComponentDefinition<PBUiCanvasInformation>;
7374
8125
 
8126
+ /**
8127
+ * @public
8128
+ */
8129
+ export declare interface UiCanvasTexture {
8130
+ uiCanvasEntity: number;
8131
+ /** default = TextureWrapMode.Clamp */
8132
+ wrapMode?: TextureWrapMode | undefined;
8133
+ /** default = FilterMode.Bilinear */
8134
+ filterMode?: TextureFilterMode | undefined;
8135
+ }
8136
+
8137
+ /**
8138
+ * @public
8139
+ */
8140
+ export declare namespace UiCanvasTexture {
8141
+ export function encode(message: UiCanvasTexture, writer?: _m0.Writer): _m0.Writer;
8142
+ export function decode(input: _m0.Reader | Uint8Array, length?: number): UiCanvasTexture;
8143
+ }
8144
+
7375
8145
  /**
7376
8146
  * @public
7377
8147
  */
@@ -7441,6 +8211,10 @@ export declare interface UiLabelProps {
7441
8211
  textAlign?: TextAlignType | undefined;
7442
8212
  /** Label font type. @defaultValue 'sans-serif' */
7443
8213
  font?: UiFontType | undefined;
8214
+ /** Outline width of the text. @defaultValue 0 */
8215
+ outlineWidth?: number | undefined;
8216
+ /** Outline color of the text. @defaultValue `{ r: 0, g: 0, b: 0, a: 1 }` */
8217
+ outlineColor?: PBColor4 | undefined;
7444
8218
  /** Behaviour when text reached. @defaultValue 'wrap' */
7445
8219
  textWrap?: UiTextWrapType | undefined;
7446
8220
  }
@@ -7450,6 +8224,9 @@ export declare interface UiLabelProps {
7450
8224
  */
7451
8225
  export declare type uint32 = number;
7452
8226
 
8227
+ /** @public */
8228
+ export declare const UiScrollResult: LastWriteWinElementSetComponentDefinition<PBUiScrollResult>;
8229
+
7453
8230
  /** @public */
7454
8231
  export declare const UiText: LastWriteWinElementSetComponentDefinition<PBUiText>;
7455
8232
 
@@ -7525,6 +8302,26 @@ export declare interface UiTransformProps {
7525
8302
  borderColor?: Record<keyof Partial<Position>, PBColor4> | PBColor4 | undefined;
7526
8303
  borderRadius?: Partial<BorderRadius> | PositionUnit;
7527
8304
  borderWidth?: Partial<Position> | PositionUnit;
8305
+ /** The opacity property sets the opacity level for an element, it's accumulated across children @defaultValue 1 */
8306
+ opacity?: number;
8307
+ /** A reference value to identify the element, default empty */
8308
+ elementId?: string;
8309
+ /** default position=(0,0) if it aplies, a vector or a reference-id */
8310
+ scrollPosition?: PBVector2 | string;
8311
+ /** default ShowScrollBar.SSB_BOTH */
8312
+ scrollVisible?: ScrollVisibleType;
8313
+ /** default 0 */
8314
+ zIndex?: number;
8315
+ }
8316
+
8317
+ /**
8318
+ * Texture
8319
+ * @public
8320
+ */
8321
+ export declare interface UiVideoTexture {
8322
+ videoPlayerEntity: Entity;
8323
+ wrapMode?: TextureWrapType;
8324
+ filterMode?: TextureFilterType;
7528
8325
  }
7529
8326
 
7530
8327
  /**