typescript-to-gdscript 0.1.0 → 0.1.2

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 (280) hide show
  1. package/README.md +232 -104
  2. package/dist/cli/convert.d.ts.map +1 -1
  3. package/dist/cli/convert.js +15 -5
  4. package/dist/cli/convert.js.map +1 -1
  5. package/dist/converter/common/index.d.ts +17 -1
  6. package/dist/converter/common/index.d.ts.map +1 -1
  7. package/dist/converter/common/index.js +69 -19
  8. package/dist/converter/common/index.js.map +1 -1
  9. package/dist/converter/ts-to-gd/access-rewrite.d.ts +40 -0
  10. package/dist/converter/ts-to-gd/access-rewrite.d.ts.map +1 -0
  11. package/dist/converter/ts-to-gd/access-rewrite.js +124 -0
  12. package/dist/converter/ts-to-gd/access-rewrite.js.map +1 -0
  13. package/dist/converter/ts-to-gd/class-members.d.ts.map +1 -1
  14. package/dist/converter/ts-to-gd/class-members.js +5 -5
  15. package/dist/converter/ts-to-gd/class-members.js.map +1 -1
  16. package/dist/converter/ts-to-gd/expressions.d.ts.map +1 -1
  17. package/dist/converter/ts-to-gd/expressions.js +32 -8
  18. package/dist/converter/ts-to-gd/expressions.js.map +1 -1
  19. package/dist/converter/ts-to-gd/file-scope.d.ts.map +1 -1
  20. package/dist/converter/ts-to-gd/file-scope.js +1 -1
  21. package/dist/converter/ts-to-gd/file-scope.js.map +1 -1
  22. package/dist/converter/ts-to-gd/gd-getset.js +2 -2
  23. package/dist/converter/ts-to-gd/gd-getset.js.map +1 -1
  24. package/dist/converter/ts-to-gd/index.d.ts.map +1 -1
  25. package/dist/converter/ts-to-gd/index.js +1 -0
  26. package/dist/converter/ts-to-gd/index.js.map +1 -1
  27. package/dist/converter/ts-to-gd/parameters.d.ts.map +1 -1
  28. package/dist/converter/ts-to-gd/parameters.js +2 -2
  29. package/dist/converter/ts-to-gd/parameters.js.map +1 -1
  30. package/dist/converter/ts-to-gd/statements.d.ts.map +1 -1
  31. package/dist/converter/ts-to-gd/statements.js +1 -1
  32. package/dist/converter/ts-to-gd/statements.js.map +1 -1
  33. package/dist/typings/override-system.d.ts.map +1 -1
  34. package/dist/typings/override-system.js +6 -0
  35. package/dist/typings/override-system.js.map +1 -1
  36. package/dist/watcher/check.d.ts +87 -0
  37. package/dist/watcher/check.d.ts.map +1 -0
  38. package/dist/watcher/check.js +209 -0
  39. package/dist/watcher/check.js.map +1 -0
  40. package/dist/watcher/heal.d.ts +66 -0
  41. package/dist/watcher/heal.d.ts.map +1 -0
  42. package/dist/watcher/heal.js +132 -0
  43. package/dist/watcher/heal.js.map +1 -0
  44. package/dist/watcher/index.d.ts +1 -0
  45. package/dist/watcher/index.d.ts.map +1 -1
  46. package/dist/watcher/index.js +48 -52
  47. package/dist/watcher/index.js.map +1 -1
  48. package/package.json +6 -1
  49. package/typings/classes/AccessibilityServer.d.ts +1 -1
  50. package/typings/classes/AnimationLibrary.d.ts +4 -4
  51. package/typings/classes/AnimationNodeBlendSpace1D.d.ts +28 -2
  52. package/typings/classes/AnimationNodeBlendSpace2D.d.ts +28 -2
  53. package/typings/classes/AreaLight3D.d.ts +37 -0
  54. package/typings/classes/AudioEffectInstance.d.ts +1 -1
  55. package/typings/classes/AudioStreamRandomizer.d.ts +10 -0
  56. package/typings/classes/Basis.d.ts +2 -2
  57. package/typings/classes/CPUParticles2D.d.ts +2 -2
  58. package/typings/classes/CPUParticles3D.d.ts +2 -2
  59. package/typings/classes/CanvasItem.d.ts +15 -0
  60. package/typings/classes/CodeEdit.d.ts +2 -0
  61. package/typings/classes/CollisionObject2D.d.ts +2 -2
  62. package/typings/classes/Container.d.ts +1 -0
  63. package/typings/classes/Control.d.ts +68 -9
  64. package/typings/classes/Curve.d.ts +26 -1
  65. package/typings/classes/Curve2D.d.ts +15 -0
  66. package/typings/classes/Curve3D.d.ts +20 -0
  67. package/typings/classes/DirAccess.d.ts +6 -1
  68. package/typings/classes/DisplayServer.d.ts +35 -10
  69. package/typings/classes/DrawableTexture2D.d.ts +0 -4
  70. package/typings/classes/EditorCommandPalette.d.ts +0 -2
  71. package/typings/classes/EditorContextMenuPlugin.d.ts +4 -0
  72. package/typings/classes/EditorDock.d.ts +2 -3
  73. package/typings/classes/EditorExportPlatform.d.ts +4 -2
  74. package/typings/classes/EditorExportPlugin.d.ts +2 -0
  75. package/typings/classes/EditorFeatureProfile.d.ts +1 -1
  76. package/typings/classes/EditorInspector.d.ts +10 -0
  77. package/typings/classes/EditorInterface.d.ts +2 -2
  78. package/typings/classes/EditorNode3DGizmoPlugin.d.ts +4 -0
  79. package/typings/classes/EditorPlugin.d.ts +4 -4
  80. package/typings/classes/EditorResourcePicker.d.ts +2 -1
  81. package/typings/classes/EditorSceneFormatImporter.d.ts +23 -0
  82. package/typings/classes/EditorSettings.d.ts +44 -7
  83. package/typings/classes/EditorTranslationParserPlugin.d.ts +4 -0
  84. package/typings/classes/EditorVCSInterface.d.ts +6 -2
  85. package/typings/classes/FileDialog.d.ts +15 -0
  86. package/typings/classes/Font.d.ts +13 -1
  87. package/typings/classes/FontVariation.d.ts +10 -0
  88. package/typings/classes/GDScript.d.ts +8 -0
  89. package/typings/classes/GDScriptLanguageProtocol.d.ts +25 -0
  90. package/typings/classes/GDScriptSyntaxHighlighter.d.ts +6 -0
  91. package/typings/classes/GDScriptTextDocument.d.ts +27 -0
  92. package/typings/classes/GDScriptWorkspace.d.ts +17 -0
  93. package/typings/classes/GPUParticles2D.d.ts +2 -2
  94. package/typings/classes/GPUParticles3D.d.ts +15 -2
  95. package/typings/classes/Geometry2D.d.ts +2 -2
  96. package/typings/classes/Image.d.ts +6 -4
  97. package/typings/classes/ImageFormatLoader.d.ts +5 -0
  98. package/typings/classes/Input.d.ts +11 -2
  99. package/typings/classes/InputEventMouseMotion.d.ts +2 -2
  100. package/typings/classes/ItemList.d.ts +20 -0
  101. package/typings/classes/IterateIK3D.d.ts +6 -3
  102. package/typings/classes/JavaClassWrapper.d.ts +13 -0
  103. package/typings/classes/JavaScriptBridge.d.ts +1 -1
  104. package/typings/classes/Label.d.ts +1 -0
  105. package/typings/classes/LabelSettings.d.ts +25 -0
  106. package/typings/classes/Light3D.d.ts +1 -1
  107. package/typings/classes/Logger.d.ts +1 -1
  108. package/typings/classes/LookAtModifier3D.d.ts +1 -1
  109. package/typings/classes/MenuButton.d.ts +35 -0
  110. package/typings/classes/MeshLibrary.d.ts +2 -0
  111. package/typings/classes/MovieWriter.d.ts +2 -0
  112. package/typings/classes/MultiplayerPeerExtension.d.ts +9 -9
  113. package/typings/classes/Node.d.ts +6 -0
  114. package/typings/classes/Node3D.d.ts +6 -4
  115. package/typings/classes/OS.d.ts +1 -1
  116. package/typings/classes/Object.d.ts +11 -8
  117. package/typings/classes/OptimizedTranslation.d.ts +2 -2
  118. package/typings/classes/OptionButton.d.ts +51 -7
  119. package/typings/classes/PacketPeerExtension.d.ts +1 -1
  120. package/typings/classes/ParticleProcessMaterial.d.ts +58 -0
  121. package/typings/classes/PhysicsDirectSpaceState2DExtension.d.ts +6 -6
  122. package/typings/classes/PhysicsDirectSpaceState3DExtension.d.ts +6 -6
  123. package/typings/classes/PhysicsServer2DExtension.d.ts +5 -5
  124. package/typings/classes/PhysicsServer3DExtension.d.ts +1 -1
  125. package/typings/classes/PopupMenu.d.ts +58 -6
  126. package/typings/classes/ProjectSettings.d.ts +89 -21
  127. package/typings/classes/Quaternion.d.ts +2 -2
  128. package/typings/classes/RDAccelerationStructureGeometry.d.ts +42 -0
  129. package/typings/classes/RDAccelerationStructureInstance.d.ts +34 -0
  130. package/typings/classes/RDHitGroup.d.ts +20 -0
  131. package/typings/classes/RDPipelineShader.d.ts +14 -0
  132. package/typings/classes/RandomNumberGenerator.d.ts +4 -2
  133. package/typings/classes/RenderSceneBuffersConfiguration.d.ts +4 -1
  134. package/typings/classes/RenderingDevice.d.ts +93 -23
  135. package/typings/classes/RenderingServer.d.ts +51 -3
  136. package/typings/classes/Resource.d.ts +2 -0
  137. package/typings/classes/ResourceImporterOBJ.d.ts +1 -1
  138. package/typings/classes/ResourceImporterScene.d.ts +11 -3
  139. package/typings/classes/RichTextLabel.d.ts +14 -6
  140. package/typings/classes/SceneTree.d.ts +29 -5
  141. package/typings/classes/Script.d.ts +2 -0
  142. package/typings/classes/ScriptEditor.d.ts +7 -0
  143. package/typings/classes/ScriptLanguageExtension.d.ts +7 -0
  144. package/typings/classes/ScrollContainer.d.ts +17 -5
  145. package/typings/classes/SkeletonModification2DJiggle.d.ts +4 -0
  146. package/typings/classes/SpringBoneSimulator3D.d.ts +4 -2
  147. package/typings/classes/SpriteFrames.d.ts +20 -4
  148. package/typings/classes/StreamPeerExtension.d.ts +2 -2
  149. package/typings/classes/TabBar.d.ts +20 -0
  150. package/typings/classes/TabContainer.d.ts +21 -3
  151. package/typings/classes/TextEdit.d.ts +2 -2
  152. package/typings/classes/TextServer.d.ts +23 -1
  153. package/typings/classes/TextServerExtension.d.ts +23 -1
  154. package/typings/classes/TileSet.d.ts +3 -1
  155. package/typings/classes/Tree.d.ts +16 -7
  156. package/typings/classes/TreeItem.d.ts +9 -2
  157. package/typings/classes/UndoRedo.d.ts +2 -2
  158. package/typings/classes/Vector2.d.ts +4 -2
  159. package/typings/classes/Vector2i.d.ts +4 -2
  160. package/typings/classes/Vector3.d.ts +4 -2
  161. package/typings/classes/Vector3i.d.ts +4 -2
  162. package/typings/classes/Vector4.d.ts +4 -2
  163. package/typings/classes/Vector4i.d.ts +4 -2
  164. package/typings/classes/Viewport.d.ts +17 -1
  165. package/typings/classes/Window.d.ts +20 -6
  166. package/typings/classes/_globals.d.ts +104 -26
  167. package/typings/classes/index.d.ts +10 -112
  168. package/typings/godot-class-registry.json +885 -3604
  169. package/typings/classes/VisualShader.d.ts +0 -112
  170. package/typings/classes/VisualShaderNode.d.ts +0 -63
  171. package/typings/classes/VisualShaderNodeBillboard.d.ts +0 -28
  172. package/typings/classes/VisualShaderNodeBooleanConstant.d.ts +0 -10
  173. package/typings/classes/VisualShaderNodeBooleanParameter.d.ts +0 -14
  174. package/typings/classes/VisualShaderNodeClamp.d.ts +0 -26
  175. package/typings/classes/VisualShaderNodeColorConstant.d.ts +0 -10
  176. package/typings/classes/VisualShaderNodeColorFunc.d.ts +0 -32
  177. package/typings/classes/VisualShaderNodeColorOp.d.ts +0 -32
  178. package/typings/classes/VisualShaderNodeColorParameter.d.ts +0 -14
  179. package/typings/classes/VisualShaderNodeComment.d.ts +0 -12
  180. package/typings/classes/VisualShaderNodeCompare.d.ts +0 -68
  181. package/typings/classes/VisualShaderNodeConstant.d.ts +0 -6
  182. package/typings/classes/VisualShaderNodeCubemap.d.ts +0 -43
  183. package/typings/classes/VisualShaderNodeCubemapParameter.d.ts +0 -6
  184. package/typings/classes/VisualShaderNodeCurveTexture.d.ts +0 -10
  185. package/typings/classes/VisualShaderNodeCurveXYZTexture.d.ts +0 -10
  186. package/typings/classes/VisualShaderNodeCustom.d.ts +0 -122
  187. package/typings/classes/VisualShaderNodeDerivativeFunc.d.ts +0 -56
  188. package/typings/classes/VisualShaderNodeDeterminant.d.ts +0 -6
  189. package/typings/classes/VisualShaderNodeDistanceFade.d.ts +0 -6
  190. package/typings/classes/VisualShaderNodeDotProduct.d.ts +0 -6
  191. package/typings/classes/VisualShaderNodeExpression.d.ts +0 -12
  192. package/typings/classes/VisualShaderNodeFaceForward.d.ts +0 -8
  193. package/typings/classes/VisualShaderNodeFloatConstant.d.ts +0 -10
  194. package/typings/classes/VisualShaderNodeFloatFunc.d.ts +0 -108
  195. package/typings/classes/VisualShaderNodeFloatOp.d.ts +0 -36
  196. package/typings/classes/VisualShaderNodeFloatParameter.d.ts +0 -52
  197. package/typings/classes/VisualShaderNodeFrame.d.ts +0 -35
  198. package/typings/classes/VisualShaderNodeFresnel.d.ts +0 -6
  199. package/typings/classes/VisualShaderNodeGlobalExpression.d.ts +0 -6
  200. package/typings/classes/VisualShaderNodeGroupBase.d.ts +0 -60
  201. package/typings/classes/VisualShaderNodeIf.d.ts +0 -8
  202. package/typings/classes/VisualShaderNodeInput.d.ts +0 -20
  203. package/typings/classes/VisualShaderNodeIntConstant.d.ts +0 -10
  204. package/typings/classes/VisualShaderNodeIntFunc.d.ts +0 -24
  205. package/typings/classes/VisualShaderNodeIntOp.d.ts +0 -48
  206. package/typings/classes/VisualShaderNodeIntParameter.d.ts +0 -58
  207. package/typings/classes/VisualShaderNodeIs.d.ts +0 -18
  208. package/typings/classes/VisualShaderNodeLinearSceneDepth.d.ts +0 -6
  209. package/typings/classes/VisualShaderNodeMix.d.ts +0 -28
  210. package/typings/classes/VisualShaderNodeMultiplyAdd.d.ts +0 -22
  211. package/typings/classes/VisualShaderNodeOuterProduct.d.ts +0 -6
  212. package/typings/classes/VisualShaderNodeOutput.d.ts +0 -6
  213. package/typings/classes/VisualShaderNodeParameter.d.ts +0 -32
  214. package/typings/classes/VisualShaderNodeParameterRef.d.ts +0 -10
  215. package/typings/classes/VisualShaderNodeParticleAccelerator.d.ts +0 -20
  216. package/typings/classes/VisualShaderNodeParticleBoxEmitter.d.ts +0 -6
  217. package/typings/classes/VisualShaderNodeParticleConeVelocity.d.ts +0 -6
  218. package/typings/classes/VisualShaderNodeParticleEmit.d.ts +0 -22
  219. package/typings/classes/VisualShaderNodeParticleEmitter.d.ts +0 -12
  220. package/typings/classes/VisualShaderNodeParticleMeshEmitter.d.ts +0 -20
  221. package/typings/classes/VisualShaderNodeParticleMultiplyByAxisAngle.d.ts +0 -10
  222. package/typings/classes/VisualShaderNodeParticleOutput.d.ts +0 -6
  223. package/typings/classes/VisualShaderNodeParticleRandomness.d.ts +0 -22
  224. package/typings/classes/VisualShaderNodeParticleRingEmitter.d.ts +0 -6
  225. package/typings/classes/VisualShaderNodeParticleSphereEmitter.d.ts +0 -6
  226. package/typings/classes/VisualShaderNodeProximityFade.d.ts +0 -6
  227. package/typings/classes/VisualShaderNodeRandomRange.d.ts +0 -6
  228. package/typings/classes/VisualShaderNodeRemap.d.ts +0 -33
  229. package/typings/classes/VisualShaderNodeReroute.d.ts +0 -8
  230. package/typings/classes/VisualShaderNodeResizableBase.d.ts +0 -10
  231. package/typings/classes/VisualShaderNodeRotationByAxis.d.ts +0 -6
  232. package/typings/classes/VisualShaderNodeSDFRaymarch.d.ts +0 -6
  233. package/typings/classes/VisualShaderNodeSDFToScreenUV.d.ts +0 -8
  234. package/typings/classes/VisualShaderNodeSample3D.d.ts +0 -18
  235. package/typings/classes/VisualShaderNodeScreenNormalWorldSpace.d.ts +0 -6
  236. package/typings/classes/VisualShaderNodeScreenUVToSDF.d.ts +0 -8
  237. package/typings/classes/VisualShaderNodeSmoothStep.d.ts +0 -28
  238. package/typings/classes/VisualShaderNodeStep.d.ts +0 -28
  239. package/typings/classes/VisualShaderNodeSwitch.d.ts +0 -30
  240. package/typings/classes/VisualShaderNodeTexture.d.ts +0 -57
  241. package/typings/classes/VisualShaderNodeTexture2DArray.d.ts +0 -12
  242. package/typings/classes/VisualShaderNodeTexture2DArrayParameter.d.ts +0 -6
  243. package/typings/classes/VisualShaderNodeTexture2DParameter.d.ts +0 -6
  244. package/typings/classes/VisualShaderNodeTexture3D.d.ts +0 -12
  245. package/typings/classes/VisualShaderNodeTexture3DParameter.d.ts +0 -6
  246. package/typings/classes/VisualShaderNodeTextureParameter.d.ts +0 -104
  247. package/typings/classes/VisualShaderNodeTextureParameterTriplanar.d.ts +0 -6
  248. package/typings/classes/VisualShaderNodeTextureSDF.d.ts +0 -6
  249. package/typings/classes/VisualShaderNodeTextureSDFNormal.d.ts +0 -6
  250. package/typings/classes/VisualShaderNodeTransformCompose.d.ts +0 -6
  251. package/typings/classes/VisualShaderNodeTransformConstant.d.ts +0 -10
  252. package/typings/classes/VisualShaderNodeTransformDecompose.d.ts +0 -6
  253. package/typings/classes/VisualShaderNodeTransformFunc.d.ts +0 -18
  254. package/typings/classes/VisualShaderNodeTransformOp.d.ts +0 -32
  255. package/typings/classes/VisualShaderNodeTransformParameter.d.ts +0 -14
  256. package/typings/classes/VisualShaderNodeTransformVecMult.d.ts +0 -22
  257. package/typings/classes/VisualShaderNodeUIntConstant.d.ts +0 -10
  258. package/typings/classes/VisualShaderNodeUIntFunc.d.ts +0 -20
  259. package/typings/classes/VisualShaderNodeUIntOp.d.ts +0 -48
  260. package/typings/classes/VisualShaderNodeUIntParameter.d.ts +0 -16
  261. package/typings/classes/VisualShaderNodeUVFunc.d.ts +0 -22
  262. package/typings/classes/VisualShaderNodeUVPolarCoord.d.ts +0 -6
  263. package/typings/classes/VisualShaderNodeVarying.d.ts +0 -14
  264. package/typings/classes/VisualShaderNodeVaryingGetter.d.ts +0 -6
  265. package/typings/classes/VisualShaderNodeVaryingSetter.d.ts +0 -6
  266. package/typings/classes/VisualShaderNodeVec2Constant.d.ts +0 -10
  267. package/typings/classes/VisualShaderNodeVec2Parameter.d.ts +0 -14
  268. package/typings/classes/VisualShaderNodeVec3Constant.d.ts +0 -10
  269. package/typings/classes/VisualShaderNodeVec3Parameter.d.ts +0 -14
  270. package/typings/classes/VisualShaderNodeVec4Constant.d.ts +0 -10
  271. package/typings/classes/VisualShaderNodeVec4Parameter.d.ts +0 -14
  272. package/typings/classes/VisualShaderNodeVectorBase.d.ts +0 -20
  273. package/typings/classes/VisualShaderNodeVectorCompose.d.ts +0 -8
  274. package/typings/classes/VisualShaderNodeVectorDecompose.d.ts +0 -8
  275. package/typings/classes/VisualShaderNodeVectorDistance.d.ts +0 -6
  276. package/typings/classes/VisualShaderNodeVectorFunc.d.ts +0 -84
  277. package/typings/classes/VisualShaderNodeVectorLen.d.ts +0 -6
  278. package/typings/classes/VisualShaderNodeVectorOp.d.ts +0 -42
  279. package/typings/classes/VisualShaderNodeVectorRefract.d.ts +0 -8
  280. package/typings/classes/VisualShaderNodeWorldPositionFromDepth.d.ts +0 -8
