@relu-interactives/spatial-ecs 0.2.21 → 0.2.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/dist/{System-me3iAcMF.d.cts → System-CYWZ_Zx5.d.cts} +4 -3
  2. package/dist/{System-me3iAcMF.d.ts → System-CYWZ_Zx5.d.ts} +4 -3
  3. package/dist/{Video-DHnxjGhW.d.ts → Video-C1IOat7L.d.ts} +38 -9
  4. package/dist/{Video-U9hAnf9y.d.cts → Video-ppAXaKt0.d.cts} +38 -9
  5. package/dist/{chunk-K6KMKKJ6.js → chunk-52CHDPRQ.js} +118 -92
  6. package/dist/chunk-52CHDPRQ.js.map +1 -0
  7. package/dist/{chunk-5U3YS4JD.js → chunk-7BEZBIVB.js} +428 -65
  8. package/dist/chunk-7BEZBIVB.js.map +1 -0
  9. package/dist/{chunk-V7BNVTJW.js → chunk-JHCPRVBC.js} +25 -4
  10. package/dist/chunk-JHCPRVBC.js.map +1 -0
  11. package/dist/{chunk-AXRCGF63.js → chunk-WKGCC7YL.js} +3 -3
  12. package/dist/{chunk-AXRCGF63.js.map → chunk-WKGCC7YL.js.map} +1 -1
  13. package/dist/components/index.cjs +22 -1
  14. package/dist/components/index.cjs.map +1 -1
  15. package/dist/components/index.d.cts +3 -3
  16. package/dist/components/index.d.ts +3 -3
  17. package/dist/components/index.js +1 -1
  18. package/dist/docs/guide/authoring-a-behaviour.md +3 -40
  19. package/dist/docs/guide/authoring-a-script-object.md +115 -0
  20. package/dist/docs/guide/behaviour-lifecycle.md +4 -4
  21. package/dist/docs/guide/spawning/script-object.md +36 -0
  22. package/dist/docs/guide/systems/_sidebar.json +4 -0
  23. package/dist/docs/guide/systems/script-behaviour-system.md +1 -17
  24. package/dist/docs/guide/systems/script-object-system.md +44 -0
  25. package/dist/factories/index.cjs +164 -117
  26. package/dist/factories/index.cjs.map +1 -1
  27. package/dist/factories/index.d.cts +5 -3
  28. package/dist/factories/index.d.ts +5 -3
  29. package/dist/factories/index.js +3 -3
  30. package/dist/{index-D7FSg0Au.d.ts → index-Cu2Pt7wN.d.cts} +6 -3
  31. package/dist/{index-CZo5I5Gs.d.cts → index-DdiWu1b6.d.ts} +6 -3
  32. package/dist/index.cjs +684 -265
  33. package/dist/index.cjs.map +1 -1
  34. package/dist/index.d.cts +117 -28
  35. package/dist/index.d.ts +117 -28
  36. package/dist/index.js +13 -8
  37. package/dist/index.js.map +1 -1
  38. package/dist/systems/index.cjs +410 -36
  39. package/dist/systems/index.cjs.map +1 -1
  40. package/dist/systems/index.d.cts +44 -3
  41. package/dist/systems/index.d.ts +44 -3
  42. package/dist/systems/index.js +3 -3
  43. package/dist/types.d.cts +1 -1
  44. package/dist/types.d.ts +1 -1
  45. package/dist/worldSnapshotUtils.d.cts +1 -1
  46. package/dist/worldSnapshotUtils.d.ts +1 -1
  47. package/package.json +1 -1
  48. package/dist/chunk-5U3YS4JD.js.map +0 -1
  49. package/dist/chunk-K6KMKKJ6.js.map +0 -1
  50. package/dist/chunk-V7BNVTJW.js.map +0 -1
@@ -333,7 +333,7 @@ type EntityId = number;
333
333
  * maps to an object factory in `core/factories/objects/*` that creates the
334
334
  * baseline component set.
335
335
  */
