@galacean/cli 2.0.0-alpha.29 → 2.0.0-alpha.30

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 (95) hide show
  1. package/dist/cli.bundle.cjs +192793 -186137
  2. package/dist/preview-client/_static/{Accordion-6f002a96.js → Accordion-6346d8c5.js} +1 -1
  3. package/dist/preview-client/_static/{AmbientLightAsset-57a59fc2.js → AmbientLightAsset-ded8af87.js} +1 -1
  4. package/dist/preview-client/_static/{AnimationClipAsset-0a1f63eb.js → AnimationClipAsset-a767bb7a.js} +1 -1
  5. package/dist/preview-client/_static/{AnimatorControllerAsset-9192e596.js → AnimatorControllerAsset-c04c5158.js} +1 -1
  6. package/dist/preview-client/_static/{AnimatorStore-484b10cf.js → AnimatorStore-fd28fd44.js} +1 -1
  7. package/dist/preview-client/_static/{AssetViewer-9f395efb.js → AssetViewer-f505fb55.js} +1 -1
  8. package/dist/preview-client/_static/{AudioAsset-0ea4ba7b.js → AudioAsset-8b8ab944.js} +1 -1
  9. package/dist/preview-client/_static/{AudioComponent-9bf5944c.js → AudioComponent-4f62f1d6.js} +1 -1
  10. package/dist/preview-client/_static/{Callout-45631a14.js → Callout-7d87c30e.js} +1 -1
  11. package/dist/preview-client/_static/{CameraComponent-039457d1.js → CameraComponent-04ebed15.js} +1 -1
  12. package/dist/preview-client/_static/{Component-c3c0c167.js → Component-85241517.js} +1 -1
  13. package/dist/preview-client/_static/{DirectLight-7b1f4b9f.js → DirectLight-a2b904ed.js} +1 -1
  14. package/dist/preview-client/_static/{FontAsset-10273d05.js → FontAsset-5cd70e43.js} +1 -1
  15. package/dist/preview-client/_static/{FormItemArray-9d4196d8.js → FormItemArray-a06224b4.js} +1 -1
  16. package/dist/preview-client/_static/{GlTFAsset-917bf1ee.js → GlTFAsset-34fdaded.js} +1 -1
  17. package/dist/preview-client/_static/{IconPlus-2bfc60da.js → IconPlus-7690a910.js} +1 -1
  18. package/dist/preview-client/_static/{IconPointFilled-192e99c9.js → IconPointFilled-181a0586.js} +1 -1
  19. package/dist/preview-client/_static/{LightBaseComponent-948d3192.js → LightBaseComponent-6817bd8c.js} +1 -1
  20. package/dist/preview-client/_static/{LottieAnimationComponent-da226765.js → LottieAnimationComponent-fb9564f9.js} +1 -1
  21. package/dist/preview-client/_static/{MarkdownAsset-602f93bf.js → MarkdownAsset-ede9d841.js} +1 -1
  22. package/dist/preview-client/_static/{MaterialAsset-aa93db51.js → MaterialAsset-010030a2.js} +1 -1
  23. package/dist/preview-client/_static/{MaterialInspector-45e208c7.js → MaterialInspector-ebbe39d5.js} +1 -1
  24. package/dist/preview-client/_static/{Menu-beacc39d.js → Menu-7006a0c9.js} +1 -1
  25. package/dist/preview-client/_static/{MeshAsset-585f4b18.js → MeshAsset-3032a2d3.js} +1 -1
  26. package/dist/preview-client/_static/{MeshRendererBaseComponent-0bc9f5b3.js → MeshRendererBaseComponent-ea33dbe8.js} +1 -1
  27. package/dist/preview-client/_static/{MeshRendererComponent-84208d23.js → MeshRendererComponent-eaf512af.js} +1 -1
  28. package/dist/preview-client/_static/{MeshThumbnail-9bbe01dc.js → MeshThumbnail-3bb8bccf.js} +1 -1
  29. package/dist/preview-client/_static/ParticleRendererComponent-eb636961.js +31 -0
  30. package/dist/preview-client/_static/{PhysicsMaterialAsset-2dd013f8.js → PhysicsMaterialAsset-a768f5b6.js} +1 -1
  31. package/dist/preview-client/_static/PhysicsStore-8bca890a.js +1 -0
  32. package/dist/preview-client/_static/{PointLight-d9ace100.js → PointLight-1da0b361.js} +1 -1
  33. package/dist/preview-client/_static/{PostProcessComponent-2b5255d9.js → PostProcessComponent-366ce132.js} +1 -1
  34. package/dist/preview-client/_static/{PrefabAsset-8c923465.js → PrefabAsset-9e17aab2.js} +1 -1
  35. package/dist/preview-client/_static/{PrimitiveMesh-fde624a6.js → PrimitiveMesh-81a302d9.js} +1 -1
  36. package/dist/preview-client/_static/{ReferencedMaterial-890492a2.js → ReferencedMaterial-240e1be6.js} +1 -1
  37. package/dist/preview-client/_static/{RenderTargetAsset-bf38a725.js → RenderTargetAsset-81649762.js} +1 -1
  38. package/dist/preview-client/_static/{SceneAsset-7a9dbdd8.js → SceneAsset-68286235.js} +1 -1
  39. package/dist/preview-client/_static/{ShaderAsset-2f2c1e95.js → ShaderAsset-b2ea36b6.js} +25 -25
  40. package/dist/preview-client/_static/{ShaderChunkAsset-a3ff3959.js → ShaderChunkAsset-e32e6108.js} +1 -1
  41. package/dist/preview-client/_static/{ShaderUIScriptAsset-d3a2d680.js → ShaderUIScriptAsset-4adc4d41.js} +1 -1
  42. package/dist/preview-client/_static/{SkinnedMeshRendererComponent-96740600.js → SkinnedMeshRendererComponent-c0f2037a.js} +1 -1
  43. package/dist/preview-client/_static/{SpineAnimationComponent-3d4eec48.js → SpineAnimationComponent-ec1ed804.js} +1 -1
  44. package/dist/preview-client/_static/{SpineSkeletonDataAsset-a8598103.js → SpineSkeletonDataAsset-0fdb1ffc.js} +1 -1
  45. package/dist/preview-client/_static/{SpotLight-680a6e17.js → SpotLight-7da01a5f.js} +1 -1
  46. package/dist/preview-client/_static/{SpriteBaseComponent-96a500d7.js → SpriteBaseComponent-5027461c.js} +1 -1
  47. package/dist/preview-client/_static/{SpriteMaskComponent-58c35ea2.js → SpriteMaskComponent-ea250ae6.js} +1 -1
  48. package/dist/preview-client/_static/{SpriteRendererComponent-5c89f7dd.js → SpriteRendererComponent-fc459130.js} +1 -1
  49. package/dist/preview-client/_static/{TextBaseComponent-248ea222.js → TextBaseComponent-269e86ed.js} +1 -1
  50. package/dist/preview-client/_static/{TextRendererComponent-78458825.js → TextRendererComponent-e1a70d05.js} +1 -1
  51. package/dist/preview-client/_static/{TextureAsset-bf69040b.js → TextureAsset-adf746d9.js} +1 -1
  52. package/dist/preview-client/_static/{Tooltip-0268ffac.js → Tooltip-c84e8c00.js} +1 -1
  53. package/dist/preview-client/_static/{TrailRendererComponent-838e0118.js → TrailRendererComponent-7c1adc57.js} +1 -1
  54. package/dist/preview-client/_static/{TransformBaseComponent-c92aa259.js → TransformBaseComponent-bc3d99f0.js} +1 -1
  55. package/dist/preview-client/_static/{TransformComponent-d28b4035.js → TransformComponent-828e97ca.js} +1 -1
  56. package/dist/preview-client/_static/{XRReferenceImageAsset-16071f5c.js → XRReferenceImageAsset-699f6a74.js} +1 -1
  57. package/dist/preview-client/_static/{audio-1d573775.js → audio-5b6bbad7.js} +1 -1
  58. package/dist/preview-client/_static/{createOnModelChange-38471bb6.js → createOnModelChange-f0aaf591.js} +1 -1
  59. package/dist/preview-client/_static/{createReactComponent-3e49f864.js → createReactComponent-0c5ada83.js} +1 -1
  60. package/dist/preview-client/_static/{index-2f54d4c9.js → index-066cf34f.js} +1 -1
  61. package/dist/preview-client/_static/{index-4084db44.js → index-07a70c10.js} +1 -1
  62. package/dist/preview-client/_static/index-21ffc50d.js +1 -0
  63. package/dist/preview-client/_static/{index-65c6af4a.js → index-4145c87e.js} +3 -3
  64. package/dist/preview-client/_static/index-492bd067.js +1 -0
  65. package/dist/preview-client/_static/index-49a5902b.js +1 -0
  66. package/dist/preview-client/_static/index-6a2d3d63.js +1 -0
  67. package/dist/preview-client/_static/{index-8a22fe59.js → index-828538e1.js} +1 -1
  68. package/dist/preview-client/_static/{index-ce381b62.js → index-89133895.js} +2 -2
  69. package/dist/preview-client/_static/index-895723b4.js +1 -0
  70. package/dist/preview-client/_static/{index-1fa3ba70.js → index-981e5626.js} +1 -1
  71. package/dist/preview-client/_static/index-b154ff9d.js +1 -0
  72. package/dist/preview-client/_static/{index-9e3daa94.js → index-b4b2d2e5.js} +1 -1
  73. package/dist/preview-client/_static/{index-d497fb6d.js → index-eeedc550.js} +1072 -651
  74. package/dist/preview-client/_static/index-f145c261.js +1 -0
  75. package/dist/preview-client/_static/{index-68806c86.js → index-f655a65a.js} +1 -1
  76. package/dist/preview-client/_static/{ktx2-encoder-772f6c33.js → ktx2-encoder-2883b55c.js} +1 -1
  77. package/dist/preview-client/_static/{module-1470d524.js → module-11aabe24.js} +1 -1
  78. package/dist/preview-client/_static/{module-136992e3.js → module-ace60695.js} +1 -1
  79. package/dist/preview-client/_static/{module-77c2ea8c.js → module-be69621d.js} +1 -1
  80. package/dist/preview-client/_static/postmen-fe9eecc4.js +2 -0
  81. package/dist/preview-client/_static/{shader-data-utils-e38a959d.js → shader-data-utils-c00c9d18.js} +1 -1
  82. package/dist/preview-client/index.html +1 -1
  83. package/dist/types/tsconfig.exec-base.json +20 -0
  84. package/dist/types/typed-exec-api.d.ts +487 -0
  85. package/package.json +4 -2
  86. package/dist/preview-client/_static/ParticleRendererComponent-f3ac8d1b.js +0 -26
  87. package/dist/preview-client/_static/PhysicsStore-fcb01282.js +0 -1
  88. package/dist/preview-client/_static/index-0a57ae09.js +0 -1
  89. package/dist/preview-client/_static/index-1d0ae2e4.js +0 -1
  90. package/dist/preview-client/_static/index-2c567b8d.js +0 -1
  91. package/dist/preview-client/_static/index-5c27dafa.js +0 -1
  92. package/dist/preview-client/_static/index-bdda02cf.js +0 -1
  93. package/dist/preview-client/_static/index-c88f78ce.js +0 -1
  94. package/dist/preview-client/_static/index-e4fb05d8.js +0 -1
  95. package/dist/preview-client/_static/postmen-0413c689.js +0 -2