@@ -5,12 +5,12 @@
5
5
  * Provides virtual methods that can be overridden to create custom {@link PhysicsDirectSpaceState3D} implementations.
6
6
  */
7
7
  declare class PhysicsDirectSpaceState3DExtension extends PhysicsDirectSpaceState3D {
8
- _cast_motion(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, closest_safe: float, closest_unsafe: float, info: unknown): boolean;
9
- _collide_shape(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, results: void, max_results: int, result_count: int): boolean;
8
+ _cast_motion(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, r_closest_safe: float, r_closest_unsafe: float, r_info: unknown): boolean;
9
+ _collide_shape(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, r_results: void, max_results: int, r_result_count: int): boolean;
10
10
  _get_closest_point_to_object_volume(object: RID, point: Vector3 | Vector3i): Vector3;
11
- _intersect_point(position: Vector3 | Vector3i, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, results: unknown, max_results: int): int;
12
- _intersect_ray(from_: Vector3 | Vector3i, to: Vector3 | Vector3i, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, hit_from_inside: boolean, hit_back_faces: boolean, pick_ray: boolean, result: unknown): boolean;
13
- _intersect_shape(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, result_count: unknown, max_results: int): int;
14
- _rest_info(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, rest_info: unknown): boolean;
11
+ _intersect_point(position: Vector3 | Vector3i, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, r_results: unknown, max_results: int): int;
12
+ _intersect_ray(from_: Vector3 | Vector3i, to: Vector3 | Vector3i, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, hit_from_inside: boolean, hit_back_faces: boolean, pick_ray: boolean, r_result: unknown): boolean;
13
+ _intersect_shape(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, r_result_count: unknown, max_results: int): int;
14
+ _rest_info(shape_rid: RID, transform: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, collision_mask: int, collide_with_bodies: boolean, collide_with_areas: boolean, r_rest_info: unknown): boolean;
15
15
  is_body_excluded_from_query(body: RID): boolean;
16
16
  }