336
- type EcsEntityKind = "cube" | "sphere" | "plane" | "capsule" | "cylinder" | "empty" | "model" | "image" | "imageTarget" | "sprite" | "audio" | "camera" | "video" | "ambientLight" | "directionalLight" | "pointLight" | "spotLight" | "areaLight" | "instancedMesh" | "instanceSlot";
336
+ type EcsEntityKind = "cube" | "sphere" | "plane" | "capsule" | "cylinder" | "empty" | "model" | "image" | "imageTarget" | "sprite" | "audio" | "camera" | "video" | "ambientLight" | "directionalLight" | "pointLight" | "spotLight" | "areaLight" | "instancedMesh" | "instanceSlot" | "scriptObject";
337
337
  /** {@link EcsEntityKind} extended with editor-only utility entities (gizmos, helpers). */
338
338
  type EcsEntityEditorKind = EcsEntityKind | "editorUtility";
339
339
  /** Callback invoked when the selected entity changes. `null` indicates a deselection. */
@@ -377,7 +377,7 @@ type EntityInput = {
377
377
  type: "entity";
378
378
  value: EntityId | null;
379
379
  };
380
- type ComponentKind = "Animation" | "Audio" | "Camera" | "Environment" | "EntityType" | "Image" | "ImageTarget" | "ImageTargetAnchor" | "InstancedMesh" | "InstanceSlot" | "Light" | "Material" | "Mesh" | "MeshGeometry" | "Model" | "Name" | "Object3DRef" | "ParentId" | "Physics" | "Postprocessing" | "Script" | "Selectable" | "SelectionTransformState" | "Sprite" | "Transform" | "Video";
380
+ type ComponentKind = "Animation" | "Audio" | "Camera" | "Environment" | "EntityType" | "Image" | "ImageTarget" | "ImageTargetAnchor" | "InstancedMesh" | "InstanceSlot" | "Light" | "Material" | "Mesh" | "MeshGeometry" | "Model" | "Name" | "Object3DRef" | "ParentId" | "Physics" | "Postprocessing" | "Script" | "ScriptObject" | "Selectable" | "SelectionTransformState" | "Sprite" | "Transform" | "Video";
381
381
  /**
382
382
  * Inspector field that lets the user drag an entity and optionally pick a
383
383
  * component from it.
@@ -476,6 +476,7 @@ declare function cloneHistoryValue<T>(value: T, seen?: WeakMap<object, unknown>)
476
476
  * - `ParentId.value`
477
477
  * - `ScriptComponent.entries[].data` EntityInput (`{type:"entity", value}`)
478
478
  * and ComponentInput (`{type:"component", value:{entityId, …}}`)
479
+ * - `ScriptObjectComponent.data` EntityInput/ComponentInput (same shapes)
479
480
  * - `InstancedMeshComponent.instanceEntityIds[]`
480
481
  * - `InstanceSlotComponent.groupEntityId`
481
482
  *
@@ -611,7 +612,7 @@ type CreateContext = {
611
612
  isEditor?: boolean;
612
613
  };
613
614
  type EntityFactory = (context: CreateContext) => EntityId;
614
- type EcsComponentFactoryKind = "animation" | "audio" | "camera" | "environment" | "entityType" | "image" | "imageTargetAnchor" | "imageTarget" | "light" | "material" | "mesh" | "meshGeometry" | "model" | "name" | "object3DRef" | "parentId" | "physics" | "postprocessing" | "script" | "selectable" | "selectionTransformState" | "sprite" | "transform" | "video" | "instancedMesh";
615
+ type EcsComponentFactoryKind = "animation" | "audio" | "camera" | "environment" | "entityType" | "image" | "imageTargetAnchor" | "imageTarget" | "light" | "material" | "mesh" | "meshGeometry" | "model" | "name" | "object3DRef" | "parentId" | "physics" | "postprocessing" | "script" | "scriptObject" | "selectable" | "selectionTransformState" | "sprite" | "transform" | "video" | "instancedMesh";
615
616
  type ComponentFactory = (world: World, entityId: EntityId, ...args: any[]) => unknown;
616
617
  declare class ObjectManagementSystem implements EcsSystem {
617
618
  private readonly scene;
@@ -333,7 +333,7 @@ type EntityId = number;
333
333
  * maps to an object factory in `core/factories/objects/*` that creates the
334
334
  * baseline component set.
335
335
  */