@@ -0,0 +1,487 @@
1
+ /* eslint-disable */
2
+ // Generated by packages/cli/scripts/generate-exec-type-env.mjs. Do not edit by hand.
3
+
4
+ export interface AssetTreeNode {
5
+ id: string
6
+ name: string
7
+ type: string
8
+ path: string
9
+ children?: AssetTreeNode[]
10
+ }
11
+
12
+ export interface ToolInputById {
13
+ "animationClip.configure": { path: string; tracks?: { targetPath: string; componentType: string; property: string; keys: { time: number; value?: number | boolean | { x: number; y: number; z: number; w: number; } | { r: number; g: number; b: number; a?: number; } | { x: number; y: number; z: number; } | { x: number; y: number; }; inTangent?: number; outTangent?: number; }[]; valueType?: "Number" | "Boolean" | "Vector2" | "Vector3" | "Vector4" | "Color"; interpolation?: "Linear" | "CubicSpine" | "Step" | "Hermite"; }[]; events?: { time: number; functionName: string; parameter?: string | number | boolean; }[]; }
14
+ "animationClip.create": { name: string; folder?: string; tracks?: { targetPath: string; componentType: string; property: string; keys: { time: number; value?: number | boolean | { x: number; y: number; z: number; w: number; } | { r: number; g: number; b: number; a?: number; } | { x: number; y: number; z: number; } | { x: number; y: number; }; inTangent?: number; outTangent?: number; }[]; valueType?: "Number" | "Boolean" | "Vector2" | "Vector3" | "Vector4" | "Color"; interpolation?: "Linear" | "CubicSpine" | "Step" | "Hermite"; }[]; events?: { time: number; functionName: string; parameter?: string | number | boolean; }[]; }
15
+ "animationClip.read": { path: string; }
16
+ "animationClip.removeTrack": { path: string; targetPath: string; componentType: string; property: string; }
17
+ "animationClip.upsertTrack": { path: string; track: { targetPath: string; componentType: string; property: string; keys: { time: number; value?: number | boolean | { x: number; y: number; z: number; w: number; } | { r: number; g: number; b: number; a?: number; } | { x: number; y: number; z: number; } | { x: number; y: number; }; inTangent?: number; outTangent?: number; }[]; valueType?: "Number" | "Boolean" | "Vector2" | "Vector3" | "Vector4" | "Color"; interpolation?: "Linear" | "CubicSpine" | "Step" | "Hermite"; }; }
18
+ "animator.add": { entityId: string; controller?: string; enabled?: boolean; speed?: number; }
19
+ "animator.read": { entityId: string; componentId?: string; }
20
+ "animator.update": { entityId: string; controller?: string; enabled?: boolean; speed?: number; }
21
+ "animatorController.configureParameter": { path: string; parameter: { name: string; type: "Number" | "Boolean" | "Trigger"; defaultValue?: number | boolean; }; mode?: "upsert" | "remove"; }
22
+ "animatorController.configureState": { path: string; state: { name: string; clip?: string; speed?: number; wrapMode?: "Loop" | "Once"; transitions?: { destinationStateName: string; hasExitTime?: boolean; exitTime?: number; duration?: number; conditions?: { parameterName: string; mode?: "Equals" | "NotEquals" | "Greater" | "Less" | "If" | "IfNot"; threshold?: number | boolean; }[]; isFixedDuration?: boolean; offset?: number; solo?: boolean; mute?: boolean; }[]; }; layer?: string; defaultState?: boolean; }
23
+ "animatorController.configureTransition": { path: string; sourceState: string; destinationState: string; layer?: string; transition?: { hasExitTime?: boolean; exitTime?: number; duration?: number; conditions?: { parameterName: string; mode?: "Equals" | "NotEquals" | "Greater" | "Less" | "If" | "IfNot"; threshold?: number | boolean; }[]; isFixedDuration?: boolean; offset?: number; solo?: boolean; mute?: boolean; }; mode?: "upsert" | "remove"; }
24
+ "animatorController.create": { name: string; folder?: string; layers?: { name: string; stateMachine: { states: { name: string; clip?: string; speed?: number; wrapMode?: "Loop" | "Once"; transitions?: { destinationStateName: string; hasExitTime?: boolean; exitTime?: number; duration?: number; conditions?: { parameterName: string; mode?: "Equals" | "NotEquals" | "Greater" | "Less" | "If" | "IfNot"; threshold?: number | boolean; }[]; isFixedDuration?: boolean; offset?: number; solo?: boolean; mute?: boolean; }[]; }[]; defaultStateName?: string; }; weight?: number; blendingMode?: "Override" | "Additive"; }[]; parameters?: { name: string; type: "Number" | "Boolean" | "Trigger"; defaultValue?: number | boolean; }[]; }
25
+ "animatorController.read": { path: string; }
26
+ "animatorController.update": { path: string; layers?: { name: string; stateMachine: { states: { name: string; clip?: string; speed?: number; wrapMode?: "Loop" | "Once"; transitions?: { destinationStateName: string; hasExitTime?: boolean; exitTime?: number; duration?: number; conditions?: { parameterName: string; mode?: "Equals" | "NotEquals" | "Greater" | "Less" | "If" | "IfNot"; threshold?: number | boolean; }[]; isFixedDuration?: boolean; offset?: number; solo?: boolean; mute?: boolean; }[]; }[]; defaultStateName?: string; }; weight?: number; blendingMode?: "Override" | "Additive"; }[]; parameters?: { name: string; type: "Number" | "Boolean" | "Trigger"; defaultValue?: number | boolean; }[]; }
27
+ "asset.copy": { src: string; dest: string; }
28
+ "asset.create": { path: string; type: string; props?: Record<string, unknown>; }
29
+ "asset.delete": { path?: string | string[]; }
30
+ "asset.find": { pattern?: string; type?: string; path?: string; limit?: number; }
31
+ "asset.grep": { pattern: string; type?: string; path?: string; limit?: number; }
32
+ "asset.info": { path: string; }
33
+ "asset.list": { path?: string; type?: string; }
34
+ "asset.move": { src: string; dest: string; }
35
+ "asset.read": { path: string; }
36
+ "asset.tree": { path?: string; depth?: number; }
37
+ "asset.update": { path: string; props: Record<string, unknown>; }
38
+ "audio.create": { name: string; folder?: string; source?: string; }
39
+ "audioSource.add": { entityId: string; clip?: string; volume?: number; loop?: boolean; playOnEnabled?: boolean; playbackRate?: number; mute?: boolean; enabled?: boolean; }
40
+ "audioSource.read": { entityId: string; componentId?: string; }
41
+ "audioSource.update": { entityId: string; componentId?: string; clip?: string; volume?: number; loop?: boolean; playOnEnabled?: boolean; playbackRate?: number; mute?: boolean; enabled?: boolean; }
42
+ "camera.add": { entityId: string; projection?: "Perspective" | "Orthographic"; fieldOfView?: number; orthographicSize?: number; nearClipPlane?: number; farClipPlane?: number; clearFlags?: "Color" | "None" | "Depth" | "ColorDepth" | "Stencil" | "ColorStencil" | "DepthStencil" | "All"; backgroundColor?: { r: number; g: number; b: number; a?: number; }; priority?: number; enableFrustumCulling?: boolean; enabled?: boolean; }
43
+ "camera.read": { entityId: string; componentId?: string; }
44
+ "camera.update": { entityId: string; componentId?: string; projection?: "Perspective" | "Orthographic"; fieldOfView?: number; orthographicSize?: number; nearClipPlane?: number; farClipPlane?: number; clearFlags?: "Color" | "None" | "Depth" | "ColorDepth" | "Stencil" | "ColorStencil" | "DepthStencil" | "All"; backgroundColor?: { r: number; g: number; b: number; a?: number; }; priority?: number; cullingMask?: number; enabled?: boolean; }
45
+ "collider.add": { entityId: string; shapeType: "BoxColliderShape" | "SphereColliderShape" | "CapsuleColliderShape" | "PlaneColliderShape"; componentType?: "StaticCollider" | "DynamicCollider"; colliderType?: "StaticCollider" | "DynamicCollider"; isTrigger?: boolean; position?: { x: number; y: number; z: number; }; contactOffset?: number; size?: { x: number; y: number; z: number; }; radius?: number; height?: number; upAxis?: "X" | "Y" | "Z"; enabled?: boolean; }
46
+ "collider.read": { entityId: string; componentId?: string; }
47
+ "collider.update": { entityId: string; componentType?: "StaticCollider" | "DynamicCollider"; componentId?: string; shapeIndex?: number; isTrigger?: boolean; position?: { x: number; y: number; z: number; }; contactOffset?: number; size?: { x: number; y: number; z: number; }; radius?: number; height?: number; upAxis?: "X" | "Y" | "Z"; enabled?: boolean; }
48
+ "component.add": { entityId: string; componentType: string; props?: Record<string, unknown>; ref?: string; methods?: Record<string, unknown>; }
49
+ "component.list": { entityId: string; componentType?: string; }
50
+ "component.read": { entityId?: string; componentId?: string; componentType?: string; }
51
+ "component.remove": { entityId?: string; componentId?: string; componentType?: string; }
52
+ "component.update": { entityId: string; componentId: string; props: Record<string, unknown>; }
53
+ "dynamicCollider.add": { entityId: string; mass?: number; isKinematic?: boolean; useGravity?: boolean; linearDamping?: number; angularDamping?: number; collisionLayer?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; enabled?: boolean; }
54
+ "dynamicCollider.read": { entityId: string; componentId?: string; }
55
+ "dynamicCollider.update": { entityId: string; componentId?: string; mass?: number; isKinematic?: boolean; useGravity?: boolean; linearDamping?: number; angularDamping?: number; collisionLayer?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; freezePositionX?: boolean; freezePositionY?: boolean; freezePositionZ?: boolean; freezeRotationX?: boolean; freezeRotationY?: boolean; freezeRotationZ?: boolean; enabled?: boolean; }
56
+ "entity.clone": { entityId: string; name?: string; parentEntityId?: string; includeChildren?: boolean; }
57
+ "entity.create": { name: string; parentEntityId?: string; transform?: { position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; }; isActive?: boolean; layer?: number | `Layer${number}`; }
58
+ "entity.createGeometry": { name: string; mesh: "Cube" | "Sphere" | "Plane" | "Cylinder" | "Capsule" | "Cone" | "Torus"; parentEntityId?: string; transform?: { position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; }; material?: string; inlineMaterial?: { name?: string; baseColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; }; }
59
+ "entity.delete": { entityId?: string | string[]; }
60
+ "entity.find": { name?: string; componentType?: string; parentEntityId?: string; recursive?: boolean; isActive?: boolean; selected?: boolean; limit?: number; }
61
+ "entity.read": { entityId: string; includeChildren?: boolean | "recursive" | "direct"; includeComponents?: boolean; }
62
+ "entity.select": { entityId?: string | string[]; multiple?: boolean; }
63
+ "entity.setParent": { entityId: string; parentEntityId?: string; }
64
+ "entity.update": { entityId: string; name?: string; isActive?: boolean; transform?: { position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; }; layer?: number | `Layer${number}`; parentId?: never; parentEntityId?: never; }
65
+ "file.edit": { path: string; oldStr: string; newStr: string; replaceAll?: boolean; }
66
+ "file.list": { path: string; }
67
+ "file.read": { path: string; offset?: number; limit?: number; }
68
+ "file.write": { path: string; content: string; }
69
+ "fixedJoint.add": { entityId: string; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
70
+ "fixedJoint.read": { entityId: string; componentId?: string; }
71
+ "fixedJoint.update": { entityId: string; componentId?: string; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
72
+ "folder.create": { path: string; recursive?: boolean; }
73
+ "folder.read": { path: string; recursive?: boolean; maxDepth?: number; }
74
+ "font.create": { name: string; folder?: string; source?: string; }
75
+ "gltf.create": { name: string; folder?: string; source?: string; }
76
+ "gltf.importZip": { source: string; folder?: string; name?: string; }
77
+ "gltf.instantiate": { gltf: string; parentEntityId?: string; position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; name?: string; }
78
+ "grp.import": { source: string; }
79
+ "hingeJoint.add": { entityId: string; axis?: { x: number; y: number; z: number; }; useLimits?: boolean; limits?: { min?: number; max?: number; contactDistance?: number; stiffness?: number; damping?: number; }; useMotor?: boolean; motor?: { targetVelocity?: number; forceLimit?: number; gearRatio?: number; freeSpin?: boolean; }; useSpring?: boolean; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
80
+ "hingeJoint.read": { entityId: string; componentId?: string; }
81
+ "hingeJoint.update": { entityId: string; axis?: { x: number; y: number; z: number; }; useLimits?: boolean; limits?: { min?: number; max?: number; contactDistance?: number; stiffness?: number; damping?: number; }; useMotor?: boolean; motor?: { targetVelocity?: number; forceLimit?: number; gearRatio?: number; freeSpin?: boolean; }; useSpring?: boolean; componentId?: string; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
82
+ "light.add": { entityId: string; lightType: "DirectLight" | "PointLight" | "SpotLight"; color?: { r: number; g: number; b: number; a?: number; }; intensity?: number; range?: number; innerConeAngle?: number; outerConeAngle?: number; shadowType?: "None" | "Hard" | "SoftLow" | "SoftHigh"; shadowBias?: number; shadowNormalBias?: number; shadowStrength?: number; cullingMask?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; enabled?: boolean; }
83
+ "light.read": { entityId: string; componentId?: string; }
84
+ "light.update": { entityId: string; lightType?: "DirectLight" | "PointLight" | "SpotLight"; componentId?: string; color?: { r: number; g: number; b: number; a?: number; }; intensity?: number; range?: number; innerConeAngle?: number; outerConeAngle?: number; shadowType?: "None" | "Hard" | "SoftLow" | "SoftHigh"; shadowBias?: number; shadowNormalBias?: number; shadowStrength?: number; cullingMask?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; enabled?: boolean; }
85
+ "material.create": { name: string; folder?: string; baseColor?: { r: number; g: number; b: number; a?: number; }; emissiveColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; normalIntensity?: number; occlusionIntensity?: number; emissiveIntensity?: number; alphaCutoff?: number; baseTexture?: string; normalTexture?: string; emissiveTexture?: string; occlusionTexture?: string; metallicRoughnessTexture?: string; tilingOffset?: { x: number; y: number; z: number; w: number; }; isTransparent?: boolean; blendMode?: "Additive" | "Normal"; renderFace?: "Front" | "Back" | "Double"; materials?: never; }
86
+ "material.read": { path: string; }
87
+ "material.update": { path: string; baseColor?: { r: number; g: number; b: number; a?: number; }; emissiveColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; normalIntensity?: number; occlusionIntensity?: number; emissiveIntensity?: number; alphaCutoff?: number; transparency?: number; baseTexture?: string; normalTexture?: string; emissiveTexture?: string; occlusionTexture?: string; metallicRoughnessTexture?: string; tilingOffset?: { x: number; y: number; z: number; w: number; }; isTransparent?: boolean; blendMode?: "Additive" | "Normal"; renderFace?: "Front" | "Back" | "Double"; shader?: string; }
88
+ "meshRenderer.add": { entityId: string; mesh?: { path: string; key?: string; }; material?: string; castShadows?: boolean; receiveShadows?: boolean; enabled?: boolean; }
89
+ "meshRenderer.read": { entityId: string; componentId?: string; }
90
+ "meshRenderer.update": { entityId: string; componentId?: string; mesh?: { path: string; key?: string; }; material?: string; castShadows?: boolean; receiveShadows?: boolean; enabled?: boolean; }
91
+ "particleRenderer.add": { entityId: string; renderMode?: "None" | "Billboard" | "StretchBillboard" | "HorizontalBillboard" | "VerticalBillboard" | "Mesh"; material?: string; mesh?: { path: string; key?: string; }; priority?: number; velocityScale?: number; lengthScale?: number; pivot?: { x: number; y: number; z: number; }; main?: { duration?: number; isLoop?: boolean; startLifetime?: number | { min: number; max: number; }; startSpeed?: number | { min: number; max: number; }; startSize?: number | { min: number; max: number; }; startDelay?: number | { min: number; max: number; }; startSize3D?: boolean; startSizeX?: number | { min: number; max: number; }; startSizeY?: number | { min: number; max: number; }; startSizeZ?: number | { min: number; max: number; }; startRotation3D?: boolean; startRotationX?: number | { min: number; max: number; }; startRotationY?: number | { min: number; max: number; }; startRotationZ?: number | { min: number; max: number; }; gravityModifier?: number | { min: number; max: number; }; startColor?: { r: number; g: number; b: number; a?: number; }; maxParticles?: number; simulationSpace?: "Local" | "World"; simulationSpeed?: number; scalingMode?: "Local" | "World" | "Shape"; playOnEnabled?: boolean; }; emission?: { rateOverTime?: number | { min: number; max: number; }; enabled?: boolean; shape?: { type: "Sphere" | "Cone" | "Box" | "Circle" | "Hemisphere"; box?: { size?: { x: number; y: number; z: number; }; enabled?: boolean; radius?: number; randomDirectionAmount?: number; emitFrom?: number; }; sphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; cone?: { radius?: number; angle?: number; enabled?: boolean; length?: number; randomDirectionAmount?: number; emitFrom?: number; }; circle?: { radius?: number; enabled?: boolean; arc?: number; randomDirectionAmount?: number; emitFrom?: number; }; hemisphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; }; }; sizeOverLifetime?: { enabled?: boolean; size?: number | { min: number; max: number; }; separateAxes?: boolean; sizeX?: number | { min: number; max: number; }; sizeY?: number | { min: number; max: number; }; sizeZ?: number | { min: number; max: number; }; }; rotationOverLifetime?: { enabled?: boolean; separateAxes?: boolean; rotationX?: number | { min: number; max: number; }; rotationY?: number | { min: number; max: number; }; rotationZ?: number | { min: number; max: number; }; }; enabled?: boolean; }
92
+ "particleRenderer.read": { entityId: string; componentId?: string; }
93
+ "particleRenderer.update": { entityId: string; priority?: number; mesh?: { path: string; key?: string; }; material?: string; renderMode?: "None" | "Billboard" | "StretchBillboard" | "HorizontalBillboard" | "VerticalBillboard" | "Mesh"; velocityScale?: number; lengthScale?: number; pivot?: { x: number; y: number; z: number; }; main?: { duration?: number; isLoop?: boolean; startLifetime?: number | { min: number; max: number; }; startSpeed?: number | { min: number; max: number; }; startSize?: number | { min: number; max: number; }; startDelay?: number | { min: number; max: number; }; startSize3D?: boolean; startSizeX?: number | { min: number; max: number; }; startSizeY?: number | { min: number; max: number; }; startSizeZ?: number | { min: number; max: number; }; startRotation3D?: boolean; startRotationX?: number | { min: number; max: number; }; startRotationY?: number | { min: number; max: number; }; startRotationZ?: number | { min: number; max: number; }; gravityModifier?: number | { min: number; max: number; }; startColor?: { r: number; g: number; b: number; a?: number; }; maxParticles?: number; simulationSpace?: "Local" | "World"; simulationSpeed?: number; scalingMode?: "Local" | "World" | "Shape"; playOnEnabled?: boolean; }; emission?: { rateOverTime?: number | { min: number; max: number; }; enabled?: boolean; shape?: { type: "Sphere" | "Cone" | "Box" | "Circle" | "Hemisphere"; box?: { size?: { x: number; y: number; z: number; }; enabled?: boolean; radius?: number; randomDirectionAmount?: number; emitFrom?: number; }; sphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; cone?: { radius?: number; angle?: number; enabled?: boolean; length?: number; randomDirectionAmount?: number; emitFrom?: number; }; circle?: { radius?: number; enabled?: boolean; arc?: number; randomDirectionAmount?: number; emitFrom?: number; }; hemisphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; }; }; sizeOverLifetime?: { enabled?: boolean; size?: number | { min: number; max: number; }; separateAxes?: boolean; sizeX?: number | { min: number; max: number; }; sizeY?: number | { min: number; max: number; }; sizeZ?: number | { min: number; max: number; }; }; rotationOverLifetime?: { enabled?: boolean; separateAxes?: boolean; rotationX?: number | { min: number; max: number; }; rotationY?: number | { min: number; max: number; }; rotationZ?: number | { min: number; max: number; }; }; componentId?: string; enabled?: boolean; }
94
+ "postProcess.add": { entityId: string; isGlobal?: boolean; priority?: number; layer?: number; blendDistance?: number; enabled?: boolean; }
95
+ "postProcess.addEffect": { effectClass: "BloomEffect"; entityId: string; effectProps?: { enabled?: boolean; highQualityFiltering?: { value: boolean; }; downScale?: { value?: 0 | 1; }; dirtTexture?: { value?: { refId: string; key?: string; isClone?: boolean; }; }; threshold?: { value: number; }; scatter?: { value: number; }; intensity?: { value: number; }; dirtIntensity?: { value: number; }; tint?: { value: { r: number; g: number; b: number; a?: number; }; }; }; componentId?: string; } | { effectClass: "TonemappingEffect"; entityId: string; effectProps?: { enabled?: boolean; mode?: { value?: 0 | 1; }; }; componentId?: string; }
96
+ "postProcess.read": { entityId: string; componentId?: string; }
97
+ "prefab.create": { entityId: string; name?: string; folder?: string; }
98
+ "prefab.instantiate": { prefab: string; parentEntityId?: string; position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; name?: string; }
99
+ "prefab.read": { prefab: string; }
100
+ "project.read": { [x: string]: never; }
101
+ "project.update": { name?: string; }
102
+ "scene.create": { name: string; folder?: string; }
103
+ "scene.getActive": { [x: string]: never; }
104
+ "scene.setActive": { scene: string; }
105
+ "scene.update": { background?: { mode?: "SolidColor" | "Sky" | "Texture"; color?: { r: number; g: number; b: number; a?: number; }; texture?: string; skyMaterial?: string; }; ambientLight?: { diffuseMode?: "SolidColor" | "SphericalHarmonics"; diffuseColor?: { r: number; g: number; b: number; a?: number; }; diffuseIntensity?: number; specularMode?: number; specularIntensity?: number; }; shadow?: { castShadows?: boolean; enableTransparentShadow?: boolean; shadowDistance?: number; shadowResolution?: "Low" | "Medium" | "High" | "VeryHigh"; shadowCascades?: "NoCascades" | "TwoCascades" | "FourCascades"; shadowFadeBorder?: number; shadowTwoCascadeSplits?: number; shadowFourCascadeSplits?: { x: number; y: number; z: number; }; }; fog?: { mode?: "Linear" | "None" | "Exponential" | "ExponentialSquared"; color?: { r: number; g: number; b: number; a?: number; } | { x: number; y: number; z: number; w?: number; }; start?: number; end?: number; density?: number; }; ambientOcclusion?: { enabled?: boolean; quality?: "Low" | "Medium" | "High"; intensity?: number; power?: number; radius?: number; bilateralThreshold?: number; bias?: number; minHorizonAngle?: number; }; }
106
+ "schema.get": { domain: "component" | "asset"; type: string; }
107
+ "script.add": { entityId: string; script: string; enabled?: boolean; props?: Record<string, unknown>; }
108
+ "script.create": { name: string; folder?: string; template?: "default" | "stateMachine" | "unlitUIScript" | "pbrUIScript" | "defaultUIScript"; code?: string; }
109
+ "script.read": { path: string; }
110
+ "script.update": { path: string; code?: string; name?: string; }
111
+ "spine.create": { name: string; skeleton: { source?: string; }; atlas: { source?: string; }; textures: { source?: string; name?: string; }[]; folder?: string; }
112
+ "springJoint.add": { entityId: string; minDistance?: number; maxDistance?: number; tolerance?: number; spring?: number; damper?: number; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
113
+ "springJoint.read": { entityId: string; componentId?: string; }
114
+ "springJoint.update": { entityId: string; minDistance?: number; maxDistance?: number; tolerance?: number; spring?: number; damper?: number; componentId?: string; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }
115
+ "sprite.create": { name: string; texture: string; folder?: string; region?: { x: number; y: number; width: number; height: number; }; pivot?: { x: number; y: number; }; border?: { x: number; y: number; z: number; w: number; }; }
116
+ "spriteRenderer.add": { entityId: string; sprite?: string; color?: { r: number; g: number; b: number; a?: number; }; flipX?: boolean; flipY?: boolean; drawMode?: "Simple" | "Sliced" | "Tiled"; tileMode?: "Continuous" | "Adaptive"; tiledAdaptiveThreshold?: number; width?: number; height?: number; enabled?: boolean; }
117
+ "spriteRenderer.read": { entityId: string; componentId?: string; }
118
+ "spriteRenderer.update": { entityId: string; componentId?: string; sprite?: string; color?: { r: number; g: number; b: number; a?: number; }; flipX?: boolean; flipY?: boolean; drawMode?: "Simple" | "Sliced" | "Tiled"; tileMode?: "Continuous" | "Adaptive"; tiledAdaptiveThreshold?: number; width?: number; height?: number; enabled?: boolean; }
119
+ "textRenderer.add": { entityId: string; text: string; color?: { r: number; g: number; b: number; a?: number; }; font?: string; fontSize?: number; fontStyle?: "None" | "Bold" | "Italic"; lineSpacing?: number; characterSpacing?: number; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; width?: number; height?: number; enabled?: boolean; }
120
+ "textRenderer.read": { entityId: string; componentId?: string; }
121
+ "textRenderer.update": { entityId: string; componentId?: string; text?: string; color?: { r: number; g: number; b: number; a?: number; }; font?: string; fontSize?: number; fontStyle?: "None" | "Bold" | "Italic"; lineSpacing?: number; characterSpacing?: number; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; width?: number; height?: number; enabled?: boolean; }
122
+ "texture.create": { name: string; filterMode?: "Point" | "Bilinear" | "Trilinear"; wrapModeU?: "Clamp" | "Repeat" | "Mirror"; wrapModeV?: "Clamp" | "Repeat" | "Mirror"; mipmap?: boolean; textureType?: "Texture"; folder?: string; source?: string; }
123
+ "texture.read": { path: string; }
124
+ "texture.update": { path: string; filterMode?: "Point" | "Bilinear" | "Trilinear"; wrapModeU?: "Clamp" | "Repeat" | "Mirror"; wrapModeV?: "Clamp" | "Repeat" | "Mirror"; anisoLevel?: number; mipmap?: boolean; }
125
+ "ui.align": { entityId: string; preset?: "Center" | "TopLeft" | "TopCenter" | "TopRight" | "MiddleLeft" | "MiddleRight" | "BottomLeft" | "BottomCenter" | "BottomRight" | "StretchHorizontal" | "StretchVertical" | "StretchAll"; horizontalAlignment?: "None" | "Left" | "Center" | "Right" | "LeftAndRight"; verticalAlignment?: "None" | "Top" | "Bottom" | "Middle" | "TopAndBottom"; alignLeft?: number; alignRight?: number; alignCenter?: number; alignTop?: number; alignBottom?: number; alignMiddle?: number; pivot?: { x: number; y: number; }; width?: number; height?: number; }
126
+ "uiButton.add": { entityId: string; text?: string; interactive?: boolean; onClick?: { targetEntityId: string; componentType: string; methodName: string; scriptPath?: string; componentIndex?: number; args?: string[]; }[]; }
127
+ "uiButton.read": { entityId: string; componentId?: string; }
128
+ "uiButton.update": { entityId: string; props: { interactive?: boolean; onClick?: { targetEntityId: string; componentType: string; methodName: string; scriptPath?: string; componentIndex?: number; args?: string[]; }[]; }; }
129
+ "uiCanvas.add": { entityId: string; renderMode?: "ScreenSpaceOverlay" | "ScreenSpaceCamera" | "WorldSpace"; referenceResolution?: { x: number; y: number; }; resolutionAdaptationMode?: "WidthAdaptation" | "HeightAdaptation" | "BothAdaptation" | "ExpandAdaptation" | "ShrinkAdaptation"; sortOrder?: number; cameraEntityId?: string; }
130
+ "uiCanvas.update": { entityId: string; props: { renderMode?: "ScreenSpaceOverlay" | "ScreenSpaceCamera" | "WorldSpace"; referenceResolution?: { x: number; y: number; }; resolutionAdaptationMode?: "WidthAdaptation" | "HeightAdaptation" | "BothAdaptation" | "ExpandAdaptation" | "ShrinkAdaptation"; sortOrder?: number; camera?: string | { ownerId: string; componentId: string; }; }; }
131
+ "uiImage.add": { entityId: string; color?: { r: number; g: number; b: number; a?: number; }; sprite?: string; raycastEnabled?: boolean; }
132
+ "uiImage.read": { entityId: string; componentId?: string; }
133
+ "uiImage.update": { entityId: string; props: { color?: { r: number; g: number; b: number; a?: number; }; sprite?: string; raycastEnabled?: boolean; }; }
134
+ "uiText.add": { entityId: string; text: string; fontSize?: number; color?: { r: number; g: number; b: number; a?: number; }; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; fontStyle?: "None" | "Bold" | "Italic"; font?: string; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; }
135
+ "uiText.read": { entityId: string; componentId?: string; }
136
+ "uiText.update": { entityId: string; props: { text?: string; fontSize?: number; color?: { r: number; g: number; b: number; a?: number; }; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; fontStyle?: "None" | "Bold" | "Italic"; font?: string; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; }; }
137
+ "uiTransform.add": { entityId: string; size?: { x: number; y: number; }; pivot?: { x: number; y: number; }; }
138
+ "uiTransform.update": { entityId: string; props: { position?: { x: number; y: number; z: number; }; size?: { x: number; y: number; }; pivot?: { x: number; y: number; }; horizontalAlignment?: "None" | "Left" | "Center" | "Right" | "LeftAndRight"; verticalAlignment?: "None" | "Top" | "Bottom" | "Middle" | "TopAndBottom"; alignLeft?: number; alignRight?: number; alignCenter?: number; alignTop?: number; alignBottom?: number; alignMiddle?: number; }; }
139
+ }
140
+
141
+ export interface ToolOutputById {
142
+ "animationClip.configure": { name: string; type: string; path?: string; }
143
+ "animationClip.create": { name: string; type: string; path?: string; }
144
+ "animationClip.read": { name: string; type: string; tracks: { targetPath: string; componentType: string; property: string; keys: { time: number; value?: number | boolean | { x: number; y: number; z: number; w: number; } | { r: number; g: number; b: number; a?: number; } | { x: number; y: number; z: number; } | { x: number; y: number; }; inTangent?: number; outTangent?: number; }[]; valueType?: "Number" | "Boolean" | "Vector2" | "Vector3" | "Vector4" | "Color"; interpolation?: "Linear" | "CubicSpine" | "Step" | "Hermite"; }[]; events: { time: number; functionName: string; parameter?: string | number | boolean; }[]; path?: string; raw?: { curveBindings: unknown[]; events: unknown[]; }; }
145
+ "animationClip.removeTrack": { path: string; op: "createTrack" | "updateTrack" | "removeTrack"; trackKey: string; beforeTrackCount: number; afterTrackCount: number; success: boolean; }
146
+ "animationClip.upsertTrack": { path: string; op: "createTrack" | "updateTrack" | "removeTrack"; trackKey: string; beforeTrackCount: number; afterTrackCount: number; success: boolean; }
147
+ "animator.add": { entityId: string; componentId: string; success: boolean; }
148
+ "animator.read": { entityId: string; componentId: string; enabled: boolean; props: { controller?: string; speed?: number; enabled?: boolean; }; }
149
+ "animator.update": { entityId: string; componentId: string; success: boolean; }
150
+ "animatorController.configureParameter": { path: string; op: "createParameter" | "updateParameter" | "removeParameter"; parameterName: string; beforeParameterCount: number; afterParameterCount: number; success: boolean; }
151
+ "animatorController.configureState": { path: string; layer: string; stateName: string; success: boolean; }
152
+ "animatorController.configureTransition": { path: string; op: "createTransition" | "updateTransition" | "removeTransition"; layer: string; sourceState: string; destinationState: string; success: boolean; }
153
+ "animatorController.create": { name: string; type: string; path?: string; }
154
+ "animatorController.read": any
155
+ "animatorController.update": { path: string; success: boolean; }
156
+ "asset.copy": { name: string; type: string; path: string; props: Record<string, unknown>; }
157
+ "asset.create": { name: string; type: string; path: string; props: Record<string, unknown>; }
158
+ "asset.delete": { deletedPaths: string[]; count: number; }
159
+ "asset.find": { id: string; name: string; type: string; path: string; }[]
160
+ "asset.grep": { id: string; name: string; type: string; path: string; match: string; }[]
161
+ "asset.info": { name: string; type: string; path: string; meta: Record<string, unknown>; url?: string; }
162
+ "asset.list": { id: string; name: string; type: string; path: string; }[]
163
+ "asset.move": { name: string; path: string; }
164
+ "asset.read": { id: string; name: string; type: string; path: string; props: Record<string, unknown>; }
165
+ "asset.tree": AssetTreeNode[]
166
+ "asset.update": { name: string; type: string; path: string; updatedKeys: string[]; }
167
+ "audio.create": { name: string; type: string; path?: string; }
168
+ "audioSource.add": { entityId: string; componentId: string; success: boolean; }
169
+ "audioSource.read": { entityId: string; componentId: string; enabled: boolean; props: { clip?: string; volume?: number; loop?: boolean; playOnEnabled?: boolean; playbackRate?: number; mute?: boolean; enabled?: boolean; }; }
170
+ "audioSource.update": { entityId: string; componentId: string; success: boolean; }
171
+ "camera.add": { entityId: string; componentId: string; success: boolean; }
172
+ "camera.read": { entityId: string; componentId: string; enabled: boolean; props: { projection?: "Perspective" | "Orthographic"; fieldOfView?: number; orthographicSize?: number; nearClipPlane?: number; farClipPlane?: number; clearFlags?: "Color" | "None" | "Depth" | "ColorDepth" | "Stencil" | "ColorStencil" | "DepthStencil" | "All"; backgroundColor?: { r: number; g: number; b: number; a?: number; }; priority?: number; cullingMask?: number; }; }
173
+ "camera.update": { entityId: string; componentId: string; success: boolean; }
174
+ "collider.add": { entityId: string; componentId: string; componentType: "StaticCollider" | "DynamicCollider"; shapeType: "BoxColliderShape" | "SphereColliderShape" | "CapsuleColliderShape" | "PlaneColliderShape"; shapeIndex: number; success: boolean; }
175
+ "collider.read": { entityId: string; componentId: string; componentType: "StaticCollider" | "DynamicCollider"; enabled: boolean; shapes: { shapeType: string; isTrigger?: boolean; position?: { x: number; y: number; z: number; }; contactOffset?: number; size?: { x: number; y: number; z: number; }; radius?: number; height?: number; upAxis?: "X" | "Y" | "Z"; }[]; }
176
+ "collider.update": { entityId: string; componentId: string; componentType: string; shapeIndex: number; success: boolean; }
177
+ "component.add": { entityId: string; componentId: string; componentType: string; success: boolean; }
178
+ "component.list": { id: string; componentType: string; enabled: boolean; props?: Record<string, unknown>; }[]
179
+ "component.read": { entityId: string; componentId: string; componentType: string; enabled: boolean; props?: Record<string, unknown>; }
180
+ "component.remove": { success: boolean; removedComponentId?: string; }
181
+ "component.update": { entityId: string; componentId: string; componentType: string; success: boolean; }
182
+ "dynamicCollider.add": { entityId: string; componentId: string; success: boolean; }
183
+ "dynamicCollider.read": { entityId: string; componentId: string; enabled: boolean; props: { mass?: number; isKinematic?: boolean; useGravity?: boolean; linearDamping?: number; angularDamping?: number; collisionLayer?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; freezePositionX?: boolean; freezePositionY?: boolean; freezePositionZ?: boolean; freezeRotationX?: boolean; freezeRotationY?: boolean; freezeRotationZ?: boolean; }; }
184
+ "dynamicCollider.update": { entityId: string; componentId: string; success: boolean; }
185
+ "entity.clone": { id: string; name: string; isActive: boolean; childCount: number; parentId?: string; layer?: number; }
186
+ "entity.create": { id: string; name: string; isActive: boolean; parentId?: string; layer?: number; }
187
+ "entity.createGeometry": { id: string; name: string; isActive: boolean; parentId?: string; layer?: number; materialPath?: string; }
188
+ "entity.delete": { deletedIds: string[]; }
189
+ "entity.find": { id: string; name: string; isActive: boolean; parentId?: string; layer?: number; }[]
190
+ "entity.read": { id: string; name: string; isActive: boolean; transform: { position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; }; componentTypes: string[]; parentId?: string; layer?: number; children?: unknown[]; components?: { id: string; type: string; enabled?: boolean; props?: Record<string, unknown>; }[]; }
191
+ "entity.select": { selectedIds: string[]; }
192
+ "entity.setParent": { id: string; name: string; isActive: boolean; parentId?: string; layer?: number; }
193
+ "entity.update": { id: string; name: string; isActive: boolean; transform: { position?: { x: number; y: number; z: number; }; rotation?: { x: number; y: number; z: number; }; scale?: { x: number; y: number; z: number; }; }; parentId?: string; layer?: number; }
194
+ "file.edit": { success: boolean; matchCount?: number; lineNumber?: number; context?: string; skipped?: boolean; message?: string; error?: string; hint?: string; }
195
+ "file.list": { files?: string[]; error?: string; }
196
+ "file.read": { content?: string; totalLines?: number; returnedLines?: number; truncated?: boolean; warning?: string; error?: string; }
197
+ "file.write": { success: boolean; error?: string; }
198
+ "fixedJoint.add": { entityId: string; componentId: string; dynamicColliderAdded: boolean; success: boolean; }
199
+ "fixedJoint.read": { entityId: string; componentId: string; enabled: boolean; props: { connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }; }
200
+ "fixedJoint.update": { entityId: string; componentId: string; success: boolean; }
201
+ "folder.create": { name: string; type: string; path?: string; }
202
+ "folder.read": { name: string; type: string; path?: string; contents?: { name: string; type: string; path: string; }[]; childCount?: number; }
203
+ "font.create": { name: string; type: string; path?: string; }
204
+ "gltf.create": { name: string; type: string; path?: string; metadata?: { meshes: { index: number; name: string; primitiveCount: number; key: string; }[]; materials: { index: number; name: string; key: string; }[]; nodes: { index: number; name: string; meshIndex?: number; children?: number[]; }[]; defaultSceneRoot: string; }; }
205
+ "gltf.importZip": { name: string; type: string; path?: string; }
206
+ "gltf.instantiate": { entityId: string; name: string; pendingExpansion: boolean; success: boolean; gltfPath?: string; }
207
+ "grp.import": { success: boolean; importedAssets: string[]; errors?: string[]; }
208
+ "hingeJoint.add": { entityId: string; componentId: string; dynamicColliderAdded: boolean; success: boolean; }
209
+ "hingeJoint.read": { entityId: string; componentId: string; enabled: boolean; props: { axis?: { x: number; y: number; z: number; }; useLimits?: boolean; limits?: { min?: number; max?: number; contactDistance?: number; stiffness?: number; damping?: number; }; useMotor?: boolean; motor?: { targetVelocity?: number; forceLimit?: number; gearRatio?: number; freeSpin?: boolean; }; useSpring?: boolean; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }; }
210
+ "hingeJoint.update": { entityId: string; componentId: string; success: boolean; }
211
+ "light.add": { entityId: string; componentId: string; lightType: "DirectLight" | "PointLight" | "SpotLight"; success: boolean; }
212
+ "light.read": { entityId: string; componentId: string; lightType: "DirectLight" | "PointLight" | "SpotLight"; enabled: boolean; props: { color?: { r: number; g: number; b: number; a?: number; }; intensity?: number; range?: number; innerConeAngle?: number; outerConeAngle?: number; shadowType?: "None" | "Hard" | "SoftLow" | "SoftHigh"; shadowBias?: number; shadowNormalBias?: number; shadowStrength?: number; cullingMask?: number | "Everything" | "Nothing" | `Layer${number}` | `Layer${number}`[]; }; }
213
+ "light.update": { entityId: string; componentId: string; lightType: string; success: boolean; }
214
+ "material.create": { name: string; type: string; path?: string; props?: { baseColor?: { r: number; g: number; b: number; a?: number; }; emissiveColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; normalIntensity?: number; occlusionIntensity?: number; emissiveIntensity?: number; alphaCutoff?: number; transparency?: number; baseTexture?: string; normalTexture?: string; emissiveTexture?: string; occlusionTexture?: string; metallicRoughnessTexture?: string; tilingOffset?: { x: number; y: number; z: number; w: number; }; isTransparent?: boolean; blendMode?: "Additive" | "Normal"; renderFace?: "Front" | "Back" | "Double"; shader?: string; }; }
215
+ "material.read": { name: string; type: string; path?: string; props?: { baseColor?: { r: number; g: number; b: number; a?: number; }; emissiveColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; normalIntensity?: number; occlusionIntensity?: number; emissiveIntensity?: number; alphaCutoff?: number; transparency?: number; baseTexture?: string; normalTexture?: string; emissiveTexture?: string; occlusionTexture?: string; metallicRoughnessTexture?: string; tilingOffset?: { x: number; y: number; z: number; w: number; }; isTransparent?: boolean; blendMode?: "Additive" | "Normal"; renderFace?: "Front" | "Back" | "Double"; shader?: string; }; }
216
+ "material.update": { success: boolean; path?: string; props?: { baseColor?: { r: number; g: number; b: number; a?: number; }; emissiveColor?: { r: number; g: number; b: number; a?: number; }; metallic?: number; roughness?: number; normalIntensity?: number; occlusionIntensity?: number; emissiveIntensity?: number; alphaCutoff?: number; transparency?: number; baseTexture?: string; normalTexture?: string; emissiveTexture?: string; occlusionTexture?: string; metallicRoughnessTexture?: string; tilingOffset?: { x: number; y: number; z: number; w: number; }; isTransparent?: boolean; blendMode?: "Additive" | "Normal"; renderFace?: "Front" | "Back" | "Double"; shader?: string; }; }
217
+ "meshRenderer.add": { entityId: string; componentId: string; success: boolean; }
218
+ "meshRenderer.read": { entityId: string; componentId: string; enabled: boolean; props: { mesh?: { path: string; key?: string; }; material?: string; castShadows?: boolean; receiveShadows?: boolean; }; }
219
+ "meshRenderer.update": { entityId: string; componentId: string; success: boolean; }
220
+ "particleRenderer.add": { entityId: string; componentId: string; success: boolean; }
221
+ "particleRenderer.read": { entityId: string; componentId: string; enabled: boolean; props: { renderMode: number; generator: Record<string, unknown>; renderModeName?: string; material?: string; mesh?: { path: string; key?: string; }; main?: { duration?: number; isLoop?: boolean; startLifetime?: number | { min: number; max: number; }; startSpeed?: number | { min: number; max: number; }; startSize?: number | { min: number; max: number; }; startDelay?: number | { min: number; max: number; }; startSize3D?: boolean; startSizeX?: number | { min: number; max: number; }; startSizeY?: number | { min: number; max: number; }; startSizeZ?: number | { min: number; max: number; }; startRotation3D?: boolean; startRotationX?: number | { min: number; max: number; }; startRotationY?: number | { min: number; max: number; }; startRotationZ?: number | { min: number; max: number; }; gravityModifier?: number | { min: number; max: number; }; startColor?: { r: number; g: number; b: number; a?: number; }; maxParticles?: number; simulationSpace?: "Local" | "World"; simulationSpeed?: number; scalingMode?: "Local" | "World" | "Shape"; playOnEnabled?: boolean; }; emission?: { rateOverTime?: number | { min: number; max: number; }; enabled?: boolean; shape?: { type: "Sphere" | "Cone" | "Box" | "Circle" | "Hemisphere"; box?: { size?: { x: number; y: number; z: number; }; enabled?: boolean; radius?: number; randomDirectionAmount?: number; emitFrom?: number; }; sphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; cone?: { radius?: number; angle?: number; enabled?: boolean; length?: number; randomDirectionAmount?: number; emitFrom?: number; }; circle?: { radius?: number; enabled?: boolean; arc?: number; randomDirectionAmount?: number; emitFrom?: number; }; hemisphere?: { radius?: number; enabled?: boolean; randomDirectionAmount?: number; emitFrom?: number; }; }; }; sizeOverLifetime?: { enabled?: boolean; size?: number | { min: number; max: number; }; separateAxes?: boolean; sizeX?: number | { min: number; max: number; }; sizeY?: number | { min: number; max: number; }; sizeZ?: number | { min: number; max: number; }; }; rotationOverLifetime?: { enabled?: boolean; separateAxes?: boolean; rotationX?: number | { min: number; max: number; }; rotationY?: number | { min: number; max: number; }; rotationZ?: number | { min: number; max: number; }; }; velocityScale?: number; lengthScale?: number; pivot?: { x: number; y: number; z: number; }; priority?: number; }; }
222
+ "particleRenderer.update": { entityId: string; componentId: string; success: boolean; }
223
+ "postProcess.add": { entityId: string; componentId: string; success: boolean; }
224
+ "postProcess.addEffect": { entityId: string; componentId: string; effectClass: "BloomEffect" | "TonemappingEffect"; success: boolean; }
225
+ "postProcess.read": { entityId: string; componentId: string; enabled: boolean; props: { isGlobal?: boolean; priority?: number; layer?: number; blendDistance?: number; }; effects: { [x: string]: unknown; $type: "BloomEffect" | "TonemappingEffect"; }[]; }
226
+ "prefab.create": { name: string; type: "Prefab"; sourceEntityId: string; success: boolean; path?: string; }
227
+ "prefab.instantiate": { entityId: string; name: string; success: boolean; prefabPath?: string; }
228
+ "prefab.read": { name: string; type: "Prefab"; path?: string; entityCount?: number; }
229
+ "project.read": { id: string; name: string; platform: "3d" | "2d"; engineVersion: string; packageName: string; description?: string; creator?: string; createTime?: string; thumbnail?: string; }
230
+ "project.update": { success: boolean; updatedFields: string[]; }
231
+ "scene.create": { name: string; type: string; path?: string; entities?: { id: string; name: string; isActive: boolean; parentId?: string; layer?: number; }[]; }
232
+ "scene.getActive": { activeScenePath?: string; }
233
+ "scene.setActive": { activeScenePath?: string; }
234
+ "scene.update": { success: boolean; updated: string[]; }
235
+ "schema.get": { domain: string; type: string; props: Record<string, { type: string; default?: unknown; range?: [number?, number?, ...unknown[]]; options?: string[]; description?: string; }>; description?: string; }
236
+ "script.add": { entityId: string; componentId: string; success: boolean; }
237
+ "script.create": { name: string; type: string; path?: string; props?: { code?: string; subType?: "Default" | "StateMachine" | "ShaderUI"; }; }
238
+ "script.read": { name: string; type: string; path?: string; props?: { code?: string; subType?: "Default" | "StateMachine" | "ShaderUI"; }; }
239
+ "script.update": { success: boolean; path?: string; props?: { code?: string; subType?: "Default" | "StateMachine" | "ShaderUI"; }; }
240
+ "spine.create": { skeleton: { name: string; type: string; path?: string; }; atlas: { name: string; type: string; path?: string; }; textures: { name: string; type: string; path?: string; }[]; }
241
+ "springJoint.add": { entityId: string; componentId: string; dynamicColliderAdded: boolean; success: boolean; }
242
+ "springJoint.read": { entityId: string; componentId: string; enabled: boolean; props: { minDistance?: number; maxDistance?: number; tolerance?: number; spring?: number; damper?: number; connectedCollider?: { entityId: string; componentId?: string; }; anchor?: { x: number; y: number; z: number; }; automaticConnectedAnchor?: boolean; connectedAnchor?: { x: number; y: number; z: number; }; breakForce?: number; breakTorque?: number; }; }
243
+ "springJoint.update": { entityId: string; componentId: string; success: boolean; }
244
+ "sprite.create": { name: string; type: string; path?: string; }
245
+ "spriteRenderer.add": { entityId: string; componentId: string; success: boolean; }
246
+ "spriteRenderer.read": { entityId: string; componentId: string; enabled: boolean; props: { sprite?: string; color?: { r: number; g: number; b: number; a?: number; }; flipX?: boolean; flipY?: boolean; drawMode?: "Simple" | "Sliced" | "Tiled"; tileMode?: "Continuous" | "Adaptive"; tiledAdaptiveThreshold?: number; width?: number; height?: number; }; }
247
+ "spriteRenderer.update": { entityId: string; componentId: string; success: boolean; }
248
+ "textRenderer.add": { entityId: string; componentId: string; success: boolean; }
249
+ "textRenderer.read": { entityId: string; componentId: string; enabled: boolean; props: { text?: string; color?: { r: number; g: number; b: number; a?: number; }; font?: string; fontSize?: number; fontStyle?: "None" | "Bold" | "Italic"; lineSpacing?: number; characterSpacing?: number; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; width?: number; height?: number; }; }
250
+ "textRenderer.update": { entityId: string; componentId: string; success: boolean; }
251
+ "texture.create": { name: string; type: string; path?: string; props?: { width?: number; height?: number; filterMode?: "Point" | "Bilinear" | "Trilinear"; wrapModeU?: "Clamp" | "Repeat" | "Mirror"; wrapModeV?: "Clamp" | "Repeat" | "Mirror"; anisoLevel?: number; mipmap?: boolean; }; }
252
+ "texture.read": { name: string; type: string; path?: string; props?: { width?: number; height?: number; filterMode?: "Point" | "Bilinear" | "Trilinear"; wrapModeU?: "Clamp" | "Repeat" | "Mirror"; wrapModeV?: "Clamp" | "Repeat" | "Mirror"; anisoLevel?: number; mipmap?: boolean; }; }
253
+ "texture.update": { success: boolean; path?: string; props?: { width?: number; height?: number; filterMode?: "Point" | "Bilinear" | "Trilinear"; wrapModeU?: "Clamp" | "Repeat" | "Mirror"; wrapModeV?: "Clamp" | "Repeat" | "Mirror"; anisoLevel?: number; mipmap?: boolean; }; }
254
+ "ui.align": { entityId: string; success: boolean; }
255
+ "uiButton.add": { entityId: string; componentId: string; success: boolean; textEntityId?: string; }
256
+ "uiButton.read": { entityId: string; componentId: string; enabled: boolean; props: { interactive?: boolean; transitions?: unknown[]; onClick?: { targetEntityId: string; componentType: string; componentIndex: number; methodName: string; scriptPath?: string; args?: string[]; }[]; }; }
257
+ "uiButton.update": { entityId: string; componentId: string; success: boolean; }
258
+ "uiCanvas.add": { entityId: string; componentId: string; success: boolean; }
259
+ "uiCanvas.update": { entityId: string; componentId: string; success: boolean; }
260
+ "uiImage.add": { entityId: string; componentId: string; success: boolean; }
261
+ "uiImage.read": { entityId: string; componentId: string; enabled: boolean; props: { color?: { r: number; g: number; b: number; a?: number; }; sprite?: string; raycastEnabled?: boolean; }; }
262
+ "uiImage.update": { entityId: string; componentId: string; success: boolean; }
263
+ "uiText.add": { entityId: string; componentId: string; success: boolean; }
264
+ "uiText.read": { entityId: string; componentId: string; enabled: boolean; props: { text?: string; fontSize?: number; color?: { r: number; g: number; b: number; a?: number; }; horizontalAlignment?: "Left" | "Center" | "Right"; verticalAlignment?: "Center" | "Top" | "Bottom"; fontStyle?: "None" | "Bold" | "Italic"; font?: string; enableWrapping?: boolean; overflowMode?: "Overflow" | "Truncate"; }; }
265
+ "uiText.update": { entityId: string; componentId: string; success: boolean; }
266
+ "uiTransform.add": { entityId: string; componentId: string; success: boolean; }
267
+ "uiTransform.update": { entityId: string; componentId: string; success: boolean; }
268
+ }
269
+
270
+ export type ToolId = keyof ToolInputById
271
+ export type InvokeArgs<T extends string> = T extends ToolId
272
+ ? undefined extends ToolInputById[T]
273
+ ? [params?: ToolInputById[T]]
274
+ : [params: ToolInputById[T]]
275
+ : [params?: unknown]
276
+ export type InvokeReturn<T extends string> = T extends ToolId ? ToolOutputById[T] : unknown
277
+
278
+ export interface EditorExecApi {
279
+ invoke<T extends string>(toolId: T, ...args: InvokeArgs<T>): Promise<InvokeReturn<T>>
280
+ animationClip: {
281
+ configure(...args: InvokeArgs<"animationClip.configure">): Promise<InvokeReturn<"animationClip.configure">>
282
+ create(...args: InvokeArgs<"animationClip.create">): Promise<InvokeReturn<"animationClip.create">>
283
+ read(...args: InvokeArgs<"animationClip.read">): Promise<InvokeReturn<"animationClip.read">>
284
+ removeTrack(...args: InvokeArgs<"animationClip.removeTrack">): Promise<InvokeReturn<"animationClip.removeTrack">>
285
+ upsertTrack(...args: InvokeArgs<"animationClip.upsertTrack">): Promise<InvokeReturn<"animationClip.upsertTrack">>
286
+ }
287
+ animator: {
288
+ add(...args: InvokeArgs<"animator.add">): Promise<InvokeReturn<"animator.add">>
289
+ read(...args: InvokeArgs<"animator.read">): Promise<InvokeReturn<"animator.read">>
290
+ update(...args: InvokeArgs<"animator.update">): Promise<InvokeReturn<"animator.update">>
291
+ }
292
+ animatorController: {
293
+ configureParameter(...args: InvokeArgs<"animatorController.configureParameter">): Promise<InvokeReturn<"animatorController.configureParameter">>
294
+ configureState(...args: InvokeArgs<"animatorController.configureState">): Promise<InvokeReturn<"animatorController.configureState">>
295
+ configureTransition(...args: InvokeArgs<"animatorController.configureTransition">): Promise<InvokeReturn<"animatorController.configureTransition">>
296
+ create(...args: InvokeArgs<"animatorController.create">): Promise<InvokeReturn<"animatorController.create">>
297
+ read(...args: InvokeArgs<"animatorController.read">): Promise<InvokeReturn<"animatorController.read">>
298
+ update(...args: InvokeArgs<"animatorController.update">): Promise<InvokeReturn<"animatorController.update">>
299
+ }
300
+ asset: {
301
+ copy(...args: InvokeArgs<"asset.copy">): Promise<InvokeReturn<"asset.copy">>
302
+ create(...args: InvokeArgs<"asset.create">): Promise<InvokeReturn<"asset.create">>
303
+ delete(...args: InvokeArgs<"asset.delete">): Promise<InvokeReturn<"asset.delete">>
304
+ find(...args: InvokeArgs<"asset.find">): Promise<InvokeReturn<"asset.find">>
305
+ grep(...args: InvokeArgs<"asset.grep">): Promise<InvokeReturn<"asset.grep">>
306
+ info(...args: InvokeArgs<"asset.info">): Promise<InvokeReturn<"asset.info">>
307
+ list(...args: InvokeArgs<"asset.list">): Promise<InvokeReturn<"asset.list">>
308
+ move(...args: InvokeArgs<"asset.move">): Promise<InvokeReturn<"asset.move">>
309
+ read(...args: InvokeArgs<"asset.read">): Promise<InvokeReturn<"asset.read">>
310
+ tree(...args: InvokeArgs<"asset.tree">): Promise<InvokeReturn<"asset.tree">>
311
+ update(...args: InvokeArgs<"asset.update">): Promise<InvokeReturn<"asset.update">>
312
+ }
313
+ audio: {
314
+ create(...args: InvokeArgs<"audio.create">): Promise<InvokeReturn<"audio.create">>
315
+ }
316
+ audioSource: {
317
+ add(...args: InvokeArgs<"audioSource.add">): Promise<InvokeReturn<"audioSource.add">>
318
+ read(...args: InvokeArgs<"audioSource.read">): Promise<InvokeReturn<"audioSource.read">>
319
+ update(...args: InvokeArgs<"audioSource.update">): Promise<InvokeReturn<"audioSource.update">>
320
+ }
321
+ camera: {
322
+ add(...args: InvokeArgs<"camera.add">): Promise<InvokeReturn<"camera.add">>
323
+ read(...args: InvokeArgs<"camera.read">): Promise<InvokeReturn<"camera.read">>
324
+ update(...args: InvokeArgs<"camera.update">): Promise<InvokeReturn<"camera.update">>
325
+ }
326
+ collider: {
327
+ add(...args: InvokeArgs<"collider.add">): Promise<InvokeReturn<"collider.add">>
328
+ read(...args: InvokeArgs<"collider.read">): Promise<InvokeReturn<"collider.read">>
329
+ update(...args: InvokeArgs<"collider.update">): Promise<InvokeReturn<"collider.update">>
330
+ }
331
+ component: {
332
+ add(...args: InvokeArgs<"component.add">): Promise<InvokeReturn<"component.add">>
333
+ list(...args: InvokeArgs<"component.list">): Promise<InvokeReturn<"component.list">>
334
+ read(...args: InvokeArgs<"component.read">): Promise<InvokeReturn<"component.read">>
335
+ remove(...args: InvokeArgs<"component.remove">): Promise<InvokeReturn<"component.remove">>
336
+ update(...args: InvokeArgs<"component.update">): Promise<InvokeReturn<"component.update">>
337
+ }
338
+ dynamicCollider: {
339
+ add(...args: InvokeArgs<"dynamicCollider.add">): Promise<InvokeReturn<"dynamicCollider.add">>
340
+ read(...args: InvokeArgs<"dynamicCollider.read">): Promise<InvokeReturn<"dynamicCollider.read">>
341
+ update(...args: InvokeArgs<"dynamicCollider.update">): Promise<InvokeReturn<"dynamicCollider.update">>
342
+ }
343
+ entity: {
344
+ clone(...args: InvokeArgs<"entity.clone">): Promise<InvokeReturn<"entity.clone">>
345
+ create(...args: InvokeArgs<"entity.create">): Promise<InvokeReturn<"entity.create">>
346
+ createGeometry(...args: InvokeArgs<"entity.createGeometry">): Promise<InvokeReturn<"entity.createGeometry">>
347
+ delete(...args: InvokeArgs<"entity.delete">): Promise<InvokeReturn<"entity.delete">>
348
+ find(...args: InvokeArgs<"entity.find">): Promise<InvokeReturn<"entity.find">>
349
+ read(...args: InvokeArgs<"entity.read">): Promise<InvokeReturn<"entity.read">>
350
+ select(...args: InvokeArgs<"entity.select">): Promise<InvokeReturn<"entity.select">>
351
+ setParent(...args: InvokeArgs<"entity.setParent">): Promise<InvokeReturn<"entity.setParent">>
352
+ update(...args: InvokeArgs<"entity.update">): Promise<InvokeReturn<"entity.update">>
353
+ }
354
+ file: {
355
+ edit(...args: InvokeArgs<"file.edit">): Promise<InvokeReturn<"file.edit">>
356
+ list(...args: InvokeArgs<"file.list">): Promise<InvokeReturn<"file.list">>
357
+ read(...args: InvokeArgs<"file.read">): Promise<InvokeReturn<"file.read">>
358
+ write(...args: InvokeArgs<"file.write">): Promise<InvokeReturn<"file.write">>
359
+ }
360
+ fixedJoint: {
361
+ add(...args: InvokeArgs<"fixedJoint.add">): Promise<InvokeReturn<"fixedJoint.add">>
362
+ read(...args: InvokeArgs<"fixedJoint.read">): Promise<InvokeReturn<"fixedJoint.read">>
363
+ update(...args: InvokeArgs<"fixedJoint.update">): Promise<InvokeReturn<"fixedJoint.update">>
364
+ }
365
+ folder: {
366
+ create(...args: InvokeArgs<"folder.create">): Promise<InvokeReturn<"folder.create">>
367
+ read(...args: InvokeArgs<"folder.read">): Promise<InvokeReturn<"folder.read">>
368
+ }
369
+ font: {
370
+ create(...args: InvokeArgs<"font.create">): Promise<InvokeReturn<"font.create">>
371
+ }
372
+ gltf: {
373
+ create(...args: InvokeArgs<"gltf.create">): Promise<InvokeReturn<"gltf.create">>
374
+ importZip(...args: InvokeArgs<"gltf.importZip">): Promise<InvokeReturn<"gltf.importZip">>
375
+ instantiate(...args: InvokeArgs<"gltf.instantiate">): Promise<InvokeReturn<"gltf.instantiate">>
376
+ }
377
+ grp: {
378
+ import(...args: InvokeArgs<"grp.import">): Promise<InvokeReturn<"grp.import">>
379
+ }
380
+ hingeJoint: {
381
+ add(...args: InvokeArgs<"hingeJoint.add">): Promise<InvokeReturn<"hingeJoint.add">>
382
+ read(...args: InvokeArgs<"hingeJoint.read">): Promise<InvokeReturn<"hingeJoint.read">>
383
+ update(...args: InvokeArgs<"hingeJoint.update">): Promise<InvokeReturn<"hingeJoint.update">>
384
+ }
385
+ light: {
386
+ add(...args: InvokeArgs<"light.add">): Promise<InvokeReturn<"light.add">>
387
+ read(...args: InvokeArgs<"light.read">): Promise<InvokeReturn<"light.read">>
388
+ update(...args: InvokeArgs<"light.update">): Promise<InvokeReturn<"light.update">>
389
+ }
390
+ material: {
391
+ create(...args: InvokeArgs<"material.create">): Promise<InvokeReturn<"material.create">>
392
+ read(...args: InvokeArgs<"material.read">): Promise<InvokeReturn<"material.read">>
393
+ update(...args: InvokeArgs<"material.update">): Promise<InvokeReturn<"material.update">>
394
+ }
395
+ meshRenderer: {
396
+ add(...args: InvokeArgs<"meshRenderer.add">): Promise<InvokeReturn<"meshRenderer.add">>
397
+ read(...args: InvokeArgs<"meshRenderer.read">): Promise<InvokeReturn<"meshRenderer.read">>
398
+ update(...args: InvokeArgs<"meshRenderer.update">): Promise<InvokeReturn<"meshRenderer.update">>
399
+ }
400
+ particleRenderer: {
401
+ add(...args: InvokeArgs<"particleRenderer.add">): Promise<InvokeReturn<"particleRenderer.add">>
402
+ read(...args: InvokeArgs<"particleRenderer.read">): Promise<InvokeReturn<"particleRenderer.read">>
403
+ update(...args: InvokeArgs<"particleRenderer.update">): Promise<InvokeReturn<"particleRenderer.update">>
404
+ }
405
+ postProcess: {
406
+ add(...args: InvokeArgs<"postProcess.add">): Promise<InvokeReturn<"postProcess.add">>
407
+ addEffect(...args: InvokeArgs<"postProcess.addEffect">): Promise<InvokeReturn<"postProcess.addEffect">>
408
+ read(...args: InvokeArgs<"postProcess.read">): Promise<InvokeReturn<"postProcess.read">>
409
+ }
410
+ prefab: {
411
+ create(...args: InvokeArgs<"prefab.create">): Promise<InvokeReturn<"prefab.create">>
412
+ instantiate(...args: InvokeArgs<"prefab.instantiate">): Promise<InvokeReturn<"prefab.instantiate">>
413
+ read(...args: InvokeArgs<"prefab.read">): Promise<InvokeReturn<"prefab.read">>
414
+ }
415
+ project: {
416
+ read(...args: InvokeArgs<"project.read">): Promise<InvokeReturn<"project.read">>
417
+ update(...args: InvokeArgs<"project.update">): Promise<InvokeReturn<"project.update">>
418
+ }
419
+ scene: {
420
+ create(...args: InvokeArgs<"scene.create">): Promise<InvokeReturn<"scene.create">>
421
+ getActive(...args: InvokeArgs<"scene.getActive">): Promise<InvokeReturn<"scene.getActive">>
422
+ setActive(...args: InvokeArgs<"scene.setActive">): Promise<InvokeReturn<"scene.setActive">>
423
+ update(...args: InvokeArgs<"scene.update">): Promise<InvokeReturn<"scene.update">>
424
+ }
425
+ schema: {
426
+ get(...args: InvokeArgs<"schema.get">): Promise<InvokeReturn<"schema.get">>
427
+ }
428
+ script: {
429
+ add(...args: InvokeArgs<"script.add">): Promise<InvokeReturn<"script.add">>
430
+ create(...args: InvokeArgs<"script.create">): Promise<InvokeReturn<"script.create">>
431
+ read(...args: InvokeArgs<"script.read">): Promise<InvokeReturn<"script.read">>
432
+ update(...args: InvokeArgs<"script.update">): Promise<InvokeReturn<"script.update">>
433
+ }
434
+ spine: {
435
+ create(...args: InvokeArgs<"spine.create">): Promise<InvokeReturn<"spine.create">>
436
+ }
437
+ springJoint: {
438
+ add(...args: InvokeArgs<"springJoint.add">): Promise<InvokeReturn<"springJoint.add">>
439
+ read(...args: InvokeArgs<"springJoint.read">): Promise<InvokeReturn<"springJoint.read">>
440
+ update(...args: InvokeArgs<"springJoint.update">): Promise<InvokeReturn<"springJoint.update">>
441
+ }
442
+ sprite: {
443
+ create(...args: InvokeArgs<"sprite.create">): Promise<InvokeReturn<"sprite.create">>
444
+ }
445
+ spriteRenderer: {
446
+ add(...args: InvokeArgs<"spriteRenderer.add">): Promise<InvokeReturn<"spriteRenderer.add">>
447
+ read(...args: InvokeArgs<"spriteRenderer.read">): Promise<InvokeReturn<"spriteRenderer.read">>
448
+ update(...args: InvokeArgs<"spriteRenderer.update">): Promise<InvokeReturn<"spriteRenderer.update">>
449
+ }
450
+ textRenderer: {
451
+ add(...args: InvokeArgs<"textRenderer.add">): Promise<InvokeReturn<"textRenderer.add">>
452
+ read(...args: InvokeArgs<"textRenderer.read">): Promise<InvokeReturn<"textRenderer.read">>
453
+ update(...args: InvokeArgs<"textRenderer.update">): Promise<InvokeReturn<"textRenderer.update">>
454
+ }
455
+ texture: {
456
+ create(...args: InvokeArgs<"texture.create">): Promise<InvokeReturn<"texture.create">>
457
+ read(...args: InvokeArgs<"texture.read">): Promise<InvokeReturn<"texture.read">>
458
+ update(...args: InvokeArgs<"texture.update">): Promise<InvokeReturn<"texture.update">>
459
+ }
460
+ ui: {
461
+ align(...args: InvokeArgs<"ui.align">): Promise<InvokeReturn<"ui.align">>
462
+ }
463
+ uiButton: {
464
+ add(...args: InvokeArgs<"uiButton.add">): Promise<InvokeReturn<"uiButton.add">>
465
+ read(...args: InvokeArgs<"uiButton.read">): Promise<InvokeReturn<"uiButton.read">>
466
+ update(...args: InvokeArgs<"uiButton.update">): Promise<InvokeReturn<"uiButton.update">>
467
+ }
468
+ uiCanvas: {
469
+ add(...args: InvokeArgs<"uiCanvas.add">): Promise<InvokeReturn<"uiCanvas.add">>
470
+ update(...args: InvokeArgs<"uiCanvas.update">): Promise<InvokeReturn<"uiCanvas.update">>
471
+ }
472
+ uiImage: {
473
+ add(...args: InvokeArgs<"uiImage.add">): Promise<InvokeReturn<"uiImage.add">>
474
+ read(...args: InvokeArgs<"uiImage.read">): Promise<InvokeReturn<"uiImage.read">>
475
+ update(...args: InvokeArgs<"uiImage.update">): Promise<InvokeReturn<"uiImage.update">>
476
+ }
477
+ uiText: {
478
+ add(...args: InvokeArgs<"uiText.add">): Promise<InvokeReturn<"uiText.add">>
479
+ read(...args: InvokeArgs<"uiText.read">): Promise<InvokeReturn<"uiText.read">>
480
+ update(...args: InvokeArgs<"uiText.update">): Promise<InvokeReturn<"uiText.update">>
481
+ }
482
+ uiTransform: {
483
+ add(...args: InvokeArgs<"uiTransform.add">): Promise<InvokeReturn<"uiTransform.add">>
484
+ update(...args: InvokeArgs<"uiTransform.update">): Promise<InvokeReturn<"uiTransform.update">>
485
+ }
486
+ }
487
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@galacean/cli",
3
- "version": "2.0.0-alpha.29",
3
+ "version": "2.0.0-alpha.30",
4
4
  "main": "dist/cli.bundle.cjs",
5
5
  "bin": {
6
6
  "galacean": "bin/galacean.js"
@@ -11,6 +11,7 @@
11
11
  "files": [
12
12
  "dist/cli.bundle.cjs",
13
13
  "dist/assets",
14
+ "dist/types",
14
15
  "dist/preview-client",
15
16
  "bin/galacean.js",
16
17
  "README.md"
@@ -34,7 +35,8 @@
34
35
  "chokidar": "^4.0.3",
35
36
  "commander": "^14.0.3",
36
37
  "ktx-parse": "^0.7.1",
37
- "sharp": "^0.33.0"
38
+ "sharp": "^0.33.0",
39
+ "typescript": "^5.7.3"
38
40
  },
39
41
  "devDependencies": {
40
42
  "@editor/ai": "workspace:^",