@@ -93,10 +93,10 @@ declare class PhysicsServer2DExtension extends PhysicsServer2D {
93
93
  /** Overridable version of {@link PhysicsServer2D.body_clear_shapes}. */
94
94
  _body_clear_shapes(body: RID): void;
95
95
  /**
96
- * Given a `body`, a `shape`, and their respective parameters, this method should return `true` if a collision between the two would occur, with additional details passed in `results`.
96
+ * Given a `body`, a `shape`, and their respective parameters, this method should return `true` if a collision between the two would occur, with additional details passed in `r_results`.
97
97
  * Overridable version of {@link PhysicsServer2D}'s internal `shape_collide` method. Corresponds to {@link PhysicsDirectSpaceState2D.collide_shape}.
98
98
  */
99
- _body_collide_shape(body: RID, body_shape: int, shape: RID, shape_xform: Transform2D, motion: Vector2 | Vector2i, results: void, result_max: int, result_count: int): boolean;
99
+ _body_collide_shape(body: RID, body_shape: int, shape: RID, shape_xform: Transform2D, motion: Vector2 | Vector2i, r_results: void, result_max: int, r_result_count: int): boolean;
100
100
  /** Overridable version of {@link PhysicsServer2D.body_create}. */
101
101
  _body_create(): RID;
102
102
  /** Overridable version of {@link PhysicsServer2D.body_get_canvas_instance_id}. */
@@ -205,7 +205,7 @@ declare class PhysicsServer2DExtension extends PhysicsServer2D {
205
205
  /**
206
206
  * Overridable version of {@link PhysicsServer2D.body_test_motion}. Unlike the exposed implementation, this method does not receive all of the arguments inside a {@link PhysicsTestMotionParameters2D}.
207
207
  */
208
- _body_test_motion(body: RID, from_: Transform2D, motion: Vector2 | Vector2i, margin: float, collide_separation_ray: boolean, recovery_as_collision: boolean, result: unknown): boolean;
208
+ _body_test_motion(body: RID, from_: Transform2D, motion: Vector2 | Vector2i, margin: float, collide_separation_ray: boolean, recovery_as_collision: boolean, r_result: unknown): boolean;
209
209
  /** Overridable version of {@link PhysicsServer2D.capsule_shape_create}. */
210
210
  _capsule_shape_create(): RID;
211
211
  /** Overridable version of {@link PhysicsServer2D.circle_shape_create}. */
@@ -284,10 +284,10 @@ declare class PhysicsServer2DExtension extends PhysicsServer2D {
284
284
  /** Overridable version of {@link PhysicsServer2D.set_active}. */
285
285
  _set_active(active: boolean): void;
286
286
  /**
287
- * Given two shapes and their parameters, should return `true` if a collision between the two would occur, with additional details passed in `results`.
287
+ * Given two shapes and their parameters, should return `true` if a collision between the two would occur, with additional details passed in `r_results`.
288
288
  * Overridable version of {@link PhysicsServer2D}'s internal `shape_collide` method. Corresponds to {@link PhysicsDirectSpaceState2D.collide_shape}.
289
289
  */
290
- _shape_collide(shape_A: RID, xform_A: Transform2D, motion_A: Vector2 | Vector2i, shape_B: RID, xform_B: Transform2D, motion_B: Vector2 | Vector2i, results: void, result_max: int, result_count: int): boolean;
290
+ _shape_collide(shape_A: RID, xform_A: Transform2D, motion_A: Vector2 | Vector2i, shape_B: RID, xform_B: Transform2D, motion_B: Vector2 | Vector2i, r_results: void, result_max: int, r_result_count: int): boolean;
291
291
  /**
292
292
  * Should return the custom solver bias of the given `shape`, which defines how much bodies are forced to separate on contact when this shape is involved.
293
293
  * Overridable version of {@link PhysicsServer2D}'s internal `shape_get_custom_solver_bias` method. Corresponds to {@link Shape2D.custom_solver_bias}.
@@ -91,7 +91,7 @@ declare class PhysicsServer3DExtension extends PhysicsServer3D {
91
91
  _body_set_state(body: RID, state: int, value: unknown): void;
92
92
  _body_set_state_sync_callback(body: RID, callable: Callable): void;
93
93
  _body_set_user_flags(body: RID, flags: int): void;
94
- _body_test_motion(body: RID, from_: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, max_collisions: int, collide_separation_ray: boolean, recovery_as_collision: boolean, result: unknown): boolean;
94
+ _body_test_motion(body: RID, from_: Transform3D | Projection, motion: Vector3 | Vector3i, margin: float, max_collisions: int, collide_separation_ray: boolean, recovery_as_collision: boolean, r_result: unknown): boolean;
95
95
  _box_shape_create(): RID;
96
96
  _capsule_shape_create(): RID;
97
97
  _concave_polygon_shape_create(): RID;
@@ -17,16 +17,64 @@ declare class PopupMenu extends Popup {
17
17
  hide_on_state_item_selection: boolean;
18
18
  /** The number of items currently in the list. */
19
19
  item_count: int;
20
+ /**
21
+ * The checkable item type of the item at `index`.
22
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
23
+ */
24
+ 'item_{index}/checkable': int;
25
+ /**
26
+ * If `true`, the item at `index` is checked.
27
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
28
+ */
29
+ 'item_{index}/checked': boolean;
30
+ /**
31
+ * If `true`, the item at `index` is disabled.
32
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
33
+ */
34
+ 'item_{index}/disabled': boolean;
35
+ /**
36
+ * The icon of the item at `index`.
37
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
38
+ */
39
+ 'item_{index}/icon': Texture2D | null;
40
+ /**
41
+ * The ID of the item at `index`.
42
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
43
+ */
44
+ 'item_{index}/id': int;
45
+ /**
46
+ * If `true`, the item at `index` is a separator.
47
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
48
+ */
49
+ 'item_{index}/separator': boolean;
50
+ /**
51
+ * The text of the item at `index`.
52
+ * **Note:** `index` is a value in the `0 .. item_count - 1` range.
53
+ */
54
+ 'item_{index}/text': string;
20
55
  /**
21
56
  * If `true`, {@link MenuBar} will use native menu when supported.
22
57
  * **Note:** If {@link PopupMenu} is linked to {@link StatusIndicator}, {@link MenuBar}, or another {@link PopupMenu} item it can use native menu regardless of this property, use {@link is_native_menu} to check it.
23
58
  */
24
59
  prefer_native_menu: boolean;
25
60
  /**
26
- * Enables the {@link PopupMenu} search bar if the item count is greater than `0`.
61
+ * If `true`, shows a search bar at the top of the {@link PopupMenu} for filtering items. See {@link search_bar_min_item_count} for dynamically controlling its visibility based on the number of items.
27
62
  * **Note:** When enabled, {@link allow_search} is ignored.
28
63
  */
29
- search_bar_enabled_on_item_count: int;
64
+ search_bar_enabled: boolean;
65
+ /**
66
+ * If `true`, enables fuzzy searching in the {@link PopupMenu} search bar. This allows the search results to include items that almost match the search query, as well items that match the individual characters of the search query, but not in sequence.
67
+ * Use {@link search_bar_fuzzy_search_max_misses} to set the maximum number of mismatches allowed in the search results.
68
+ */
69
+ search_bar_fuzzy_search_enabled: boolean;
70
+ /**
71
+ * Sets the maximum number of mismatches allowed in each search result when fuzzy searching is enabled for the {@link PopupMenu} search bar. Any item with more mismatches will be hidden from the search results.
72
+ */
73
+ search_bar_fuzzy_search_max_misses: int;
74
+ /**
75
+ * Sets the minimum number of items required for the search bar to be visible. {@link search_bar_enabled} must be `true` for this to have any effect. Separator items are not counted.
76
+ */
77
+ search_bar_min_item_count: int;
30
78
  /** If `true`, shrinks {@link PopupMenu} to minimum height when it's shown. */
31
79
  shrink_height: boolean;
32
80
  /** If `true`, shrinks {@link PopupMenu} to minimum width when it's shown. */
@@ -52,8 +100,14 @@ declare class PopupMenu extends Popup {
52
100
  get_item_count(): int;
53
101
  set_prefer_native_menu(value: boolean): void;
54
102
  is_prefer_native_menu(): boolean;
55
- set_search_bar_enabled_on_item_count(value: int): void;
56
- get_search_bar_enabled_on_item_count(): int;
103
+ set_search_bar_enabled(value: boolean): void;
104
+ is_search_bar_enabled(): boolean;
105
+ set_search_bar_fuzzy_search_enabled(value: boolean): void;
106
+ is_search_bar_fuzzy_search_enabled(): boolean;
107
+ set_search_bar_fuzzy_search_max_misses(value: int): void;
108
+ get_search_bar_fuzzy_search_max_misses(): int;
109
+ set_search_bar_min_item_count(value: int): void;
110
+ get_search_bar_min_item_count(): int;
57
111
  set_shrink_height(value: boolean): void;
58
112
  get_shrink_height(): boolean;
59
113
  set_shrink_width(value: boolean): void;
@@ -232,8 +286,6 @@ declare class PopupMenu extends Popup {
232
286
  is_item_shortcut_disabled(index: int): boolean;
233
287
  /** Returns `true` if the system native menu is supported and currently used by this {@link PopupMenu}. */
234
288
  is_native_menu(): boolean;
235
- /** Returns `true` if search bar is currently enabled. */
236
- is_search_bar_enabled(): boolean;
237
289
  /** Returns `true` if the menu is bound to the special system menu. */
238
290
  is_system_menu(): boolean;
239
291
  /**
@@ -28,6 +28,10 @@ declare interface ProjectSettings {
28
28
  * If `true`, {@link AnimationMixer} prints the warning of interpolation being forced to choose the shortest rotation path due to multiple angle interpolation types being mixed in the {@link AnimationMixer} cache.
29
29
  */
30
30
  'animation/warnings/check_angle_interpolation_type_conflicting': boolean;
31
+ /**
32
+ * If `true`, {@link SkeletonModifier3D} prints a warning if there's no matching object for the track path in the scene when assigning.
33
+ */
34
+ 'animation/warnings/check_invalid_skeleton_modifier_node_paths': boolean;
31
35
  /**
32
36
  * If `true`, {@link AnimationMixer} prints the warning of no matching object of the track path in the scene.
33
37
  */
@@ -343,6 +347,10 @@ declare interface ProjectSettings {
343
347
  * When set to **Warn** or **Error**, produces a warning or an error respectively when an identifier that will be shadowed below in the block is used.
344
348
  */
345
349
  'debug/gdscript/warnings/confusable_local_usage': int;
350
+ /**
351
+ * When set to **Warn** or **Error**, produces a warning or an error respectively when a built-in property of type `Packed*Array` is modified using a complex assignment chain or a non-`const` method call. In this case, you are only modifying a temporary value, and the property's value remains unchanged.
352
+ */
353
+ 'debug/gdscript/warnings/confusable_temporary_modification': int;
346
354
  /**
347
355
  * When set to **Warn** or **Error**, produces a warning or an error respectively when deprecated keywords are used.
348
356
  * **Note:** There are currently no deprecated keywords, so this warning is never produced.
@@ -959,13 +967,13 @@ declare interface ProjectSettings {
959
967
  * `"keep"`: Keep aspect ratio when stretching the screen. This means that the viewport retains its original size regardless of the screen resolution, and black bars will be added to the top/bottom of the screen ("letterboxing") or the sides ("pillarboxing").
960
968
  * `"keep_width"`: Keep aspect ratio when stretching the screen. If the screen is wider than the base size, black bars are added at the left and right (pillarboxing). But if the screen is taller than the base resolution, the viewport will be grown in the vertical direction (and more content will be visible at the bottom). You can also think of this as "Expand Vertically".
961
969
  * `"keep_height"`: Keep aspect ratio when stretching the screen. If the screen is taller than the base size, black bars are added at the top and bottom (letterboxing). But if the screen is wider than the base resolution, the viewport will be grown in the horizontal direction (and more content will be visible to the right). You can also think of this as "Expand Horizontally".
962
- * `"expand"`: Keep aspect ratio when stretching the screen, but keep neither the base width nor height. Depending on the screen aspect ratio, the viewport will either be larger in the horizontal direction (if the screen is wider than the base size) or in the vertical direction (if the screen is taller than the original size).
970
+ * `"expand"`: Keep aspect ratio when stretching the screen, but keep neither the base width nor height. Depending on the screen aspect ratio, the viewport will either be larger in the horizontal direction (if the screen is wider than the base size) or in the vertical direction (if the screen is taller than the original size). This is the default for projects created starting in Godot 4.7.
963
971
  */
964
972
  'display/window/stretch/aspect': string;
965
973
  /**
966
974
  * Defines how the base size is stretched to fit the resolution of the window or screen.
967
975
  * `"disabled"`: No stretching happens. One unit in the scene corresponds to one pixel on the screen. In this mode, {@link display/window/stretch/aspect} has no effect. Recommended for non-game applications.
968
- * `"canvas_items"`: The base size specified in width and height in the project settings is stretched to cover the whole screen (taking {@link display/window/stretch/aspect} into account). This means that everything is rendered directly at the target resolution. 3D is unaffected, while in 2D, there is no longer a 1:1 correspondence between sprite pixels and screen pixels, which may result in scaling artifacts. Recommended for most games that don't use a pixel art aesthetic, although it is possible to use this stretch mode for pixel art games too (especially in 3D).
976
+ * `"canvas_items"`: The base size specified in width and height in the project settings is stretched to cover the whole screen (taking {@link display/window/stretch/aspect} into account). This means that everything is rendered directly at the target resolution. 3D is unaffected, while in 2D, there is no longer a 1:1 correspondence between sprite pixels and screen pixels, which may result in scaling artifacts. Recommended for most games that don't use a pixel art aesthetic, although it is possible to use this stretch mode for pixel art games too (especially in 3D). This is the default for projects created starting in Godot 4.7.
969
977
  * `"viewport"`: The size of the root {@link Viewport} is set precisely to the base size specified in the Project Settings' Display section. The scene is rendered to this viewport first. Finally, this viewport is scaled to fit the screen (taking {@link display/window/stretch/aspect} into account). Recommended for games that use a pixel art aesthetic.
970
978
  */
971
979
  'display/window/stretch/mode': string;
@@ -1144,10 +1152,10 @@ declare interface ProjectSettings {
1144
1152
  */
1145
1153
  'gui/common/drag_threshold': int;
1146
1154
  /**
1147
- * Determines whether a {@link Control} should visually indicate focus when said focus is gained using a mouse or touch input.
1155
+ * Determines whether a {@link Control} should visually indicate focus when that focus is gained using a mouse or touch input.
1148
1156
  * - **Never** (`0`) show the focused state for mouse/touch input.
1149
- * - **Control Supports Keyboard Input** (`1`) shows the focused state even when gained via mouse/touch input (similar to how browsers handle focus).
1150
- * - **Always** (`2`) show the focused state, even if said focus was gained via mouse/touch input.
1157
+ * - **Text Input Controls** (`1`) show the focused state even if that focus was gained via mouse/touch input (similar to browser behavior).
1158
+ * - **Always** (`2`) show the focused state, even if that focus was gained via mouse/touch input.
1151
1159
  */
1152
1160
  'gui/common/show_focus_state_on_pointer_event': int;
1153
1161
  /**
@@ -1210,7 +1218,7 @@ declare interface ProjectSettings {
1210
1218
  /** LCD subpixel layout used for font anti-aliasing. See {@link TextServer.FontLCDSubpixelLayout}. */
1211
1219
  'gui/theme/lcd_subpixel_layout': int;
1212
1220
  /**
1213
- * When {@link BaseButton.shortcut_feedback} is enabled, this is the time the {@link BaseButton} will remain highlighted after a shortcut.
1221
+ * When {@link BaseButton.shortcut_feedback} is enabled, this is the time the {@link BaseButton} will remain highlighted after a shortcut. This duration is not affected by {@link Engine.time_scale}.
1214
1222
  */
1215
1223
  'gui/timers/button_shortcut_feedback_highlight_time': float;
1216
1224
  /**
@@ -2816,6 +2824,10 @@ declare interface ProjectSettings {
2816
2824
  * {@link Environment} that will be used as a fallback environment in case a scene does not specify its own environment. The default environment is loaded in at scene load time regardless of whether you have set an environment or not. If you do not rely on the fallback environment, you do not need to set this property.
2817
2825
  */
2818
2826
  'rendering/environment/defaults/default_environment': string;
2827
+ /**
2828
+ * Enables legacy fog blending behavior from version 4.5 and earlier. This is intended for users who are developing on pre-4.6 versions and want to upgrade to 4.6 with the smallest possible change to their visuals.
2829
+ */
2830
+ 'rendering/environment/fog/use_legacy_blending': boolean;
2819
2831
  /**
2820
2832
  * Sets how the glow effect is upscaled before being copied onto the screen. Linear is faster, but looks blocky. Bicubic is slower but looks smooth.
2821
2833
  * **Note:** {@link rendering/environment/glow/upscale_mode} is only effective when using the Forward+ or Mobile rendering methods, as Compatibility uses a different glow implementation.
@@ -3425,6 +3437,7 @@ declare interface ProjectSettings {
3425
3437
  'rendering/scaling_3d/mode.macos': int;
3426
3438
  /**
3427
3439
  * Scales the 3D render buffer based on the viewport size uses an image filter specified in {@link rendering/scaling_3d/mode} to scale the output image to the full viewport size. Values lower than `1.0` can be used to speed up 3D rendering at the cost of quality (undersampling). Values greater than `1.0` are only valid for bilinear mode and can be used to improve 3D rendering quality at a high performance cost (supersampling). See also {@link rendering/anti_aliasing/quality/msaa_3d} for multi-sample antialiasing, which is significantly cheaper but only smooths the edges of polygons.
3440
+ * **Note:** When using the **Nearest** scaling mode, to avoid uneven pixel scaling, it's highly recommended to use a value equal to an integer divisor with a dividend of `1`. For example, it's best to use a scale of `0.5` (1/2), `0.3333` (1/3), `0.25` (1/4), `0.2` (1/5), and so on.
3428
3441
  */
3429
3442
  'rendering/scaling_3d/scale': float;
3430
3443
  'rendering/shader_compiler/shader_cache/compress': boolean;
@@ -3483,6 +3496,7 @@ declare interface ProjectSettings {
3483
3496
  * Affects the final texture sharpness by reading from a lower or higher mipmap (also called "texture LOD bias"). Negative values make mipmapped textures sharper but grainier when viewed at a distance, while positive values make mipmapped textures blurrier (even when up close).
3484
3497
  * Enabling temporal antialiasing ({@link rendering/anti_aliasing/quality/use_taa}) will automatically apply a `-0.5` offset to this value, while enabling FXAA ({@link rendering/anti_aliasing/quality/screen_space_aa}) will automatically apply a `-0.25` offset to this value. If both TAA and FXAA are enabled at the same time, an offset of `-0.75` is applied to this value.
3485
3498
  * **Note:** If {@link rendering/scaling_3d/scale} is lower than `1.0` (exclusive), {@link rendering/textures/default_filters/texture_mipmap_bias} is used to adjust the automatic mipmap bias which is calculated internally based on the scale factor. The formula for this is `log2(scaling_3d_scale) + mipmap_bias`.
3499
+ * **Note:** This property is only supported in the Forward+ and Mobile renderers, not Compatibility. In Compatibility, this property is always treated as if it was set to `0.0`.
3486
3500
  */
3487
3501
  'rendering/textures/default_filters/texture_mipmap_bias': float;
3488
3502
  /**
@@ -3674,11 +3688,20 @@ declare interface ProjectSettings {
3674
3688
  * If `true` and foveation is supported, will automatically adjust foveation level based on framerate up to the level set on {@link xr/openxr/foveation_level}.
3675
3689
  */
3676
3690
  'xr/openxr/foveation_dynamic': boolean;
3691
+ /**
3692
+ * If `true` and foveation level is set to anything other than "Disabled", eye-tracked foveation will be used, so long as it's supported by the headset.
3693
+ */
3694
+ 'xr/openxr/foveation_eye_tracked': boolean;
3677
3695
  /**
3678
3696
  * Applied foveation level if supported.
3679
3697
  * **Note:** On platforms other than Android, if {@link rendering/anti_aliasing/quality/msaa_3d} is enabled, this feature will be disabled.
3680
3698
  */
3681
3699
  'xr/openxr/foveation_level': int;
3700
+ /**
3701
+ * If `true` and foveation is also enabled, subsampled images will be used on Vulkan. This can improve the performance gain from foveated rendering, especially when using high foveation levels.
3702
+ * **Note:**: Using subsampled images is incompatible with many screen-space rendering features or post-processing effects like FXAA or glow. If any such effects are enabled, subsampled images will automatically be disabled and a warning shown in the log.
3703
+ */
3704
+ 'xr/openxr/foveation_with_subsampled_images': boolean;
3682
3705
  /** Specify the default reference space. */
3683
3706
  'xr/openxr/reference_space': int;
3684
3707
  /** If `true`, Godot will display an alert modal when OpenXR initialization fails on startup. */
@@ -3711,7 +3734,9 @@ declare interface ProjectSettings {
3711
3734
  */
3712
3735
  check_changed_settings_in_group(setting_prefix: string): boolean;
3713
3736
  /** Clears the whole configuration (not recommended, may break things). */
3714
- clear<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T): void;
3737
+ clear<const T extends keyof ProjectSettings & `${string}/${string}`>(
3738
+ name: T,
3739
+ ): void;
3715
3740
  clear(name: string): void;
3716
3741
  /**
3717
3742
  * Gets an array of the settings which have been changed since the last save. Note that internally `changed_settings` is cleared after a successful save, so generally the most appropriate place to use this method is when processing {@link settings_changed}.
@@ -3728,26 +3753,43 @@ declare interface ProjectSettings {
3728
3753
  */
3729
3754
  get_global_class_list(): Array<Dictionary>;
3730
3755
  /** Returns the order of a configuration value (influences when saved to the config file). */
3731
- get_order<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T): int;
3756
+ get_order<const T extends keyof ProjectSettings & `${string}/${string}`>(
3757
+ name: T,
3758
+ ): int;
3732
3759
  get_order(name: string): int;
3733
3760
  /**
3734
3761
  * Returns the value of the setting identified by `name`. If the setting doesn't exist and `default_value` is specified, the value of `default_value` is returned. Otherwise, `null` is returned.
3735
3762
  * **Note:** This method doesn't take potential feature overrides into account automatically. Use {@link get_setting_with_override} to handle seamlessly.
3736
3763
  * See also {@link has_setting} to check whether a setting exists.
3737
3764
  */
3738
- get_setting<const T extends keyof ProjectSettings & `${string}/${string}`, D>(name: T, default_value?: ProjectSettings[T]): ProjectSettings[T];
3765
+ get_setting<const T extends keyof ProjectSettings & `${string}/${string}`, D>(
3766
+ name: T,
3767
+ default_value?: ProjectSettings[T],
3768
+ ): ProjectSettings[T];
3739
3769
  get_setting(name: string, default_value?: unknown): unknown;
3740
3770
  /**
3741
3771
  * Similar to {@link get_setting}, but applies feature tag overrides if any exists and is valid.
3742
3772
  * **Example:** If the setting override `"application/config/name.windows"` exists, and the following code is executed on a *Windows* operating system, the overridden setting is printed instead:
3743
3773
  */
3744
- get_setting_with_override<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T): ProjectSettings[T];
3774
+ get_setting_with_override<
3775
+ const T extends keyof ProjectSettings & `${string}/${string}`,
3776
+ >(
3777
+ name: T,
3778
+ ): ProjectSettings[T];
3745
3779
  get_setting_with_override(name: string): unknown;
3746
3780
  /**
3747
3781
  * Similar to {@link get_setting_with_override}, but applies feature tag overrides instead of current OS features.
3748
3782
  */
3749
- get_setting_with_override_and_custom_features<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, features: PackedStringArray): ProjectSettings[T];
3750
- get_setting_with_override_and_custom_features(name: string, features: PackedStringArray): unknown;
3783
+ get_setting_with_override_and_custom_features<
3784
+ const T extends keyof ProjectSettings & `${string}/${string}`,
3785
+ >(
3786
+ name: T,
3787
+ features: PackedStringArray,
3788
+ ): ProjectSettings[T];
3789
+ get_setting_with_override_and_custom_features(
3790
+ name: string,
3791
+ features: PackedStringArray,
3792
+ ): unknown;
3751
3793
  /**
3752
3794
  * Returns the absolute, native OS path corresponding to the localized `path` (starting with `res://` or `user://`). The returned path will vary depending on the operating system and user preferences. See File paths in Godot projects ($DOCS_URL/tutorials/io/data_paths.html) to see what those paths convert to. See also {@link localize_path}.
3753
3795
  * **Note:** {@link globalize_path} with `res://` will not work in an exported project. Instead, prepend the executable's base directory to the path when running from an exported project:
@@ -3757,7 +3799,9 @@ declare interface ProjectSettings {
3757
3799
  * Returns `true` if a configuration value is present.
3758
3800
  * **Note:** In order to be be detected, custom settings have to be either defined with {@link set_setting}, or exist in the `project.godot` file. This is especially relevant when using {@link set_initial_value}.
3759
3801
  */
3760
- has_setting<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T): boolean;
3802
+ has_setting<const T extends keyof ProjectSettings & `${string}/${string}`>(
3803
+ name: T,
3804
+ ): boolean;
3761
3805
  has_setting(name: string): boolean;
3762
3806
  /**
3763
3807
  * Loads the contents of the .pck or .zip file specified by `pack` into the resource filesystem (`res://`). Returns `true` on success.
@@ -3772,43 +3816,67 @@ declare interface ProjectSettings {
3772
3816
  localize_path(path: string | NodePath): string;
3773
3817
  /**
3774
3818
  * Saves the configuration to the `project.godot` file.
3775
- * **Note:** This method is intended to be used by editor plugins, as modified {@link ProjectSettings} can't be loaded back in the running app. If you want to change project settings in exported projects, use {@link save_custom} to save `override.cfg` file.
3819
+ * **Note:** This method is intended to be used by editor plugins, as modified {@link ProjectSettings} can't be loaded back in the running app. If you want to change project settings in exported projects, use {@link save_custom} to save an `override.cfg` file.
3776
3820
  */
3777
3821
  save(): int;
3778
3822
  /**
3779
- * Saves the configuration to a custom file. The file extension must be `.godot` (to save in text-based {@link ConfigFile} format) or `.binary` (to save in binary format). You can also save `override.cfg` file, which is also text, but can be used in exported projects unlike other formats.
3823
+ * Saves the configuration to a custom file. The file extension must be `.godot` (to save in text-based {@link ConfigFile} format) or `.binary` (to save in binary format). You can also save an `override.cfg` file, which is also text, but can be used in exported projects unlike other formats.
3780
3824
  */
3781
3825
  save_custom(file: string | NodePath): int;
3782
3826
  /**
3783
3827
  * Defines if the specified setting is considered basic or advanced. Basic settings will always be shown in the project settings. Advanced settings will only be shown if the user enables the "Advanced Settings" option.
3784
3828
  */
3785
- set_as_basic<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, basic: boolean): void;
3829
+ set_as_basic<const T extends keyof ProjectSettings & `${string}/${string}`>(
3830
+ name: T,
3831
+ basic: boolean,
3832
+ ): void;
3786
3833
  set_as_basic(name: string, basic: boolean): void;
3787
3834
  /**
3788
3835
  * Defines if the specified setting is considered internal. An internal setting won't show up in the Project Settings dialog. This is mostly useful for addons that need to store their own internal settings without exposing them directly to the user.
3789
3836
  */
3790
- set_as_internal<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, internal: boolean): void;
3837
+ set_as_internal<
3838
+ const T extends keyof ProjectSettings & `${string}/${string}`,
3839
+ >(
3840
+ name: T,
3841
+ internal: boolean,
3842
+ ): void;
3791
3843
  set_as_internal(name: string, internal: boolean): void;
3792
3844
  /**
3793
3845
  * Sets the specified setting's initial value. This is the value the setting reverts to. The setting should already exist before calling this method. Note that project settings equal to their default value are not saved, so your code needs to account for that.
3794
3846
  * If you have a project setting defined by an {@link EditorPlugin}, but want to use it in a running project, you will need a similar code at runtime.
3795
3847
  */
3796
- set_initial_value<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, value: unknown): void;
3848
+ set_initial_value<
3849
+ const T extends keyof ProjectSettings & `${string}/${string}`,
3850
+ >(
3851
+ name: T,
3852
+ value: unknown,
3853
+ ): void;
3797
3854
  set_initial_value(name: string, value: unknown): void;
3798
3855
  /** Sets the order of a configuration value (influences when saved to the config file). */
3799
- set_order<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, position: int): void;
3856
+ set_order<const T extends keyof ProjectSettings & `${string}/${string}`>(
3857
+ name: T,
3858
+ position: int,
3859
+ ): void;
3800
3860
  set_order(name: string, position: int): void;