336
- type EcsEntityKind = "cube" | "sphere" | "plane" | "capsule" | "cylinder" | "empty" | "model" | "image" | "imageTarget" | "sprite" | "audio" | "camera" | "video" | "ambientLight" | "directionalLight" | "pointLight" | "spotLight" | "areaLight" | "instancedMesh" | "instanceSlot";
336
+ type EcsEntityKind = "cube" | "sphere" | "plane" | "capsule" | "cylinder" | "empty" | "model" | "image" | "imageTarget" | "sprite" | "audio" | "camera" | "video" | "ambientLight" | "directionalLight" | "pointLight" | "spotLight" | "areaLight" | "instancedMesh" | "instanceSlot" | "scriptObject";
337
337
  /** {@link EcsEntityKind} extended with editor-only utility entities (gizmos, helpers). */
338
338
  type EcsEntityEditorKind = EcsEntityKind | "editorUtility";
339
339
  /** Callback invoked when the selected entity changes. `null` indicates a deselection. */
@@ -377,7 +377,7 @@ type EntityInput = {
377
377
  type: "entity";
378
378
  value: EntityId | null;
379
379
  };
380
- type ComponentKind = "Animation" | "Audio" | "Camera" | "Environment" | "EntityType" | "Image" | "ImageTarget" | "ImageTargetAnchor" | "InstancedMesh" | "InstanceSlot" | "Light" | "Material" | "Mesh" | "MeshGeometry" | "Model" | "Name" | "Object3DRef" | "ParentId" | "Physics" | "Postprocessing" | "Script" | "Selectable" | "SelectionTransformState" | "Sprite" | "Transform" | "Video";
380
+ type ComponentKind = "Animation" | "Audio" | "Camera" | "Environment" | "EntityType" | "Image" | "ImageTarget" | "ImageTargetAnchor" | "InstancedMesh" | "InstanceSlot" | "Light" | "Material" | "Mesh" | "MeshGeometry" | "Model" | "Name" | "Object3DRef" | "ParentId" | "Physics" | "Postprocessing" | "Script" | "ScriptObject" | "Selectable" | "SelectionTransformState" | "Sprite" | "Transform" | "Video";
381
381
  /**
382
382
  * Inspector field that lets the user drag an entity and optionally pick a
383
383
  * component from it.
@@ -476,6 +476,7 @@ declare function cloneHistoryValue<T>(value: T, seen?: WeakMap<object, unknown>)
476
476
  * - `ParentId.value`
477
477
  * - `ScriptComponent.entries[].data` EntityInput (`{type:"entity", value}`)
478
478
  * and ComponentInput (`{type:"component", value:{entityId, …}}`)
479
+ * - `ScriptObjectComponent.data` EntityInput/ComponentInput (same shapes)
479
480
  * - `InstancedMeshComponent.instanceEntityIds[]`
480
481
  * - `InstanceSlotComponent.groupEntityId`
481
482
  *
@@ -611,7 +612,7 @@ type CreateContext = {
611
612
  isEditor?: boolean;
612
613
  };
613
614
  type EntityFactory = (context: CreateContext) => EntityId;
614
- type EcsComponentFactoryKind = "animation" | "audio" | "camera" | "environment" | "entityType" | "image" | "imageTargetAnchor" | "imageTarget" | "light" | "material" | "mesh" | "meshGeometry" | "model" | "name" | "object3DRef" | "parentId" | "physics" | "postprocessing" | "script" | "selectable" | "selectionTransformState" | "sprite" | "transform" | "video" | "instancedMesh";
615
+ type EcsComponentFactoryKind = "animation" | "audio" | "camera" | "environment" | "entityType" | "image" | "imageTargetAnchor" | "imageTarget" | "light" | "material" | "mesh" | "meshGeometry" | "model" | "name" | "object3DRef" | "parentId" | "physics" | "postprocessing" | "script" | "scriptObject" | "selectable" | "selectionTransformState" | "sprite" | "transform" | "video" | "instancedMesh";
615
616
  type ComponentFactory = (world: World, entityId: EntityId, ...args: any[]) => unknown;
616
617
  declare class ObjectManagementSystem implements EcsSystem {
617
618
  private readonly scene;
@@ -1,5 +1,5 @@
1
1
  import * as THREE from 'three';
2
- import { C as Component, p as EcsEntityKind, F as EcsEntityEditorKind, r as EntityId } from './System-me3iAcMF.js';
2
+ import { C as Component, p as EcsEntityKind, F as EcsEntityEditorKind, r as EntityId } from './System-CYWZ_Zx5.js';
3
3
  import * as RAPIER from '@dimforge/rapier3d-compat';
4
4
 
5
5
  interface StateMachine {
@@ -939,13 +939,6 @@ type ScriptEntry = {
939
939
  scriptUrl: string;
940
940
  /** When `false`, the script is skipped each frame. */
941
941
  enabled: boolean;
942
- /**
943
- * When `true`, the script is executed inside the editor (not just at preview/runtime).
944
- * Enables direct Three.js scene access via `this.world.getScene()` / `getCamera()` /
945
- * `getRenderer()` for logic the editor's object palette cannot produce (custom shaders,
946
- * procedural geometry, grass, etc.). Defaults to `false`.
947
- */
948
- executeInEditor?: boolean;
949
942
  /** Inspector-bound payload exposed to the script as `this.data`. */
950
943
  data: Record<string, unknown>;
951
944
  /** Last load/runtime status reported by `ScriptBehaviourSystem`. */
@@ -974,6 +967,42 @@ declare class ScriptComponent extends Component {
974
967
  constructor(entries?: ScriptEntry[]);
975
968
  }
976
969
 
970
+ type ScriptObjectRuntimeState = "idle" | "loading" | "ready" | "error";
971
+ type ScriptObjectComponentInput = Partial<{
972
+ /** Compiled script URL (e.g. `localasset://.../scripts/foo.js`). */
973
+ scriptUrl: string | null;
974
+ /** Class name exported by the script module. */
975
+ className: string | null;
976
+ /** When `false`, the script object is not built/ticked. */
977
+ enabled: boolean;
978
+ /** Inspector-bound payload exposed to the script as `this.data`. */
979
+ data: Record<string, unknown>;
980
+ /** Last load/build status reported by `ScriptObjectSystem`. */
981
+ runtimeState: ScriptObjectRuntimeState;
982
+ /** Optional human-readable status message (e.g. compile/build error). */
983
+ runtimeMessage: string;
984
+ }>;
985
+ /**
986
+ * Component for a **script object** — a single {@link ScriptObject} whose
987
+ * THREE.js visual is built by user code and runs in the editor AND at runtime.
988
+ * Unlike {@link ScriptComponent} this holds ONE script (not an entries array).
989
+ * The live instance ref is non-enumerable so it never leaks into save data or
990
+ * undo history.
991
+ *
992
+ * @category Components
993
+ */
994
+ declare class ScriptObjectComponent extends Component {
995
+ scriptUrl: string | null;
996
+ className: string | null;
997
+ enabled: boolean;
998
+ data: Record<string, unknown>;
999
+ runtimeState: ScriptObjectRuntimeState;
1000
+ runtimeMessage?: string;
1001
+ /** Live ScriptObject instance. Non-enumerable — never enters snapshots/history. */
1002
+ instance: unknown | null;
1003
+ constructor(input?: ScriptObjectComponentInput);
1004
+ }
1005
+
977
1006
  /**
978
1007
  * Toggles whether the editor selection system can pick this entity. When
979
1008
  * `enabled` is `false`, the entity is excluded from raycast hit tests.
@@ -1127,4 +1156,4 @@ declare class VideoComponent extends Component {
1127
1156
  stop(): void;
1128
1157
  }
1129
1158
 
1130
- export { type TransformSpaceValue as $, AnimationComponent as A, MeshGeometryComponent as B, CameraComponent as C, DEFAULT_COLLIDER_STATE as D, type EditableMeshObjectKind as E, type MeshGeometryParameters as F, type MeshGeometryParametersByKind as G, ModelComponent as H, ImageComponent as I, type PhysicsState as J, type PlaneMeshParameters as K, LightComponent as L, MaterialComponent as M, Name as N, Object3DRef as O, PhysicsComponent as P, type RadiusMeshParameters as Q, type RadiusHeightMeshParameters as R, type RigidbodyState as S, type RigidbodyType as T, ScriptComponent as U, type ScriptEntry as V, Selectable as W, SelectionTransformState as X, SpriteComponent as Y, type TextureFilteringValue as Z, type TransformModeValue as _, type AnimationComponentOptions as a, VideoComponent as a0, defaultMaterialValue as a1, normalizePhysicsState as a2, type AnimationStateCallbacks as a3, AnimationStateMachine as a4, AnimationStateManager as a5, type StateMachine as a6, AudioComponent as b, type CameraComponentOptions as c, type CameraProjection as d, type CameraRuntimeType as e, type ColliderShape as f, type ColliderState as g, type CubeMeshParameters as h, DEFAULT_INSTANCED_MESH_PARAMETERS as i, DEFAULT_INSTANCE_TRANSFORM as j, DEFAULT_MESH_GEOMETRY_PARAMETERS as k, DEFAULT_PHYSICS_STATE as l, DEFAULT_RIGIDBODY_STATE as m, EntityType as n, ImageTarget as o, ImageTargetAnchor as p, type ImageTargetAnchorOptions as q, type ImageTargetReference as r, InstanceSlotComponent as s, type InstanceTransform as t, InstancedMeshComponent as u, type InstancedMeshKind as v, type LightValueState as w, type MaterialTypeValue as x, type MaterialValueState as y, MeshComponent as z };
1159
+ export { SpriteComponent as $, AnimationComponent as A, MeshGeometryComponent as B, CameraComponent as C, DEFAULT_COLLIDER_STATE as D, type EditableMeshObjectKind as E, type MeshGeometryParameters as F, type MeshGeometryParametersByKind as G, ModelComponent as H, ImageComponent as I, type PhysicsState as J, type PlaneMeshParameters as K, LightComponent as L, MaterialComponent as M, Name as N, Object3DRef as O, PhysicsComponent as P, type RadiusMeshParameters as Q, type RadiusHeightMeshParameters as R, type RigidbodyState as S, type RigidbodyType as T, ScriptComponent as U, type ScriptEntry as V, ScriptObjectComponent as W, type ScriptObjectComponentInput as X, type ScriptObjectRuntimeState as Y, Selectable as Z, SelectionTransformState as _, type AnimationComponentOptions as a, type TextureFilteringValue as a0, type TransformModeValue as a1, type TransformSpaceValue as a2, VideoComponent as a3, defaultMaterialValue as a4, normalizePhysicsState as a5, type AnimationStateCallbacks as a6, AnimationStateMachine as a7, AnimationStateManager as a8, type StateMachine as a9, AudioComponent as b, type CameraComponentOptions as c, type CameraProjection as d, type CameraRuntimeType as e, type ColliderShape as f, type ColliderState as g, type CubeMeshParameters as h, DEFAULT_INSTANCED_MESH_PARAMETERS as i, DEFAULT_INSTANCE_TRANSFORM as j, DEFAULT_MESH_GEOMETRY_PARAMETERS as k, DEFAULT_PHYSICS_STATE as l, DEFAULT_RIGIDBODY_STATE as m, EntityType as n, ImageTarget as o, ImageTargetAnchor as p, type ImageTargetAnchorOptions as q, type ImageTargetReference as r, InstanceSlotComponent as s, type InstanceTransform as t, InstancedMeshComponent as u, type InstancedMeshKind as v, type LightValueState as w, type MaterialTypeValue as x, type MaterialValueState as y, MeshComponent as z };
@@ -1,5 +1,5 @@
1
1
  import * as THREE from 'three';
2
- import { C as Component, p as EcsEntityKind, F as EcsEntityEditorKind, r as EntityId } from './System-me3iAcMF.cjs';
2
+ import { C as Component, p as EcsEntityKind, F as EcsEntityEditorKind, r as EntityId } from './System-CYWZ_Zx5.cjs';
3
3
  import * as RAPIER from '@dimforge/rapier3d-compat';
4
4
 
5
5
  interface StateMachine {
@@ -939,13 +939,6 @@ type ScriptEntry = {
939
939
  scriptUrl: string;
940
940
  /** When `false`, the script is skipped each frame. */