3801
3861
  /**
3802
3862
  * Sets whether a setting requires restarting the editor to properly take effect.
3803
3863
  * **Note:** This is just a hint to display to the user that the editor must be restarted for changes to take effect. Enabling {@link set_restart_if_changed} does *not* delay the setting being set when changed.
3804
3864
  */
3805
- set_restart_if_changed<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, restart: boolean): void;
3865
+ set_restart_if_changed<
3866
+ const T extends keyof ProjectSettings & `${string}/${string}`,
3867
+ >(
3868
+ name: T,
3869
+ restart: boolean,
3870
+ ): void;
3806
3871
  set_restart_if_changed(name: string, restart: boolean): void;
3807
3872
  /**
3808
3873
  * Sets the value of a setting.
3809
3874
  * This can also be used to erase custom project settings. To do this change the setting value to `null`.
3810
3875
  */
3811
- set_setting<const T extends keyof ProjectSettings & `${string}/${string}`>(name: T, value: unknown): void;
3876
+ set_setting<const T extends keyof ProjectSettings & `${string}/${string}`>(
3877
+ name: T,
3878
+ value: unknown,
3879
+ ): void;
3812
3880
  set_setting(name: string, value: unknown): void;
3813
3881
 
3814
3882
  /** Emitted when any setting is changed, up to once per process frame. */