941
941
  enabled: boolean;
942
- /**
943
- * When `true`, the script is executed inside the editor (not just at preview/runtime).
944
- * Enables direct Three.js scene access via `this.world.getScene()` / `getCamera()` /
945
- * `getRenderer()` for logic the editor's object palette cannot produce (custom shaders,
946
- * procedural geometry, grass, etc.). Defaults to `false`.
947
- */
948
- executeInEditor?: boolean;
949
942
  /** Inspector-bound payload exposed to the script as `this.data`. */
950
943
  data: Record<string, unknown>;
951
944
  /** Last load/runtime status reported by `ScriptBehaviourSystem`. */
@@ -974,6 +967,42 @@ declare class ScriptComponent extends Component {
974
967
  constructor(entries?: ScriptEntry[]);
975
968
  }
976
969
 
970
+ type ScriptObjectRuntimeState = "idle" | "loading" | "ready" | "error";
971
+ type ScriptObjectComponentInput = Partial<{
972
+ /** Compiled script URL (e.g. `localasset://.../scripts/foo.js`). */
973
+ scriptUrl: string | null;
974
+ /** Class name exported by the script module. */
975
+ className: string | null;
976
+ /** When `false`, the script object is not built/ticked. */
977
+ enabled: boolean;
978
+ /** Inspector-bound payload exposed to the script as `this.data`. */
979
+ data: Record<string, unknown>;
980
+ /** Last load/build status reported by `ScriptObjectSystem`. */
981
+ runtimeState: ScriptObjectRuntimeState;
982
+ /** Optional human-readable status message (e.g. compile/build error). */
983
+ runtimeMessage: string;
984
+ }>;
985
+ /**
986
+ * Component for a **script object** — a single {@link ScriptObject} whose
987
+ * THREE.js visual is built by user code and runs in the editor AND at runtime.
988
+ * Unlike {@link ScriptComponent} this holds ONE script (not an entries array).
989
+ * The live instance ref is non-enumerable so it never leaks into save data or
990
+ * undo history.
991
+ *
992
+ * @category Components
993
+ */
994
+ declare class ScriptObjectComponent extends Component {
995
+ scriptUrl: string | null;
996
+ className: string | null;
997
+ enabled: boolean;
998
+ data: Record<string, unknown>;
999
+ runtimeState: ScriptObjectRuntimeState;
1000
+ runtimeMessage?: string;
1001
+ /** Live ScriptObject instance. Non-enumerable — never enters snapshots/history. */
1002
+ instance: unknown | null;
1003
+ constructor(input?: ScriptObjectComponentInput);
1004
+ }
1005
+
977
1006
  /**
978
1007
  * Toggles whether the editor selection system can pick this entity. When
979
1008
  * `enabled` is `false`, the entity is excluded from raycast hit tests.
@@ -1127,4 +1156,4 @@ declare class VideoComponent extends Component {
1127
1156
  stop(): void;
1128
1157
  }
1129
1158
 
1130
- export { type TransformSpaceValue as $, AnimationComponent as A, MeshGeometryComponent as B, CameraComponent as C, DEFAULT_COLLIDER_STATE as D, type EditableMeshObjectKind as E, type MeshGeometryParameters as F, type MeshGeometryParametersByKind as G, ModelComponent as H, ImageComponent as I, type PhysicsState as J, type PlaneMeshParameters as K, LightComponent as L, MaterialComponent as M, Name as N, Object3DRef as O, PhysicsComponent as P, type RadiusMeshParameters as Q, type RadiusHeightMeshParameters as R, type RigidbodyState as S, type RigidbodyType as T, ScriptComponent as U, type ScriptEntry as V, Selectable as W, SelectionTransformState as X, SpriteComponent as Y, type TextureFilteringValue as Z, type TransformModeValue as _, type AnimationComponentOptions as a, VideoComponent as a0, defaultMaterialValue as a1, normalizePhysicsState as a2, type AnimationStateCallbacks as a3, AnimationStateMachine as a4, AnimationStateManager as a5, type StateMachine as a6, AudioComponent as b, type CameraComponentOptions as c, type CameraProjection as d, type CameraRuntimeType as e, type ColliderShape as f, type ColliderState as g, type CubeMeshParameters as h, DEFAULT_INSTANCED_MESH_PARAMETERS as i, DEFAULT_INSTANCE_TRANSFORM as j, DEFAULT_MESH_GEOMETRY_PARAMETERS as k, DEFAULT_PHYSICS_STATE as l, DEFAULT_RIGIDBODY_STATE as m, EntityType as n, ImageTarget as o, ImageTargetAnchor as p, type ImageTargetAnchorOptions as q, type ImageTargetReference as r, InstanceSlotComponent as s, type InstanceTransform as t, InstancedMeshComponent as u, type InstancedMeshKind as v, type LightValueState as w, type MaterialTypeValue as x, type MaterialValueState as y, MeshComponent as z };
1159
+ export { SpriteComponent as $, AnimationComponent as A, MeshGeometryComponent as B, CameraComponent as C, DEFAULT_COLLIDER_STATE as D, type EditableMeshObjectKind as E, type MeshGeometryParameters as F, type MeshGeometryParametersByKind as G, ModelComponent as H, ImageComponent as I, type PhysicsState as J, type PlaneMeshParameters as K, LightComponent as L, MaterialComponent as M, Name as N, Object3DRef as O, PhysicsComponent as P, type RadiusMeshParameters as Q, type RadiusHeightMeshParameters as R, type RigidbodyState as S, type RigidbodyType as T, ScriptComponent as U, type ScriptEntry as V, ScriptObjectComponent as W, type ScriptObjectComponentInput as X, type ScriptObjectRuntimeState as Y, Selectable as Z, SelectionTransformState as _, type AnimationComponentOptions as a, type TextureFilteringValue as a0, type TransformModeValue as a1, type TransformSpaceValue as a2, VideoComponent as a3, defaultMaterialValue as a4, normalizePhysicsState as a5, type AnimationStateCallbacks as a6, AnimationStateMachine as a7, AnimationStateManager as a8, type StateMachine as a9, AudioComponent as b, type CameraComponentOptions as c, type CameraProjection as d, type CameraRuntimeType as e, type ColliderShape as f, type ColliderState as g, type CubeMeshParameters as h, DEFAULT_INSTANCED_MESH_PARAMETERS as i, DEFAULT_INSTANCE_TRANSFORM as j, DEFAULT_MESH_GEOMETRY_PARAMETERS as k, DEFAULT_PHYSICS_STATE as l, DEFAULT_RIGIDBODY_STATE as m, EntityType as n, ImageTarget as o, ImageTargetAnchor as p, type ImageTargetAnchorOptions as q, type ImageTargetReference as r, InstanceSlotComponent as s, type InstanceTransform as t, InstancedMeshComponent as u, type InstancedMeshKind as v, type LightValueState as w, type MaterialTypeValue as x, type MaterialValueState as y, MeshComponent as z };