@@ -47,7 +47,7 @@ declare interface Quaternion {
47
47
  get_axis(): Vector3;
48
48
  /**
49
49
  * Returns this quaternion's rotation as a {@link Vector3} of Euler angles (https://en.wikipedia.org/wiki/Euler_angles), in radians.
50
- * The order of each consecutive rotation can be changed with `order` (see {@link EulerOrder} constants). By default, the YXZ convention is used ({@link EULER_ORDER_YXZ}): Z (roll) is calculated first, then X (pitch), and lastly Y (yaw). When using the opposite method {@link from_euler}, this order is reversed.
50
+ * The order of each consecutive rotation can be changed with `order` (see {@link EulerOrder} constants). In Godot, Euler angles always use intrinsic order. By default, the intrinsic YXZ convention is used ({@link EULER_ORDER_YXZ}): since we are decomposing, local Z (roll) is calculated first, then local X (pitch), and lastly local Y (yaw). When using the opposite method {@link from_euler} to compose a rotation, this order is reversed.
51
51
  */
52
52
  get_euler(order?: int): Vector3;
53
53
  /**
@@ -174,7 +174,7 @@ declare interface QuaternionConstructor {
174
174
  */
175
175
  (x: float, y: float, z: float, w: float): Quaternion;
176
176
  /**
177
- * Constructs a new {@link Quaternion} from the given {@link Vector3} of Euler angles (https://en.wikipedia.org/wiki/Euler_angles), in radians. This method always uses the YXZ convention ({@link EULER_ORDER_YXZ}).
177
+ * Constructs a new {@link Quaternion} from the given {@link Vector3} of Euler angles (https://en.wikipedia.org/wiki/Euler_angles), in radians. In Godot, Euler angles always use intrinsic order. This method always uses the intrinsic YXZ convention ({@link EULER_ORDER_YXZ}).
178
178
  */
179
179
  from_euler(euler: Vector3 | Vector3i): Quaternion;
180
180
 
@@ -0,0 +1,42 @@
1
+ // AUTO-GENERATED from Godot class documentation.
2
+ // Manual overrides applied from typings-overrides/*.d.ts
3
+
4
+ /** Acceleration structure geometry (used by {@link RenderingDevice}). */
5
+ declare class RDAccelerationStructureGeometry extends RefCounted {
6
+ /** Flags for the geometry. */
7
+ flags: int;
8
+ /** Buffer containing vertex indices. If `null`, triangles are non-indexed. */
9
+ index_buffer: RID;
10
+ /** Number of indices used by this geometry in {@link index_buffer}. */
11
+ index_count: int;
12
+ /** Byte offset of the first index in {@link index_buffer}. */
13
+ index_offset: int;
14
+ /** Buffer containing vertices. */
15
+ vertex_buffer: RID;
16
+ /** Number of vertices used by this geometry in {@link vertex_buffer}. */
17
+ vertex_count: int;
18
+ /** Format of the vertices in {@link vertex_buffer}. */
19
+ vertex_format: int;
20
+ /** Byte offset of the first vertex in {@link vertex_buffer}. */
21
+ vertex_offset: int;
22
+ /** Number of bytes between each vertex in {@link vertex_buffer}. */
23
+ vertex_stride: int;
24
+ set_flags(value: int): void;
25
+ get_flags(): int;
26
+ set_index_buffer(value: RID): void;
27
+ get_index_buffer(): RID;
28
+ set_index_count(value: int): void;
29
+ get_index_count(): int;
30
+ set_index_offset(value: int): void;
31
+ get_index_offset(): int;
32
+ set_vertex_buffer(value: RID): void;
33
+ get_vertex_buffer(): RID;
34
+ set_vertex_count(value: int): void;
35
+ get_vertex_count(): int;
36
+ set_vertex_format(value: int): void;
37
+ get_vertex_format(): int;
38
+ set_vertex_offset(value: int): void;
39
+ get_vertex_offset(): int;
40
+ set_vertex_stride(value: int): void;
41
+ get_vertex_stride(): int;
42
+ }
@@ -0,0 +1,34 @@
1
+ // AUTO-GENERATED from Godot class documentation.
2
+ // Manual overrides applied from typings-overrides/*.d.ts
3
+
4
+ /** Acceleration structure instance (used by {@link RenderingDevice}). */
5
+ declare class RDAccelerationStructureInstance extends RefCounted {
6
+ /**
7
+ * The BLAS referenced by this instance. If `null`, the instance is treated as a placeholder but still contributes to `gl_InstanceIndex` in GLSL.
8
+ */
9
+ blas: RID;
10
+ /** Flags for the instance. */
11
+ flags: int;
12
+ /**
13
+ * Hit shader binding table range used for this instance, allocated using the {@link RenderingDevice.hit_sbt_range_alloc} method.
14
+ */
15
+ hit_sbt_range: int;
16
+ /** Custom instance ID that can be accessed in GLSL using `gl_InstanceCustomIndexEXT`. */
17
+ id: int;
18
+ /** Visibility mask used to control which rays can intersect this instance. */
19
+ mask: int;
20
+ /** Transform applied to the referenced BLAS for this instance. */
21
+ transform: Transform3D;
22
+ set_blas(value: RID): void;
23
+ get_blas(): RID;
24
+ set_flags(value: int): void;
25
+ get_flags(): int;
26
+ set_hit_sbt_range(value: int): void;
27
+ get_hit_sbt_range(): int;
28
+ set_id(value: int): void;
29
+ get_id(): int;
30
+ set_mask(value: int): void;
31
+ get_mask(): int;
32
+ set_transform(value: Transform3D | Projection): void;
33
+ get_transform(): Transform3D;
34
+ }
@@ -0,0 +1,20 @@
1
+ // AUTO-GENERATED from Godot class documentation.
2
+ // Manual overrides applied from typings-overrides/*.d.ts
3
+
4
+ /** Hit group (used by {@link RenderingDevice}). */
5
+ declare class RDHitGroup extends RefCounted {
6
+ /** Any-hit shader for this hit group. Executed for each potential intersection. Can be `null`. */
7
+ any_hit_shader: RDPipelineShader | null;
8
+ /** Closest-hit shader for this hit group. Executed for the closest intersection. Can be `null`. */
9
+ closest_hit_shader: RDPipelineShader | null;
10
+ /**
11
+ * Intersection shader for this hit group. Required for non-triangle geometry. Must be `null` when using for triangle geometry.
12
+ */
13
+ intersection_shader: RDPipelineShader | null;
14
+ set_any_hit_shader(value: RDPipelineShader | null): void;
15
+ get_any_hit_shader(): RDPipelineShader | null;
16
+ set_closest_hit_shader(value: RDPipelineShader | null): void;
17
+ get_closest_hit_shader(): RDPipelineShader | null;
18
+ set_intersection_shader(value: RDPipelineShader | null): void;
19
+ get_intersection_shader(): RDPipelineShader | null;
20
+ }
@@ -0,0 +1,14 @@
1
+ // AUTO-GENERATED from Godot class documentation.
2
+ // Manual overrides applied from typings-overrides/*.d.ts
3
+
4
+ /** Pipeline shader (used by {@link RenderingDevice}). */
5
+ declare class RDPipelineShader extends RefCounted {
6
+ /** Shader resource. The required stage is selected by the pipeline. */
7
+ shader: RID;
8
+ /** Specialization constants applied to the selected shader stage at pipeline creation time. */
9
+ specialization_constants: Array<RDPipelineSpecializationConstant>;
10
+ set_shader(value: RID): void;
11
+ get_shader(): RID;
12
+ set_specialization_constants(value: Array<RDPipelineSpecializationConstant>): void;
13
+ get_specialization_constants(): Array<RDPipelineSpecializationConstant>;
14
+ }
@@ -6,8 +6,8 @@ declare class RandomNumberGenerator extends RefCounted {
6
6
  /**
7
7
  * Initializes the random number generator state based on the given seed value. A given seed will give a reproducible sequence of pseudo-random numbers.
8
8
  * **Note:** The RNG does not have an avalanche effect, and can output similar random streams given similar seeds. Consider using a hash function to improve your seed quality if they're sourced externally.
9
- * **Note:** Setting this property produces a side effect of changing the internal {@link state}, so make sure to initialize the seed *before* modifying the {@link state}:
10
9
  * **Note:** The default value of this property is pseudo-random, and changes when calling {@link randomize}. The `0` value documented here is a placeholder, and not the actual default seed.
10
+ * **Note:** Setting this property produces a side effect of changing the internal {@link state}, so make sure to initialize the seed *before* modifying the {@link state}:
11
11
  */
12
12
  seed: int;
13
13
  /**
@@ -22,7 +22,9 @@ declare class RandomNumberGenerator extends RefCounted {
22
22
  get_state(): int;
23
23
 
24
24
  /**
25
- * Returns a random index with non-uniform weights. Prints an error and returns `-1` if the array is empty.
25
+ * Returns a random integer between `0` and the size of the array that is passed as a parameter. Each value in the array should be a floating-point number that represents the relative likelihood that it will be returned as an index. A higher value means the value is more likely to be returned as an index, while a value of `0` means it will never be returned as an index.
26
+ * For example, if [code skip-lint][0.5, 1, 1, 2][/code] is passed as a parameter, then the method is twice as likely to return `3` (the index of the value `2`) and twice as unlikely to return `0` (the index of the value `0.5`) compared to the indices `1` and `2`.
27
+ * Prints an error and returns `-1` if the array is empty.
26
28
  */
27
29
  rand_weighted(weights: PackedFloat32Array | Array<unknown>): int;
28
30
  /** Returns a pseudo-random float between `0.0` and `1.0` (inclusive). */
@@ -21,7 +21,10 @@ declare class RenderSceneBuffersConfiguration extends RefCounted {
21
21
  screen_space_aa: int;
22
22
  /** The target (upscale) size if scaling is used. */
23
23
  target_size: Vector2i;
24
- /** Bias applied to mipmaps. */
24
+ /**
25
+ * Bias applied to mipmaps.
26
+ * **Note:** This property is only supported in the Forward+ and Mobile renderers, not Compatibility. In Compatibility, this property is always treated as if it was set to `0.0`.
27
+ */
25
28
  texture_mipmap_bias: float;
26
29
  /** The number of views we're rendering. */
27
30
  view_count: int;