@ringozz/godot 0.1.0

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 (994) hide show
  1. package/gen/classes/AESContext.ts +99 -0
  2. package/gen/classes/AStar2D.ts +222 -0
  3. package/gen/classes/AStar3D.ts +247 -0
  4. package/gen/classes/AStarGrid2D.ts +284 -0
  5. package/gen/classes/AcceptDialog.ts +104 -0
  6. package/gen/classes/AccessibilityServer.ts +824 -0
  7. package/gen/classes/AimModifier3D.ts +75 -0
  8. package/gen/classes/AnimatableBody2D.ts +21 -0
  9. package/gen/classes/AnimatableBody3D.ts +21 -0
  10. package/gen/classes/AnimatedSprite2D.ts +160 -0
  11. package/gen/classes/AnimatedSprite3D.ts +134 -0
  12. package/gen/classes/AnimatedTexture.ts +74 -0
  13. package/gen/classes/Animation.ts +596 -0
  14. package/gen/classes/AnimationLibrary.ts +77 -0
  15. package/gen/classes/AnimationMixer.ts +450 -0
  16. package/gen/classes/AnimationNode.ts +159 -0
  17. package/gen/classes/AnimationNodeAdd2.ts +16 -0
  18. package/gen/classes/AnimationNodeAdd3.ts +20 -0
  19. package/gen/classes/AnimationNodeAnimation.ts +84 -0
  20. package/gen/classes/AnimationNodeBlend2.ts +15 -0
  21. package/gen/classes/AnimationNodeBlend3.ts +19 -0
  22. package/gen/classes/AnimationNodeBlendSpace1D.ts +162 -0
  23. package/gen/classes/AnimationNodeBlendSpace2D.ts +204 -0
  24. package/gen/classes/AnimationNodeBlendTree.ts +110 -0
  25. package/gen/classes/AnimationNodeExtension.ts +25 -0
  26. package/gen/classes/AnimationNodeOneShot.ts +144 -0
  27. package/gen/classes/AnimationNodeOutput.ts +14 -0
  28. package/gen/classes/AnimationNodeStateMachine.ts +163 -0
  29. package/gen/classes/AnimationNodeStateMachinePlayback.ts +111 -0
  30. package/gen/classes/AnimationNodeStateMachineTransition.ts +120 -0
  31. package/gen/classes/AnimationNodeSub2.ts +17 -0
  32. package/gen/classes/AnimationNodeSync.ts +21 -0
  33. package/gen/classes/AnimationNodeTimeScale.ts +14 -0
  34. package/gen/classes/AnimationNodeTimeSeek.ts +36 -0
  35. package/gen/classes/AnimationNodeTransition.ts +92 -0
  36. package/gen/classes/AnimationPlayer.ts +319 -0
  37. package/gen/classes/AnimationRootNode.ts +15 -0
  38. package/gen/classes/AnimationTree.ts +60 -0
  39. package/gen/classes/Area2D.ts +252 -0
  40. package/gen/classes/Area3D.ts +305 -0
  41. package/gen/classes/AreaLight3D.ts +56 -0
  42. package/gen/classes/ArrayMesh.ts +177 -0
  43. package/gen/classes/ArrayOccluder3D.ts +35 -0
  44. package/gen/classes/AspectRatioContainer.ts +78 -0
  45. package/gen/classes/AtlasTexture.ts +42 -0
  46. package/gen/classes/AudioBusLayout.ts +14 -0
  47. package/gen/classes/AudioEffect.ts +16 -0
  48. package/gen/classes/AudioEffectAmplify.ts +27 -0
  49. package/gen/classes/AudioEffectBandLimitFilter.ts +15 -0
  50. package/gen/classes/AudioEffectBandPassFilter.ts +15 -0
  51. package/gen/classes/AudioEffectCapture.ts +62 -0
  52. package/gen/classes/AudioEffectChorus.ts +95 -0
  53. package/gen/classes/AudioEffectCompressor.ts +62 -0
  54. package/gen/classes/AudioEffectDelay.ts +93 -0
  55. package/gen/classes/AudioEffectDistortion.ts +75 -0
  56. package/gen/classes/AudioEffectEQ.ts +30 -0
  57. package/gen/classes/AudioEffectEQ10.ts +25 -0
  58. package/gen/classes/AudioEffectEQ21.ts +36 -0
  59. package/gen/classes/AudioEffectEQ6.ts +21 -0
  60. package/gen/classes/AudioEffectFilter.ts +68 -0
  61. package/gen/classes/AudioEffectHardLimiter.ts +34 -0
  62. package/gen/classes/AudioEffectHighPassFilter.ts +15 -0
  63. package/gen/classes/AudioEffectHighShelfFilter.ts +15 -0
  64. package/gen/classes/AudioEffectInstance.ts +14 -0
  65. package/gen/classes/AudioEffectLimiter.ts +40 -0
  66. package/gen/classes/AudioEffectLowPassFilter.ts +15 -0
  67. package/gen/classes/AudioEffectLowShelfFilter.ts +15 -0
  68. package/gen/classes/AudioEffectNotchFilter.ts +15 -0
  69. package/gen/classes/AudioEffectPanner.ts +21 -0
  70. package/gen/classes/AudioEffectPhaser.ts +45 -0
  71. package/gen/classes/AudioEffectPitchShift.ts +62 -0
  72. package/gen/classes/AudioEffectRecord.ts +39 -0
  73. package/gen/classes/AudioEffectReverb.ts +63 -0
  74. package/gen/classes/AudioEffectSpectrumAnalyzer.ts +57 -0
  75. package/gen/classes/AudioEffectSpectrumAnalyzerInstance.ts +35 -0
  76. package/gen/classes/AudioEffectStereoEnhance.ts +32 -0
  77. package/gen/classes/AudioListener2D.ts +31 -0
  78. package/gen/classes/AudioListener3D.ts +61 -0
  79. package/gen/classes/AudioSample.ts +14 -0
  80. package/gen/classes/AudioSamplePlayback.ts +14 -0
  81. package/gen/classes/AudioServer.ts +360 -0
  82. package/gen/classes/AudioStream.ts +53 -0
  83. package/gen/classes/AudioStreamGenerator.ts +88 -0
  84. package/gen/classes/AudioStreamGeneratorPlayback.ts +45 -0
  85. package/gen/classes/AudioStreamInteractive.ts +216 -0
  86. package/gen/classes/AudioStreamMP3.ts +74 -0
  87. package/gen/classes/AudioStreamMicrophone.ts +15 -0
  88. package/gen/classes/AudioStreamOggVorbis.ts +71 -0
  89. package/gen/classes/AudioStreamPlayback.ts +63 -0
  90. package/gen/classes/AudioStreamPlaybackInteractive.ts +37 -0
  91. package/gen/classes/AudioStreamPlaybackOggVorbis.ts +14 -0
  92. package/gen/classes/AudioStreamPlaybackPlaylist.ts +13 -0
  93. package/gen/classes/AudioStreamPlaybackPolyphonic.ts +49 -0
  94. package/gen/classes/AudioStreamPlaybackResampled.ts +19 -0
  95. package/gen/classes/AudioStreamPlaybackSynchronized.ts +13 -0
  96. package/gen/classes/AudioStreamPlayer.ts +146 -0
  97. package/gen/classes/AudioStreamPlayer2D.ts +143 -0
  98. package/gen/classes/AudioStreamPlayer3D.ts +233 -0
  99. package/gen/classes/AudioStreamPlaylist.ts +240 -0
  100. package/gen/classes/AudioStreamPolyphonic.ts +21 -0
  101. package/gen/classes/AudioStreamRandomizer.ts +99 -0
  102. package/gen/classes/AudioStreamSynchronized.ts +45 -0
  103. package/gen/classes/AudioStreamWAV.ts +151 -0
  104. package/gen/classes/AwaitTweener.ts +20 -0
  105. package/gen/classes/BackBufferCopy.ts +46 -0
  106. package/gen/classes/BaseButton.ts +164 -0
  107. package/gen/classes/BaseMaterial3D.ts +1477 -0
  108. package/gen/classes/BitMap.ts +94 -0
  109. package/gen/classes/BlitMaterial.ts +46 -0
  110. package/gen/classes/Bone2D.ts +71 -0
  111. package/gen/classes/BoneAttachment3D.ts +57 -0
  112. package/gen/classes/BoneConstraint3D.ts +122 -0
  113. package/gen/classes/BoneMap.ts +53 -0
  114. package/gen/classes/BoneTwistDisperser3D.ts +209 -0
  115. package/gen/classes/BoxContainer.ts +51 -0
  116. package/gen/classes/BoxMesh.ts +41 -0
  117. package/gen/classes/BoxOccluder3D.ts +22 -0
  118. package/gen/classes/BoxShape3D.ts +22 -0
  119. package/gen/classes/Button.ts +117 -0
  120. package/gen/classes/ButtonGroup.ts +39 -0
  121. package/gen/classes/CCDIK3D.ts +16 -0
  122. package/gen/classes/CPUParticles2D.ts +590 -0
  123. package/gen/classes/CPUParticles3D.ts +650 -0
  124. package/gen/classes/CSGBox3D.ts +29 -0
  125. package/gen/classes/CSGCombiner3D.ts +15 -0
  126. package/gen/classes/CSGCylinder3D.ts +52 -0
  127. package/gen/classes/CSGMesh3D.ts +32 -0
  128. package/gen/classes/CSGPolygon3D.ts +170 -0
  129. package/gen/classes/CSGPrimitive3D.ts +20 -0
  130. package/gen/classes/CSGShape3D.ts +140 -0
  131. package/gen/classes/CSGSphere3D.ts +46 -0
  132. package/gen/classes/CSGTorus3D.ts +52 -0
  133. package/gen/classes/CallbackTweener.ts +29 -0
  134. package/gen/classes/Camera2D.ts +266 -0
  135. package/gen/classes/Camera3D.ts +275 -0
  136. package/gen/classes/CameraAttributes.ts +50 -0
  137. package/gen/classes/CameraAttributesPhysical.ts +73 -0
  138. package/gen/classes/CameraAttributesPractical.ts +75 -0
  139. package/gen/classes/CameraFeed.ts +155 -0
  140. package/gen/classes/CameraServer.ts +105 -0
  141. package/gen/classes/CameraTexture.ts +34 -0
  142. package/gen/classes/CanvasGroup.ts +54 -0
  143. package/gen/classes/CanvasItem.ts +698 -0
  144. package/gen/classes/CanvasItemMaterial.ts +97 -0
  145. package/gen/classes/CanvasLayer.ts +103 -0
  146. package/gen/classes/CanvasModulate.ts +21 -0
  147. package/gen/classes/CanvasTexture.ts +60 -0
  148. package/gen/classes/CapsuleMesh.ts +40 -0
  149. package/gen/classes/CapsuleShape2D.ts +35 -0
  150. package/gen/classes/CapsuleShape3D.ts +35 -0
  151. package/gen/classes/CenterContainer.ts +20 -0
  152. package/gen/classes/ChainIK3D.ts +102 -0
  153. package/gen/classes/CharFXTransform.ts +108 -0
  154. package/gen/classes/CharacterBody2D.ts +252 -0
  155. package/gen/classes/CharacterBody3D.ts +246 -0
  156. package/gen/classes/CheckBox.ts +16 -0
  157. package/gen/classes/CheckButton.ts +15 -0
  158. package/gen/classes/CircleShape2D.ts +21 -0
  159. package/gen/classes/ClassDB.ts +197 -0
  160. package/gen/classes/CodeEdit.ts +619 -0
  161. package/gen/classes/CodeHighlighter.ts +132 -0
  162. package/gen/classes/CollisionObject2D.ts +235 -0
  163. package/gen/classes/CollisionObject3D.ts +199 -0
  164. package/gen/classes/CollisionPolygon2D.ts +70 -0
  165. package/gen/classes/CollisionPolygon3D.ts +54 -0
  166. package/gen/classes/CollisionShape2D.ts +55 -0
  167. package/gen/classes/CollisionShape3D.ts +53 -0
  168. package/gen/classes/ColorPalette.ts +21 -0
  169. package/gen/classes/ColorPicker.ts +197 -0
  170. package/gen/classes/ColorPickerButton.ts +68 -0
  171. package/gen/classes/ColorRect.ts +21 -0
  172. package/gen/classes/Compositor.ts +22 -0
  173. package/gen/classes/CompositorEffect.ts +134 -0
  174. package/gen/classes/CompressedCubemap.ts +22 -0
  175. package/gen/classes/CompressedCubemapArray.ts +22 -0
  176. package/gen/classes/CompressedTexture2D.ts +27 -0
  177. package/gen/classes/CompressedTexture2DArray.ts +22 -0
  178. package/gen/classes/CompressedTexture3D.ts +22 -0
  179. package/gen/classes/CompressedTextureLayered.ts +19 -0
  180. package/gen/classes/ConcavePolygonShape2D.ts +25 -0
  181. package/gen/classes/ConcavePolygonShape3D.ts +28 -0
  182. package/gen/classes/ConeTwistJoint3D.ts +84 -0
  183. package/gen/classes/ConfigFile.ts +170 -0
  184. package/gen/classes/ConfirmationDialog.ts +39 -0
  185. package/gen/classes/Container.ts +54 -0
  186. package/gen/classes/Control.ts +1499 -0
  187. package/gen/classes/ConvertTransformModifier3D.ts +153 -0
  188. package/gen/classes/ConvexPolygonShape2D.ts +30 -0
  189. package/gen/classes/ConvexPolygonShape3D.ts +24 -0
  190. package/gen/classes/CopyTransformModifier3D.ts +220 -0
  191. package/gen/classes/Crypto.ts +114 -0
  192. package/gen/classes/CryptoKey.ts +43 -0
  193. package/gen/classes/Cubemap.ts +47 -0
  194. package/gen/classes/CubemapArray.ts +30 -0
  195. package/gen/classes/Curve.ts +183 -0
  196. package/gen/classes/Curve2D.ts +145 -0
  197. package/gen/classes/Curve3D.ts +173 -0
  198. package/gen/classes/CurveTexture.ts +48 -0
  199. package/gen/classes/CurveXYZTexture.ts +40 -0
  200. package/gen/classes/CylinderMesh.ts +58 -0
  201. package/gen/classes/CylinderShape3D.ts +28 -0
  202. package/gen/classes/DPITexture.ts +73 -0
  203. package/gen/classes/DTLSServer.ts +93 -0
  204. package/gen/classes/DampedSpringJoint2D.ts +38 -0
  205. package/gen/classes/Decal.ts +146 -0
  206. package/gen/classes/DirAccess.ts +300 -0
  207. package/gen/classes/DirectionalLight2D.ts +28 -0
  208. package/gen/classes/DirectionalLight3D.ts +104 -0
  209. package/gen/classes/DisplayServer.ts +3119 -0
  210. package/gen/classes/DrawableTexture2D.ts +75 -0
  211. package/gen/classes/ENetConnection.ts +192 -0
  212. package/gen/classes/ENetMultiplayerPeer.ts +54 -0
  213. package/gen/classes/ENetPacketPeer.ts +234 -0
  214. package/gen/classes/EncodedObjectAsID.ts +21 -0
  215. package/gen/classes/Engine.ts +322 -0
  216. package/gen/classes/EngineDebugger.ts +136 -0
  217. package/gen/classes/EngineProfiler.ts +16 -0
  218. package/gen/classes/Environment.ts +786 -0
  219. package/gen/classes/Expression.ts +60 -0
  220. package/gen/classes/ExternalTexture.ts +35 -0
  221. package/gen/classes/FABRIK3D.ts +16 -0
  222. package/gen/classes/FBXDocument.ts +15 -0
  223. package/gen/classes/FBXState.ts +20 -0
  224. package/gen/classes/FastNoiseLite.ts +284 -0
  225. package/gen/classes/FileAccess.ts +596 -0
  226. package/gen/classes/FileDialog.ts +428 -0
  227. package/gen/classes/FlowContainer.ts +84 -0
  228. package/gen/classes/FogMaterial.ts +54 -0
  229. package/gen/classes/FogVolume.ts +39 -0
  230. package/gen/classes/FoldableContainer.ts +110 -0
  231. package/gen/classes/FoldableGroup.ts +38 -0
  232. package/gen/classes/Font.ts +242 -0
  233. package/gen/classes/FontFile.ts +514 -0
  234. package/gen/classes/FontVariation.ts +123 -0
  235. package/gen/classes/FramebufferCacheRD.ts +21 -0
  236. package/gen/classes/GDExtension.ts +47 -0
  237. package/gen/classes/GDExtensionManager.ts +101 -0
  238. package/gen/classes/GDScript.ts +30 -0
  239. package/gen/classes/GLTFAccessor.ts +203 -0
  240. package/gen/classes/GLTFAnimation.ts +33 -0
  241. package/gen/classes/GLTFBufferView.ts +68 -0
  242. package/gen/classes/GLTFCamera.ts +66 -0
  243. package/gen/classes/GLTFDocument.ts +202 -0
  244. package/gen/classes/GLTFDocumentExtension.ts +26 -0
  245. package/gen/classes/GLTFDocumentExtensionConvertImporterMesh.ts +11 -0
  246. package/gen/classes/GLTFLight.ts +80 -0
  247. package/gen/classes/GLTFMesh.ts +53 -0
  248. package/gen/classes/GLTFNode.ts +125 -0
  249. package/gen/classes/GLTFObjectModelProperty.ts +136 -0
  250. package/gen/classes/GLTFPhysicsBody.ts +89 -0
  251. package/gen/classes/GLTFPhysicsShape.ts +92 -0
  252. package/gen/classes/GLTFSkeleton.ts +32 -0
  253. package/gen/classes/GLTFSkin.ts +44 -0
  254. package/gen/classes/GLTFSpecGloss.ts +46 -0
  255. package/gen/classes/GLTFState.ts +250 -0
  256. package/gen/classes/GLTFTexture.ts +23 -0
  257. package/gen/classes/GLTFTextureSampler.ts +38 -0
  258. package/gen/classes/GPUParticles2D.ts +270 -0
  259. package/gen/classes/GPUParticles3D.ts +339 -0
  260. package/gen/classes/GPUParticlesAttractor3D.ts +43 -0
  261. package/gen/classes/GPUParticlesAttractorBox3D.ts +23 -0
  262. package/gen/classes/GPUParticlesAttractorSphere3D.ts +23 -0
  263. package/gen/classes/GPUParticlesAttractorVectorField3D.ts +32 -0
  264. package/gen/classes/GPUParticlesCollision3D.ts +26 -0
  265. package/gen/classes/GPUParticlesCollisionBox3D.ts +24 -0
  266. package/gen/classes/GPUParticlesCollisionHeightField3D.ts +109 -0
  267. package/gen/classes/GPUParticlesCollisionSDF3D.ts +95 -0
  268. package/gen/classes/GPUParticlesCollisionSphere3D.ts +23 -0
  269. package/gen/classes/Generic6DOFJoint3D.ts +146 -0
  270. package/gen/classes/Geometry2D.ts +249 -0
  271. package/gen/classes/Geometry3D.ts +94 -0
  272. package/gen/classes/GeometryInstance3D.ts +223 -0
  273. package/gen/classes/GodotInstance.ts +48 -0
  274. package/gen/classes/Gradient.ts +125 -0
  275. package/gen/classes/GradientTexture1D.ts +33 -0
  276. package/gen/classes/GradientTexture2D.ts +104 -0
  277. package/gen/classes/GraphEdit.ts +535 -0
  278. package/gen/classes/GraphElement.ts +101 -0
  279. package/gen/classes/GraphFrame.ts +66 -0
  280. package/gen/classes/GraphNode.ts +241 -0
  281. package/gen/classes/GridContainer.ts +21 -0
  282. package/gen/classes/GridMap.ts +294 -0
  283. package/gen/classes/GrooveJoint2D.ts +26 -0
  284. package/gen/classes/HBoxContainer.ts +14 -0
  285. package/gen/classes/HFlowContainer.ts +14 -0
  286. package/gen/classes/HMACContext.ts +54 -0
  287. package/gen/classes/HScrollBar.ts +14 -0
  288. package/gen/classes/HSeparator.ts +14 -0
  289. package/gen/classes/HSlider.ts +14 -0
  290. package/gen/classes/HSplitContainer.ts +14 -0
  291. package/gen/classes/HTTPClient.ts +525 -0
  292. package/gen/classes/HTTPRequest.ts +264 -0
  293. package/gen/classes/HashingContext.ts +75 -0
  294. package/gen/classes/HeightMapShape3D.ts +73 -0
  295. package/gen/classes/HingeJoint3D.ts +90 -0
  296. package/gen/classes/IKModifier3D.ts +40 -0
  297. package/gen/classes/IP.ts +132 -0
  298. package/gen/classes/Image.ts +835 -0
  299. package/gen/classes/ImageFormatLoader.ts +31 -0
  300. package/gen/classes/ImageFormatLoaderExtension.ts +30 -0
  301. package/gen/classes/ImageTexture.ts +73 -0
  302. package/gen/classes/ImageTexture3D.ts +29 -0
  303. package/gen/classes/ImageTextureLayered.ts +66 -0
  304. package/gen/classes/ImmediateMesh.ts +85 -0
  305. package/gen/classes/ImporterMesh.ts +159 -0
  306. package/gen/classes/ImporterMeshInstance3D.ts +45 -0
  307. package/gen/classes/Input.ts +743 -0
  308. package/gen/classes/InputEvent.ts +112 -0
  309. package/gen/classes/InputEventAction.ts +40 -0
  310. package/gen/classes/InputEventFromWindow.ts +19 -0
  311. package/gen/classes/InputEventGesture.ts +20 -0
  312. package/gen/classes/InputEventJoypadButton.ts +30 -0
  313. package/gen/classes/InputEventJoypadMotion.ts +27 -0
  314. package/gen/classes/InputEventKey.ts +133 -0
  315. package/gen/classes/InputEventMIDI.ts +108 -0
  316. package/gen/classes/InputEventMagnifyGesture.ts +21 -0
  317. package/gen/classes/InputEventMouse.ts +35 -0
  318. package/gen/classes/InputEventMouseButton.ts +46 -0
  319. package/gen/classes/InputEventMouseMotion.ts +67 -0
  320. package/gen/classes/InputEventPanGesture.ts +22 -0
  321. package/gen/classes/InputEventScreenDrag.ts +71 -0
  322. package/gen/classes/InputEventScreenTouch.ts +45 -0
  323. package/gen/classes/InputEventShortcut.ts +21 -0
  324. package/gen/classes/InputEventWithModifiers.ts +56 -0
  325. package/gen/classes/InputMap.ts +97 -0
  326. package/gen/classes/InstancePlaceholder.ts +33 -0
  327. package/gen/classes/IntervalTweener.ts +15 -0
  328. package/gen/classes/ItemList.ts +482 -0
  329. package/gen/classes/IterateIK3D.ts +136 -0
  330. package/gen/classes/JNISingleton.ts +20 -0
  331. package/gen/classes/JSON.ts +163 -0
  332. package/gen/classes/JSONRPC.ts +87 -0
  333. package/gen/classes/JacobianIK3D.ts +16 -0
  334. package/gen/classes/JavaClass.ts +37 -0
  335. package/gen/classes/JavaClassWrapper.ts +94 -0
  336. package/gen/classes/JavaObject.ts +28 -0
  337. package/gen/classes/JavaScriptBridge.ts +85 -0
  338. package/gen/classes/JavaScriptObject.ts +45 -0
  339. package/gen/classes/Joint2D.ts +44 -0
  340. package/gen/classes/Joint3D.ts +46 -0
  341. package/gen/classes/JointLimitation3D.ts +14 -0
  342. package/gen/classes/JointLimitationCone3D.ts +21 -0
  343. package/gen/classes/KinematicCollision2D.ts +83 -0
  344. package/gen/classes/KinematicCollision3D.ts +88 -0
  345. package/gen/classes/Label.ts +184 -0
  346. package/gen/classes/Label3D.ts +280 -0
  347. package/gen/classes/LabelSettings.ts +168 -0
  348. package/gen/classes/Light2D.ts +150 -0
  349. package/gen/classes/Light3D.ts +310 -0
  350. package/gen/classes/LightOccluder2D.ts +33 -0
  351. package/gen/classes/LightmapGI.ts +291 -0
  352. package/gen/classes/LightmapGIData.ts +85 -0
  353. package/gen/classes/LightmapProbe.ts +16 -0
  354. package/gen/classes/Lightmapper.ts +14 -0
  355. package/gen/classes/LightmapperRD.ts +15 -0
  356. package/gen/classes/LimitAngularVelocityModifier3D.ts +91 -0
  357. package/gen/classes/Line2D.ts +191 -0
  358. package/gen/classes/LineEdit.ts +663 -0
  359. package/gen/classes/LinkButton.ts +99 -0
  360. package/gen/classes/Logger.ts +38 -0
  361. package/gen/classes/LookAtModifier3D.ts +245 -0
  362. package/gen/classes/MainLoop.ts +115 -0
  363. package/gen/classes/MarginContainer.ts +27 -0
  364. package/gen/classes/Marker2D.ts +20 -0
  365. package/gen/classes/Marker3D.ts +20 -0
  366. package/gen/classes/Marshalls.ts +50 -0
  367. package/gen/classes/Material.ts +53 -0
  368. package/gen/classes/MenuBar.ts +114 -0
  369. package/gen/classes/MenuButton.ts +51 -0
  370. package/gen/classes/Mesh.ts +348 -0
  371. package/gen/classes/MeshConvexDecompositionSettings.ts +106 -0
  372. package/gen/classes/MeshDataTool.ts +251 -0
  373. package/gen/classes/MeshInstance2D.ts +37 -0
  374. package/gen/classes/MeshInstance3D.ts +122 -0
  375. package/gen/classes/MeshLibrary.ts +149 -0
  376. package/gen/classes/MeshTexture.ts +34 -0
  377. package/gen/classes/MethodTweener.ts +32 -0
  378. package/gen/classes/MissingNode.ts +39 -0
  379. package/gen/classes/MissingResource.ts +27 -0
  380. package/gen/classes/MobileVRInterface.ts +89 -0
  381. package/gen/classes/ModifierBoneTarget3D.ts +27 -0
  382. package/gen/classes/MovieWriter.ts +34 -0
  383. package/gen/classes/MultiMesh.ts +197 -0
  384. package/gen/classes/MultiMeshInstance2D.ts +36 -0
  385. package/gen/classes/MultiMeshInstance3D.ts +22 -0
  386. package/gen/classes/MultiplayerAPI.ts +139 -0
  387. package/gen/classes/MultiplayerAPIExtension.ts +99 -0
  388. package/gen/classes/MultiplayerPeer.ts +148 -0
  389. package/gen/classes/MultiplayerPeerExtension.ts +17 -0
  390. package/gen/classes/MultiplayerSpawner.ts +75 -0
  391. package/gen/classes/MultiplayerSynchronizer.ts +119 -0
  392. package/gen/classes/Mutex.ts +37 -0
  393. package/gen/classes/NativeMenu.ts +567 -0
  394. package/gen/classes/NavigationAgent2D.ts +361 -0
  395. package/gen/classes/NavigationAgent3D.ts +380 -0
  396. package/gen/classes/NavigationLink2D.ts +107 -0
  397. package/gen/classes/NavigationLink3D.ts +107 -0
  398. package/gen/classes/NavigationMesh.ts +283 -0
  399. package/gen/classes/NavigationMeshGenerator.ts +46 -0
  400. package/gen/classes/NavigationMeshSourceGeometryData2D.ts +75 -0
  401. package/gen/classes/NavigationMeshSourceGeometryData3D.ts +76 -0
  402. package/gen/classes/NavigationObstacle2D.ts +87 -0
  403. package/gen/classes/NavigationObstacle3D.ts +100 -0
  404. package/gen/classes/NavigationPathQueryParameters2D.ts +162 -0
  405. package/gen/classes/NavigationPathQueryParameters3D.ts +162 -0
  406. package/gen/classes/NavigationPathQueryResult2D.ts +64 -0
  407. package/gen/classes/NavigationPathQueryResult3D.ts +64 -0
  408. package/gen/classes/NavigationPolygon.ts +259 -0
  409. package/gen/classes/NavigationRegion2D.ts +116 -0
  410. package/gen/classes/NavigationRegion3D.ts +116 -0
  411. package/gen/classes/NavigationServer2D.ts +799 -0
  412. package/gen/classes/NavigationServer2DManager.ts +28 -0
  413. package/gen/classes/NavigationServer3D.ts +888 -0
  414. package/gen/classes/NavigationServer3DManager.ts +28 -0
  415. package/gen/classes/NinePatchRect.ts +95 -0
  416. package/gen/classes/Node.ts +1336 -0
  417. package/gen/classes/Node2D.ts +150 -0
  418. package/gen/classes/Node3D.ts +404 -0
  419. package/gen/classes/Node3DGizmo.ts +14 -0
  420. package/gen/classes/Noise.ts +67 -0
  421. package/gen/classes/NoiseTexture2D.ts +104 -0
  422. package/gen/classes/NoiseTexture3D.ts +84 -0
  423. package/gen/classes/ORMMaterial3D.ts +14 -0
  424. package/gen/classes/OS.ts +848 -0
  425. package/gen/classes/Object.ts +583 -0
  426. package/gen/classes/Occluder3D.ts +25 -0
  427. package/gen/classes/OccluderInstance3D.ts +54 -0
  428. package/gen/classes/OccluderPolygon2D.ts +51 -0
  429. package/gen/classes/OfflineMultiplayerPeer.ts +15 -0
  430. package/gen/classes/OggPacketSequence.ts +38 -0
  431. package/gen/classes/OggPacketSequencePlayback.ts +11 -0
  432. package/gen/classes/OmniLight3D.ts +49 -0
  433. package/gen/classes/OpenXRAPIExtension.ts +303 -0
  434. package/gen/classes/OpenXRAction.ts +55 -0
  435. package/gen/classes/OpenXRActionBindingModifier.ts +14 -0
  436. package/gen/classes/OpenXRActionMap.ts +86 -0
  437. package/gen/classes/OpenXRActionSet.ts +50 -0
  438. package/gen/classes/OpenXRAnalogThresholdModifier.ts +40 -0
  439. package/gen/classes/OpenXRAnchorTracker.ts +32 -0
  440. package/gen/classes/OpenXRAndroidThreadSettingsExtension.ts +43 -0
  441. package/gen/classes/OpenXRBindingModifier.ts +14 -0
  442. package/gen/classes/OpenXRCompositionLayer.ts +275 -0
  443. package/gen/classes/OpenXRCompositionLayerCylinder.ts +38 -0
  444. package/gen/classes/OpenXRCompositionLayerEquirect.ts +44 -0
  445. package/gen/classes/OpenXRCompositionLayerQuad.ts +21 -0
  446. package/gen/classes/OpenXRDpadBindingModifier.ts +73 -0
  447. package/gen/classes/OpenXRExtensionWrapper.ts +33 -0
  448. package/gen/classes/OpenXRExtensionWrapperExtension.ts +14 -0
  449. package/gen/classes/OpenXRFrameSynthesisExtension.ts +36 -0
  450. package/gen/classes/OpenXRFutureExtension.ts +43 -0
  451. package/gen/classes/OpenXRFutureResult.ts +64 -0
  452. package/gen/classes/OpenXRHand.ts +117 -0
  453. package/gen/classes/OpenXRHapticBase.ts +13 -0
  454. package/gen/classes/OpenXRHapticVibration.ts +32 -0
  455. package/gen/classes/OpenXRIPBinding.ts +72 -0
  456. package/gen/classes/OpenXRIPBindingModifier.ts +14 -0
  457. package/gen/classes/OpenXRInteractionProfile.ts +56 -0
  458. package/gen/classes/OpenXRInteractionProfileMetadata.ts +43 -0
  459. package/gen/classes/OpenXRInterface.ts +550 -0
  460. package/gen/classes/OpenXRMarkerTracker.ts +46 -0
  461. package/gen/classes/OpenXRPlaneTracker.ts +68 -0
  462. package/gen/classes/OpenXRRenderModel.ts +33 -0
  463. package/gen/classes/OpenXRRenderModelExtension.ts +105 -0
  464. package/gen/classes/OpenXRRenderModelManager.ts +63 -0
  465. package/gen/classes/OpenXRSpatialAnchorCapability.ts +114 -0
  466. package/gen/classes/OpenXRSpatialCapabilityConfigurationAnchor.ts +21 -0
  467. package/gen/classes/OpenXRSpatialCapabilityConfigurationAprilTag.ts +50 -0
  468. package/gen/classes/OpenXRSpatialCapabilityConfigurationAruco.ts +98 -0
  469. package/gen/classes/OpenXRSpatialCapabilityConfigurationBaseHeader.ts +25 -0
  470. package/gen/classes/OpenXRSpatialCapabilityConfigurationMicroQrCode.ts +21 -0
  471. package/gen/classes/OpenXRSpatialCapabilityConfigurationPlaneTracking.ts +36 -0
  472. package/gen/classes/OpenXRSpatialCapabilityConfigurationQrCode.ts +21 -0
  473. package/gen/classes/OpenXRSpatialComponentAnchorList.ts +20 -0
  474. package/gen/classes/OpenXRSpatialComponentBounded2DList.ts +25 -0
  475. package/gen/classes/OpenXRSpatialComponentBounded3DList.ts +25 -0
  476. package/gen/classes/OpenXRSpatialComponentData.ts +24 -0
  477. package/gen/classes/OpenXRSpatialComponentMarkerList.ts +60 -0
  478. package/gen/classes/OpenXRSpatialComponentMesh2DList.ts +31 -0
  479. package/gen/classes/OpenXRSpatialComponentMesh3DList.ts +26 -0
  480. package/gen/classes/OpenXRSpatialComponentParentList.ts +20 -0
  481. package/gen/classes/OpenXRSpatialComponentPersistenceList.ts +24 -0
  482. package/gen/classes/OpenXRSpatialComponentPlaneAlignmentList.ts +41 -0
  483. package/gen/classes/OpenXRSpatialComponentPlaneSemanticLabelList.ts +45 -0
  484. package/gen/classes/OpenXRSpatialComponentPolygon2DList.ts +26 -0
  485. package/gen/classes/OpenXRSpatialContextPersistenceConfig.ts +30 -0
  486. package/gen/classes/OpenXRSpatialEntityExtension.ts +241 -0
  487. package/gen/classes/OpenXRSpatialEntityTracker.ts +82 -0
  488. package/gen/classes/OpenXRSpatialMarkerTrackingCapability.ts +56 -0
  489. package/gen/classes/OpenXRSpatialPlaneTrackingCapability.ts +33 -0
  490. package/gen/classes/OpenXRSpatialQueryResultData.ts +30 -0
  491. package/gen/classes/OpenXRStructureBase.ts +25 -0
  492. package/gen/classes/OpenXRVisibilityMask.ts +15 -0
  493. package/gen/classes/OptimizedTranslation.ts +22 -0
  494. package/gen/classes/OptionButton.ts +236 -0
  495. package/gen/classes/PCKPacker.ts +57 -0
  496. package/gen/classes/PackedDataContainer.ts +58 -0
  497. package/gen/classes/PackedDataContainerRef.ts +47 -0
  498. package/gen/classes/PackedScene.ts +104 -0
  499. package/gen/classes/PacketPeer.ts +56 -0
  500. package/gen/classes/PacketPeerDTLS.ts +65 -0
  501. package/gen/classes/PacketPeerExtension.ts +12 -0
  502. package/gen/classes/PacketPeerStream.ts +28 -0
  503. package/gen/classes/PacketPeerUDP.ts +139 -0
  504. package/gen/classes/Panel.ts +14 -0
  505. package/gen/classes/PanelContainer.ts +14 -0
  506. package/gen/classes/PanoramaSkyMaterial.ts +35 -0
  507. package/gen/classes/Parallax2D.ts +78 -0
  508. package/gen/classes/ParallaxBackground.ts +52 -0
  509. package/gen/classes/ParallaxLayer.ts +38 -0
  510. package/gen/classes/ParticleProcessMaterial.ts +949 -0
  511. package/gen/classes/Path2D.ts +22 -0
  512. package/gen/classes/Path3D.ts +42 -0
  513. package/gen/classes/PathFollow2D.ts +60 -0
  514. package/gen/classes/PathFollow3D.ts +104 -0
  515. package/gen/classes/Performance.ts +370 -0
  516. package/gen/classes/PhysicalBone2D.ts +59 -0
  517. package/gen/classes/PhysicalBone3D.ts +189 -0
  518. package/gen/classes/PhysicalBoneSimulator3D.ts +43 -0
  519. package/gen/classes/PhysicalSkyMaterial.ts +83 -0
  520. package/gen/classes/PhysicsBody2D.ts +55 -0
  521. package/gen/classes/PhysicsBody3D.ts +94 -0
  522. package/gen/classes/PhysicsDirectBodyState2D.ts +249 -0
  523. package/gen/classes/PhysicsDirectBodyState2DExtension.ts +19 -0
  524. package/gen/classes/PhysicsDirectBodyState3D.ts +256 -0
  525. package/gen/classes/PhysicsDirectBodyState3DExtension.ts +19 -0
  526. package/gen/classes/PhysicsDirectSpaceState2D.ts +77 -0
  527. package/gen/classes/PhysicsDirectSpaceState2DExtension.ts +19 -0
  528. package/gen/classes/PhysicsDirectSpaceState3D.ts +81 -0
  529. package/gen/classes/PhysicsDirectSpaceState3DExtension.ts +19 -0
  530. package/gen/classes/PhysicsMaterial.ts +39 -0
  531. package/gen/classes/PhysicsPointQueryParameters2D.ts +54 -0
  532. package/gen/classes/PhysicsPointQueryParameters3D.ts +47 -0
  533. package/gen/classes/PhysicsRayQueryParameters2D.ts +71 -0
  534. package/gen/classes/PhysicsRayQueryParameters3D.ts +77 -0
  535. package/gen/classes/PhysicsServer2D.ts +1078 -0
  536. package/gen/classes/PhysicsServer2DExtension.ts +33 -0
  537. package/gen/classes/PhysicsServer2DManager.ts +28 -0
  538. package/gen/classes/PhysicsServer3D.ts +1620 -0
  539. package/gen/classes/PhysicsServer3DExtension.ts +26 -0
  540. package/gen/classes/PhysicsServer3DManager.ts +28 -0
  541. package/gen/classes/PhysicsServer3DRenderingServerHandler.ts +27 -0
  542. package/gen/classes/PhysicsShapeQueryParameters2D.ts +89 -0
  543. package/gen/classes/PhysicsShapeQueryParameters3D.ts +89 -0
  544. package/gen/classes/PhysicsTestMotionParameters2D.ts +60 -0
  545. package/gen/classes/PhysicsTestMotionParameters3D.ts +66 -0
  546. package/gen/classes/PhysicsTestMotionResult2D.ts +82 -0
  547. package/gen/classes/PhysicsTestMotionResult3D.ts +87 -0
  548. package/gen/classes/PinJoint2D.ts +50 -0
  549. package/gen/classes/PinJoint3D.ts +42 -0
  550. package/gen/classes/PlaceholderCubemap.ts +17 -0
  551. package/gen/classes/PlaceholderCubemapArray.ts +17 -0
  552. package/gen/classes/PlaceholderMaterial.ts +16 -0
  553. package/gen/classes/PlaceholderMesh.ts +23 -0
  554. package/gen/classes/PlaceholderTexture2D.ts +24 -0
  555. package/gen/classes/PlaceholderTexture2DArray.ts +17 -0
  556. package/gen/classes/PlaceholderTexture3D.ts +24 -0
  557. package/gen/classes/PlaceholderTextureLayered.ts +29 -0
  558. package/gen/classes/PlaneMesh.ts +64 -0
  559. package/gen/classes/PointLight2D.ts +40 -0
  560. package/gen/classes/PointMesh.ts +16 -0
  561. package/gen/classes/Polygon2D.ts +150 -0
  562. package/gen/classes/PolygonOccluder3D.ts +23 -0
  563. package/gen/classes/PolygonPathFinder.ts +61 -0
  564. package/gen/classes/Popup.ts +22 -0
  565. package/gen/classes/PopupMenu.ts +567 -0
  566. package/gen/classes/PopupPanel.ts +14 -0
  567. package/gen/classes/PortableCompressedTexture2D.ts +74 -0
  568. package/gen/classes/PrimitiveMesh.ts +69 -0
  569. package/gen/classes/PrismMesh.ts +45 -0
  570. package/gen/classes/ProceduralSkyMaterial.ts +102 -0
  571. package/gen/classes/ProgressBar.ts +60 -0
  572. package/gen/classes/ProjectSettings.ts +233 -0
  573. package/gen/classes/PropertyTweener.ts +94 -0
  574. package/gen/classes/QuadMesh.ts +14 -0
  575. package/gen/classes/QuadOccluder3D.ts +22 -0
  576. package/gen/classes/RDAccelerationStructureGeometry.ts +71 -0
  577. package/gen/classes/RDAccelerationStructureInstance.ts +53 -0
  578. package/gen/classes/RDAttachmentFormat.ts +33 -0
  579. package/gen/classes/RDFramebufferPass.ts +52 -0
  580. package/gen/classes/RDHitGroup.ts +35 -0
  581. package/gen/classes/RDPipelineColorBlendState.ts +42 -0
  582. package/gen/classes/RDPipelineColorBlendStateAttachment.ts +161 -0
  583. package/gen/classes/RDPipelineDepthStencilState.ts +141 -0
  584. package/gen/classes/RDPipelineMultisampleState.ts +52 -0
  585. package/gen/classes/RDPipelineRasterizationState.ts +81 -0
  586. package/gen/classes/RDPipelineShader.ts +29 -0
  587. package/gen/classes/RDPipelineSpecializationConstant.ts +28 -0
  588. package/gen/classes/RDSamplerState.ts +106 -0
  589. package/gen/classes/RDShaderFile.ts +38 -0
  590. package/gen/classes/RDShaderSPIRV.ts +136 -0
  591. package/gen/classes/RDShaderSource.ts +82 -0
  592. package/gen/classes/RDTextureFormat.ts +93 -0
  593. package/gen/classes/RDTextureView.ts +45 -0
  594. package/gen/classes/RDUniform.ts +43 -0
  595. package/gen/classes/RDVertexAttribute.ts +52 -0
  596. package/gen/classes/RandomNumberGenerator.ts +114 -0
  597. package/gen/classes/Range.ts +104 -0
  598. package/gen/classes/RayCast2D.ts +148 -0
  599. package/gen/classes/RayCast3D.ts +172 -0
  600. package/gen/classes/RectangleShape2D.ts +22 -0
  601. package/gen/classes/RefCounted.ts +41 -0
  602. package/gen/classes/ReferenceRect.ts +33 -0
  603. package/gen/classes/ReflectionProbe.ts +145 -0
  604. package/gen/classes/RegEx.ts +129 -0
  605. package/gen/classes/RegExMatch.ts +53 -0
  606. package/gen/classes/RemoteTransform2D.ts +51 -0
  607. package/gen/classes/RemoteTransform3D.ts +51 -0
  608. package/gen/classes/RenderData.ts +37 -0
  609. package/gen/classes/RenderDataExtension.ts +17 -0
  610. package/gen/classes/RenderDataRD.ts +15 -0
  611. package/gen/classes/RenderSceneBuffers.ts +20 -0
  612. package/gen/classes/RenderSceneBuffersConfiguration.ts +78 -0
  613. package/gen/classes/RenderSceneBuffersExtension.ts +15 -0
  614. package/gen/classes/RenderSceneBuffersRD.ts +163 -0
  615. package/gen/classes/RenderSceneData.ts +49 -0
  616. package/gen/classes/RenderSceneDataExtension.ts +16 -0
  617. package/gen/classes/RenderSceneDataRD.ts +15 -0
  618. package/gen/classes/RenderingDevice.ts +3416 -0
  619. package/gen/classes/RenderingServer.ts +5580 -0
  620. package/gen/classes/Resource.ts +171 -0
  621. package/gen/classes/ResourceFormatLoader.ts +44 -0
  622. package/gen/classes/ResourceFormatSaver.ts +18 -0
  623. package/gen/classes/ResourceImporter.ts +28 -0
  624. package/gen/classes/ResourceLoader.ts +178 -0
  625. package/gen/classes/ResourcePreloader.ts +50 -0
  626. package/gen/classes/ResourceSaver.ts +94 -0
  627. package/gen/classes/ResourceUID.ts +73 -0
  628. package/gen/classes/RetargetModifier3D.ts +91 -0
  629. package/gen/classes/RibbonTrailMesh.ts +66 -0
  630. package/gen/classes/RichTextEffect.ts +27 -0
  631. package/gen/classes/RichTextLabel.ts +860 -0
  632. package/gen/classes/RigidBody2D.ts +359 -0
  633. package/gen/classes/RigidBody3D.ts +347 -0
  634. package/gen/classes/RootMotionView.ts +47 -0
  635. package/gen/classes/SceneMultiplayer.ts +122 -0
  636. package/gen/classes/SceneReplicationConfig.ts +96 -0
  637. package/gen/classes/SceneState.ts +160 -0
  638. package/gen/classes/SceneTree.ts +371 -0
  639. package/gen/classes/SceneTreeTimer.ts +42 -0
  640. package/gen/classes/Script.ts +122 -0
  641. package/gen/classes/ScriptBacktrace.ts +103 -0
  642. package/gen/classes/ScriptExtension.ts +15 -0
  643. package/gen/classes/ScriptLanguage.ts +21 -0
  644. package/gen/classes/ScriptLanguageExtension.ts +72 -0
  645. package/gen/classes/ScrollBar.ts +26 -0
  646. package/gen/classes/ScrollContainer.ts +199 -0
  647. package/gen/classes/SegmentShape2D.ts +27 -0
  648. package/gen/classes/Semaphore.ts +33 -0
  649. package/gen/classes/SeparationRayShape2D.ts +27 -0
  650. package/gen/classes/SeparationRayShape3D.ts +27 -0
  651. package/gen/classes/Separator.ts +13 -0
  652. package/gen/classes/Shader.ts +83 -0
  653. package/gen/classes/ShaderGlobalsOverride.ts +16 -0
  654. package/gen/classes/ShaderInclude.ts +20 -0
  655. package/gen/classes/ShaderIncludeDB.ts +30 -0
  656. package/gen/classes/ShaderMaterial.ts +36 -0
  657. package/gen/classes/Shape2D.ts +61 -0
  658. package/gen/classes/Shape3D.ts +35 -0
  659. package/gen/classes/ShapeCast2D.ts +168 -0
  660. package/gen/classes/ShapeCast3D.ts +181 -0
  661. package/gen/classes/Shortcut.ts +60 -0
  662. package/gen/classes/Skeleton2D.ts +67 -0
  663. package/gen/classes/Skeleton3D.ts +359 -0
  664. package/gen/classes/SkeletonIK3D.ts +119 -0
  665. package/gen/classes/SkeletonModification2D.ts +58 -0
  666. package/gen/classes/SkeletonModification2DCCDIK.ts +107 -0
  667. package/gen/classes/SkeletonModification2DFABRIK.ts +73 -0
  668. package/gen/classes/SkeletonModification2DJiggle.ts +165 -0
  669. package/gen/classes/SkeletonModification2DLookAt.ts +84 -0
  670. package/gen/classes/SkeletonModification2DPhysicalBones.ts +49 -0
  671. package/gen/classes/SkeletonModification2DStackHolder.ts +26 -0
  672. package/gen/classes/SkeletonModification2DTwoBoneIK.ts +80 -0
  673. package/gen/classes/SkeletonModificationStack2D.ts +82 -0
  674. package/gen/classes/SkeletonModifier3D.ts +168 -0
  675. package/gen/classes/SkeletonProfile.ts +180 -0
  676. package/gen/classes/SkeletonProfileHumanoid.ts +76 -0
  677. package/gen/classes/Skin.ts +35 -0
  678. package/gen/classes/SkinReference.ts +30 -0
  679. package/gen/classes/Sky.ts +94 -0
  680. package/gen/classes/Slider.ts +78 -0
  681. package/gen/classes/SliderJoint3D.ts +122 -0
  682. package/gen/classes/SocketServer.ts +34 -0
  683. package/gen/classes/SoftBody3D.ts +188 -0
  684. package/gen/classes/SphereMesh.ts +45 -0
  685. package/gen/classes/SphereOccluder3D.ts +21 -0
  686. package/gen/classes/SphereShape3D.ts +21 -0
  687. package/gen/classes/SpinBox.ts +97 -0
  688. package/gen/classes/SplineIK3D.ts +70 -0
  689. package/gen/classes/SplitContainer.ts +163 -0
  690. package/gen/classes/SpotLight3D.ts +46 -0
  691. package/gen/classes/SpringArm3D.ts +64 -0
  692. package/gen/classes/SpringBoneCollision3D.ts +48 -0
  693. package/gen/classes/SpringBoneCollisionCapsule3D.ts +40 -0
  694. package/gen/classes/SpringBoneCollisionPlane3D.ts +14 -0
  695. package/gen/classes/SpringBoneCollisionSphere3D.ts +26 -0
  696. package/gen/classes/SpringBoneSimulator3D.ts +476 -0
  697. package/gen/classes/Sprite2D.ts +125 -0
  698. package/gen/classes/Sprite3D.ts +71 -0
  699. package/gen/classes/SpriteBase3D.ts +205 -0
  700. package/gen/classes/SpriteFrames.ts +147 -0
  701. package/gen/classes/StandardMaterial3D.ts +14 -0
  702. package/gen/classes/StaticBody2D.ts +37 -0
  703. package/gen/classes/StaticBody3D.ts +37 -0
  704. package/gen/classes/StatusIndicator.ts +50 -0
  705. package/gen/classes/StreamPeer.ts +206 -0
  706. package/gen/classes/StreamPeerBuffer.ts +52 -0
  707. package/gen/classes/StreamPeerExtension.ts +12 -0
  708. package/gen/classes/StreamPeerGZIP.ts +37 -0
  709. package/gen/classes/StreamPeerSocket.ts +51 -0
  710. package/gen/classes/StreamPeerTCP.ts +48 -0
  711. package/gen/classes/StreamPeerTLS.ts +73 -0
  712. package/gen/classes/StreamPeerUDS.ts +32 -0
  713. package/gen/classes/StyleBox.ts +86 -0
  714. package/gen/classes/StyleBoxEmpty.ts +14 -0
  715. package/gen/classes/StyleBoxFlat.ts +200 -0
  716. package/gen/classes/StyleBoxLine.ts +45 -0
  717. package/gen/classes/StyleBoxTexture.ts +138 -0
  718. package/gen/classes/SubViewport.ts +98 -0
  719. package/gen/classes/SubViewportContainer.ts +40 -0
  720. package/gen/classes/SubtweenTweener.ts +20 -0
  721. package/gen/classes/SurfaceTool.ts +271 -0
  722. package/gen/classes/SyntaxHighlighter.ts +54 -0
  723. package/gen/classes/SystemFont.ts +122 -0
  724. package/gen/classes/TCPServer.ts +35 -0
  725. package/gen/classes/TLSOptions.ts +79 -0
  726. package/gen/classes/TabBar.ts +363 -0
  727. package/gen/classes/TabContainer.ts +296 -0
  728. package/gen/classes/TextEdit.ts +1458 -0
  729. package/gen/classes/TextLine.ts +179 -0
  730. package/gen/classes/TextMesh.ts +134 -0
  731. package/gen/classes/TextParagraph.ts +278 -0
  732. package/gen/classes/TextServer.ts +1891 -0
  733. package/gen/classes/TextServerAdvanced.ts +14 -0
  734. package/gen/classes/TextServerDummy.ts +30 -0
  735. package/gen/classes/TextServerExtension.ts +20 -0
  736. package/gen/classes/TextServerManager.ts +71 -0
  737. package/gen/classes/Texture.ts +14 -0
  738. package/gen/classes/Texture2D.ts +84 -0
  739. package/gen/classes/Texture2DArray.ts +22 -0
  740. package/gen/classes/Texture2DArrayRD.ts +15 -0
  741. package/gen/classes/Texture2DRD.ts +22 -0
  742. package/gen/classes/Texture3D.ts +55 -0
  743. package/gen/classes/Texture3DRD.ts +22 -0
  744. package/gen/classes/TextureButton.ts +112 -0
  745. package/gen/classes/TextureCubemapArrayRD.ts +15 -0
  746. package/gen/classes/TextureCubemapRD.ts +15 -0
  747. package/gen/classes/TextureLayered.ts +73 -0
  748. package/gen/classes/TextureLayeredRD.ts +21 -0
  749. package/gen/classes/TextureProgressBar.ts +158 -0
  750. package/gen/classes/TextureRect.ts +109 -0
  751. package/gen/classes/Theme.ts +438 -0
  752. package/gen/classes/ThemeDB.ts +72 -0
  753. package/gen/classes/Thread.ts +86 -0
  754. package/gen/classes/TileData.ts +255 -0
  755. package/gen/classes/TileMap.ts +400 -0
  756. package/gen/classes/TileMapLayer.ts +303 -0
  757. package/gen/classes/TileMapPattern.ts +67 -0
  758. package/gen/classes/TileSet.ts +619 -0
  759. package/gen/classes/TileSetAtlasSource.ts +269 -0
  760. package/gen/classes/TileSetScenesCollectionSource.ts +87 -0
  761. package/gen/classes/TileSetSource.ts +50 -0
  762. package/gen/classes/Time.ts +237 -0
  763. package/gen/classes/Timer.ts +109 -0
  764. package/gen/classes/TorusMesh.ts +38 -0
  765. package/gen/classes/TouchScreenButton.ts +106 -0
  766. package/gen/classes/Translation.ts +91 -0
  767. package/gen/classes/TranslationDomain.ts +154 -0
  768. package/gen/classes/TranslationServer.ts +194 -0
  769. package/gen/classes/Tree.ts +521 -0
  770. package/gen/classes/TreeItem.ts +682 -0
  771. package/gen/classes/TriangleMesh.ts +52 -0
  772. package/gen/classes/TubeTrailMesh.ts +64 -0
  773. package/gen/classes/Tween.ts +604 -0
  774. package/gen/classes/Tweener.ts +20 -0
  775. package/gen/classes/TwoBoneIK3D.ts +173 -0
  776. package/gen/classes/UDPServer.ts +115 -0
  777. package/gen/classes/UDSServer.ts +28 -0
  778. package/gen/classes/UPNP.ts +279 -0
  779. package/gen/classes/UPNPDevice.ts +116 -0
  780. package/gen/classes/UndoRedo.ts +226 -0
  781. package/gen/classes/UniformSetCacheRD.ts +21 -0
  782. package/gen/classes/VBoxContainer.ts +14 -0
  783. package/gen/classes/VFlowContainer.ts +14 -0
  784. package/gen/classes/VScrollBar.ts +14 -0
  785. package/gen/classes/VSeparator.ts +14 -0
  786. package/gen/classes/VSlider.ts +14 -0
  787. package/gen/classes/VSplitContainer.ts +14 -0
  788. package/gen/classes/VehicleBody3D.ts +38 -0
  789. package/gen/classes/VehicleWheel3D.ts +134 -0
  790. package/gen/classes/VideoStream.ts +22 -0
  791. package/gen/classes/VideoStreamPlayback.ts +21 -0
  792. package/gen/classes/VideoStreamPlayer.ts +129 -0
  793. package/gen/classes/VideoStreamTheora.ts +15 -0
  794. package/gen/classes/Viewport.ts +1109 -0
  795. package/gen/classes/ViewportTexture.ts +35 -0
  796. package/gen/classes/VirtualJoystick.ts +150 -0
  797. package/gen/classes/VisibleOnScreenEnabler2D.ts +47 -0
  798. package/gen/classes/VisibleOnScreenEnabler3D.ts +47 -0
  799. package/gen/classes/VisibleOnScreenNotifier2D.ts +48 -0
  800. package/gen/classes/VisibleOnScreenNotifier3D.ts +42 -0
  801. package/gen/classes/VisualInstance3D.ts +69 -0
  802. package/gen/classes/VisualShader.ts +247 -0
  803. package/gen/classes/VisualShaderNode.ts +103 -0
  804. package/gen/classes/VisualShaderNodeBillboard.ts +52 -0
  805. package/gen/classes/VisualShaderNodeBooleanConstant.ts +21 -0
  806. package/gen/classes/VisualShaderNodeBooleanParameter.ts +26 -0
  807. package/gen/classes/VisualShaderNodeClamp.ts +54 -0
  808. package/gen/classes/VisualShaderNodeColorConstant.ts +22 -0
  809. package/gen/classes/VisualShaderNodeColorFunc.ts +106 -0
  810. package/gen/classes/VisualShaderNodeColorOp.ts +144 -0
  811. package/gen/classes/VisualShaderNodeColorParameter.ts +27 -0
  812. package/gen/classes/VisualShaderNodeComment.ts +20 -0
  813. package/gen/classes/VisualShaderNodeCompare.ts +124 -0
  814. package/gen/classes/VisualShaderNodeConstant.ts +13 -0
  815. package/gen/classes/VisualShaderNodeCubemap.ts +72 -0
  816. package/gen/classes/VisualShaderNodeCubemapParameter.ts +14 -0
  817. package/gen/classes/VisualShaderNodeCurveTexture.ts +21 -0
  818. package/gen/classes/VisualShaderNodeCurveXYZTexture.ts +21 -0
  819. package/gen/classes/VisualShaderNodeCustom.ts +38 -0
  820. package/gen/classes/VisualShaderNodeDerivativeFunc.ts +100 -0
  821. package/gen/classes/VisualShaderNodeDeterminant.ts +14 -0
  822. package/gen/classes/VisualShaderNodeDistanceFade.ts +14 -0
  823. package/gen/classes/VisualShaderNodeDotProduct.ts +14 -0
  824. package/gen/classes/VisualShaderNodeExpression.ts +21 -0
  825. package/gen/classes/VisualShaderNodeFaceForward.ts +14 -0
  826. package/gen/classes/VisualShaderNodeFloatConstant.ts +20 -0
  827. package/gen/classes/VisualShaderNodeFloatFunc.ts +158 -0
  828. package/gen/classes/VisualShaderNodeFloatOp.ts +70 -0
  829. package/gen/classes/VisualShaderNodeFloatParameter.ts +72 -0
  830. package/gen/classes/VisualShaderNodeFrame.ts +58 -0
  831. package/gen/classes/VisualShaderNodeFresnel.ts +14 -0
  832. package/gen/classes/VisualShaderNodeGlobalExpression.ts +14 -0
  833. package/gen/classes/VisualShaderNodeGroupBase.ts +118 -0
  834. package/gen/classes/VisualShaderNodeIf.ts +17 -0
  835. package/gen/classes/VisualShaderNodeInput.ts +32 -0
  836. package/gen/classes/VisualShaderNodeIntConstant.ts +20 -0
  837. package/gen/classes/VisualShaderNodeIntFunc.ts +46 -0
  838. package/gen/classes/VisualShaderNodeIntOp.ts +78 -0
  839. package/gen/classes/VisualShaderNodeIntParameter.ts +83 -0
  840. package/gen/classes/VisualShaderNodeIs.ts +38 -0
  841. package/gen/classes/VisualShaderNodeLinearSceneDepth.ts +14 -0
  842. package/gen/classes/VisualShaderNodeMix.ts +58 -0
  843. package/gen/classes/VisualShaderNodeMultiplyAdd.ts +46 -0
  844. package/gen/classes/VisualShaderNodeOuterProduct.ts +14 -0
  845. package/gen/classes/VisualShaderNodeOutput.ts +13 -0
  846. package/gen/classes/VisualShaderNodeParameter.ts +57 -0
  847. package/gen/classes/VisualShaderNodeParameterRef.ts +23 -0
  848. package/gen/classes/VisualShaderNodeParticleAccelerator.ts +42 -0
  849. package/gen/classes/VisualShaderNodeParticleBoxEmitter.ts +14 -0
  850. package/gen/classes/VisualShaderNodeParticleConeVelocity.ts +14 -0
  851. package/gen/classes/VisualShaderNodeParticleEmit.ts +46 -0
  852. package/gen/classes/VisualShaderNodeParticleEmitter.ts +19 -0
  853. package/gen/classes/VisualShaderNodeParticleMeshEmitter.ts +33 -0
  854. package/gen/classes/VisualShaderNodeParticleMultiplyByAxisAngle.ts +20 -0
  855. package/gen/classes/VisualShaderNodeParticleOutput.ts +14 -0
  856. package/gen/classes/VisualShaderNodeParticleRandomness.ts +46 -0
  857. package/gen/classes/VisualShaderNodeParticleRingEmitter.ts +14 -0
  858. package/gen/classes/VisualShaderNodeParticleSphereEmitter.ts +14 -0
  859. package/gen/classes/VisualShaderNodeProximityFade.ts +14 -0
  860. package/gen/classes/VisualShaderNodeRandomRange.ts +14 -0
  861. package/gen/classes/VisualShaderNodeRemap.ts +55 -0
  862. package/gen/classes/VisualShaderNodeReroute.ts +18 -0
  863. package/gen/classes/VisualShaderNodeResizableBase.ts +20 -0
  864. package/gen/classes/VisualShaderNodeRotationByAxis.ts +14 -0
  865. package/gen/classes/VisualShaderNodeSDFRaymarch.ts +14 -0
  866. package/gen/classes/VisualShaderNodeSDFToScreenUV.ts +14 -0
  867. package/gen/classes/VisualShaderNodeSample3D.ts +37 -0
  868. package/gen/classes/VisualShaderNodeScreenNormalWorldSpace.ts +14 -0
  869. package/gen/classes/VisualShaderNodeScreenUVToSDF.ts +14 -0
  870. package/gen/classes/VisualShaderNodeSmoothStep.ts +59 -0
  871. package/gen/classes/VisualShaderNodeStep.ts +59 -0
  872. package/gen/classes/VisualShaderNodeSwitch.ts +62 -0
  873. package/gen/classes/VisualShaderNodeTexture.ts +96 -0
  874. package/gen/classes/VisualShaderNodeTexture2DArray.ts +21 -0
  875. package/gen/classes/VisualShaderNodeTexture2DArrayParameter.ts +14 -0
  876. package/gen/classes/VisualShaderNodeTexture2DParameter.ts +14 -0
  877. package/gen/classes/VisualShaderNodeTexture3D.ts +21 -0
  878. package/gen/classes/VisualShaderNodeTexture3DParameter.ts +14 -0
  879. package/gen/classes/VisualShaderNodeTextureParameter.ts +177 -0
  880. package/gen/classes/VisualShaderNodeTextureParameterTriplanar.ts +14 -0
  881. package/gen/classes/VisualShaderNodeTextureSDF.ts +14 -0
  882. package/gen/classes/VisualShaderNodeTextureSDFNormal.ts +14 -0
  883. package/gen/classes/VisualShaderNodeTransformCompose.ts +14 -0
  884. package/gen/classes/VisualShaderNodeTransformConstant.ts +21 -0
  885. package/gen/classes/VisualShaderNodeTransformDecompose.ts +14 -0
  886. package/gen/classes/VisualShaderNodeTransformFunc.ts +38 -0
  887. package/gen/classes/VisualShaderNodeTransformOp.ts +66 -0
  888. package/gen/classes/VisualShaderNodeTransformParameter.ts +27 -0
  889. package/gen/classes/VisualShaderNodeTransformVecMult.ts +46 -0
  890. package/gen/classes/VisualShaderNodeUIntConstant.ts +20 -0
  891. package/gen/classes/VisualShaderNodeUIntFunc.ts +38 -0
  892. package/gen/classes/VisualShaderNodeUIntOp.ts +78 -0
  893. package/gen/classes/VisualShaderNodeUIntParameter.ts +26 -0
  894. package/gen/classes/VisualShaderNodeUVFunc.ts +38 -0
  895. package/gen/classes/VisualShaderNodeUVPolarCoord.ts +14 -0
  896. package/gen/classes/VisualShaderNodeVarying.ts +26 -0
  897. package/gen/classes/VisualShaderNodeVaryingGetter.ts +14 -0
  898. package/gen/classes/VisualShaderNodeVaryingSetter.ts +14 -0
  899. package/gen/classes/VisualShaderNodeVec2Constant.ts +21 -0
  900. package/gen/classes/VisualShaderNodeVec2Parameter.ts +27 -0
  901. package/gen/classes/VisualShaderNodeVec3Constant.ts +21 -0
  902. package/gen/classes/VisualShaderNodeVec3Parameter.ts +27 -0
  903. package/gen/classes/VisualShaderNodeVec4Constant.ts +24 -0
  904. package/gen/classes/VisualShaderNodeVec4Parameter.ts +27 -0
  905. package/gen/classes/VisualShaderNodeVectorBase.ts +41 -0
  906. package/gen/classes/VisualShaderNodeVectorCompose.ts +14 -0
  907. package/gen/classes/VisualShaderNodeVectorDecompose.ts +14 -0
  908. package/gen/classes/VisualShaderNodeVectorDistance.ts +15 -0
  909. package/gen/classes/VisualShaderNodeVectorFunc.ts +162 -0
  910. package/gen/classes/VisualShaderNodeVectorLen.ts +14 -0
  911. package/gen/classes/VisualShaderNodeVectorOp.ts +78 -0
  912. package/gen/classes/VisualShaderNodeVectorRefract.ts +14 -0
  913. package/gen/classes/VisualShaderNodeWorldPositionFromDepth.ts +14 -0
  914. package/gen/classes/VoxelGI.ts +85 -0
  915. package/gen/classes/VoxelGIData.ts +95 -0
  916. package/gen/classes/WeakRef.ts +20 -0
  917. package/gen/classes/WebRTCDataChannel.ts +115 -0
  918. package/gen/classes/WebRTCDataChannelExtension.ts +14 -0
  919. package/gen/classes/WebRTCMultiplayerPeer.ts +63 -0
  920. package/gen/classes/WebRTCPeerConnection.ts +220 -0
  921. package/gen/classes/WebRTCPeerConnectionExtension.ts +15 -0
  922. package/gen/classes/WebSocketMultiplayerPeer.ts +81 -0
  923. package/gen/classes/WebSocketPeer.ts +213 -0
  924. package/gen/classes/WebXRInterface.ts +317 -0
  925. package/gen/classes/Window.ts +1127 -0
  926. package/gen/classes/WorkerThreadPool.ts +100 -0
  927. package/gen/classes/World2D.ts +36 -0
  928. package/gen/classes/World3D.ts +56 -0
  929. package/gen/classes/WorldBoundaryShape2D.ts +28 -0
  930. package/gen/classes/WorldBoundaryShape3D.ts +22 -0
  931. package/gen/classes/WorldEnvironment.ts +37 -0
  932. package/gen/classes/X509Certificate.ts +36 -0
  933. package/gen/classes/XMLParser.ts +154 -0
  934. package/gen/classes/XRAnchor3D.ts +27 -0
  935. package/gen/classes/XRBodyModifier3D.ts +70 -0
  936. package/gen/classes/XRBodyTracker.ts +444 -0
  937. package/gen/classes/XRCamera3D.ts +16 -0
  938. package/gen/classes/XRController3D.ts +79 -0
  939. package/gen/classes/XRControllerTracker.ts +16 -0
  940. package/gen/classes/XRFaceModifier3D.ts +29 -0
  941. package/gen/classes/XRFaceTracker.ts +614 -0
  942. package/gen/classes/XRHandModifier3D.ts +47 -0
  943. package/gen/classes/XRHandTracker.ts +246 -0
  944. package/gen/classes/XRInterface.ts +282 -0
  945. package/gen/classes/XRInterfaceExtension.ts +33 -0
  946. package/gen/classes/XRNode3D.ts +67 -0
  947. package/gen/classes/XROrigin3D.ts +29 -0
  948. package/gen/classes/XRPose.ts +80 -0
  949. package/gen/classes/XRPositionalTracker.ts +125 -0
  950. package/gen/classes/XRServer.ts +226 -0
  951. package/gen/classes/XRTracker.ts +40 -0
  952. package/gen/classes/XRVRS.ts +40 -0
  953. package/gen/classes/ZIPPacker.ts +114 -0
  954. package/gen/classes/ZIPReader.ts +89 -0
  955. package/gen/classes/index.ts +957 -0
  956. package/gen/global-constants.ts +60 -0
  957. package/gen/global-enums.ts +2284 -0
  958. package/gen/heap-types/GodotArray.ts +615 -0
  959. package/gen/heap-types/GodotDictionary.ts +298 -0
  960. package/gen/heap-types/PackedByteArray.ts +400 -0
  961. package/gen/heap-types/PackedColorArray.ts +144 -0
  962. package/gen/heap-types/PackedFloat32Array.ts +151 -0
  963. package/gen/heap-types/PackedFloat64Array.ts +152 -0
  964. package/gen/heap-types/PackedInt32Array.ts +144 -0
  965. package/gen/heap-types/PackedInt64Array.ts +145 -0
  966. package/gen/heap-types/PackedStringArray.ts +153 -0
  967. package/gen/heap-types/PackedVector2Array.ts +151 -0
  968. package/gen/heap-types/PackedVector3Array.ts +151 -0
  969. package/gen/heap-types/PackedVector4Array.ts +151 -0
  970. package/gen/heap-types/Signal.ts +180 -0
  971. package/gen/heap-types/index.ts +24 -0
  972. package/gen/index.ts +11 -0
  973. package/gen/utility-functions.ts +1457 -0
  974. package/gen/value-types/AABB.ts +288 -0
  975. package/gen/value-types/Basis.ts +283 -0
  976. package/gen/value-types/Color.ts +282 -0
  977. package/gen/value-types/Plane.ts +134 -0
  978. package/gen/value-types/Projection.ts +137 -0
  979. package/gen/value-types/Quaternion.ts +192 -0
  980. package/gen/value-types/Rect2.ts +182 -0
  981. package/gen/value-types/Rect2i.ts +161 -0
  982. package/gen/value-types/Transform2D.ts +206 -0
  983. package/gen/value-types/Transform3D.ts +137 -0
  984. package/gen/value-types/Vector2.ts +365 -0
  985. package/gen/value-types/Vector2i.ts +201 -0
  986. package/gen/value-types/Vector3.ts +365 -0
  987. package/gen/value-types/Vector3i.ts +202 -0
  988. package/gen/value-types/Vector4.ts +285 -0
  989. package/gen/value-types/Vector4i.ts +208 -0
  990. package/gen/value-types/index.ts +19 -0
  991. package/package.json +33 -0
  992. package/src/debug.ts +219 -0
  993. package/src/index.ts +36 -0
  994. package/src/runtime.ts +69 -0
@@ -0,0 +1,3119 @@
1
+ // Auto-generated from extension_api.json - DO NOT EDIT
2
+ // Generated by dev/codegen.ts
3
+
4
+ import { _C, _R, GodotVar, _G } from '../../src/runtime.ts';
5
+ import { Object } from './Object.ts';
6
+ import type { Error, HorizontalAlignment, Key, MouseButtonMask } from '../global-enums.ts';
7
+ import type { Callable, GodotArray, GodotDictionary, PackedInt32Array, PackedStringArray, PackedVector2Array, RID, Signal, Variant } from '../heap-types/index.ts';
8
+ import type { Color, Rect2, Rect2i, Transform2D, Vector2, Vector2i, Vector3i } from '../value-types/index.ts';
9
+ import type { Image } from './Image.ts';
10
+ import type { Resource } from './Resource.ts';
11
+ import type { Texture2D } from './Texture2D.ts';
12
+
13
+ let _$: any;
14
+ const $ = () => _$ ?? (_$ = _C(null, 40, 249));
15
+
16
+ /**
17
+ * {@link DisplayServer} handles everything related to window management. It is separated from {@link OS} as a single operating system may support multiple display servers.
18
+ * **Headless mode:** Starting the engine with the `--headless` [command line argument]($DOCS_URL/tutorials/editor/command_line_tutorial.html) disables all rendering and window management functions. Most functions from {@link DisplayServer} will return dummy values in this case.
19
+ */
20
+ export class DisplayServer extends GodotVar {
21
+
22
+ /**
23
+ * Returns `true` if the specified `feature` is supported by the current {@link DisplayServer}, `false` otherwise.
24
+ */
25
+ static hasFeature(feature: Feature): boolean { return _C($(), 7395, feature) as boolean; }
26
+
27
+ /**
28
+ * Returns the name of the {@link DisplayServer} currently in use. Most operating systems only have a single {@link DisplayServer}, but Linux has access to more than one {@link DisplayServer} (currently X11 and Wayland).
29
+ * The names of built-in display servers are `Windows`, `macOS`, `X11` (Linux), `Wayland` (Linux), `Android`, `iOS`, `web` (HTML5), and `headless` (when started with the `--headless` [command line argument]($DOCS_URL/tutorials/editor/command_line_tutorial.html)).
30
+ */
31
+ static getName(): string { return _C($(), 5602) as string; }
32
+
33
+ /**
34
+ * Sets native help system search callbacks.
35
+ * `searchCallback` has the following arguments: `String search_string, int result_limit` and return a {@link Dictionary} with "key, display name" pairs for the search results. Called when the user enters search terms in the `Help` menu.
36
+ * `actionCallback` has the following arguments: `String key`. Called when the user selects a search result in the `Help` menu.
37
+ * **Note:** This method is implemented only on macOS.
38
+ */
39
+ static helpSetSearchCallbacks(searchCallback: Callable, actionCallback: Callable): void { _C($(), 7503, searchCallback, actionCallback); }
40
+
41
+ /**
42
+ * Registers callables to emit when the menu is respectively about to show or closed. Callback methods should have zero arguments.
43
+ */
44
+ static globalMenuSetPopupCallbacks(menuRoot: string, openCallback: Callable, closeCallback: Callable): void { _C($(), 7245, menuRoot, openCallback, closeCallback); }
45
+
46
+ /**
47
+ * Adds an item that will act as a submenu of the global menu `menuRoot`. The `submenu` argument is the ID of the global menu root that will be shown when the item is clicked.
48
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
49
+ * **Note:** This method is implemented only on macOS.
50
+ * **Supported system menu IDs:**
51
+ *
52
+ * ```text
53
+ *
54
+ * "_main" - Main menu (macOS).
55
+ * "_dock" - Dock popup menu (macOS).
56
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
57
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
58
+ * "_help" - Help menu (macOS).
59
+ *
60
+ * ```
61
+ */
62
+ static globalMenuAddSubmenuItem(menuRoot: string, label: string, submenu: string, index?: number /* = -1 */): number { return _C($(), 7205, menuRoot, label, submenu, index) as number; }
63
+
64
+ /**
65
+ * Adds a new item with text `label` to the global menu with ID `menuRoot`.
66
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
67
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
68
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
69
+ * **Note:** This method is implemented only on macOS.
70
+ * **Supported system menu IDs:**
71
+ *
72
+ * ```text
73
+ *
74
+ * "_main" - Main menu (macOS).
75
+ * "_dock" - Dock popup menu (macOS).
76
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
77
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
78
+ * "_help" - Help menu (macOS).
79
+ *
80
+ * ```
81
+ */
82
+ static globalMenuAddItem(menuRoot: string, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7201, menuRoot, label, callback, keyCallback, tag, accelerator, index) as number; }
83
+
84
+ /**
85
+ * Adds a new checkable item with text `label` to the global menu with ID `menuRoot`.
86
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
87
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
88
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
89
+ * **Note:** This method is implemented only on macOS.
90
+ * **Supported system menu IDs:**
91
+ *
92
+ * ```text
93
+ *
94
+ * "_main" - Main menu (macOS).
95
+ * "_dock" - Dock popup menu (macOS).
96
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
97
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
98
+ * "_help" - Help menu (macOS).
99
+ *
100
+ * ```
101
+ */
102
+ static globalMenuAddCheckItem(menuRoot: string, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7197, menuRoot, label, callback, keyCallback, tag, accelerator, index) as number; }
103
+
104
+ /**
105
+ * Adds a new item with text `label` and icon `icon` to the global menu with ID `menuRoot`.
106
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
107
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
108
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
109
+ * **Note:** This method is implemented only on macOS.
110
+ * **Supported system menu IDs:**
111
+ *
112
+ * ```text
113
+ *
114
+ * "_main" - Main menu (macOS).
115
+ * "_dock" - Dock popup menu (macOS).
116
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
117
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
118
+ * "_help" - Help menu (macOS).
119
+ *
120
+ * ```
121
+ */
122
+ static globalMenuAddIconItem(menuRoot: string, icon: Texture2D, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7199, menuRoot, icon, label, callback, keyCallback, tag, accelerator, index) as number; }
123
+
124
+ /**
125
+ * Adds a new checkable item with text `label` and icon `icon` to the global menu with ID `menuRoot`.
126
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
127
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
128
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
129
+ * **Note:** This method is implemented only on macOS.
130
+ * **Supported system menu IDs:**
131
+ *
132
+ * ```text
133
+ *
134
+ * "_main" - Main menu (macOS).
135
+ * "_dock" - Dock popup menu (macOS).
136
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
137
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
138
+ * "_help" - Help menu (macOS).
139
+ *
140
+ * ```
141
+ */
142
+ static globalMenuAddIconCheckItem(menuRoot: string, icon: Texture2D, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7198, menuRoot, icon, label, callback, keyCallback, tag, accelerator, index) as number; }
143
+
144
+ /**
145
+ * Adds a new radio-checkable item with text `label` to the global menu with ID `menuRoot`.
146
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
147
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
148
+ * **Note:** Radio-checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See {@link globalMenuSetItemChecked} for more info on how to control it.
149
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
150
+ * **Note:** This method is implemented only on macOS.
151
+ * **Supported system menu IDs:**
152
+ *
153
+ * ```text
154
+ *
155
+ * "_main" - Main menu (macOS).
156
+ * "_dock" - Dock popup menu (macOS).
157
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
158
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
159
+ * "_help" - Help menu (macOS).
160
+ *
161
+ * ```
162
+ */
163
+ static globalMenuAddRadioCheckItem(menuRoot: string, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7203, menuRoot, label, callback, keyCallback, tag, accelerator, index) as number; }
164
+
165
+ /**
166
+ * Adds a new radio-checkable item with text `label` and icon `icon` to the global menu with ID `menuRoot`.
167
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
168
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
169
+ * **Note:** Radio-checkable items just display a checkmark, but don't have any built-in checking behavior and must be checked/unchecked manually. See {@link globalMenuSetItemChecked} for more info on how to control it.
170
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
171
+ * **Note:** This method is implemented only on macOS.
172
+ * **Supported system menu IDs:**
173
+ *
174
+ * ```text
175
+ *
176
+ * "_main" - Main menu (macOS).
177
+ * "_dock" - Dock popup menu (macOS).
178
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
179
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
180
+ * "_help" - Help menu (macOS).
181
+ *
182
+ * ```
183
+ */
184
+ static globalMenuAddIconRadioCheckItem(menuRoot: string, icon: Texture2D, label: string, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7200, menuRoot, icon, label, callback, keyCallback, tag, accelerator, index) as number; }
185
+
186
+ /**
187
+ * Adds a new item with text `label` to the global menu with ID `menuRoot`.
188
+ * Contrarily to normal binary items, multistate items can have more than two states, as defined by `maxStates`. Each press or activate of the item will increase the state by one. The default value is defined by `defaultState`.
189
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
190
+ * An `accelerator` can optionally be defined, which is a keyboard shortcut that can be pressed to trigger the menu button even if it's not currently open. The `accelerator` is generally a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
191
+ * **Note:** By default, there's no indication of the current item state, it should be changed manually.
192
+ * **Note:** The `callback` and `keyCallback` Callables need to accept exactly one Variant parameter, the parameter passed to the Callables will be the value passed to `tag`.
193
+ * **Note:** This method is implemented only on macOS.
194
+ * **Supported system menu IDs:**
195
+ *
196
+ * ```text
197
+ *
198
+ * "_main" - Main menu (macOS).
199
+ * "_dock" - Dock popup menu (macOS).
200
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
201
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
202
+ * "_help" - Help menu (macOS).
203
+ *
204
+ * ```
205
+ */
206
+ static globalMenuAddMultistateItem(menuRoot: string, label: string, maxStates: number, defaultState: number, callback?: Callable /* = Callable() */, keyCallback?: Callable /* = Callable() */, tag?: Variant /* = null */, accelerator?: Key /* = 0 */, index?: number /* = -1 */): number { return _C($(), 7202, menuRoot, label, maxStates, defaultState, callback, keyCallback, tag, accelerator, index) as number; }
207
+
208
+ /**
209
+ * Adds a separator between items to the global menu with ID `menuRoot`. Separators also occupy an index.
210
+ * Returns index of the inserted item, it's not guaranteed to be the same as `index` value.
211
+ * **Note:** This method is implemented only on macOS.
212
+ * **Supported system menu IDs:**
213
+ *
214
+ * ```text
215
+ *
216
+ * "_main" - Main menu (macOS).
217
+ * "_dock" - Dock popup menu (macOS).
218
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
219
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
220
+ * "_help" - Help menu (macOS).
221
+ *
222
+ * ```
223
+ */
224
+ static globalMenuAddSeparator(menuRoot: string, index?: number /* = -1 */): number { return _C($(), 7204, menuRoot, index) as number; }
225
+
226
+ /**
227
+ * Returns the index of the item with the specified `text`. Indices are automatically assigned to each item by the engine, and cannot be set manually.
228
+ * **Note:** This method is implemented only on macOS.
229
+ */
230
+ static globalMenuGetItemIndexFromText(menuRoot: string, text: string): number { return _C($(), 7213, menuRoot, text) as number; }
231
+
232
+ /**
233
+ * Returns the index of the item with the specified `tag`. Indices are automatically assigned to each item by the engine, and cannot be set manually.
234
+ * **Note:** This method is implemented only on macOS.
235
+ */
236
+ static globalMenuGetItemIndexFromTag(menuRoot: string, tag: Variant): number { return _C($(), 7212, menuRoot, tag) as number; }
237
+
238
+ /**
239
+ * Returns `true` if the item at index `idx` is checked.
240
+ * **Note:** This method is implemented only on macOS.
241
+ */
242
+ static globalMenuIsItemChecked(menuRoot: string, idx: number): boolean { return _C($(), 7223, menuRoot, idx) as boolean; }
243
+
244
+ /**
245
+ * Returns `true` if the item at index `idx` is checkable in some way, i.e. if it has a checkbox or radio button.
246
+ * **Note:** This method is implemented only on macOS.
247
+ */
248
+ static globalMenuIsItemCheckable(menuRoot: string, idx: number): boolean { return _C($(), 7222, menuRoot, idx) as boolean; }
249
+
250
+ /**
251
+ * Returns `true` if the item at index `idx` has radio button-style checkability.
252
+ * **Note:** This is purely cosmetic; you must add the logic for checking/unchecking items in radio groups.
253
+ * **Note:** This method is implemented only on macOS.
254
+ */
255
+ static globalMenuIsItemRadioCheckable(menuRoot: string, idx: number): boolean { return _C($(), 7226, menuRoot, idx) as boolean; }
256
+
257
+ /**
258
+ * Returns the callback of the item at index `idx`.
259
+ * **Note:** This method is implemented only on macOS.
260
+ */
261
+ static globalMenuGetItemCallback(menuRoot: string, idx: number): Callable { return _C($(), 7208, menuRoot, idx) as Callable; }
262
+
263
+ /**
264
+ * Returns the callback of the item accelerator at index `idx`.
265
+ * **Note:** This method is implemented only on macOS.
266
+ */
267
+ static globalMenuGetItemKeyCallback(menuRoot: string, idx: number): Callable { return _C($(), 7214, menuRoot, idx) as Callable; }
268
+
269
+ /**
270
+ * Returns the metadata of the specified item, which might be of any type. You can set it with {@link globalMenuSetItemTag}, which provides a simple way of assigning context data to items.
271
+ * **Note:** This method is implemented only on macOS.
272
+ */
273
+ static globalMenuGetItemTag(menuRoot: string, idx: number): Variant { return _C($(), 7218, menuRoot, idx) as Variant; }
274
+
275
+ /**
276
+ * Returns the text of the item at index `idx`.
277
+ * **Note:** This method is implemented only on macOS.
278
+ */
279
+ static globalMenuGetItemText(menuRoot: string, idx: number): string { return _C($(), 7219, menuRoot, idx) as string; }
280
+
281
+ /**
282
+ * Returns the submenu ID of the item at index `idx`. See {@link globalMenuAddSubmenuItem} for more info on how to add a submenu.
283
+ * **Note:** This method is implemented only on macOS.
284
+ */
285
+ static globalMenuGetItemSubmenu(menuRoot: string, idx: number): string { return _C($(), 7217, menuRoot, idx) as string; }
286
+
287
+ /**
288
+ * Returns the accelerator of the item at index `idx`. Accelerators are special combinations of keys that activate the item, no matter which control is focused.
289
+ * **Note:** This method is implemented only on macOS.
290
+ */
291
+ static globalMenuGetItemAccelerator(menuRoot: string, idx: number): Key { return _C($(), 7207, menuRoot, idx) as Key; }
292
+
293
+ /**
294
+ * Returns `true` if the item at index `idx` is disabled. When it is disabled it can't be selected, or its action invoked.
295
+ * See {@link globalMenuSetItemDisabled} for more info on how to disable an item.
296
+ * **Note:** This method is implemented only on macOS.
297
+ */
298
+ static globalMenuIsItemDisabled(menuRoot: string, idx: number): boolean { return _C($(), 7224, menuRoot, idx) as boolean; }
299
+
300
+ /**
301
+ * Returns `true` if the item at index `idx` is hidden.
302
+ * See {@link globalMenuSetItemHidden} for more info on how to hide an item.
303
+ * **Note:** This method is implemented only on macOS.
304
+ */
305
+ static globalMenuIsItemHidden(menuRoot: string, idx: number): boolean { return _C($(), 7225, menuRoot, idx) as boolean; }
306
+
307
+ /**
308
+ * Returns the tooltip associated with the specified index `idx`.
309
+ * **Note:** This method is implemented only on macOS.
310
+ */
311
+ static globalMenuGetItemTooltip(menuRoot: string, idx: number): string { return _C($(), 7220, menuRoot, idx) as string; }
312
+
313
+ /**
314
+ * Returns the state of a multistate item. See {@link globalMenuAddMultistateItem} for details.
315
+ * **Note:** This method is implemented only on macOS.
316
+ */
317
+ static globalMenuGetItemState(menuRoot: string, idx: number): number { return _C($(), 7216, menuRoot, idx) as number; }
318
+
319
+ /**
320
+ * Returns number of states of a multistate item. See {@link globalMenuAddMultistateItem} for details.
321
+ * **Note:** This method is implemented only on macOS.
322
+ */
323
+ static globalMenuGetItemMaxStates(menuRoot: string, idx: number): number { return _C($(), 7215, menuRoot, idx) as number; }
324
+
325
+ /**
326
+ * Returns the icon of the item at index `idx`.
327
+ * **Note:** This method is implemented only on macOS.
328
+ */
329
+ static globalMenuGetItemIcon(menuRoot: string, idx: number): Texture2D { return _C($(), 7210, menuRoot, idx) as Texture2D; }
330
+
331
+ /**
332
+ * Returns the horizontal offset of the item at the given `idx`.
333
+ * **Note:** This method is implemented only on macOS.
334
+ */
335
+ static globalMenuGetItemIndentationLevel(menuRoot: string, idx: number): number { return _C($(), 7211, menuRoot, idx) as number; }
336
+
337
+ /**
338
+ * Sets the checkstate status of the item at index `idx`.
339
+ * **Note:** This method is implemented only on macOS.
340
+ */
341
+ static globalMenuSetItemChecked(menuRoot: string, idx: number, checked: boolean): void { _C($(), 7231, menuRoot, idx, checked); }
342
+
343
+ /**
344
+ * Sets whether the item at index `idx` has a checkbox. If `false`, sets the type of the item to plain text.
345
+ * **Note:** This method is implemented only on macOS.
346
+ */
347
+ static globalMenuSetItemCheckable(menuRoot: string, idx: number, checkable: boolean): void { _C($(), 7230, menuRoot, idx, checkable); }
348
+
349
+ /**
350
+ * Sets the type of the item at the specified index `idx` to radio button. If `false`, sets the type of the item to plain text.
351
+ * **Note:** This is purely cosmetic; you must add the logic for checking/unchecking items in radio groups.
352
+ * **Note:** This method is implemented only on macOS.
353
+ */
354
+ static globalMenuSetItemRadioCheckable(menuRoot: string, idx: number, checkable: boolean): void { _C($(), 7239, menuRoot, idx, checkable); }
355
+
356
+ /**
357
+ * Sets the callback of the item at index `idx`. Callback is emitted when an item is pressed.
358
+ * **Note:** The `callback` Callable needs to accept exactly one Variant parameter, the parameter passed to the Callable will be the value passed to the `tag` parameter when the menu item was created.
359
+ * **Note:** This method is implemented only on macOS.
360
+ */
361
+ static globalMenuSetItemCallback(menuRoot: string, idx: number, callback: Callable): void { _C($(), 7229, menuRoot, idx, callback); }
362
+
363
+ /**
364
+ * Sets the callback of the item at index `idx`. The callback is emitted when an item is hovered.
365
+ * **Note:** The `callback` Callable needs to accept exactly one Variant parameter, the parameter passed to the Callable will be the value passed to the `tag` parameter when the menu item was created.
366
+ * **Note:** This method is implemented only on macOS.
367
+ */
368
+ static globalMenuSetItemHoverCallbacks(menuRoot: string, idx: number, callback: Callable): void { _C($(), 7234, menuRoot, idx, callback); }
369
+
370
+ /**
371
+ * Sets the callback of the item at index `idx`. Callback is emitted when its accelerator is activated.
372
+ * **Note:** The `keyCallback` Callable needs to accept exactly one Variant parameter, the parameter passed to the Callable will be the value passed to the `tag` parameter when the menu item was created.
373
+ * **Note:** This method is implemented only on macOS.
374
+ */
375
+ static globalMenuSetItemKeyCallback(menuRoot: string, idx: number, keyCallback: Callable): void { _C($(), 7237, menuRoot, idx, keyCallback); }
376
+
377
+ /**
378
+ * Sets the metadata of an item, which may be of any type. You can later get it with {@link globalMenuGetItemTag}, which provides a simple way of assigning context data to items.
379
+ * **Note:** This method is implemented only on macOS.
380
+ */
381
+ static globalMenuSetItemTag(menuRoot: string, idx: number, tag: Variant): void { _C($(), 7242, menuRoot, idx, tag); }
382
+
383
+ /**
384
+ * Sets the text of the item at index `idx`.
385
+ * **Note:** This method is implemented only on macOS.
386
+ */
387
+ static globalMenuSetItemText(menuRoot: string, idx: number, text: string): void { _C($(), 7243, menuRoot, idx, text); }
388
+
389
+ /**
390
+ * Sets the submenu of the item at index `idx`. The submenu is the ID of a global menu root that would be shown when the item is clicked.
391
+ * **Note:** This method is implemented only on macOS.
392
+ */
393
+ static globalMenuSetItemSubmenu(menuRoot: string, idx: number, submenu: string): void { _C($(), 7241, menuRoot, idx, submenu); }
394
+
395
+ /**
396
+ * Sets the accelerator of the item at index `idx`. `keycode` can be a single {@link Key}, or a combination of {@link KeyModifierMask}s and {@link Key}s using bitwise OR such as `KEY_MASK_CTRL | KEY_A` (`Ctrl + A`).
397
+ * **Note:** This method is implemented only on macOS.
398
+ */
399
+ static globalMenuSetItemAccelerator(menuRoot: string, idx: number, keycode: Key): void { _C($(), 7228, menuRoot, idx, keycode); }
400
+
401
+ /**
402
+ * Enables/disables the item at index `idx`. When it is disabled, it can't be selected and its action can't be invoked.
403
+ * **Note:** This method is implemented only on macOS.
404
+ */
405
+ static globalMenuSetItemDisabled(menuRoot: string, idx: number, disabled: boolean): void { _C($(), 7232, menuRoot, idx, disabled); }
406
+
407
+ /**
408
+ * Hides/shows the item at index `idx`. When it is hidden, an item does not appear in a menu and its action cannot be invoked.
409
+ * **Note:** This method is implemented only on macOS.
410
+ */
411
+ static globalMenuSetItemHidden(menuRoot: string, idx: number, hidden: boolean): void { _C($(), 7233, menuRoot, idx, hidden); }
412
+
413
+ /**
414
+ * Sets the {@link String} tooltip of the item at the specified index `idx`.
415
+ * **Note:** This method is implemented only on macOS.
416
+ */
417
+ static globalMenuSetItemTooltip(menuRoot: string, idx: number, tooltip: string): void { _C($(), 7244, menuRoot, idx, tooltip); }
418
+
419
+ /**
420
+ * Sets the state of a multistate item. See {@link globalMenuAddMultistateItem} for details.
421
+ * **Note:** This method is implemented only on macOS.
422
+ */
423
+ static globalMenuSetItemState(menuRoot: string, idx: number, state: number): void { _C($(), 7240, menuRoot, idx, state); }
424
+
425
+ /**
426
+ * Sets number of state of a multistate item. See {@link globalMenuAddMultistateItem} for details.
427
+ * **Note:** This method is implemented only on macOS.
428
+ */
429
+ static globalMenuSetItemMaxStates(menuRoot: string, idx: number, maxStates: number): void { _C($(), 7238, menuRoot, idx, maxStates); }
430
+
431
+ /**
432
+ * Replaces the {@link Texture2D} icon of the specified `idx`.
433
+ * **Note:** This method is implemented only on macOS.
434
+ * **Note:** This method is not supported by macOS "_dock" menu items.
435
+ */
436
+ static globalMenuSetItemIcon(menuRoot: string, idx: number, icon: Texture2D): void { _C($(), 7235, menuRoot, idx, icon); }
437
+
438
+ /**
439
+ * Sets the horizontal offset of the item at the given `idx`.
440
+ * **Note:** This method is implemented only on macOS.
441
+ */
442
+ static globalMenuSetItemIndentationLevel(menuRoot: string, idx: number, level: number): void { _C($(), 7236, menuRoot, idx, level); }
443
+
444
+ /**
445
+ * Returns number of items in the global menu with ID `menuRoot`.
446
+ * **Note:** This method is implemented only on macOS.
447
+ */
448
+ static globalMenuGetItemCount(menuRoot: string): number { return _C($(), 7209, menuRoot) as number; }
449
+
450
+ /**
451
+ * Removes the item at index `idx` from the global menu `menuRoot`.
452
+ * **Note:** The indices of items after the removed item will be shifted by one.
453
+ * **Note:** This method is implemented only on macOS.
454
+ */
455
+ static globalMenuRemoveItem(menuRoot: string, idx: number): void { _C($(), 7227, menuRoot, idx); }
456
+
457
+ /**
458
+ * Removes all items from the global menu with ID `menuRoot`.
459
+ * **Note:** This method is implemented only on macOS.
460
+ * **Supported system menu IDs:**
461
+ *
462
+ * ```text
463
+ *
464
+ * "_main" - Main menu (macOS).
465
+ * "_dock" - Dock popup menu (macOS).
466
+ * "_apple" - Apple menu (macOS, custom items added before "Services").
467
+ * "_window" - Window menu (macOS, custom items added after "Bring All to Front").
468
+ * "_help" - Help menu (macOS).
469
+ *
470
+ * ```
471
+ */
472
+ static globalMenuClear(menuRoot: string): void { _C($(), 7206, menuRoot); }
473
+
474
+ /**
475
+ * Returns Dictionary of supported system menu IDs and names.
476
+ * **Note:** This method is implemented only on macOS.
477
+ */
478
+ static globalMenuGetSystemMenuRoots(): GodotDictionary { return _C($(), 7221) as GodotDictionary; }
479
+
480
+ /**
481
+ * Returns `true` if the synthesizer is generating speech, or have utterance waiting in the queue.
482
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
483
+ */
484
+ static ttsIsSpeaking(): boolean { return _C($(), 14427) as boolean; }
485
+
486
+ /**
487
+ * Returns `true` if the synthesizer is in a paused state.
488
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
489
+ */
490
+ static ttsIsPaused(): boolean { return _C($(), 14426) as boolean; }
491
+
492
+ /**
493
+ * Returns an {@link Array} of voice information dictionaries.
494
+ * Each {@link Dictionary} contains two {@link String} entries:
495
+ * - `name` is voice name.
496
+ * - `id` is voice identifier.
497
+ * - `language` is language code in `lang_Variant` format. The `lang` part is a 2 or 3-letter code based on the ISO-639 standard, in lowercase. The {@link code skip-lint}Variant part is an engine-dependent string describing country, region or/and dialect.
498
+ * Note that Godot depends on system libraries for text-to-speech functionality. These libraries are installed by default on Windows and macOS, but not on all Linux distributions. If they are not present, this method will return an empty list. This applies to both Godot users on Linux, as well as end-users on Linux running Godot games that use text-to-speech.
499
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
500
+ */
501
+ static ttsGetVoices(): GodotArray<GodotDictionary> { return _C($(), 14424) as GodotArray<GodotDictionary>; }
502
+
503
+ /**
504
+ * Returns a {@link PackedStringArray} of voice identifiers for the `language`.
505
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
506
+ */
507
+ static ttsGetVoicesForLanguage(language: string): PackedStringArray { return _C($(), 14425, language) as PackedStringArray; }
508
+
509
+ /**
510
+ * Adds an utterance to the queue. If `interrupt` is `true`, the queue is cleared first.
511
+ * - `voice` identifier is one of the `"id"` values returned by {@link ttsGetVoices} or one of the values returned by {@link ttsGetVoicesForLanguage}.
512
+ * - `volume` ranges from `0` (lowest) to `100` (highest).
513
+ * - `pitch` ranges from `0.0` (lowest) to `2.0` (highest), `1.0` is default pitch for the current voice.
514
+ * - `rate` ranges from `0.1` (lowest) to `10.0` (highest), `1.0` is a normal speaking rate. Other values act as a percentage relative.
515
+ * - `utteranceId` is passed as a parameter to the callback functions.
516
+ * **Note:** On Windows and Linux (X11/Wayland), utterance `text` can use SSML markup. SSML support is engine and voice dependent. If the engine does not support SSML, you should strip out all XML markup before calling {@link ttsSpeak}.
517
+ * **Note:** The granularity of pitch, rate, and volume is engine and voice dependent. Values may be truncated.
518
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
519
+ */
520
+ static ttsSpeak(text: string, voice: string, volume?: number /* = 50 */, pitch?: number /* = 1.0 */, rate?: number /* = 1.0 */, utteranceId?: number /* = 0, int64 */, interrupt?: boolean /* = false */): void { _C($(), 14431, text, voice, volume, pitch, rate, utteranceId, interrupt); }
521
+
522
+ /**
523
+ * Puts the synthesizer into a paused state.
524
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
525
+ */
526
+ static ttsPause(): void { _C($(), 14428); }
527
+
528
+ /**
529
+ * Resumes the synthesizer if it was paused.
530
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
531
+ */
532
+ static ttsResume(): void { _C($(), 14429); }
533
+
534
+ /**
535
+ * Stops synthesis in progress and removes all utterances from the queue.
536
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
537
+ */
538
+ static ttsStop(): void { _C($(), 14432); }
539
+
540
+ /**
541
+ * Adds a callback, which is called when the utterance has started, finished, canceled or reached a text boundary.
542
+ * - {@link TTS_UTTERANCE_STARTED}, {@link TTS_UTTERANCE_ENDED}, and {@link TTS_UTTERANCE_CANCELED} callable's method should take one {@link int} parameter, the utterance ID.
543
+ * - {@link TTS_UTTERANCE_BOUNDARY} callable's method should take two {@link int} parameters, the index of the character and the utterance ID.
544
+ * **Note:** The granularity of the boundary callbacks is engine dependent.
545
+ * **Note:** This method is implemented on Android, iOS, Web, Linux (X11/Wayland), macOS, and Windows.
546
+ */
547
+ static ttsSetUtteranceCallback(event: TTSUtteranceEvent, callable: Callable): void { _C($(), 14430, event, callable); }
548
+
549
+ /**
550
+ * Returns `true` if OS supports dark mode.
551
+ * **Note:** This method is implemented on Android, iOS, macOS, Windows, and Linux (X11/Wayland).
552
+ */
553
+ static isDarkModeSupported(): boolean { return _C($(), 7869) as boolean; }
554
+
555
+ /**
556
+ * Returns `true` if OS is using dark mode.
557
+ * **Note:** This method is implemented on Android, iOS, macOS, Windows, and Linux (X11/Wayland).
558
+ */
559
+ static isDarkMode(): boolean { return _C($(), 7868) as boolean; }
560
+
561
+ /**
562
+ * Returns OS theme accent color. Returns `Color(0, 0, 0, 0)`, if accent color is unknown.
563
+ * **Note:** This method is implemented on macOS, Windows, Android, and Linux (X11/Wayland).
564
+ */
565
+ static getAccentColor(): Color { return _C($(), 3661) as Color; }
566
+
567
+ /**
568
+ * Returns the OS theme base color (default control background). Returns `Color(0, 0, 0, 0)` if the base color is unknown.
569
+ * **Note:** This method is implemented on macOS, Windows, and Android.
570
+ */
571
+ static getBaseColor(): Color { return _C($(), 3893) as Color; }
572
+
573
+ /**
574
+ * Sets the callback that should be called when the system's theme settings are changed. `callable` should accept zero arguments.
575
+ * **Note:** This method is implemented on Android, iOS, macOS, Windows, and Linux (X11/Wayland).
576
+ */
577
+ static setSystemThemeChangeCallback(callable: Callable): void { _C($(), 12967, callable); }
578
+
579
+ /**
580
+ * Sets the current mouse mode. See also {@link mouseGetMode}.
581
+ */
582
+ static mouseSetMode(mouseMode: MouseMode): void { _C($(), 8973, mouseMode); }
583
+
584
+ /**
585
+ * Returns the current mouse mode. See also {@link mouseSetMode}.
586
+ */
587
+ static mouseGetMode(): MouseMode { return _C($(), 8968) as MouseMode; }
588
+
589
+ /**
590
+ * Sets the mouse cursor position to the given `position` relative to an origin at the upper left corner of the currently focused game Window Manager window.
591
+ * **Note:** {@link warpMouse} is only supported on Windows, macOS, and Linux (X11/Wayland). It has no effect on Android, iOS, and Web.
592
+ */
593
+ static warpMouse(position: Vector2i): void { _C($(), 14840, position); }
594
+
595
+ /**
596
+ * Returns the mouse cursor's current position in screen coordinates.
597
+ */
598
+ static mouseGetPosition(): Vector2i { return _C($(), 8969) as Vector2i; }
599
+
600
+ /**
601
+ * Returns the current state of mouse buttons (whether each button is pressed) as a bitmask. If multiple mouse buttons are pressed at the same time, the bits are added together. Equivalent to {@link Input.getMouseButtonMask}.
602
+ */
603
+ static mouseGetButtonState(): MouseButtonMask { return _C($(), 8967) as MouseButtonMask; }
604
+
605
+ /**
606
+ * Sets the user's clipboard content to the given string.
607
+ */
608
+ static clipboardSet(clipboard: string): void { _C($(), 2329, clipboard); }
609
+
610
+ /**
611
+ * Returns the user's clipboard as a string if possible.
612
+ */
613
+ static clipboardGet(): string { return _C($(), 2324) as string; }
614
+
615
+ /**
616
+ * Returns the user's clipboard as an image if possible.
617
+ * **Note:** This method uses the copied pixel data, e.g. from an image editing software or a web browser, not an image file copied from file explorer.
618
+ */
619
+ static clipboardGetImage(): Image { return _C($(), 2325) as Image; }
620
+
621
+ /**
622
+ * Returns `true` if there is a text content on the user's clipboard.
623
+ */
624
+ static clipboardHas(): boolean { return _C($(), 2327) as boolean; }
625
+
626
+ /**
627
+ * Returns `true` if there is an image content on the user's clipboard.
628
+ */
629
+ static clipboardHasImage(): boolean { return _C($(), 2328) as boolean; }
630
+
631
+ /**
632
+ * Sets the user's [primary](https://unix.stackexchange.com/questions/139191/whats-the-difference-between-primary-selection-and-clipboard-buffer) clipboard content to the given string. This is the clipboard that is set when the user selects text in any application, rather than when pressing `Ctrl + C`. The clipboard data can then be pasted by clicking the middle mouse button in any application that supports the primary clipboard mechanism.
633
+ * **Note:** This method is only implemented on Linux (X11/Wayland).
634
+ */
635
+ static clipboardSetPrimary(clipboardPrimary: string): void { _C($(), 2330, clipboardPrimary); }
636
+
637
+ /**
638
+ * Returns the user's [primary](https://unix.stackexchange.com/questions/139191/whats-the-difference-between-primary-selection-and-clipboard-buffer) clipboard as a string if possible. This is the clipboard that is set when the user selects text in any application, rather than when pressing `Ctrl + C`. The clipboard data can then be pasted by clicking the middle mouse button in any application that supports the primary clipboard mechanism.
639
+ * **Note:** This method is only implemented on Linux (X11/Wayland).
640
+ */
641
+ static clipboardGetPrimary(): string { return _C($(), 2326) as string; }
642
+
643
+ /**
644
+ * Returns an {@link Array} of {@link Rect2}, each of which is the bounding rectangle for a display cutout or notch. These are non-functional areas on edge-to-edge screens used by cameras and sensors. Returns an empty array if the device does not have cutouts. See also {@link getDisplaySafeArea}.
645
+ * **Note:** Currently only implemented on Android. Other platforms will return an empty array even if they do have display cutouts or notches.
646
+ */
647
+ static getDisplayCutouts(): GodotArray<Rect2> { return _C($(), 4517) as GodotArray<Rect2>; }
648
+
649
+ /**
650
+ * Returns the unobscured area of the display where interactive controls should be rendered. See also {@link getDisplayCutouts}.
651
+ * **Note:** Currently only implemented on Android and iOS. On other platforms, `screen_get_usable_rect(SCREEN_OF_MAIN_WINDOW)` will be returned as a fallback. See also {@link screenGetUsableRect}.
652
+ */
653
+ static getDisplaySafeArea(): Rect2i { return _C($(), 4520) as Rect2i; }
654
+
655
+ /**
656
+ * Returns the number of displays available.
657
+ * **Note:** This method is implemented on Linux (X11 and Wayland), macOS, and Windows. On other platforms, this method always returns `1`.
658
+ */
659
+ static getScreenCount(): number { return _C($(), 6258) as number; }
660
+
661
+ /**
662
+ * Returns the index of the primary screen.
663
+ * **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns `0`.
664
+ */
665
+ static getPrimaryScreen(): number { return _C($(), 6012) as number; }
666
+
667
+ /**
668
+ * Returns the index of the screen containing the window with the keyboard focus, or the primary screen if there's no focused window.
669
+ * **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns the primary screen.
670
+ */
671
+ static getKeyboardFocusScreen(): number { return _C($(), 5291) as number; }
672
+
673
+ /**
674
+ * Returns the index of the screen that overlaps the most with the given rectangle. Returns {@link INVALID_SCREEN} if the rectangle doesn't overlap with any screen or has no area.
675
+ */
676
+ static getScreenFromRect(rect: Rect2): number { return _C($(), 6259, rect) as number; }
677
+
678
+ /**
679
+ * Returns the screen's top-left corner position in pixels. Returns {@link Vector2i.ZERO} if `screen` is invalid. On multi-monitor setups, the screen position is relative to the virtual desktop area. On multi-monitor setups with different screen resolutions or orientations, the origin might be located outside any display like this:
680
+ *
681
+ * ```text
682
+ *
683
+ * * (0, 0) +-------+
684
+ * | |
685
+ * +-------------+ | |
686
+ * | | | |
687
+ * | | | |
688
+ * +-------------+ +-------+
689
+ *
690
+ * ```
691
+ *
692
+ * See also {@link screenGetSize}.
693
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
694
+ */
695
+ static screenGetPosition(screen?: number /* = -1 */): Vector2i { return _C($(), 10256, screen) as Vector2i; }
696
+
697
+ /**
698
+ * Returns the screen's size in pixels. See also {@link screenGetPosition} and {@link screenGetUsableRect}. Returns {@link Vector2i.ZERO} if `screen` is invalid.
699
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
700
+ */
701
+ static screenGetSize(screen?: number /* = -1 */): Vector2i { return _C($(), 10259, screen) as Vector2i; }
702
+
703
+ /**
704
+ * Returns the portion of the screen that is not obstructed by a status bar in pixels. See also {@link screenGetSize}.
705
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
706
+ * **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns `Rect2i(screen_get_position(screen), screen_get_size(screen))`.
707
+ */
708
+ static screenGetUsableRect(screen?: number /* = -1 */): Rect2i { return _C($(), 10260, screen) as Rect2i; }
709
+
710
+ /**
711
+ * Returns the dots per inch density of the specified screen. Returns platform specific default value if `screen` is invalid.
712
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
713
+ * **Note:** On macOS, returned value is inaccurate if fractional display scaling mode is used.
714
+ * **Note:** On Android devices, the actual screen densities are grouped into six generalized densities:
715
+ *
716
+ * ```text
717
+ *
718
+ * ldpi - 120 dpi
719
+ * mdpi - 160 dpi
720
+ * hdpi - 240 dpi
721
+ * xhdpi - 320 dpi
722
+ * xxhdpi - 480 dpi
723
+ * xxxhdpi - 640 dpi
724
+ *
725
+ * ```
726
+ *
727
+ * **Note:** This method is implemented on Android, iOS, Linux (X11/Wayland), macOS, Web, and Windows. On other platforms, this method always returns `72`.
728
+ */
729
+ static screenGetDpi(screen?: number /* = -1 */): number { return _C($(), 10248, screen) as number; }
730
+
731
+ /**
732
+ * Returns the scale factor of the specified screen by index. Returns `1.0` if `screen` is invalid.
733
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
734
+ * **Note:** On macOS, the returned value is `2.0` for hiDPI (Retina) screens, and `1.0` for all other cases.
735
+ * **Note:** On Linux (Wayland), the returned value is accurate only when `screen` is {@link SCREEN_OF_MAIN_WINDOW}. Due to API limitations, passing a direct index will return a rounded-up integer, if the screen has a fractional scale (e.g. `1.25` would get rounded up to `2.0`).
736
+ * **Note:** This method is implemented on Android, iOS, Web, macOS, and Linux (Wayland). On other platforms, this method always returns `1.0`.
737
+ */
738
+ static screenGetScale(screen?: number /* = -1 */): number { return _C($(), 10258, screen) as number; }
739
+
740
+ /**
741
+ * Returns `true` if touch events are available (Android or iOS), the capability is detected on the Web platform or if {@link ProjectSettings.inputDevices/pointing/emulateTouchFromMouse} is `true`.
742
+ */
743
+ static isTouchscreenAvailable(): boolean { return _C($(), 8369) as boolean; }
744
+
745
+ /**
746
+ * Returns the greatest scale factor of all screens.
747
+ * **Note:** On macOS returned value is `2.0` if there is at least one hiDPI (Retina) screen in the system, and `1.0` in all other cases.
748
+ * **Note:** This method is implemented only on macOS.
749
+ */
750
+ static screenGetMaxScale(): number { return _C($(), 10253) as number; }
751
+
752
+ /**
753
+ * Returns the current refresh rate of the specified screen. When V-Sync is enabled, this returns the maximum framerate the project can effectively reach. Returns `-1.0` if `screen` is invalid or the {@link DisplayServer} fails to find the refresh rate for the specified screen.
754
+ * To fallback to a default refresh rate if the method fails, try:
755
+ *
756
+ * ```text
757
+ *
758
+ * var refresh_rate = DisplayServer.screen_get_refresh_rate()
759
+ * if refresh_rate < 0:
760
+ * refresh_rate = 60.0
761
+ *
762
+ * ```
763
+ *
764
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
765
+ * **Note:** This method is implemented on Android, iOS, macOS, Linux (X11 and Wayland), and Windows. On other platforms, this method always returns `-1.0`.
766
+ */
767
+ static screenGetRefreshRate(screen?: number /* = -1 */): number { return _C($(), 10257, screen) as number; }
768
+
769
+ /**
770
+ * Returns the color of the pixel at the given screen `position`. On multi-monitor setups, the screen position is relative to the virtual desktop area.
771
+ * **Note:** This method is implemented on Linux (X11, excluding XWayland), macOS, and Windows. On other platforms, this method always returns `Color(0, 0, 0, 1)`.
772
+ * **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a color from a screenshot that will not include other application windows or OS elements not related to the application.
773
+ */
774
+ static screenGetPixel(position: Vector2i): Color { return _C($(), 10255, position) as Color; }
775
+
776
+ /**
777
+ * Returns a screenshot of the `screen`. Returns `null` if `screen` is invalid or the {@link DisplayServer} fails to capture screenshot.
778
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
779
+ * **Note:** This method is implemented on Linux (X11, excluding XWayland), macOS, and Windows. On other platforms, this method always returns `null`.
780
+ * **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a screenshot that will not include other application windows or OS elements not related to the application.
781
+ */
782
+ static screenGetImage(screen?: number /* = -1 */): Image | null { return _C($(), 10251, screen) as Image | null; }
783
+
784
+ /**
785
+ * Returns a screenshot of the screen region defined by `rect`. Returns `null` if `rect` is outside screen bounds or the {@link DisplayServer} fails to capture screenshot.
786
+ * **Note:** This method is implemented on macOS and Windows. On other platforms, this method always returns `null`.
787
+ * **Note:** On macOS, this method requires the "Screen Recording" permission. If permission is not granted, this method returns a screenshot that will not include other application windows or OS elements not related to the application.
788
+ */
789
+ static screenGetImageRect(rect: Rect2i): Image | null { return _C($(), 10252, rect) as Image | null; }
790
+
791
+ /**
792
+ * Sets the `screen`'s `orientation`. See also {@link screenGetOrientation}.
793
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
794
+ * **Note:** This method is implemented on Android and iOS.
795
+ * **Note:** On iOS, this method has no effect if {@link ProjectSettings.display/window/handheld/orientation} is not set to {@link SCREEN_SENSOR}.
796
+ */
797
+ static screenSetOrientation(orientation: ScreenOrientation, screen?: number /* = -1 */): void { _C($(), 10266, orientation, screen); }
798
+
799
+ /**
800
+ * Returns the `screen`'s current orientation. See also {@link screenSetOrientation}. Returns {@link SCREEN_LANDSCAPE} if `screen` is invalid.
801
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
802
+ * **Note:** This method is implemented on Android and iOS. On other platforms, this method always returns {@link SCREEN_LANDSCAPE}.
803
+ */
804
+ static screenGetOrientation(screen?: number /* = -1 */): ScreenOrientation { return _C($(), 10254, screen) as ScreenOrientation; }
805
+
806
+ /**
807
+ * Sets whether the screen should never be turned off by the operating system's power-saving measures. See also {@link screenIsKeptOn}.
808
+ */
809
+ static screenSetKeepOn(enable: boolean): void { _C($(), 10265, enable); }
810
+
811
+ /**
812
+ * Returns `true` if the screen should never be turned off by the operating system's power-saving measures. See also {@link screenSetKeepOn}.
813
+ */
814
+ static screenIsKeptOn(): boolean { return _C($(), 10262) as boolean; }
815
+
816
+ /**
817
+ * Returns the list of Godot window IDs belonging to this process.
818
+ * **Note:** Native dialogs are not included in this list.
819
+ */
820
+ static getWindowList(): PackedInt32Array { return _C($(), 7155) as PackedInt32Array; }
821
+
822
+ /**
823
+ * Returns the ID of the window at the specified screen `position` (in pixels). On multi-monitor setups, the screen position is relative to the virtual desktop area. On multi-monitor setups with different screen resolutions or orientations, the origin may be located outside any display like this:
824
+ *
825
+ * ```text
826
+ *
827
+ * * (0, 0) +-------+
828
+ * | |
829
+ * +-------------+ | |
830
+ * | | | |
831
+ * | | | |
832
+ * +-------------+ +-------+
833
+ *
834
+ * ```
835
+ */
836
+ static getWindowAtScreenPosition(position: Vector2i): number { return _C($(), 7153, position) as number; }
837
+
838
+ /**
839
+ * Returns internal structure pointers for use in plugins.
840
+ * **Note:** This method is implemented on Android, Linux (X11/Wayland), macOS, and Windows.
841
+ */
842
+ static windowGetNativeHandle(handleType: HandleType, windowId?: number /* = 0 */): number { return _C($(), 14868, handleType, windowId) as number; }
843
+
844
+ /**
845
+ * Returns ID of the active popup window, or {@link INVALID_WINDOW_ID} if there is none.
846
+ */
847
+ static windowGetActivePopup(): number { return _C($(), 14857) as number; }
848
+
849
+ /**
850
+ * Sets the bounding box of control, or menu item that was used to open the popup window, in the screen coordinate system. Clicking this area will not auto-close this popup.
851
+ */
852
+ static windowSetPopupSafeRect(window: number, rect: Rect2i): void { _C($(), 14906, window, rect); }
853
+
854
+ /**
855
+ * Returns the bounding box of control, or menu item that was used to open the popup window, in the screen coordinate system.
856
+ */
857
+ static windowGetPopupSafeRect(window: number): Rect2i { return _C($(), 14870, window) as Rect2i; }
858
+
859
+ /**
860
+ * Sets the title of the given window to `title`.
861
+ * **Note:** It's recommended to change this value using {@link Window.title} instead.
862
+ * **Note:** Avoid changing the window title every frame, as this can cause performance issues on certain window managers. Try to change the window title only a few times per second at most.
863
+ */
864
+ static windowSetTitle(title: string, windowId?: number /* = 0 */): void { _C($(), 14912, title, windowId); }
865
+
866
+ /**
867
+ * Returns the estimated window title bar size (including text and window buttons) for the window specified by `windowId` (in pixels). This method does not change the window title.
868
+ * **Note:** This method is implemented on macOS and Windows.
869
+ */
870
+ static windowGetTitleSize(title: string, windowId?: number /* = 0 */): Vector2i { return _C($(), 14876, title, windowId) as Vector2i; }
871
+
872
+ /**
873
+ * Sets a polygonal region of the window which accepts mouse events. Mouse events outside the region will be passed through.
874
+ * Passing an empty array will disable passthrough support (all mouse events will be intercepted by the window, which is the default behavior).
875
+ *
876
+ *
877
+ * ```gdscript
878
+ *
879
+ * # Set region, using Path2D node.
880
+ * DisplayServer.window_set_mouse_passthrough($Path2D.curve.get_baked_points())
881
+ *
882
+ * # Set region, using Polygon2D node.
883
+ * DisplayServer.window_set_mouse_passthrough($Polygon2D.polygon)
884
+ *
885
+ * # Reset region to default.
886
+ * DisplayServer.window_set_mouse_passthrough([])
887
+ *
888
+ * ```
889
+ *
890
+ *
891
+ *
892
+ * **Note:** On Windows, the portion of a window that lies outside the region is not drawn, while on Linux (X11) and macOS it is.
893
+ * **Note:** This method is implemented on Linux (X11), macOS and Windows.
894
+ */
895
+ static windowSetMousePassthrough(region: PackedVector2Array, windowId?: number /* = 0 */): void { _C($(), 14905, region, windowId); }
896
+
897
+ /**
898
+ * Returns the screen the window specified by `windowId` is currently positioned on. If the screen overlaps multiple displays, the screen where the window's center is located is returned. See also {@link windowSetCurrentScreen}. Returns {@link INVALID_SCREEN} if `windowId` is invalid.
899
+ * **Note:** This method is implemented on Linux/X11, macOS, and Windows. On other platforms, this method always returns `0`.
900
+ */
901
+ static windowGetCurrentScreen(windowId?: number /* = 0 */): number { return _C($(), 14859, windowId) as number; }
902
+
903
+ /**
904
+ * Moves the window specified by `windowId` to the specified `screen`. See also {@link windowGetCurrentScreen}.
905
+ * **Note:** One of the following constants can be used as `screen`: {@link SCREEN_OF_MAIN_WINDOW}, {@link SCREEN_PRIMARY}, {@link SCREEN_WITH_MOUSE_FOCUS}, or {@link SCREEN_WITH_KEYBOARD_FOCUS}.
906
+ * **Note:** This method is implemented on Linux/X11, macOS, and Windows.
907
+ */
908
+ static windowSetCurrentScreen(screen: number, windowId?: number /* = 0 */): void { _C($(), 14891, screen, windowId); }
909
+
910
+ /**
911
+ * Returns the position of the client area of the given window on the screen.
912
+ */
913
+ static windowGetPosition(windowId?: number /* = 0 */): Vector2i { return _C($(), 14871, windowId) as Vector2i; }
914
+
915
+ /**
916
+ * Returns the position of the given window on the screen including the borders drawn by the operating system. See also {@link windowGetPosition}.
917
+ */
918
+ static windowGetPositionWithDecorations(windowId?: number /* = 0 */): Vector2i { return _C($(), 14872, windowId) as Vector2i; }
919
+
920
+ /**
921
+ * Sets the position of the given window to `position`. On multi-monitor setups, the screen position is relative to the virtual desktop area. On multi-monitor setups with different screen resolutions or orientations, the origin may be located outside any display like this:
922
+ *
923
+ * ```text
924
+ *
925
+ * * (0, 0) +-------+
926
+ * | |
927
+ * +-------------+ | |
928
+ * | | | |
929
+ * | | | |
930
+ * +-------------+ +-------+
931
+ *
932
+ * ```
933
+ *
934
+ * See also {@link windowGetPosition} and {@link windowSetSize}.
935
+ * **Note:** It's recommended to change this value using {@link Window.position} instead.
936
+ * **Note:** On Linux (Wayland): this method is a no-op.
937
+ */
938
+ static windowSetPosition(position: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14907, position, windowId); }
939
+
940
+ /**
941
+ * Returns the size of the window specified by `windowId` (in pixels), excluding the borders drawn by the operating system. This is also called the "client area". See also {@link windowGetSizeWithDecorations}, {@link windowSetSize} and {@link windowGetPosition}.
942
+ */
943
+ static windowGetSize(windowId?: number /* = 0 */): Vector2i { return _C($(), 14874, windowId) as Vector2i; }
944
+
945
+ /**
946
+ * Sets the size of the given window to `size` (in pixels). See also {@link windowGetSize} and {@link windowGetPosition}.
947
+ * **Note:** It's recommended to change this value using {@link Window.size} instead.
948
+ */
949
+ static windowSetSize(size: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14909, size, windowId); }
950
+
951
+ /**
952
+ * Sets the `callback` that will be called when the window specified by `windowId` is moved or resized.
953
+ * **Warning:** Advanced users only! Adding such a callback to a {@link Window} node will override its default implementation, which can introduce bugs.
954
+ */
955
+ static windowSetRectChangedCallback(callback: Callable, windowId?: number /* = 0 */): void { _C($(), 14908, callback, windowId); }
956
+
957
+ /**
958
+ * Sets the `callback` that will be called when an event occurs in the window specified by `windowId`.
959
+ * **Warning:** Advanced users only! Adding such a callback to a {@link Window} node will override its default implementation, which can introduce bugs.
960
+ */
961
+ static windowSetWindowEventCallback(callback: Callable, windowId?: number /* = 0 */): void { _C($(), 14916, callback, windowId); }
962
+
963
+ /**
964
+ * Sets the `callback` that should be called when any {@link InputEvent} is sent to the window specified by `windowId`.
965
+ * **Warning:** Advanced users only! Adding such a callback to a {@link Window} node will override its default implementation, which can introduce bugs.
966
+ */
967
+ static windowSetInputEventCallback(callback: Callable, windowId?: number /* = 0 */): void { _C($(), 14900, callback, windowId); }
968
+
969
+ /**
970
+ * Sets the `callback` that should be called when text is entered using the virtual keyboard to the window specified by `windowId`.
971
+ * **Warning:** Advanced users only! Adding such a callback to a {@link Window} node will override its default implementation, which can introduce bugs.
972
+ */
973
+ static windowSetInputTextCallback(callback: Callable, windowId?: number /* = 0 */): void { _C($(), 14901, callback, windowId); }
974
+
975
+ /**
976
+ * Sets the `callback` that should be called when files are dropped from the operating system's file manager to the window specified by `windowId`. `callback` should take one {@link PackedStringArray} argument, which is the list of dropped files.
977
+ * **Warning:** Advanced users only! Adding such a callback to a {@link Window} node will override its default implementation, which can introduce bugs.
978
+ * **Note:** This method is implemented on Windows, macOS, Linux (X11/Wayland), and Web.
979
+ */
980
+ static windowSetDropFilesCallback(callback: Callable, windowId?: number /* = 0 */): void { _C($(), 14892, callback, windowId); }
981
+
982
+ /**
983
+ * Returns the {@link Object.getInstanceId} of the {@link Window} the `windowId` is attached to.
984
+ */
985
+ static windowGetAttachedInstanceId(windowId?: number /* = 0 */): number { return _C($(), 14858, windowId) as number; }
986
+
987
+ /**
988
+ * Returns the window's maximum size (in pixels). See also {@link windowSetMaxSize}.
989
+ */
990
+ static windowGetMaxSize(windowId?: number /* = 0 */): Vector2i { return _C($(), 14865, windowId) as Vector2i; }
991
+
992
+ /**
993
+ * Sets the maximum size of the window specified by `windowId` in pixels. Normally, the user will not be able to drag the window to make it larger than the specified size. See also {@link windowGetMaxSize}.
994
+ * **Note:** It's recommended to change this value using {@link Window.maxSize} instead.
995
+ * **Note:** Using third-party tools, it is possible for users to disable window geometry restrictions and therefore bypass this limit.
996
+ */
997
+ static windowSetMaxSize(maxSize: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14902, maxSize, windowId); }
998
+
999
+ /**
1000
+ * Returns the window's minimum size (in pixels). See also {@link windowSetMinSize}.
1001
+ */
1002
+ static windowGetMinSize(windowId?: number /* = 0 */): Vector2i { return _C($(), 14866, windowId) as Vector2i; }
1003
+
1004
+ /**
1005
+ * Sets the minimum size for the given window to `minSize` in pixels. Normally, the user will not be able to drag the window to make it smaller than the specified size. See also {@link windowGetMinSize}.
1006
+ * **Note:** It's recommended to change this value using {@link Window.minSize} instead.
1007
+ * **Note:** By default, the main window has a minimum size of `Vector2i(64, 64)`. This prevents issues that can arise when the window is resized to a near-zero size.
1008
+ * **Note:** Using third-party tools, it is possible for users to disable window geometry restrictions and therefore bypass this limit.
1009
+ */
1010
+ static windowSetMinSize(minSize: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14903, minSize, windowId); }
1011
+
1012
+ /**
1013
+ * Returns the size of the window specified by `windowId` (in pixels), including the borders drawn by the operating system. See also {@link windowGetSize}.
1014
+ */
1015
+ static windowGetSizeWithDecorations(windowId?: number /* = 0 */): Vector2i { return _C($(), 14875, windowId) as Vector2i; }
1016
+
1017
+ /**
1018
+ * Returns the mode of the given window.
1019
+ */
1020
+ static windowGetMode(windowId?: number /* = 0 */): WindowMode { return _C($(), 14867, windowId) as WindowMode; }
1021
+
1022
+ /**
1023
+ * Sets window mode for the given window to `mode`.
1024
+ * **Note:** On Android, setting it to {@link WINDOW_MODE_FULLSCREEN} or {@link WINDOW_MODE_EXCLUSIVE_FULLSCREEN} will enable immersive mode.
1025
+ * **Note:** Setting the window to full screen forcibly sets the borderless flag to `true`, so make sure to set it back to `false` when not wanted.
1026
+ */
1027
+ static windowSetMode(mode: WindowMode, windowId?: number /* = 0 */): void { _C($(), 14904, mode, windowId); }
1028
+
1029
+ /**
1030
+ * Enables or disables the given window's given `flag`.
1031
+ */
1032
+ static windowSetFlag(flag: WindowFlags, enabled: boolean, windowId?: number /* = 0 */): void { _C($(), 14894, flag, enabled, windowId); }
1033
+
1034
+ /**
1035
+ * Returns the current value of the given window's `flag`.
1036
+ */
1037
+ static windowGetFlag(flag: WindowFlags, windowId?: number /* = 0 */): boolean { return _C($(), 14860, flag, windowId) as boolean; }
1038
+
1039
+ /**
1040
+ * Sets the window icon (usually displayed in the top-left corner) for the window specified by `windowId`.
1041
+ * **Note:** This method is implemented on Linux and Windows.
1042
+ */
1043
+ static windowSetIcon(icon: Image, windowId?: number /* = 0 */): void { _C($(), 14897, icon, windowId); }
1044
+
1045
+ /**
1046
+ * When {@link WINDOW_FLAG_EXTEND_TO_TITLE} flag is set, set offset to the center of the first titlebar button.
1047
+ * **Note:** This flag is implemented only on macOS.
1048
+ */
1049
+ static windowSetWindowButtonsOffset(offset: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14915, offset, windowId); }
1050
+
1051
+ /**
1052
+ * Returns left margins (`x`), right margins (`y`) and height (`z`) of the title that are safe to use (contains no buttons or other elements) when {@link WINDOW_FLAG_EXTEND_TO_TITLE} flag is set.
1053
+ */
1054
+ static windowGetSafeTitleMargins(windowId?: number /* = 0 */): Vector3i { return _C($(), 14873, windowId) as Vector3i; }
1055
+
1056
+ /**
1057
+ * Makes the window specified by `windowId` request attention, which is materialized by the window title and taskbar entry blinking until the window is focused. This usually has no visible effect if the window is currently focused. The exact behavior varies depending on the operating system.
1058
+ */
1059
+ static windowRequestAttention(windowId?: number /* = 0 */): void { _C($(), 14888, windowId); }
1060
+
1061
+ /**
1062
+ * Creates a progress bar on the taskbar/dock icon of the window specified by `windowId` if it does not exist, sets the progress of the icon.
1063
+ * `value` acts as a relative percentage value, ranges from `0.0` (lowest) to `1.0` (highest).
1064
+ * **Note:** This method is implemented only on Windows and macOS.
1065
+ * **Note:** On macOS, the progress bar is displayed only for the main window.
1066
+ */
1067
+ static windowSetTaskbarProgressValue(value: number, windowId?: number /* = 0 */): void { _C($(), 14911, value, windowId); }
1068
+
1069
+ /**
1070
+ * Sets the type and state of the progress bar on the taskbar/dock icon of the window specified by `windowId`. See {@link ProgressState} for possible values and how each mode behaves.
1071
+ * **Note:** This method is implemented only on Windows and macOS.
1072
+ * **Note:** On macOS, the progress bar is displayed only for the main window.
1073
+ */
1074
+ static windowSetTaskbarProgressState(state: ProgressState, windowId?: number /* = 0 */): void { _C($(), 14910, state, windowId); }
1075
+
1076
+ /**
1077
+ * Moves the window specified by `windowId` to the foreground, so that it is visible over other windows.
1078
+ */
1079
+ static windowMoveToForeground(windowId?: number /* = 0 */): void { _C($(), 14887, windowId); }
1080
+
1081
+ /**
1082
+ * Returns `true` if the window specified by `windowId` is focused.
1083
+ */
1084
+ static windowIsFocused(windowId?: number /* = 0 */): boolean { return _C($(), 14880, windowId) as boolean; }
1085
+
1086
+ /**
1087
+ * Returns `true` if anything can be drawn in the window specified by `windowId`, `false` otherwise. Using the `--disable-render-loop` command line argument or a headless build will return `false`.
1088
+ */
1089
+ static windowCanDraw(windowId?: number /* = 0 */): boolean { return _C($(), 14856, windowId) as boolean; }
1090
+
1091
+ /**
1092
+ * Sets window transient parent. Transient window will be destroyed with its transient parent and will return focus to their parent when closed. The transient window is displayed on top of a non-exclusive full-screen parent window. Transient windows can't enter full-screen mode.
1093
+ * **Note:** It's recommended to change this value using {@link Window.transient} instead.
1094
+ * **Note:** The behavior might be different depending on the platform.
1095
+ */
1096
+ static windowSetTransient(windowId: number, parentWindowId: number): void { _C($(), 14913, windowId, parentWindowId); }
1097
+
1098
+ /**
1099
+ * If set to `true`, this window will always stay on top of its parent window, parent window will ignore input while this window is opened.
1100
+ * **Note:** On macOS, exclusive windows are confined to the same space (virtual desktop or screen) as the parent window.
1101
+ * **Note:** This method is implemented on macOS and Windows.
1102
+ */
1103
+ static windowSetExclusive(windowId: number, exclusive: boolean): void { _C($(), 14893, windowId, exclusive); }
1104
+
1105
+ /**
1106
+ * Sets whether [Input Method Editor](https://en.wikipedia.org/wiki/Input_method) should be enabled for the window specified by `windowId`. See also {@link windowSetImePosition}.
1107
+ */
1108
+ static windowSetImeActive(active: boolean, windowId?: number /* = 0 */): void { _C($(), 14898, active, windowId); }
1109
+
1110
+ /**
1111
+ * Sets the position of the [Input Method Editor](https://en.wikipedia.org/wiki/Input_method) popup for the specified `windowId`. Only effective if {@link windowSetImeActive} was set to `true` for the specified `windowId`.
1112
+ */
1113
+ static windowSetImePosition(position: Vector2i, windowId?: number /* = 0 */): void { _C($(), 14899, position, windowId); }
1114
+
1115
+ /**
1116
+ * Sets the V-Sync mode of the given window. See also {@link ProjectSettings.display/window/vsync/vsyncMode}.
1117
+ * Depending on the platform and used renderer, the engine will fall back to {@link VSYNC_ENABLED} if the desired mode is not supported.
1118
+ * **Note:** V-Sync modes other than {@link VSYNC_ENABLED} are only supported in the Forward+ and Mobile rendering methods, not Compatibility.
1119
+ */
1120
+ static windowSetVsyncMode(vsyncMode: VSyncMode, windowId?: number /* = 0 */): void { _C($(), 14914, vsyncMode, windowId); }
1121
+
1122
+ /**
1123
+ * Returns the V-Sync mode of the given window.
1124
+ */
1125
+ static windowGetVsyncMode(windowId?: number /* = 0 */): VSyncMode { return _C($(), 14877, windowId) as VSyncMode; }
1126
+
1127
+ /**
1128
+ * Returns `true` if the window specified by `windowId` supports HDR output. This depends on the platform, screen capabilities, system settings, and the screen the window is currently on.
1129
+ */
1130
+ static windowIsHdrOutputSupported(windowId?: number /* = 0 */): boolean { return _C($(), 14883, windowId) as boolean; }
1131
+
1132
+ /**
1133
+ * If `enable` is `true`, HDR output is requested for the window specified by `windowId`. The window will automatically switch between HDR and SDR if it is moved between screens, screen capabilities change, or system settings are modified. This will internally force {@link Viewport.useHdr2d} to be enabled on the main {@link Viewport}. All other {@link SubViewport} of the {@link Window} must have their {@link Viewport.useHdr2d} property enabled to produce HDR output. Corresponds to {@link Window.hdrOutputRequested}.
1134
+ */
1135
+ static windowRequestHdrOutput(enable: boolean, windowId?: number /* = 0 */): void { _C($(), 14889, enable, windowId); }
1136
+
1137
+ /**
1138
+ * Returns `true` if HDR output is requested for the window specified by `windowId`. Corresponds to {@link Window.hdrOutputRequested}.
1139
+ */
1140
+ static windowIsHdrOutputRequested(windowId?: number /* = 0 */): boolean { return _C($(), 14882, windowId) as boolean; }
1141
+
1142
+ /**
1143
+ * Returns `true` if HDR output is currently enabled for the window specified by `windowId`. The returned value may change dynamically based on system settings, screen capabilities, and which screen the window is currently on.
1144
+ */
1145
+ static windowIsHdrOutputEnabled(windowId?: number /* = 0 */): boolean { return _C($(), 14881, windowId) as boolean; }
1146
+
1147
+ /**
1148
+ * Sets the reference white luminance in nits (cd/m²) for HDR output by the window specified by `windowId`. If `referenceLuminance` is negative, the window automatically adjusts to the brightness set by the operating system. By default, this luminance is set to `-1.0` for every window. Typically this property should be left at this default value, but may optionally be exposed as an "HDR Brightness" in-game setting to allow the player to adjust the brightness of their game, independently of their device settings. See also {@link windowGetHdrOutputCurrentReferenceLuminance} and {@link windowGetHdrOutputReferenceLuminance}.
1149
+ * **Note:** This method is only implemented on Windows. Other platforms will always use the reference luminance that is reported by the operating system.
1150
+ */
1151
+ static windowSetHdrOutputReferenceLuminance(referenceLuminance: number, windowId?: number /* = 0 */): void { _C($(), 14896, referenceLuminance, windowId); }
1152
+
1153
+ /**
1154
+ * Returns the reference white luminance in nits (cd/m²) set for HDR output by the window specified by `windowId`. Negative values indicate that the value is being automatically adjusted to match the operating system brightness. See also {@link windowGetHdrOutputCurrentReferenceLuminance}.
1155
+ */
1156
+ static windowGetHdrOutputReferenceLuminance(windowId?: number /* = 0 */): number { return _C($(), 14864, windowId) as number; }
1157
+
1158
+ /**
1159
+ * When {@link windowIsHdrOutputEnabled} returns `true`, this returns the current reference white luminance in nits (cd/m²) for HDR output by the window specified by `windowId`. If the reference luminance is being automatically adjusted to match the operating system brightness, this will return that value. Otherwise, it will return the value set by {@link windowSetHdrOutputReferenceLuminance}. This reference luminance value is used when calculating {@link windowGetOutputMaxLinearValue}.
1160
+ * **Note:** This reference white luminance may not match the physical behavior of the screen, but will always be proportionally correct relative to {@link windowGetHdrOutputCurrentMaxLuminance}.
1161
+ */
1162
+ static windowGetHdrOutputCurrentReferenceLuminance(windowId?: number /* = 0 */): number { return _C($(), 14862, windowId) as number; }
1163
+
1164
+ /**
1165
+ * Sets the maximum luminance in nits (cd/m²) for HDR output by the window specified by `windowId`. If `maxLuminance` is negative, the window uses the screen's maximum luminance that is reported by the operating system. By default, this luminance is set to `-1.0` for every window. Typically this property should be left at this default value, but may optionally be exposed through in-game settings to allow the player to correct an inaccurate maximum luminance reported by the operating system. See also {@link windowGetHdrOutputCurrentMaxLuminance} and {@link windowGetHdrOutputMaxLuminance}.
1166
+ * **Note:** This method is only implemented on macOS and Windows. Other platforms will always use the screen's maximum luminance that is reported by the operating system.
1167
+ */
1168
+ static windowSetHdrOutputMaxLuminance(maxLuminance: number, windowId?: number /* = 0 */): void { _C($(), 14895, maxLuminance, windowId); }
1169
+
1170
+ /**
1171
+ * Returns the maximum luminance in nits (cd/m²) set for HDR output by the window specified by `windowId`. Negative values indicate that the value is being automatically adjusted based on the screen's capabilities. See also {@link windowGetHdrOutputCurrentMaxLuminance}.
1172
+ */
1173
+ static windowGetHdrOutputMaxLuminance(windowId?: number /* = 0 */): number { return _C($(), 14863, windowId) as number; }
1174
+
1175
+ /**
1176
+ * When {@link windowIsHdrOutputEnabled} returns `true`, this returns the current maximum luminance in nits (cd/m²) for HDR output by the window specified by `windowId`. If the maximum luminance is being automatically adjusted based on the screen's capabilities, this method will return that value. Otherwise, it will return the value set by {@link windowSetHdrOutputMaxLuminance}. This maximum luminance value is used when calculating {@link windowGetOutputMaxLinearValue}.
1177
+ * **Note:** This maximum luminance may not match the physical behavior of the screen, but will always be proportionally correct relative to {@link windowGetHdrOutputCurrentReferenceLuminance}.
1178
+ */
1179
+ static windowGetHdrOutputCurrentMaxLuminance(windowId?: number /* = 0 */): number { return _C($(), 14861, windowId) as number; }
1180
+
1181
+ /**
1182
+ * Returns the maximum value for linear color components that can be displayed for the window specified by `windowId`, regardless of SDR or HDR output. Returns `1.0` if HDR is not enabled or not supported. When HDR output is enabled, this is calculated based on {@link windowGetHdrOutputCurrentReferenceLuminance} and {@link windowGetHdrOutputCurrentMaxLuminance}. The {@link Window.output_max_linear_value_changed} signal will be emitted whenever this value changes. This value is used by tonemapping and other {@link Environment} effects to ensure that bright colors are presented in the range that can be displayed by this window. Corresponds to {@link Window.getOutputMaxLinearValue}.
1183
+ */
1184
+ static windowGetOutputMaxLinearValue(windowId?: number /* = 0 */): number { return _C($(), 14869, windowId) as number; }
1185
+
1186
+ /**
1187
+ * Returns `true` if the given window can be maximized (the maximize button is enabled).
1188
+ */
1189
+ static windowIsMaximizeAllowed(windowId?: number /* = 0 */): boolean { return _C($(), 14884, windowId) as boolean; }
1190
+
1191
+ /**
1192
+ * Returns `true` if double-clicking on a window's title should maximize it.
1193
+ * **Note:** This method is implemented only on macOS.
1194
+ */
1195
+ static windowMaximizeOnTitleDblClick(): boolean { return _C($(), 14885) as boolean; }
1196
+
1197
+ /**
1198
+ * Returns `true` if double-clicking on a window's title should minimize it.
1199
+ * **Note:** This method is implemented only on macOS.
1200
+ */
1201
+ static windowMinimizeOnTitleDblClick(): boolean { return _C($(), 14886) as boolean; }
1202
+
1203
+ /**
1204
+ * Starts an interactive drag operation on the window with the given `windowId`, using the current mouse position. Call this method when handling a mouse button being pressed to simulate a pressed event on the window's title bar. Using this method allows the window to participate in space switching, tiling, and other system features.
1205
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS, and Windows.
1206
+ */
1207
+ static windowStartDrag(windowId?: number /* = 0 */): void { _C($(), 14917, windowId); }
1208
+
1209
+ /**
1210
+ * Starts an interactive resize operation on the window with the given `windowId`, using the current mouse position. Call this method when handling a mouse button being pressed to simulate a pressed event on the window's edge.
1211
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS, and Windows.
1212
+ */
1213
+ static windowStartResize(edge: WindowResizeEdge, windowId?: number /* = 0 */): void { _C($(), 14918, edge, windowId); }
1214
+
1215
+ /**
1216
+ * Sets the background color of the root window.
1217
+ * **Note:** This method is implemented only on Android.
1218
+ */
1219
+ static windowSetColor(color: Color): void { _C($(), 14890, color); }
1220
+
1221
+ /**
1222
+ * Returns `1` if a high-contrast user interface theme should be used, `0` otherwise. Returns `-1` if status is unknown.
1223
+ * **Note:** This method is implemented on Linux (X11/Wayland, GNOME), macOS, and Windows.
1224
+ */
1225
+ static accessibilityShouldIncreaseContrast(): number { return _C($(), 1084) as number; }
1226
+
1227
+ /**
1228
+ * Returns `1` if flashing, blinking, and other moving content that can cause seizures in users with photosensitive epilepsy should be disabled, `0` otherwise. Returns `-1` if status is unknown.
1229
+ * **Note:** This method is implemented on macOS and Windows.
1230
+ */
1231
+ static accessibilityShouldReduceAnimation(): number { return _C($(), 1085) as number; }
1232
+
1233
+ /**
1234
+ * Returns `1` if background images, transparency, and other features that can reduce the contrast between the foreground and background should be disabled, `0` otherwise. Returns `-1` if status is unknown.
1235
+ * **Note:** This method is implemented on macOS and Windows.
1236
+ */
1237
+ static accessibilityShouldReduceTransparency(): number { return _C($(), 1086) as number; }
1238
+
1239
+ /**
1240
+ * Returns `1` if a screen reader, Braille display or other assistive app is active, `0` otherwise. Returns `-1` if status is unknown.
1241
+ * **Note:** This method is implemented on Linux, macOS, and Windows.
1242
+ * **Note:** Accessibility debugging tools, such as Accessibility Insights for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD), do not count as assistive apps and will not affect this value. To test your project with these tools, set {@link ProjectSettings.accessibility/general/accessibilitySupport} to `1`.
1243
+ */
1244
+ static accessibilityScreenReaderActive(): number { return _C($(), 1081) as number; }
1245
+
1246
+ /**
1247
+ * Creates a new, empty accessibility element resource.
1248
+ * **Note:** An accessibility element is created and freed automatically for each {@link Node}. In general, this function should not be called manually.
1249
+ */
1250
+ static accessibilityCreateElement(windowId: number, role: AccessibilityRole): RID { return _C($(), 1064, windowId, role) as RID; }
1251
+
1252
+ /**
1253
+ * Creates a new, empty accessibility sub-element resource. Sub-elements can be used to provide accessibility information for objects which are not {@link Node}s, such as list items, table cells, or menu items. Sub-elements are freed automatically when the parent element is freed, or can be freed early using the {@link accessibilityFreeElement} method.
1254
+ */
1255
+ static accessibilityCreateSubElement(parentRid: RID, role: AccessibilityRole, insertPos?: number /* = -1 */): RID { return _C($(), 1065, parentRid, role, insertPos) as RID; }
1256
+
1257
+ /**
1258
+ * Creates a new, empty accessibility sub-element from the shaped text buffer. Sub-elements are freed automatically when the parent element is freed, or can be freed early using the {@link accessibilityFreeElement} method.
1259
+ * If `isLastLine` is `true`, no trailing newline is appended to the text content. Set to `true` for the last line in multi-line text fields and for single-line text fields.
1260
+ */
1261
+ static accessibilityCreateSubTextEditElements(parentRid: RID, shapedText: RID, minHeight: number, insertPos?: number /* = -1 */, isLastLine?: boolean /* = false */): RID { return _C($(), 1066, parentRid, shapedText, minHeight, insertPos, isLastLine) as RID; }
1262
+
1263
+ /**
1264
+ * Returns `true` if `id` is a valid accessibility element.
1265
+ */
1266
+ static accessibilityHasElement(id: RID): boolean { return _C($(), 1076, id) as boolean; }
1267
+
1268
+ /**
1269
+ * Frees the accessibility element `id` created by {@link accessibilityCreateElement}, {@link accessibilityCreateSubElement}, or {@link accessibilityCreateSubTextEditElements}.
1270
+ */
1271
+ static accessibilityFreeElement(id: RID): void { _C($(), 1074, id); }
1272
+
1273
+ /**
1274
+ * Sets the metadata of the accessibility element `id` to `meta`.
1275
+ */
1276
+ static accessibilityElementSetMeta(id: RID, meta: Variant): void { _C($(), 1072, id, meta); }
1277
+
1278
+ /**
1279
+ * Returns the metadata of the accessibility element `id`.
1280
+ */
1281
+ static accessibilityElementGetMeta(id: RID): Variant { return _C($(), 1071, id) as Variant; }
1282
+
1283
+ /**
1284
+ * Sets window outer (with decorations) and inner (without decorations) bounds for assistive apps.
1285
+ * **Note:** This method is implemented on Linux, macOS, and Windows.
1286
+ * **Note:** Advanced users only! {@link Window} objects call this method automatically.
1287
+ */
1288
+ static accessibilitySetWindowRect(windowId: number, rectOut: Rect2, rectIn: Rect2): void { _C($(), 1083, windowId, rectOut, rectIn); }
1289
+
1290
+ /**
1291
+ * Sets the window focused state for assistive apps.
1292
+ * **Note:** This method is implemented on Linux, macOS, and Windows.
1293
+ * **Note:** Advanced users only! {@link Window} objects call this method automatically.
1294
+ */
1295
+ static accessibilitySetWindowFocused(windowId: number, focused: boolean): void { _C($(), 1082, windowId, focused); }
1296
+
1297
+ /**
1298
+ * Sets currently focused element.
1299
+ */
1300
+ static accessibilityUpdateSetFocus(id: RID): void { _C($(), 1106, id); }
1301
+
1302
+ /**
1303
+ * Returns the main accessibility element of the OS native window.
1304
+ */
1305
+ static accessibilityGetWindowRoot(windowId: number): RID { return _C($(), 1075, windowId) as RID; }
1306
+
1307
+ /**
1308
+ * Sets element accessibility role.
1309
+ */
1310
+ static accessibilityUpdateSetRole(id: RID, role: AccessibilityRole): void { _C($(), 1127, id, role); }
1311
+
1312
+ /**
1313
+ * Sets element accessibility name.
1314
+ */
1315
+ static accessibilityUpdateSetName(id: RID, name: string): void { _C($(), 1118, id, name); }
1316
+
1317
+ /**
1318
+ * Sets element accessibility extra information added to the element name.
1319
+ */
1320
+ static accessibilityUpdateSetExtraInfo(id: RID, name: string): void { _C($(), 1104, id, name); }
1321
+
1322
+ /**
1323
+ * Sets element accessibility description.
1324
+ */
1325
+ static accessibilityUpdateSetDescription(id: RID, description: string): void { _C($(), 1102, id, description); }
1326
+
1327
+ /**
1328
+ * Sets element text value.
1329
+ */
1330
+ static accessibilityUpdateSetValue(id: RID, value: string): void { _C($(), 1148, id, value); }
1331
+
1332
+ /**
1333
+ * Sets tooltip text.
1334
+ */
1335
+ static accessibilityUpdateSetTooltip(id: RID, tooltip: string): void { _C($(), 1145, id, tooltip); }
1336
+
1337
+ /**
1338
+ * Sets element bounding box, relative to the node position.
1339
+ */
1340
+ static accessibilityUpdateSetBounds(id: RID, rect: Rect2): void { _C($(), 1098, id, rect); }
1341
+
1342
+ /**
1343
+ * Sets element 2D transform.
1344
+ */
1345
+ static accessibilityUpdateSetTransform(id: RID, transform: Transform2D): void { _C($(), 1146, id, transform); }
1346
+
1347
+ /**
1348
+ * Adds a child accessibility element.
1349
+ * **Note:** {@link Node} children and sub-elements are added to the child list automatically.
1350
+ */
1351
+ static accessibilityUpdateAddChild(id: RID, childId: RID): void { _C($(), 1088, id, childId); }
1352
+
1353
+ /**
1354
+ * Adds an element that is controlled by this element.
1355
+ */
1356
+ static accessibilityUpdateAddRelatedControls(id: RID, relatedId: RID): void { _C($(), 1090, id, relatedId); }
1357
+
1358
+ /**
1359
+ * Adds an element that details this element.
1360
+ */
1361
+ static accessibilityUpdateAddRelatedDetails(id: RID, relatedId: RID): void { _C($(), 1092, id, relatedId); }
1362
+
1363
+ /**
1364
+ * Adds an element that describes this element.
1365
+ */
1366
+ static accessibilityUpdateAddRelatedDescribedBy(id: RID, relatedId: RID): void { _C($(), 1091, id, relatedId); }
1367
+
1368
+ /**
1369
+ * Adds an element that this element flow into.
1370
+ */
1371
+ static accessibilityUpdateAddRelatedFlowTo(id: RID, relatedId: RID): void { _C($(), 1093, id, relatedId); }
1372
+
1373
+ /**
1374
+ * Adds an element that labels this element.
1375
+ */
1376
+ static accessibilityUpdateAddRelatedLabeledBy(id: RID, relatedId: RID): void { _C($(), 1094, id, relatedId); }
1377
+
1378
+ /**
1379
+ * Adds an element that is part of the same radio group.
1380
+ * **Note:** This method should be called on each element of the group, using all other elements as `relatedId`.
1381
+ */
1382
+ static accessibilityUpdateAddRelatedRadioGroup(id: RID, relatedId: RID): void { _C($(), 1095, id, relatedId); }
1383
+
1384
+ /**
1385
+ * Adds an element that is an active descendant of this element.
1386
+ */
1387
+ static accessibilityUpdateSetActiveDescendant(id: RID, otherId: RID): void { _C($(), 1096, id, otherId); }
1388
+
1389
+ /**
1390
+ * Sets next element on the line.
1391
+ */
1392
+ static accessibilityUpdateSetNextOnLine(id: RID, otherId: RID): void { _C($(), 1119, id, otherId); }
1393
+
1394
+ /**
1395
+ * Sets previous element on the line.
1396
+ */
1397
+ static accessibilityUpdateSetPreviousOnLine(id: RID, otherId: RID): void { _C($(), 1126, id, otherId); }
1398
+
1399
+ /**
1400
+ * Sets the element to be a member of the group.
1401
+ */
1402
+ static accessibilityUpdateSetMemberOf(id: RID, groupId: RID): void { _C($(), 1117, id, groupId); }
1403
+
1404
+ /**
1405
+ * Sets target element for the link.
1406
+ */
1407
+ static accessibilityUpdateSetInPageLinkTarget(id: RID, otherId: RID): void { _C($(), 1108, id, otherId); }
1408
+
1409
+ /**
1410
+ * Sets an element which contains an error message for this element.
1411
+ */
1412
+ static accessibilityUpdateSetErrorMessage(id: RID, otherId: RID): void { _C($(), 1103, id, otherId); }
1413
+
1414
+ /**
1415
+ * Sets the priority of the live region updates.
1416
+ */
1417
+ static accessibilityUpdateSetLive(id: RID, live: AccessibilityLiveMode): void { _C($(), 1116, id, live); }
1418
+
1419
+ /**
1420
+ * Adds a callback for the accessibility action (action which can be performed by using a special screen reader command or buttons on the Braille display), and marks this action as supported. The action callback receives one {@link Variant} argument, which value depends on action type.
1421
+ */
1422
+ static accessibilityUpdateAddAction(id: RID, action: AccessibilityAction, callable: Callable): void { _C($(), 1087, id, action, callable); }
1423
+
1424
+ /**
1425
+ * Adds support for a custom accessibility action. `actionId` is passed as an argument to the callback of {@link ACTION_CUSTOM} action.
1426
+ */
1427
+ static accessibilityUpdateAddCustomAction(id: RID, actionId: number, actionDescription: string): void { _C($(), 1089, id, actionId, actionDescription); }
1428
+
1429
+ /**
1430
+ * Sets number of rows in the table.
1431
+ */
1432
+ static accessibilityUpdateSetTableRowCount(id: RID, count: number): void { _C($(), 1139, id, count); }
1433
+
1434
+ /**
1435
+ * Sets number of columns in the table.
1436
+ */
1437
+ static accessibilityUpdateSetTableColumnCount(id: RID, count: number): void { _C($(), 1137, id, count); }
1438
+
1439
+ /**
1440
+ * Sets position of the row in the table.
1441
+ */
1442
+ static accessibilityUpdateSetTableRowIndex(id: RID, index: number): void { _C($(), 1140, id, index); }
1443
+
1444
+ /**
1445
+ * Sets position of the column.
1446
+ */
1447
+ static accessibilityUpdateSetTableColumnIndex(id: RID, index: number): void { _C($(), 1138, id, index); }
1448
+
1449
+ /**
1450
+ * Sets cell position in the table.
1451
+ */
1452
+ static accessibilityUpdateSetTableCellPosition(id: RID, rowIndex: number, columnIndex: number): void { _C($(), 1135, id, rowIndex, columnIndex); }
1453
+
1454
+ /**
1455
+ * Sets cell row/column span.
1456
+ */
1457
+ static accessibilityUpdateSetTableCellSpan(id: RID, rowSpan: number, columnSpan: number): void { _C($(), 1136, id, rowSpan, columnSpan); }
1458
+
1459
+ /**
1460
+ * Sets number of items in the list.
1461
+ */
1462
+ static accessibilityUpdateSetListItemCount(id: RID, size: number): void { _C($(), 1110, id, size); }
1463
+
1464
+ /**
1465
+ * Sets the position of the element in the list.
1466
+ */
1467
+ static accessibilityUpdateSetListItemIndex(id: RID, index: number): void { _C($(), 1112, id, index); }
1468
+
1469
+ /**
1470
+ * Sets the hierarchical level of the element in the list.
1471
+ */
1472
+ static accessibilityUpdateSetListItemLevel(id: RID, level: number): void { _C($(), 1113, id, level); }
1473
+
1474
+ /**
1475
+ * Sets list/tree item selected status.
1476
+ */
1477
+ static accessibilityUpdateSetListItemSelected(id: RID, selected: boolean): void { _C($(), 1114, id, selected); }
1478
+
1479
+ /**
1480
+ * Sets list/tree item expanded status.
1481
+ */
1482
+ static accessibilityUpdateSetListItemExpanded(id: RID, expanded: boolean): void { _C($(), 1111, id, expanded); }
1483
+
1484
+ /**
1485
+ * Sets popup type for popup buttons.
1486
+ */
1487
+ static accessibilityUpdateSetPopupType(id: RID, popup: AccessibilityPopupType): void { _C($(), 1125, id, popup); }
1488
+
1489
+ /**
1490
+ * Sets element checked state.
1491
+ */
1492
+ static accessibilityUpdateSetChecked(id: RID, checekd: boolean): void { _C($(), 1099, id, checekd); }
1493
+
1494
+ /**
1495
+ * Sets numeric value.
1496
+ */
1497
+ static accessibilityUpdateSetNumValue(id: RID, position: number /* double */): void { _C($(), 1123, id, position); }
1498
+
1499
+ /**
1500
+ * Sets numeric value range.
1501
+ */
1502
+ static accessibilityUpdateSetNumRange(id: RID, min: number /* double */, max: number /* double */): void { _C($(), 1121, id, min, max); }
1503
+
1504
+ /**
1505
+ * Sets numeric value step.
1506
+ */
1507
+ static accessibilityUpdateSetNumStep(id: RID, step: number /* double */): void { _C($(), 1122, id, step); }
1508
+
1509
+ /**
1510
+ * Sets numeric value jump.
1511
+ */
1512
+ static accessibilityUpdateSetNumJump(id: RID, jump: number /* double */): void { _C($(), 1120, id, jump); }
1513
+
1514
+ /**
1515
+ * Sets scroll bar x position.
1516
+ */
1517
+ static accessibilityUpdateSetScrollX(id: RID, position: number /* double */): void { _C($(), 1129, id, position); }
1518
+
1519
+ /**
1520
+ * Sets scroll bar x range.
1521
+ */
1522
+ static accessibilityUpdateSetScrollXRange(id: RID, min: number /* double */, max: number /* double */): void { _C($(), 1130, id, min, max); }
1523
+
1524
+ /**
1525
+ * Sets scroll bar y position.
1526
+ */
1527
+ static accessibilityUpdateSetScrollY(id: RID, position: number /* double */): void { _C($(), 1131, id, position); }
1528
+
1529
+ /**
1530
+ * Sets scroll bar y range.
1531
+ */
1532
+ static accessibilityUpdateSetScrollYRange(id: RID, min: number /* double */, max: number /* double */): void { _C($(), 1132, id, min, max); }
1533
+
1534
+ /**
1535
+ * Sets text underline/overline/strikethrough.
1536
+ */
1537
+ static accessibilityUpdateSetTextDecorations(id: RID, underline: boolean, strikethrough: boolean, overline: boolean): void { _C($(), 1142, id, underline, strikethrough, overline); }
1538
+
1539
+ /**
1540
+ * Sets element text alignment.
1541
+ */
1542
+ static accessibilityUpdateSetTextAlign(id: RID, align: HorizontalAlignment): void { _C($(), 1141, id, align); }
1543
+
1544
+ /**
1545
+ * Sets text selection to the text field. `textStartId` and `textEndId` should be elements created by {@link accessibilityCreateSubTextEditElements}. Character offsets are relative to the corresponding element.
1546
+ */
1547
+ static accessibilityUpdateSetTextSelection(id: RID, textStartId: RID, startChar: number, textEndId: RID, endChar: number): void { _C($(), 1144, id, textStartId, startChar, textEndId, endChar); }
1548
+
1549
+ /**
1550
+ * Sets element flag.
1551
+ */
1552
+ static accessibilityUpdateSetFlag(id: RID, flag: AccessibilityFlags, value: boolean): void { _C($(), 1105, id, flag, value); }
1553
+
1554
+ /**
1555
+ * Sets element class name.
1556
+ */
1557
+ static accessibilityUpdateSetClassname(id: RID, classname: string): void { _C($(), 1100, id, classname); }
1558
+
1559
+ /**
1560
+ * Sets placeholder text.
1561
+ */
1562
+ static accessibilityUpdateSetPlaceholder(id: RID, placeholder: string): void { _C($(), 1124, id, placeholder); }
1563
+
1564
+ /**
1565
+ * Sets element text language.
1566
+ */
1567
+ static accessibilityUpdateSetLanguage(id: RID, language: string): void { _C($(), 1109, id, language); }
1568
+
1569
+ /**
1570
+ * Sets text orientation.
1571
+ */
1572
+ static accessibilityUpdateSetTextOrientation(id: RID, vertical: boolean): void { _C($(), 1143, id, vertical); }
1573
+
1574
+ /**
1575
+ * Sets the orientation of the list elements.
1576
+ */
1577
+ static accessibilityUpdateSetListOrientation(id: RID, vertical: boolean): void { _C($(), 1115, id, vertical); }
1578
+
1579
+ /**
1580
+ * Sets the list of keyboard shortcuts used by element.
1581
+ */
1582
+ static accessibilityUpdateSetShortcut(id: RID, shortcut: string): void { _C($(), 1133, id, shortcut); }
1583
+
1584
+ /**
1585
+ * Sets link URL.
1586
+ */
1587
+ static accessibilityUpdateSetUrl(id: RID, url: string): void { _C($(), 1147, id, url); }
1588
+
1589
+ /**
1590
+ * Sets element accessibility role description text.
1591
+ */
1592
+ static accessibilityUpdateSetRoleDescription(id: RID, description: string): void { _C($(), 1128, id, description); }
1593
+
1594
+ /**
1595
+ * Sets human-readable description of the current checked state.
1596
+ */
1597
+ static accessibilityUpdateSetStateDescription(id: RID, description: string): void { _C($(), 1134, id, description); }
1598
+
1599
+ /**
1600
+ * Sets element color value.
1601
+ */
1602
+ static accessibilityUpdateSetColorValue(id: RID, color: Color): void { _C($(), 1101, id, color); }
1603
+
1604
+ /**
1605
+ * Sets element background color.
1606
+ */
1607
+ static accessibilityUpdateSetBackgroundColor(id: RID, color: Color): void { _C($(), 1097, id, color); }
1608
+
1609
+ /**
1610
+ * Sets element foreground color.
1611
+ */
1612
+ static accessibilityUpdateSetForegroundColor(id: RID, color: Color): void { _C($(), 1107, id, color); }
1613
+
1614
+ /**
1615
+ * Returns the text selection in the [Input Method Editor](https://en.wikipedia.org/wiki/Input_method) composition string, with the {@link Vector2i}'s `x` component being the caret position and `y` being the length of the selection.
1616
+ * **Note:** This method is implemented only on macOS.
1617
+ */
1618
+ static imeGetSelection(): Vector2i { return _C($(), 7574) as Vector2i; }
1619
+
1620
+ /**
1621
+ * Returns the composition string contained within the [Input Method Editor](https://en.wikipedia.org/wiki/Input_method) window.
1622
+ * **Note:** This method is implemented only on macOS.
1623
+ */
1624
+ static imeGetText(): string { return _C($(), 7575) as string; }
1625
+
1626
+ /**
1627
+ * Shows the virtual keyboard if the platform has one.
1628
+ * `existingText` parameter is useful for implementing your own {@link LineEdit} or {@link TextEdit}, as it tells the virtual keyboard what text has already been typed (the virtual keyboard uses it for auto-correct and predictions).
1629
+ * `position` parameter is the screen space {@link Rect2} of the edited text.
1630
+ * `type` parameter allows configuring which type of virtual keyboard to show.
1631
+ * `maxLength` limits the number of characters that can be entered if different from `-1`.
1632
+ * `cursorStart` can optionally define the current text cursor position if `cursorEnd` is not set.
1633
+ * `cursorStart` and `cursorEnd` can optionally define the current text selection.
1634
+ * **Note:** This method is implemented on Android, iOS and Web.
1635
+ */
1636
+ static virtualKeyboardShow(existingText: string, position?: Rect2 /* = Rect2(0, 0, 0, 0) */, type?: VirtualKeyboardType /* = 0 */, maxLength?: number /* = -1 */, cursorStart?: number /* = -1 */, cursorEnd?: number /* = -1 */): void { _C($(), 14768, existingText, position, type, maxLength, cursorStart, cursorEnd); }
1637
+
1638
+ /**
1639
+ * Hides the virtual keyboard if it is shown, does nothing otherwise.
1640
+ */
1641
+ static virtualKeyboardHide(): void { _C($(), 14767); }
1642
+
1643
+ /**
1644
+ * Returns the on-screen keyboard's height in pixels. Returns `0` if there is no keyboard or if it is currently hidden.
1645
+ * **Note:** On Android 7 and 8, the keyboard height may return `0` the first time the keyboard is opened in non-immersive mode. This behavior does not occur in immersive mode.
1646
+ */
1647
+ static virtualKeyboardGetHeight(): number { return _C($(), 14766) as number; }
1648
+
1649
+ /**
1650
+ * Returns `true` if a hardware keyboard is connected.
1651
+ * **Note:** This method is implemented on Android and iOS. On other platforms, this method always returns `true`.
1652
+ */
1653
+ static hasHardwareKeyboard(): boolean { return _C($(), 7401) as boolean; }
1654
+
1655
+ /**
1656
+ * Sets the callback that should be called when a hardware keyboard is connected or disconnected. `callable` should accept a single {@link bool} argument indicating whether the keyboard has been connected (`true`) or disconnected (`false`).
1657
+ * **Note:** This method is only implemented on Android.
1658
+ */
1659
+ static setHardwareKeyboardConnectionChangeCallback(callable: Callable): void { _C($(), 11605, callable); }
1660
+
1661
+ /**
1662
+ * Sets the default mouse cursor shape. The cursor's appearance will vary depending on the user's operating system and mouse cursor theme. See also {@link cursorGetShape} and {@link cursorSetCustomImage}.
1663
+ */
1664
+ static cursorSetShape(shape: CursorShape): void { _C($(), 2611, shape); }
1665
+
1666
+ /**
1667
+ * Returns the default mouse cursor shape set by {@link cursorSetShape}.
1668
+ */
1669
+ static cursorGetShape(): CursorShape { return _C($(), 2609) as CursorShape; }
1670
+
1671
+ /**
1672
+ * Sets a custom mouse cursor image for the given `shape`. This means the user's operating system and mouse cursor theme will no longer influence the mouse cursor's appearance.
1673
+ * `cursor` can be either a {@link Texture2D} or an {@link Image}, and it should not be larger than 256×256 to display correctly. Optionally, `hotspot` can be set to offset the image's position relative to the click point. By default, `hotspot` is set to the top-left corner of the image. See also {@link cursorSetShape}.
1674
+ * **Note:** On Web, calling this method every frame can cause the cursor to flicker.
1675
+ */
1676
+ static cursorSetCustomImage(cursor: Resource, shape?: CursorShape /* = 0 */, hotspot?: Vector2 /* = Vector2(0, 0) */): void { _C($(), 2610, cursor, shape, hotspot); }
1677
+
1678
+ /**
1679
+ * Returns `true` if positions of **OK** and **Cancel** buttons are swapped in dialogs. This is enabled by default on Windows to follow interface conventions, and be toggled by changing {@link ProjectSettings.gui/common/swapCancelOk}.
1680
+ * **Note:** This doesn't affect native dialogs such as the ones spawned by {@link DisplayServer.dialogShow}.
1681
+ */
1682
+ static getSwapCancelOk(): boolean { return _C($(), 6642) as boolean; }
1683
+
1684
+ /**
1685
+ * Allows the `processId` PID to steal focus from this window. In other words, this disables the operating system's focus stealing protection for the specified PID.
1686
+ * **Note:** This method is implemented only on Windows.
1687
+ */
1688
+ static enableForStealingFocus(processId: number /* int64 */): void { _C($(), 3066, processId); }
1689
+
1690
+ /**
1691
+ * Shows a text dialog which uses the operating system's native look-and-feel. `callback` should accept a single {@link int} parameter which corresponds to the index of the pressed button.
1692
+ * **Note:** This method is implemented if the display server has the {@link FEATURE_NATIVE_DIALOG} feature. Supported platforms include macOS, Windows, and Android.
1693
+ */
1694
+ static dialogShow(title: string, description: string, buttons: PackedStringArray, callback: Callable): Error { return _C($(), 2781, title, description, buttons, callback) as Error; }
1695
+
1696
+ /**
1697
+ * Shows a text input dialog which uses the operating system's native look-and-feel. `callback` should accept a single {@link String} parameter which contains the text field's contents.
1698
+ * **Note:** This method is implemented if the display server has the {@link FEATURE_NATIVE_DIALOG_INPUT} feature. Supported platforms include macOS, Windows, and Android.
1699
+ */
1700
+ static dialogInputText(title: string, description: string, existingText: string, callback: Callable): Error { return _C($(), 2780, title, description, existingText, callback) as Error; }
1701
+
1702
+ /**
1703
+ * Displays OS native dialog for selecting files or directories in the file system.
1704
+ * Each filter string in the `filters` array should be formatted like this: `*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg`. The description text of the filter is optional and can be omitted. It is recommended to set both file extension and MIME type. See also {@link FileDialog.filters}.
1705
+ * Callbacks have the following arguments: `status: bool, selected_paths: PackedStringArray, selected_filter_index: int`. **On Android,** the third callback argument (`selected_filter_index`) is always `0`.
1706
+ * **Note:** This method is implemented if the display server has the {@link FEATURE_NATIVE_DIALOG_FILE} feature. Supported platforms include Linux (X11/Wayland), Windows, macOS, and Android.
1707
+ * **Note:** `currentDirectory` might be ignored.
1708
+ * **Note:** Embedded file dialogs and Windows file dialogs support only file extensions, while Android, Linux, and macOS file dialogs also support MIME types.
1709
+ * **Note:** On Android and Linux, `showHidden` is ignored.
1710
+ * **Note:** On Android and macOS, native file dialogs have no title.
1711
+ * **Note:** On macOS, sandboxed apps will save security-scoped bookmarks to retain access to the opened folders across multiple sessions. Use {@link OS.getGrantedPermissions} to get a list of saved bookmarks.
1712
+ * **Note:** On Android, this method uses the Android Storage Access Framework (SAF).
1713
+ * The file picker returns a URI instead of a filesystem path. This URI can be passed directly to {@link FileAccess} to perform read/write operations.
1714
+ * When using {@link FILE_DIALOG_MODE_OPEN_DIR}, it returns a tree URI that grants full access to the selected directory. File operations inside this directory can be performed by passing a path on the form `treeUri#relative/path/to/file` to {@link FileAccess}.
1715
+ * To avoid opening the file picker again after each app restart, you can take persistable URI permission as follows:
1716
+ *
1717
+ *
1718
+ * ```gdscript
1719
+ *
1720
+ * val uri = "content://com.android..." # URI of the selected file or folder.
1721
+ * val persist = true # Set to false to release the persistable permission.
1722
+ * var android_runtime = Engine.get_singleton("AndroidRuntime")
1723
+ * android_runtime.updatePersistableUriPermission(uri, persist)
1724
+ *
1725
+ * ```
1726
+ *
1727
+ *
1728
+ * The persistable URI permission remains valid across app restarts as long as the directory is not moved, renamed, or deleted.
1729
+ */
1730
+ static fileDialogShow(title: string, currentDirectory: string, filename: string, showHidden: boolean, mode: FileDialogMode, filters: PackedStringArray, callback: Callable, parentWindowId?: number /* = 0 */): Error { return _C($(), 3246, title, currentDirectory, filename, showHidden, mode, filters, callback, parentWindowId) as Error; }
1731
+
1732
+ /**
1733
+ * Displays OS native dialog for selecting files or directories in the file system with additional user selectable options.
1734
+ * Each filter string in the `filters` array should be formatted like this: `*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg`. The description text of the filter is optional and can be omitted. It is recommended to set both file extension and MIME type. See also {@link FileDialog.filters}.
1735
+ * `options` is array of {@link Dictionary}s with the following keys:
1736
+ * - `"name"` - option's name {@link String}.
1737
+ * - `"values"` - {@link PackedStringArray} of values. If empty, boolean option (check box) is used.
1738
+ * - `"default"` - default selected option index ({@link int}) or default boolean value ({@link bool}).
1739
+ * Callbacks have the following arguments: `status: bool, selected_paths: PackedStringArray, selected_filter_index: int, selected_option: Dictionary`.
1740
+ * **Note:** This method is implemented if the display server has the {@link FEATURE_NATIVE_DIALOG_FILE_EXTRA} feature. Supported platforms include Linux (X11/Wayland), Windows, and macOS.
1741
+ * **Note:** `currentDirectory` might be ignored.
1742
+ * **Note:** Embedded file dialogs and Windows file dialogs support only file extensions, while Android, Linux, and macOS file dialogs also support MIME types.
1743
+ * **Note:** On Linux (X11), `showHidden` is ignored.
1744
+ * **Note:** On macOS, native file dialogs have no title.
1745
+ * **Note:** On macOS, sandboxed apps will save security-scoped bookmarks to retain access to the opened folders across multiple sessions. Use {@link OS.getGrantedPermissions} to get a list of saved bookmarks.
1746
+ */
1747
+ static fileDialogWithOptionsShow(title: string, currentDirectory: string, root: string, filename: string, showHidden: boolean, mode: FileDialogMode, filters: PackedStringArray, options: GodotArray<GodotDictionary>, callback: Callable, parentWindowId?: number /* = 0 */): Error { return _C($(), 3247, title, currentDirectory, root, filename, showHidden, mode, filters, options, callback, parentWindowId) as Error; }
1748
+
1749
+ /**
1750
+ * Plays the beep sound from the operative system, if possible. Because it comes from the OS, the beep sound will be audible even if the application is muted. It may also be disabled for the entire OS by the user.
1751
+ * **Note:** This method is implemented on macOS, Linux (X11/Wayland), and Windows.
1752
+ */
1753
+ static beep(): void { _C($(), 1744); }
1754
+
1755
+ /**
1756
+ * Returns the number of keyboard layouts.
1757
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1758
+ */
1759
+ static keyboardGetLayoutCount(): number { return _C($(), 8525) as number; }
1760
+
1761
+ /**
1762
+ * Returns active keyboard layout index.
1763
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS, and Windows.
1764
+ */
1765
+ static keyboardGetCurrentLayout(): number { return _C($(), 8522) as number; }
1766
+
1767
+ /**
1768
+ * Sets the active keyboard layout.
1769
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1770
+ */
1771
+ static keyboardSetCurrentLayout(index: number): void { _C($(), 8528, index); }
1772
+
1773
+ /**
1774
+ * Returns the ISO-639/BCP-47 language code of the keyboard layout at position `index`.
1775
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1776
+ */
1777
+ static keyboardGetLayoutLanguage(index: number): string { return _C($(), 8526, index) as string; }
1778
+
1779
+ /**
1780
+ * Returns the localized name of the keyboard layout at position `index`.
1781
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1782
+ */
1783
+ static keyboardGetLayoutName(index: number): string { return _C($(), 8527, index) as string; }
1784
+
1785
+ /**
1786
+ * Converts a physical (US QWERTY) `keycode` to one in the active keyboard layout.
1787
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1788
+ */
1789
+ static keyboardGetKeycodeFromPhysical(keycode: Key): Key { return _C($(), 8523, keycode) as Key; }
1790
+
1791
+ /**
1792
+ * Converts a physical (US QWERTY) `keycode` to localized label printed on the key in the active keyboard layout.
1793
+ * **Note:** This method is implemented on Linux (X11/Wayland), macOS and Windows.
1794
+ */
1795
+ static keyboardGetLabelFromPhysical(keycode: Key): Key { return _C($(), 8524, keycode) as Key; }
1796
+
1797
+ /**
1798
+ * Opens system emoji and symbol picker.
1799
+ * **Note:** This method is implemented on macOS and Windows.
1800
+ */
1801
+ static showEmojiAndSymbolPicker(): void { _C($(), 13576); }
1802
+
1803
+ /**
1804
+ * Displays OS native color picker.
1805
+ * Callbacks have the following arguments: `status: bool, color: Color`.
1806
+ * **Note:** This method is implemented if the display server has the {@link FEATURE_NATIVE_COLOR_PICKER} feature.
1807
+ * **Note:** This method is only implemented on Linux (X11/Wayland).
1808
+ */
1809
+ static colorPicker(callback: Callable): boolean { return _C($(), 2374, callback) as boolean; }
1810
+
1811
+ /**
1812
+ * Perform window manager processing, including input flushing. See also {@link forceProcessAndDropEvents}, {@link Input.flushBufferedEvents} and {@link Input.useAccumulatedInput}.
1813
+ */
1814
+ static processEvents(): void { _C($(), 9571); }
1815
+
1816
+ /**
1817
+ * Forces window manager processing while ignoring all {@link InputEvent}s. See also {@link processEvents}.
1818
+ * **Note:** This method is implemented on Windows and macOS.
1819
+ */
1820
+ static forceProcessAndDropEvents(): void { _C($(), 3533); }
1821
+
1822
+ /**
1823
+ * Sets the window icon (usually displayed in the top-left corner) in the operating system's *native* format. The file at `filename` must be in `.ico` format on Windows or `.icns` on macOS. By using specially crafted `.ico` or `.icns` icons, {@link setNativeIcon} allows specifying different icons depending on the size the icon is displayed at. This size is determined by the operating system and user preferences (including the display scale factor). To use icons in other formats, use {@link setIcon} instead.
1824
+ * **Note:** Requires support for {@link FEATURE_NATIVE_ICON}.
1825
+ */
1826
+ static setNativeIcon(filename: string): void { _C($(), 12114, filename); }
1827
+
1828
+ /**
1829
+ * Sets the application icon and icons of all windows with an {@link Image}. To use icons in the operating system's native format, use {@link setNativeIcon} instead.
1830
+ * **Note:** Requires support for {@link FEATURE_ICON}.
1831
+ */
1832
+ static setIcon(image: Image): void { _C($(), 11645, image); }
1833
+
1834
+ /**
1835
+ * Creates a new application status indicator with the specified icon, tooltip, and activation callback.
1836
+ * `callback` should take two arguments: the pressed mouse button (one of the {@link MouseButton} constants) and the click position in screen coordinates (a {@link Vector2i}).
1837
+ */
1838
+ static createStatusIndicator(icon: Texture2D, tooltip: string, callback: Callable): number { return _C($(), 2573, icon, tooltip, callback) as number; }
1839
+
1840
+ /**
1841
+ * Sets the application status indicator icon.
1842
+ * **Note:** This method is implemented on macOS and Windows.
1843
+ */
1844
+ static statusIndicatorSetIcon(id: number, icon: Texture2D): void { _C($(), 13851, id, icon); }
1845
+
1846
+ /**
1847
+ * Sets the application status indicator tooltip.
1848
+ * **Note:** This method is implemented on macOS and Windows.
1849
+ */
1850
+ static statusIndicatorSetTooltip(id: number, tooltip: string): void { _C($(), 13853, id, tooltip); }
1851
+
1852
+ /**
1853
+ * Sets the application status indicator native popup menu.
1854
+ * **Note:** On macOS, the menu is activated by any mouse button. Its activation callback is *not* triggered.
1855
+ * **Note:** On Windows, the menu is activated by the right mouse button, selecting the status icon and pressing `Shift + F10`, or the applications key. The menu's activation callback for the other mouse buttons is still triggered.
1856
+ * **Note:** Native popup is only supported if {@link NativeMenu} supports the {@link NativeMenu.FEATURE_POPUP_MENU} feature.
1857
+ */
1858
+ static statusIndicatorSetMenu(id: number, menuRid: RID): void { _C($(), 13852, id, menuRid); }
1859
+
1860
+ /**
1861
+ * Sets the application status indicator activation callback. `callback` should take two arguments: {@link int} mouse button index (one of {@link MouseButton} values) and {@link Vector2i} click position in screen coordinates.
1862
+ * **Note:** This method is implemented on macOS and Windows.
1863
+ */
1864
+ static statusIndicatorSetCallback(id: number, callback: Callable): void { _C($(), 13850, id, callback); }
1865
+
1866
+ /**
1867
+ * Returns the rectangle for the given status indicator `id` in screen coordinates. If the status indicator is not visible, returns an empty {@link Rect2}.
1868
+ * **Note:** This method is implemented on macOS and Windows.
1869
+ */
1870
+ static statusIndicatorGetRect(id: number): Rect2 { return _C($(), 13849, id) as Rect2; }
1871
+
1872
+ /**
1873
+ * Removes the application status indicator.
1874
+ */
1875
+ static deleteStatusIndicator(id: number): void { _C($(), 2727, id); }
1876
+
1877
+ /**
1878
+ * Returns the total number of available tablet drivers.
1879
+ * **Note:** This method is implemented only on Windows.
1880
+ */
1881
+ static tabletGetDriverCount(): number { return _C($(), 14105) as number; }
1882
+
1883
+ /**
1884
+ * Returns the tablet driver name for the given index.
1885
+ * **Note:** This method is implemented only on Windows.
1886
+ */
1887
+ static tabletGetDriverName(idx: number): string { return _C($(), 14106, idx) as string; }
1888
+
1889
+ /**
1890
+ * Returns current active tablet driver name.
1891
+ * **Note:** This method is implemented only on Windows.
1892
+ */
1893
+ static tabletGetCurrentDriver(): string { return _C($(), 14104) as string; }
1894
+
1895
+ /**
1896
+ * Set active tablet driver name.
1897
+ * Supported drivers:
1898
+ * - `winink`: Windows Ink API, default.
1899
+ * - `wintab`: Wacom Wintab API (compatible device driver required).
1900
+ * - `dummy`: Dummy driver, tablet input is disabled.
1901
+ * **Note:** This method is implemented only on Windows.
1902
+ */
1903
+ static tabletSetCurrentDriver(name: string): void { _C($(), 14107, name); }
1904
+
1905
+ /**
1906
+ * Returns `true` if the window background can be made transparent. This method returns `false` if {@link ProjectSettings.display/window/perPixelTransparency/allowed} is set to `false`, or if transparency is not supported by the renderer or OS compositor.
1907
+ */
1908
+ static isWindowTransparencyAvailable(): boolean { return _C($(), 8454) as boolean; }
1909
+
1910
+ /**
1911
+ * Registers an {@link Object} which represents an additional output that will be rendered too, beyond normal windows. The {@link Object} is only used as an identifier, which can be later passed to {@link unregisterAdditionalOutput}.
1912
+ * This can be used to prevent Godot from skipping rendering when no normal windows are visible.
1913
+ */
1914
+ static registerAdditionalOutput(object: Object): void { _C($(), 9841, object); }
1915
+
1916
+ /**
1917
+ * Unregisters an {@link Object} representing an additional output, that was registered via {@link registerAdditionalOutput}.
1918
+ */
1919
+ static unregisterAdditionalOutput(object: Object): void { _C($(), 14487, object); }
1920
+
1921
+ /**
1922
+ * Returns `true` if any additional outputs have been registered via {@link registerAdditionalOutput}.
1923
+ */
1924
+ static hasAdditionalOutputs(): boolean { return _C($(), 7351) as boolean; }
1925
+
1926
+ /**
1927
+ * Returns `true` if the application is in picture-in-picture mode.
1928
+ * **Note:** This method is implemented on Android.
1929
+ */
1930
+ static isInPipMode(windowId?: number /* = 0 */): boolean { return _C($(), 8018, windowId) as boolean; }
1931
+
1932
+ /**
1933
+ * Enters picture-in-picture mode.
1934
+ * **Note:** This method is implemented on Android.
1935
+ */
1936
+ static pipModeEnter(windowId?: number /* = 0 */): void { _C($(), 9431, windowId); }
1937
+
1938
+ /**
1939
+ * Specifies the aspect ratio for picture-in-picture mode.
1940
+ * **Note:** This method is implemented on Android.
1941
+ */
1942
+ static pipModeSetAspectRatio(numerator: number, denominator: number, windowId?: number /* = 0 */): void { _C($(), 9432, numerator, denominator, windowId); }
1943
+
1944
+ /**
1945
+ * Specifies whether picture-in-picture mode should be entered automatically when the application goes in the background.
1946
+ * **Note:** This method is implemented on Android.
1947
+ */
1948
+ static pipModeSetAutoEnterOnBackground(autoEnterOnBackground: boolean, windowId?: number /* = 0 */): void { _C($(), 9433, autoEnterOnBackground, windowId); }
1949
+
1950
+ /**
1951
+ * The ID that refers to a screen that does not exist. This is returned by some {@link DisplayServer} methods if no screen matches the requested result.
1952
+ */
1953
+ static readonly INVALID_SCREEN = -1;
1954
+
1955
+ /**
1956
+ * Represents the screen containing the mouse pointer.
1957
+ * **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index `0`.
1958
+ */
1959
+ static readonly SCREEN_WITH_MOUSE_FOCUS = -4;
1960
+
1961
+ /**
1962
+ * Represents the screen containing the window with the keyboard focus.
1963
+ * **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index `0`.
1964
+ */
1965
+ static readonly SCREEN_WITH_KEYBOARD_FOCUS = -3;
1966
+
1967
+ /**
1968
+ * Represents the primary screen.
1969
+ * **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index `0`.
1970
+ */
1971
+ static readonly SCREEN_PRIMARY = -2;
1972
+
1973
+ /**
1974
+ * Represents the screen where the main window is located. This is usually the default value in functions that allow specifying one of several screens.
1975
+ * **Note:** On Android, iOS, Web, and Linux (Wayland), this constant always represents the screen at index `0`.
1976
+ */
1977
+ static readonly SCREEN_OF_MAIN_WINDOW = -1;
1978
+
1979
+ /**
1980
+ * The ID of the main window spawned by the engine, which can be passed to methods expecting a `window_id`.
1981
+ */
1982
+ static readonly MAIN_WINDOW_ID = 0;
1983
+
1984
+ /**
1985
+ * The ID that refers to a nonexistent window. This is returned by some {@link DisplayServer} methods if no window matches the requested result.
1986
+ */
1987
+ static readonly INVALID_WINDOW_ID = -1;
1988
+
1989
+ /**
1990
+ * The ID that refers to a nonexistent application status indicator.
1991
+ */
1992
+ static readonly INVALID_INDICATOR_ID = -1;
1993
+
1994
+ /**
1995
+ * Emitted when the device orientation changes. `orientation` is the new orientation.
1996
+ * Returns `1` for portrait, `2` for landscape, and `0` if the orientation is undefined.
1997
+ * **Note:** This method is implemented on Android and iOS.
1998
+ */
1999
+ static get orientationChanged(): Signal<(orientation: number) => void> { return _G($(), 9216) as Signal<(orientation: number) => void>; }
2000
+ static set orientationChanged(v: ((orientation: number) => void) | null) { _G($(), 9216, v); }
2001
+
2002
+ static readonly name = _R(249, DisplayServer);
2003
+ }
2004
+
2005
+ export const Feature = {
2006
+ /**
2007
+ * Display server supports global menu. This allows the application to display its menu items in the operating system's top bar. **macOS**
2008
+ */
2009
+ FEATURE_GLOBAL_MENU: 0,
2010
+ /**
2011
+ * Display server supports multiple windows that can be moved outside of the main window. **Windows, macOS, Linux (X11)**
2012
+ */
2013
+ FEATURE_SUBWINDOWS: 1,
2014
+ /**
2015
+ * Display server supports touchscreen input. **Windows, Linux (X11/Wayland), Android, iOS, Web**
2016
+ */
2017
+ FEATURE_TOUCHSCREEN: 2,
2018
+ /**
2019
+ * Display server supports mouse input. **Windows, macOS, Linux (X11/Wayland), Android, Web**
2020
+ */
2021
+ FEATURE_MOUSE: 3,
2022
+ /**
2023
+ * Display server supports warping mouse coordinates to keep the mouse cursor constrained within an area, but looping when one of the edges is reached. **Windows, macOS, Linux (X11/Wayland)**
2024
+ */
2025
+ FEATURE_MOUSE_WARP: 4,
2026
+ /**
2027
+ * Display server supports setting and getting clipboard data. See also {@link FEATURE_CLIPBOARD_PRIMARY}. **Windows, macOS, Linux (X11/Wayland), Android, iOS, Web**
2028
+ */
2029
+ FEATURE_CLIPBOARD: 5,
2030
+ /**
2031
+ * Display server supports popping up a virtual keyboard when requested to input text without a physical keyboard. **Android, iOS, Web**
2032
+ */
2033
+ FEATURE_VIRTUAL_KEYBOARD: 6,
2034
+ /**
2035
+ * Display server supports setting the mouse cursor shape to be different from the default. **Windows, macOS, Linux (X11/Wayland), Android, Web**
2036
+ */
2037
+ FEATURE_CURSOR_SHAPE: 7,
2038
+ /**
2039
+ * Display server supports setting the mouse cursor shape to a custom image. **Windows, macOS, Linux (X11/Wayland), Web**
2040
+ */
2041
+ FEATURE_CUSTOM_CURSOR_SHAPE: 8,
2042
+ /**
2043
+ * Display server supports spawning text dialogs using the operating system's native look-and-feel. See {@link dialogShow}. **Windows, macOS**
2044
+ */
2045
+ FEATURE_NATIVE_DIALOG: 9,
2046
+ /**
2047
+ * Display server supports [Input Method Editor](https://en.wikipedia.org/wiki/Input_method), which is commonly used for inputting Chinese/Japanese/Korean text. This is handled by the operating system, rather than by Godot. **Windows, macOS, Linux (X11)**
2048
+ */
2049
+ FEATURE_IME: 10,
2050
+ /**
2051
+ * Display server supports windows can use per-pixel transparency to make windows behind them partially or fully visible. **Windows, macOS, Linux (X11/Wayland), Android**
2052
+ */
2053
+ FEATURE_WINDOW_TRANSPARENCY: 11,
2054
+ /**
2055
+ * Display server supports querying the operating system's display scale factor. This allows automatically detecting the hiDPI display *reliably*, instead of guessing based on the screen resolution and the display's reported DPI (which might be unreliable due to broken monitor EDID). **Windows, Linux (Wayland), macOS**
2056
+ */
2057
+ FEATURE_HIDPI: 12,
2058
+ /**
2059
+ * Display server supports changing the window icon (usually displayed in the top-left corner). **Windows, macOS, Linux (X11/Wayland)**
2060
+ * **Note:** Use on Wayland requires the compositor to implement the [xdg_toplevel_icon_v1](https://wayland.app/protocols/xdg-toplevel-icon-v1#xdg_toplevel_icon_v1) protocol, which not all compositors do. See [xdg_toplevel_icon_v1#compositor-support](https://wayland.app/protocols/xdg-toplevel-icon-v1#compositor-support) for more information on individual compositor support.
2061
+ */
2062
+ FEATURE_ICON: 13,
2063
+ /**
2064
+ * Display server supports changing the window icon (usually displayed in the top-left corner). **Windows, macOS**
2065
+ */
2066
+ FEATURE_NATIVE_ICON: 14,
2067
+ /**
2068
+ * Display server supports changing the screen orientation. **Android, iOS**
2069
+ */
2070
+ FEATURE_ORIENTATION: 15,
2071
+ /**
2072
+ * Display server supports V-Sync status can be changed from the default (which is forced to be enabled platforms not supporting this feature). **Windows, macOS, Linux (X11/Wayland)**
2073
+ */
2074
+ FEATURE_SWAP_BUFFERS: 16,
2075
+ /**
2076
+ * Display server supports Primary clipboard can be used. This is a different clipboard from {@link FEATURE_CLIPBOARD}. **Linux (X11/Wayland)**
2077
+ */
2078
+ FEATURE_CLIPBOARD_PRIMARY: 18,
2079
+ /**
2080
+ * Display server supports text-to-speech. See `tts_*` methods. **Windows, macOS, Linux (X11/Wayland), Android, iOS, Web**
2081
+ */
2082
+ FEATURE_TEXT_TO_SPEECH: 19,
2083
+ /**
2084
+ * Display server supports expanding window content to the title. See {@link WINDOW_FLAG_EXTEND_TO_TITLE}. **macOS**
2085
+ */
2086
+ FEATURE_EXTEND_TO_TITLE: 20,
2087
+ /**
2088
+ * Display server supports reading screen pixels. See {@link screenGetPixel}.
2089
+ */
2090
+ FEATURE_SCREEN_CAPTURE: 21,
2091
+ /**
2092
+ * Display server supports application status indicators.
2093
+ */
2094
+ FEATURE_STATUS_INDICATOR: 22,
2095
+ /**
2096
+ * Display server supports native help system search callbacks. See {@link helpSetSearchCallbacks}.
2097
+ */
2098
+ FEATURE_NATIVE_HELP: 23,
2099
+ /**
2100
+ * Display server supports spawning text input dialogs using the operating system's native look-and-feel. See {@link dialogInputText}. **Windows, macOS**
2101
+ */
2102
+ FEATURE_NATIVE_DIALOG_INPUT: 24,
2103
+ /**
2104
+ * Display server supports spawning dialogs for selecting files or directories using the operating system's native look-and-feel. See {@link fileDialogShow}. **Windows, macOS, Linux (X11/Wayland), Android**
2105
+ */
2106
+ FEATURE_NATIVE_DIALOG_FILE: 25,
2107
+ /**
2108
+ * The display server supports all features of {@link FEATURE_NATIVE_DIALOG_FILE}, with the added functionality of Options and native dialog file access to `res://` and `user://` paths. See {@link fileDialogShow} and {@link fileDialogWithOptionsShow}. **Windows, macOS, Linux (X11/Wayland)**
2109
+ */
2110
+ FEATURE_NATIVE_DIALOG_FILE_EXTRA: 26,
2111
+ /**
2112
+ * The display server supports initiating window drag and resize operations on demand. See {@link windowStartDrag} and {@link windowStartResize}.
2113
+ */
2114
+ FEATURE_WINDOW_DRAG: 27,
2115
+ /**
2116
+ * Display server supports {@link WINDOW_FLAG_EXCLUDE_FROM_CAPTURE} window flag. **Windows, macOS**
2117
+ */
2118
+ FEATURE_SCREEN_EXCLUDE_FROM_CAPTURE: 28,
2119
+ /**
2120
+ * Display server supports embedding a window from another process. **Windows, Linux (X11), macOS**
2121
+ */
2122
+ FEATURE_WINDOW_EMBEDDING: 29,
2123
+ /**
2124
+ * Native file selection dialog supports MIME types as filters.
2125
+ */
2126
+ FEATURE_NATIVE_DIALOG_FILE_MIME: 30,
2127
+ /**
2128
+ * Display server supports system emoji and symbol picker. **Windows, macOS**
2129
+ */
2130
+ FEATURE_EMOJI_AND_SYMBOL_PICKER: 31,
2131
+ /**
2132
+ * Display server supports native color picker. **Linux (X11/Wayland)**
2133
+ */
2134
+ FEATURE_NATIVE_COLOR_PICKER: 32,
2135
+ /**
2136
+ * Display server automatically fits popups according to the screen boundaries. Window nodes should not attempt to do that themselves.
2137
+ */
2138
+ FEATURE_SELF_FITTING_WINDOWS: 33,
2139
+ /**
2140
+ * Display server supports interaction with screen reader or Braille display. **Linux (X11/Wayland), macOS, Windows**
2141
+ */
2142
+ FEATURE_ACCESSIBILITY_SCREEN_READER: 34,
2143
+ /**
2144
+ * Display server supports HDR output. **Linux (Wayland), macOS, iOS, visionOS, Windows**
2145
+ */
2146
+ FEATURE_HDR_OUTPUT: 35,
2147
+ /**
2148
+ * Display server supports putting the application in picture-in-picture mode. **Android**
2149
+ */
2150
+ FEATURE_PIP_MODE: 36,
2151
+ } as const;
2152
+
2153
+ export type Feature = (typeof Feature)[keyof typeof Feature];
2154
+
2155
+ export const AccessibilityRole = {
2156
+ /**
2157
+ * Unknown or custom role.
2158
+ */
2159
+ ROLE_UNKNOWN: 0,
2160
+ /**
2161
+ * Default dialog button element.
2162
+ */
2163
+ ROLE_DEFAULT_BUTTON: 1,
2164
+ /**
2165
+ * Audio player element.
2166
+ */
2167
+ ROLE_AUDIO: 2,
2168
+ /**
2169
+ * Video player element.
2170
+ */
2171
+ ROLE_VIDEO: 3,
2172
+ /**
2173
+ * Non-editable text label.
2174
+ */
2175
+ ROLE_STATIC_TEXT: 4,
2176
+ /**
2177
+ * Container element. Elements with this role are used for internal structure and ignored by screen readers.
2178
+ */
2179
+ ROLE_CONTAINER: 5,
2180
+ /**
2181
+ * Panel container element.
2182
+ */
2183
+ ROLE_PANEL: 6,
2184
+ /**
2185
+ * Button element.
2186
+ */
2187
+ ROLE_BUTTON: 7,
2188
+ /**
2189
+ * Link element.
2190
+ */
2191
+ ROLE_LINK: 8,
2192
+ /**
2193
+ * Check box element.
2194
+ */
2195
+ ROLE_CHECK_BOX: 9,
2196
+ /**
2197
+ * Radio button element.
2198
+ */
2199
+ ROLE_RADIO_BUTTON: 10,
2200
+ /**
2201
+ * Check button element.
2202
+ */
2203
+ ROLE_CHECK_BUTTON: 11,
2204
+ /**
2205
+ * Scroll bar element.
2206
+ */
2207
+ ROLE_SCROLL_BAR: 12,
2208
+ /**
2209
+ * Scroll container element.
2210
+ */
2211
+ ROLE_SCROLL_VIEW: 13,
2212
+ /**
2213
+ * Container splitter handle element.
2214
+ */
2215
+ ROLE_SPLITTER: 14,
2216
+ /**
2217
+ * Slider element.
2218
+ */
2219
+ ROLE_SLIDER: 15,
2220
+ /**
2221
+ * Spin box element.
2222
+ */
2223
+ ROLE_SPIN_BUTTON: 16,
2224
+ /**
2225
+ * Progress indicator element.
2226
+ */
2227
+ ROLE_PROGRESS_INDICATOR: 17,
2228
+ /**
2229
+ * Editable text field element.
2230
+ */
2231
+ ROLE_TEXT_FIELD: 18,
2232
+ /**
2233
+ * Multiline editable text field element.
2234
+ */
2235
+ ROLE_MULTILINE_TEXT_FIELD: 19,
2236
+ /**
2237
+ * Color picker element.
2238
+ */
2239
+ ROLE_COLOR_PICKER: 20,
2240
+ /**
2241
+ * Table element.
2242
+ */
2243
+ ROLE_TABLE: 21,
2244
+ /**
2245
+ * Table/tree cell element.
2246
+ */
2247
+ ROLE_CELL: 22,
2248
+ /**
2249
+ * Table/tree row element.
2250
+ */
2251
+ ROLE_ROW: 23,
2252
+ /**
2253
+ * Table/tree row group element.
2254
+ */
2255
+ ROLE_ROW_GROUP: 24,
2256
+ /**
2257
+ * Table/tree row header element.
2258
+ */
2259
+ ROLE_ROW_HEADER: 25,
2260
+ /**
2261
+ * Table/tree column header element.
2262
+ */
2263
+ ROLE_COLUMN_HEADER: 26,
2264
+ /**
2265
+ * Tree view element.
2266
+ */
2267
+ ROLE_TREE: 27,
2268
+ /**
2269
+ * Tree view item element.
2270
+ */
2271
+ ROLE_TREE_ITEM: 28,
2272
+ /**
2273
+ * List element.
2274
+ */
2275
+ ROLE_LIST: 29,
2276
+ /**
2277
+ * List item element.
2278
+ */
2279
+ ROLE_LIST_ITEM: 30,
2280
+ /**
2281
+ * List view element.
2282
+ */
2283
+ ROLE_LIST_BOX: 31,
2284
+ /**
2285
+ * List view item element.
2286
+ */
2287
+ ROLE_LIST_BOX_OPTION: 32,
2288
+ /**
2289
+ * Tab bar element.
2290
+ */
2291
+ ROLE_TAB_BAR: 33,
2292
+ /**
2293
+ * Tab bar item element.
2294
+ */
2295
+ ROLE_TAB: 34,
2296
+ /**
2297
+ * Tab panel element.
2298
+ */
2299
+ ROLE_TAB_PANEL: 35,
2300
+ /**
2301
+ * Menu bar element.
2302
+ */
2303
+ ROLE_MENU_BAR: 36,
2304
+ /**
2305
+ * Popup menu element.
2306
+ */
2307
+ ROLE_MENU: 37,
2308
+ /**
2309
+ * Popup menu item element.
2310
+ */
2311
+ ROLE_MENU_ITEM: 38,
2312
+ /**
2313
+ * Popup menu check button item element.
2314
+ */
2315
+ ROLE_MENU_ITEM_CHECK_BOX: 39,
2316
+ /**
2317
+ * Popup menu radio button item element.
2318
+ */
2319
+ ROLE_MENU_ITEM_RADIO: 40,
2320
+ /**
2321
+ * Image element.
2322
+ */
2323
+ ROLE_IMAGE: 41,
2324
+ /**
2325
+ * Window element.
2326
+ */
2327
+ ROLE_WINDOW: 42,
2328
+ /**
2329
+ * Embedded window title bar element.
2330
+ */
2331
+ ROLE_TITLE_BAR: 43,
2332
+ /**
2333
+ * Dialog window element.
2334
+ */
2335
+ ROLE_DIALOG: 44,
2336
+ /**
2337
+ * Tooltip element.
2338
+ */
2339
+ ROLE_TOOLTIP: 45,
2340
+ /**
2341
+ * Region/landmark element. Screen readers can navigate between regions using landmark navigation.
2342
+ */
2343
+ ROLE_REGION: 46,
2344
+ /**
2345
+ * Unifor text run.
2346
+ * Note: This role is used for internal text elements, and should not be assigned to nodes.
2347
+ */
2348
+ ROLE_TEXT_RUN: 47,
2349
+ } as const;
2350
+
2351
+ export type AccessibilityRole = (typeof AccessibilityRole)[keyof typeof AccessibilityRole];
2352
+
2353
+ export const AccessibilityPopupType = {
2354
+ /**
2355
+ * Popup menu.
2356
+ */
2357
+ POPUP_MENU: 0,
2358
+ /**
2359
+ * Popup list.
2360
+ */
2361
+ POPUP_LIST: 1,
2362
+ /**
2363
+ * Popup tree view.
2364
+ */
2365
+ POPUP_TREE: 2,
2366
+ /**
2367
+ * Popup dialog.
2368
+ */
2369
+ POPUP_DIALOG: 3,
2370
+ } as const;
2371
+
2372
+ export type AccessibilityPopupType = (typeof AccessibilityPopupType)[keyof typeof AccessibilityPopupType];
2373
+
2374
+ export const AccessibilityFlags = {
2375
+ /**
2376
+ * Element is hidden for accessibility tools.
2377
+ */
2378
+ FLAG_HIDDEN: 0,
2379
+ /**
2380
+ * Element supports multiple item selection.
2381
+ */
2382
+ FLAG_MULTISELECTABLE: 1,
2383
+ /**
2384
+ * Element require user input.
2385
+ */
2386
+ FLAG_REQUIRED: 2,
2387
+ /**
2388
+ * Element is a visited link.
2389
+ */
2390
+ FLAG_VISITED: 3,
2391
+ /**
2392
+ * Element content is not ready (e.g. loading).
2393
+ */
2394
+ FLAG_BUSY: 4,
2395
+ /**
2396
+ * Element is modal window.
2397
+ */
2398
+ FLAG_MODAL: 5,
2399
+ /**
2400
+ * Element allows touches to be passed through when a screen reader is in touch exploration mode.
2401
+ */
2402
+ FLAG_TOUCH_PASSTHROUGH: 6,
2403
+ /**
2404
+ * Element is text field with selectable but read-only text.
2405
+ */
2406
+ FLAG_READONLY: 7,
2407
+ /**
2408
+ * Element is disabled.
2409
+ */
2410
+ FLAG_DISABLED: 8,
2411
+ /**
2412
+ * Element clips children.
2413
+ */
2414
+ FLAG_CLIPS_CHILDREN: 9,
2415
+ } as const;
2416
+
2417
+ export type AccessibilityFlags = (typeof AccessibilityFlags)[keyof typeof AccessibilityFlags];
2418
+
2419
+ export const AccessibilityAction = {
2420
+ /**
2421
+ * Single click action, callback argument is not set.
2422
+ */
2423
+ ACTION_CLICK: 0,
2424
+ /**
2425
+ * Focus action, callback argument is not set.
2426
+ */
2427
+ ACTION_FOCUS: 1,
2428
+ /**
2429
+ * Blur action, callback argument is not set.
2430
+ */
2431
+ ACTION_BLUR: 2,
2432
+ /**
2433
+ * Collapse action, callback argument is not set.
2434
+ */
2435
+ ACTION_COLLAPSE: 3,
2436
+ /**
2437
+ * Expand action, callback argument is not set.
2438
+ */
2439
+ ACTION_EXPAND: 4,
2440
+ /**
2441
+ * Decrement action, callback argument is not set.
2442
+ */
2443
+ ACTION_DECREMENT: 5,
2444
+ /**
2445
+ * Increment action, callback argument is not set.
2446
+ */
2447
+ ACTION_INCREMENT: 6,
2448
+ /**
2449
+ * Hide tooltip action, callback argument is not set.
2450
+ */
2451
+ ACTION_HIDE_TOOLTIP: 7,
2452
+ /**
2453
+ * Show tooltip action, callback argument is not set.
2454
+ */
2455
+ ACTION_SHOW_TOOLTIP: 8,
2456
+ /**
2457
+ * Set text selection action, callback argument is set to {@link Dictionary} with the following keys:
2458
+ * - `"start_element"` accessibility element of the selection start.
2459
+ * - `"start_char"` character offset relative to the accessibility element of the selection start.
2460
+ * - `"end_element"` accessibility element of the selection end.
2461
+ * - `"end_char"` character offset relative to the accessibility element of the selection end.
2462
+ */
2463
+ ACTION_SET_TEXT_SELECTION: 9,
2464
+ /**
2465
+ * Replace text action, callback argument is set to {@link String} with the replacement text.
2466
+ */
2467
+ ACTION_REPLACE_SELECTED_TEXT: 10,
2468
+ /**
2469
+ * Scroll backward action, callback argument is not set.
2470
+ */
2471
+ ACTION_SCROLL_BACKWARD: 11,
2472
+ /**
2473
+ * Scroll down action, callback argument is set to {@link AccessibilityScrollUnit}.
2474
+ */
2475
+ ACTION_SCROLL_DOWN: 12,
2476
+ /**
2477
+ * Scroll forward action, callback argument is not set.
2478
+ */
2479
+ ACTION_SCROLL_FORWARD: 13,
2480
+ /**
2481
+ * Scroll left action, callback argument is set to {@link AccessibilityScrollUnit}.
2482
+ */
2483
+ ACTION_SCROLL_LEFT: 14,
2484
+ /**
2485
+ * Scroll right action, callback argument is set to {@link AccessibilityScrollUnit}.
2486
+ */
2487
+ ACTION_SCROLL_RIGHT: 15,
2488
+ /**
2489
+ * Scroll up action, callback argument is set to {@link AccessibilityScrollUnit}.
2490
+ */
2491
+ ACTION_SCROLL_UP: 16,
2492
+ /**
2493
+ * Scroll into view action, callback argument is set to {@link AccessibilityScrollHint}.
2494
+ */
2495
+ ACTION_SCROLL_INTO_VIEW: 17,
2496
+ /**
2497
+ * Scroll to point action, callback argument is set to {@link Vector2} with the relative point coordinates.
2498
+ */
2499
+ ACTION_SCROLL_TO_POINT: 18,
2500
+ /**
2501
+ * Set scroll offset action, callback argument is set to {@link Vector2} with the scroll offset.
2502
+ */
2503
+ ACTION_SET_SCROLL_OFFSET: 19,
2504
+ /**
2505
+ * Set value action, callback argument is set to {@link String} or number with the new value.
2506
+ */
2507
+ ACTION_SET_VALUE: 20,
2508
+ /**
2509
+ * Show context menu action, callback argument is not set.
2510
+ */
2511
+ ACTION_SHOW_CONTEXT_MENU: 21,
2512
+ /**
2513
+ * Custom action, callback argument is set to the integer action ID.
2514
+ */
2515
+ ACTION_CUSTOM: 22,
2516
+ } as const;
2517
+
2518
+ export type AccessibilityAction = (typeof AccessibilityAction)[keyof typeof AccessibilityAction];
2519
+
2520
+ export const AccessibilityLiveMode = {
2521
+ /**
2522
+ * Indicates that updates to the live region should not be presented.
2523
+ */
2524
+ LIVE_OFF: 0,
2525
+ /**
2526
+ * Indicates that updates to the live region should be presented at the next opportunity (for example at the end of speaking the current sentence).
2527
+ */
2528
+ LIVE_POLITE: 1,
2529
+ /**
2530
+ * Indicates that updates to the live region have the highest priority and should be presented immediately.
2531
+ */
2532
+ LIVE_ASSERTIVE: 2,
2533
+ } as const;
2534
+
2535
+ export type AccessibilityLiveMode = (typeof AccessibilityLiveMode)[keyof typeof AccessibilityLiveMode];
2536
+
2537
+ export const AccessibilityScrollUnit = {
2538
+ /**
2539
+ * The amount by which to scroll. A single item of a list, line of text.
2540
+ */
2541
+ SCROLL_UNIT_ITEM: 0,
2542
+ /**
2543
+ * The amount by which to scroll. A single page.
2544
+ */
2545
+ SCROLL_UNIT_PAGE: 1,
2546
+ } as const;
2547
+
2548
+ export type AccessibilityScrollUnit = (typeof AccessibilityScrollUnit)[keyof typeof AccessibilityScrollUnit];
2549
+
2550
+ export const AccessibilityScrollHint = {
2551
+ /**
2552
+ * A preferred position for the node scrolled into view. Top-left edge of the scroll container.
2553
+ */
2554
+ SCROLL_HINT_TOP_LEFT: 0,
2555
+ /**
2556
+ * A preferred position for the node scrolled into view. Bottom-right edge of the scroll container.
2557
+ */
2558
+ SCROLL_HINT_BOTTOM_RIGHT: 1,
2559
+ /**
2560
+ * A preferred position for the node scrolled into view. Top edge of the scroll container.
2561
+ */
2562
+ SCROLL_HINT_TOP_EDGE: 2,
2563
+ /**
2564
+ * A preferred position for the node scrolled into view. Bottom edge of the scroll container.
2565
+ */
2566
+ SCROLL_HINT_BOTTOM_EDGE: 3,
2567
+ /**
2568
+ * A preferred position for the node scrolled into view. Left edge of the scroll container.
2569
+ */
2570
+ SCROLL_HINT_LEFT_EDGE: 4,
2571
+ /**
2572
+ * A preferred position for the node scrolled into view. Right edge of the scroll container.
2573
+ */
2574
+ SCROLL_HINT_RIGHT_EDGE: 5,
2575
+ } as const;
2576
+
2577
+ export type AccessibilityScrollHint = (typeof AccessibilityScrollHint)[keyof typeof AccessibilityScrollHint];
2578
+
2579
+ export const MouseMode = {
2580
+ /**
2581
+ * Makes the mouse cursor visible if it is hidden.
2582
+ */
2583
+ MOUSE_MODE_VISIBLE: 0,
2584
+ /**
2585
+ * Makes the mouse cursor hidden if it is visible.
2586
+ */
2587
+ MOUSE_MODE_HIDDEN: 1,
2588
+ /**
2589
+ * Captures the mouse. The mouse will be hidden and its position locked at the center of the window manager's window.
2590
+ * **Note:** If you want to process the mouse's movement in this mode, you need to use {@link InputEventMouseMotion.relative}.
2591
+ */
2592
+ MOUSE_MODE_CAPTURED: 2,
2593
+ /**
2594
+ * Confines the mouse cursor to the game window, and make it visible.
2595
+ */
2596
+ MOUSE_MODE_CONFINED: 3,
2597
+ /**
2598
+ * Confines the mouse cursor to the game window, and make it hidden.
2599
+ */
2600
+ MOUSE_MODE_CONFINED_HIDDEN: 4,
2601
+ /**
2602
+ * Max value of the {@link MouseMode}.
2603
+ */
2604
+ MOUSE_MODE_MAX: 5,
2605
+ } as const;
2606
+
2607
+ export type MouseMode = (typeof MouseMode)[keyof typeof MouseMode];
2608
+
2609
+ export const ScreenOrientation = {
2610
+ /**
2611
+ * Default landscape orientation.
2612
+ */
2613
+ SCREEN_LANDSCAPE: 0,
2614
+ /**
2615
+ * Default portrait orientation.
2616
+ */
2617
+ SCREEN_PORTRAIT: 1,
2618
+ /**
2619
+ * Reverse landscape orientation (upside down).
2620
+ */
2621
+ SCREEN_REVERSE_LANDSCAPE: 2,
2622
+ /**
2623
+ * Reverse portrait orientation (upside down).
2624
+ */
2625
+ SCREEN_REVERSE_PORTRAIT: 3,
2626
+ /**
2627
+ * Automatic landscape orientation (default or reverse depending on sensor).
2628
+ */
2629
+ SCREEN_SENSOR_LANDSCAPE: 4,
2630
+ /**
2631
+ * Automatic portrait orientation (default or reverse depending on sensor).
2632
+ */
2633
+ SCREEN_SENSOR_PORTRAIT: 5,
2634
+ /**
2635
+ * Automatic landscape or portrait orientation (default or reverse depending on sensor).
2636
+ */
2637
+ SCREEN_SENSOR: 6,
2638
+ } as const;
2639
+
2640
+ export type ScreenOrientation = (typeof ScreenOrientation)[keyof typeof ScreenOrientation];
2641
+
2642
+ export const VirtualKeyboardType = {
2643
+ /**
2644
+ * Default text virtual keyboard.
2645
+ */
2646
+ KEYBOARD_TYPE_DEFAULT: 0,
2647
+ /**
2648
+ * Multiline virtual keyboard.
2649
+ */
2650
+ KEYBOARD_TYPE_MULTILINE: 1,
2651
+ /**
2652
+ * Virtual number keypad, useful for PIN entry.
2653
+ */
2654
+ KEYBOARD_TYPE_NUMBER: 2,
2655
+ /**
2656
+ * Virtual number keypad, useful for entering fractional numbers.
2657
+ */
2658
+ KEYBOARD_TYPE_NUMBER_DECIMAL: 3,
2659
+ /**
2660
+ * Virtual phone number keypad.
2661
+ */
2662
+ KEYBOARD_TYPE_PHONE: 4,
2663
+ /**
2664
+ * Virtual keyboard with additional keys to assist with typing email addresses.
2665
+ */
2666
+ KEYBOARD_TYPE_EMAIL_ADDRESS: 5,
2667
+ /**
2668
+ * Virtual keyboard for entering a password. On most platforms, this should disable autocomplete and autocapitalization.
2669
+ * **Note:** This is not supported on Web. Instead, this behaves identically to {@link KEYBOARD_TYPE_DEFAULT}.
2670
+ */
2671
+ KEYBOARD_TYPE_PASSWORD: 6,
2672
+ /**
2673
+ * Virtual keyboard with additional keys to assist with typing URLs.
2674
+ */
2675
+ KEYBOARD_TYPE_URL: 7,
2676
+ } as const;
2677
+
2678
+ export type VirtualKeyboardType = (typeof VirtualKeyboardType)[keyof typeof VirtualKeyboardType];
2679
+
2680
+ export const CursorShape = {
2681
+ /**
2682
+ * Arrow cursor shape. This is the default when not pointing anything that overrides the mouse cursor, such as a {@link LineEdit} or {@link TextEdit}.
2683
+ */
2684
+ CURSOR_ARROW: 0,
2685
+ /**
2686
+ * I-beam cursor shape. This is used by default when hovering a control that accepts text input, such as {@link LineEdit} or {@link TextEdit}.
2687
+ */
2688
+ CURSOR_IBEAM: 1,
2689
+ /**
2690
+ * Pointing hand cursor shape. This is used by default when hovering a {@link LinkButton} or a URL tag in a {@link RichTextLabel}.
2691
+ */
2692
+ CURSOR_POINTING_HAND: 2,
2693
+ /**
2694
+ * Crosshair cursor. This is intended to be displayed when the user needs precise aim over an element, such as a rectangle selection tool or a color picker.
2695
+ */
2696
+ CURSOR_CROSS: 3,
2697
+ /**
2698
+ * Wait cursor. On most cursor themes, this displays a spinning icon *besides* the arrow. Intended to be used for non-blocking operations (when the user can do something else at the moment). See also {@link CURSOR_BUSY}.
2699
+ */
2700
+ CURSOR_WAIT: 4,
2701
+ /**
2702
+ * Wait cursor. On most cursor themes, this *replaces* the arrow with a spinning icon. Intended to be used for blocking operations (when the user can't do anything else at the moment). See also {@link CURSOR_WAIT}.
2703
+ */
2704
+ CURSOR_BUSY: 5,
2705
+ /**
2706
+ * Dragging hand cursor. This is displayed during drag-and-drop operations. See also {@link CURSOR_CAN_DROP}.
2707
+ */
2708
+ CURSOR_DRAG: 6,
2709
+ /**
2710
+ * "Can drop" cursor. This is displayed during drag-and-drop operations if hovering over a {@link Control} that can accept the drag-and-drop event. On most cursor themes, this displays a dragging hand with an arrow symbol besides it. See also {@link CURSOR_DRAG}.
2711
+ */
2712
+ CURSOR_CAN_DROP: 7,
2713
+ /**
2714
+ * Forbidden cursor. This is displayed during drag-and-drop operations if the hovered {@link Control} can't accept the drag-and-drop event.
2715
+ */
2716
+ CURSOR_FORBIDDEN: 8,
2717
+ /**
2718
+ * Vertical resize cursor. Intended to be displayed when the hovered {@link Control} can be vertically resized using the mouse. See also {@link CURSOR_VSPLIT}.
2719
+ */
2720
+ CURSOR_VSIZE: 9,
2721
+ /**
2722
+ * Horizontal resize cursor. Intended to be displayed when the hovered {@link Control} can be horizontally resized using the mouse. See also {@link CURSOR_HSPLIT}.
2723
+ */
2724
+ CURSOR_HSIZE: 10,
2725
+ /**
2726
+ * Secondary diagonal resize cursor (top-right/bottom-left). Intended to be displayed when the hovered {@link Control} can be resized on both axes at once using the mouse.
2727
+ */
2728
+ CURSOR_BDIAGSIZE: 11,
2729
+ /**
2730
+ * Main diagonal resize cursor (top-left/bottom-right). Intended to be displayed when the hovered {@link Control} can be resized on both axes at once using the mouse.
2731
+ */
2732
+ CURSOR_FDIAGSIZE: 12,
2733
+ /**
2734
+ * Move cursor. Intended to be displayed when the hovered {@link Control} can be moved using the mouse.
2735
+ */
2736
+ CURSOR_MOVE: 13,
2737
+ /**
2738
+ * Vertical split cursor. This is displayed when hovering a {@link Control} with splits that can be vertically resized using the mouse, such as {@link VSplitContainer}. On some cursor themes, this cursor may have the same appearance as {@link CURSOR_VSIZE}.
2739
+ */
2740
+ CURSOR_VSPLIT: 14,
2741
+ /**
2742
+ * Horizontal split cursor. This is displayed when hovering a {@link Control} with splits that can be horizontally resized using the mouse, such as {@link HSplitContainer}. On some cursor themes, this cursor may have the same appearance as {@link CURSOR_HSIZE}.
2743
+ */
2744
+ CURSOR_HSPLIT: 15,
2745
+ /**
2746
+ * Help cursor. On most cursor themes, this displays a question mark icon instead of the mouse cursor. Intended to be used when the user has requested help on the next element that will be clicked.
2747
+ */
2748
+ CURSOR_HELP: 16,
2749
+ /**
2750
+ * Represents the size of the {@link CursorShape} enum.
2751
+ */
2752
+ CURSOR_MAX: 17,
2753
+ } as const;
2754
+
2755
+ export type CursorShape = (typeof CursorShape)[keyof typeof CursorShape];
2756
+
2757
+ export const FileDialogMode = {
2758
+ /**
2759
+ * The native file dialog allows selecting one, and only one file.
2760
+ */
2761
+ FILE_DIALOG_MODE_OPEN_FILE: 0,
2762
+ /**
2763
+ * The native file dialog allows selecting multiple files.
2764
+ */
2765
+ FILE_DIALOG_MODE_OPEN_FILES: 1,
2766
+ /**
2767
+ * The native file dialog only allows selecting a directory, disallowing the selection of any file.
2768
+ */
2769
+ FILE_DIALOG_MODE_OPEN_DIR: 2,
2770
+ /**
2771
+ * The native file dialog allows selecting one file or directory.
2772
+ */
2773
+ FILE_DIALOG_MODE_OPEN_ANY: 3,
2774
+ /**
2775
+ * The native file dialog will warn when a file exists.
2776
+ */
2777
+ FILE_DIALOG_MODE_SAVE_FILE: 4,
2778
+ } as const;
2779
+
2780
+ export type FileDialogMode = (typeof FileDialogMode)[keyof typeof FileDialogMode];
2781
+
2782
+ export const WindowMode = {
2783
+ /**
2784
+ * Windowed mode, i.e. {@link Window} doesn't occupy the whole screen (unless set to the size of the screen).
2785
+ */
2786
+ WINDOW_MODE_WINDOWED: 0,
2787
+ /**
2788
+ * Minimized window mode, i.e. {@link Window} is not visible and available on window manager's window list. Normally happens when the minimize button is pressed.
2789
+ */
2790
+ WINDOW_MODE_MINIMIZED: 1,
2791
+ /**
2792
+ * Maximized window mode, i.e. {@link Window} will occupy whole screen area except task bar and still display its borders. Normally happens when the maximize button is pressed.
2793
+ */
2794
+ WINDOW_MODE_MAXIMIZED: 2,
2795
+ /**
2796
+ * Full screen mode with full multi-window support.
2797
+ * Full screen window covers the entire display area of a screen and has no decorations. The display's video mode is not changed.
2798
+ * **On Android:** This enables immersive mode.
2799
+ * **On macOS:** A new desktop is used to display the running project.
2800
+ * **Note:** Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [multiple resolutions]($DOCS_URL/tutorials/rendering/multiple_resolutions.html) when enabling full screen mode.
2801
+ */
2802
+ WINDOW_MODE_FULLSCREEN: 3,
2803
+ /**
2804
+ * A single window full screen mode. This mode has less overhead, but only one window can be open on a given screen at a time (opening a child window or application switching will trigger a full screen transition).
2805
+ * Full screen window covers the entire display area of a screen and has no border or decorations. The display's video mode is not changed.
2806
+ * **Note:** This mode might not work with screen recording software.
2807
+ * **On Android:** This enables immersive mode.
2808
+ * **On Windows:** Depending on video driver, full screen transition might cause screens to go black for a moment.
2809
+ * **On macOS:** A new desktop is used to display the running project. Exclusive full screen mode prevents Dock and Menu from showing up when the mouse pointer is hovering the edge of the screen.
2810
+ * **On Linux (X11):** Exclusive full screen mode bypasses compositor.
2811
+ * **On Linux (Wayland):** Equivalent to {@link WINDOW_MODE_FULLSCREEN}.
2812
+ * **Note:** Regardless of the platform, enabling full screen will change the window size to match the monitor's size. Therefore, make sure your project supports [multiple resolutions]($DOCS_URL/tutorials/rendering/multiple_resolutions.html) when enabling full screen mode.
2813
+ */
2814
+ WINDOW_MODE_EXCLUSIVE_FULLSCREEN: 4,
2815
+ } as const;
2816
+
2817
+ export type WindowMode = (typeof WindowMode)[keyof typeof WindowMode];
2818
+
2819
+ export const ProgressState = {
2820
+ /**
2821
+ * Stops displaying progress and returns the button to its normal state.
2822
+ */
2823
+ PROGRESS_STATE_NOPROGRESS: 0,
2824
+ /**
2825
+ * The progress indicator shows an indeterminate progress.
2826
+ * On Windows, the progress indicator does not grow in size, but cycles repeatedly along the length of the taskbar button by default.
2827
+ */
2828
+ PROGRESS_STATE_INDETERMINATE: 1,
2829
+ /**
2830
+ * The progress indicator shows progress normally.
2831
+ */
2832
+ PROGRESS_STATE_NORMAL: 2,
2833
+ /**
2834
+ * The progress indicator shows that an error has occurred.
2835
+ * On Windows, the progress indicator turns red by default to show that an error has occurred in one of the windows that is broadcasting progress.
2836
+ */
2837
+ PROGRESS_STATE_ERROR: 3,
2838
+ /**
2839
+ * The progress indicator shows it was paused.
2840
+ * On Windows, the progress indicator turns yellow by default to show that progress is currently stopped in one of the windows but can be resumed by the user.
2841
+ */
2842
+ PROGRESS_STATE_PAUSED: 4,
2843
+ } as const;
2844
+
2845
+ export type ProgressState = (typeof ProgressState)[keyof typeof ProgressState];
2846
+
2847
+ export const WindowFlags = {
2848
+ /**
2849
+ * The window can't be resized by dragging its resize grip. It's still possible to resize the window using {@link windowSetSize}. This flag is ignored for full screen windows.
2850
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2851
+ */
2852
+ WINDOW_FLAG_RESIZE_DISABLED: 0,
2853
+ /**
2854
+ * The window do not have native title bar and other decorations. This flag is ignored for full-screen windows.
2855
+ * **Note:** This flag is implemented on Linux (X11/Wayland), macOS, and Windows.
2856
+ */
2857
+ WINDOW_FLAG_BORDERLESS: 1,
2858
+ /**
2859
+ * The window is floating on top of all other windows. This flag is ignored for full-screen windows.
2860
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2861
+ */
2862
+ WINDOW_FLAG_ALWAYS_ON_TOP: 2,
2863
+ /**
2864
+ * The window background can be transparent.
2865
+ * **Note:** This flag has no effect if {@link isWindowTransparencyAvailable} returns `false`.
2866
+ * **Note:** Transparency support is implemented on Linux (X11/Wayland), macOS, and Windows, but availability might vary depending on GPU driver, display manager, and compositor capabilities.
2867
+ * **Note:** Transparency support is implemented on Android, but can only be enabled via {@link ProjectSettings.display/window/perPixelTransparency/allowed}. This flag has no effect on Android.
2868
+ */
2869
+ WINDOW_FLAG_TRANSPARENT: 3,
2870
+ /**
2871
+ * The window can't be focused. No-focus window will ignore all input, except mouse clicks.
2872
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2873
+ */
2874
+ WINDOW_FLAG_NO_FOCUS: 4,
2875
+ /**
2876
+ * Window is part of menu or {@link OptionButton} dropdown. This flag can't be changed when the window is visible. An active popup window will exclusively receive all input, without stealing focus from its parent. Popup windows are automatically closed when uses click outside it, or when an application is switched. Popup window must have transient parent set (see {@link windowSetTransient}).
2877
+ * **Note:** This flag is implemented on Linux (X11/Wayland), macOS, and Windows.
2878
+ */
2879
+ WINDOW_FLAG_POPUP: 5,
2880
+ /**
2881
+ * Window content is expanded to the full size of the window. Unlike borderless window, the frame is left intact and can be used to resize the window, title bar is transparent, but have minimize/maximize/close buttons.
2882
+ * Use {@link windowSetWindowButtonsOffset} to adjust minimize/maximize/close buttons offset.
2883
+ * Use {@link windowGetSafeTitleMargins} to determine area under the title bar that is not covered by decorations.
2884
+ * **Note:** This flag is implemented only on macOS.
2885
+ */
2886
+ WINDOW_FLAG_EXTEND_TO_TITLE: 6,
2887
+ /**
2888
+ * All mouse events are passed to the underlying window of the same application.
2889
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2890
+ */
2891
+ WINDOW_FLAG_MOUSE_PASSTHROUGH: 7,
2892
+ /**
2893
+ * Window style is overridden, forcing sharp corners.
2894
+ * **Note:** This flag is implemented only on Windows (11).
2895
+ */
2896
+ WINDOW_FLAG_SHARP_CORNERS: 8,
2897
+ /**
2898
+ * Window is excluded from screenshots taken by {@link screenGetImage}, {@link screenGetImageRect}, and {@link screenGetPixel}.
2899
+ * **Note:** This flag is implemented on macOS and Windows (10, 20H1).
2900
+ * **Note:** Setting this flag will prevent standard screenshot methods from capturing a window image, but does **NOT** guarantee that other apps won't be able to capture an image. It should not be used as a DRM or security measure.
2901
+ */
2902
+ WINDOW_FLAG_EXCLUDE_FROM_CAPTURE: 9,
2903
+ /**
2904
+ * Signals the window manager that this window is supposed to be an implementation-defined "popup" (usually a floating, borderless, untileable and immovable child window).
2905
+ * **Note:** This flag is implemented on Linux (Wayland).
2906
+ */
2907
+ WINDOW_FLAG_POPUP_WM_HINT: 10,
2908
+ /**
2909
+ * Window minimize button is disabled.
2910
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2911
+ */
2912
+ WINDOW_FLAG_MINIMIZE_DISABLED: 11,
2913
+ /**
2914
+ * Window maximize button is disabled.
2915
+ * **Note:** This flag is implemented on Linux (X11), macOS, and Windows.
2916
+ */
2917
+ WINDOW_FLAG_MAXIMIZE_DISABLED: 12,
2918
+ /**
2919
+ * Represents the size of the {@link WindowFlags} enum.
2920
+ */
2921
+ WINDOW_FLAG_MAX: 13,
2922
+ } as const;
2923
+
2924
+ export type WindowFlags = (typeof WindowFlags)[keyof typeof WindowFlags];
2925
+
2926
+ export const WindowEvent = {
2927
+ /**
2928
+ * Sent when the mouse pointer enters the window.
2929
+ */
2930
+ WINDOW_EVENT_MOUSE_ENTER: 0,
2931
+ /**
2932
+ * Sent when the mouse pointer exits the window.
2933
+ */
2934
+ WINDOW_EVENT_MOUSE_EXIT: 1,
2935
+ /**
2936
+ * Sent when the window grabs focus.
2937
+ */
2938
+ WINDOW_EVENT_FOCUS_IN: 2,
2939
+ /**
2940
+ * Sent when the window loses focus.
2941
+ */
2942
+ WINDOW_EVENT_FOCUS_OUT: 3,
2943
+ /**
2944
+ * Sent when the user has attempted to close the window (e.g. close button is pressed).
2945
+ */
2946
+ WINDOW_EVENT_CLOSE_REQUEST: 4,
2947
+ /**
2948
+ * Sent when the device "Back" button is pressed.
2949
+ * **Note:** This event is implemented only on Android.
2950
+ */
2951
+ WINDOW_EVENT_GO_BACK_REQUEST: 5,
2952
+ /**
2953
+ * Sent when the window is moved to the display with different DPI, or display DPI is changed.
2954
+ * **Note:** This flag is implemented only on macOS and Linux (Wayland).
2955
+ */
2956
+ WINDOW_EVENT_DPI_CHANGE: 6,
2957
+ /**
2958
+ * Sent when the window title bar decoration is changed (e.g. {@link WINDOW_FLAG_EXTEND_TO_TITLE} is set or window entered/exited full screen mode).
2959
+ * **Note:** This flag is implemented only on macOS.
2960
+ */
2961
+ WINDOW_EVENT_TITLEBAR_CHANGE: 7,
2962
+ /**
2963
+ * Sent when the window has been forcibly closed by the display server. The window will immediately hide and clean any internal rendering references.
2964
+ * **Note:** This flag is implemented only on Linux (Wayland).
2965
+ */
2966
+ WINDOW_EVENT_FORCE_CLOSE: 8,
2967
+ /**
2968
+ * Sent when the output max linear value returned by {@link Window.getOutputMaxLinearValue} has changed.
2969
+ * This occurs when HDR output is enabled or disabled and when any HDR output luminance values of the window have changed, such as when the player adjusts their screen brightness setting or moves the window to a different screen.
2970
+ */
2971
+ WINDOW_EVENT_OUTPUT_MAX_LINEAR_VALUE_CHANGED: 9,
2972
+ } as const;
2973
+
2974
+ export type WindowEvent = (typeof WindowEvent)[keyof typeof WindowEvent];
2975
+
2976
+ export const WindowResizeEdge = {
2977
+ /**
2978
+ * Top-left edge of a window.
2979
+ */
2980
+ WINDOW_EDGE_TOP_LEFT: 0,
2981
+ /**
2982
+ * Top edge of a window.
2983
+ */
2984
+ WINDOW_EDGE_TOP: 1,
2985
+ /**
2986
+ * Top-right edge of a window.
2987
+ */
2988
+ WINDOW_EDGE_TOP_RIGHT: 2,
2989
+ /**
2990
+ * Left edge of a window.
2991
+ */
2992
+ WINDOW_EDGE_LEFT: 3,
2993
+ /**
2994
+ * Right edge of a window.
2995
+ */
2996
+ WINDOW_EDGE_RIGHT: 4,
2997
+ /**
2998
+ * Bottom-left edge of a window.
2999
+ */
3000
+ WINDOW_EDGE_BOTTOM_LEFT: 5,
3001
+ /**
3002
+ * Bottom edge of a window.
3003
+ */
3004
+ WINDOW_EDGE_BOTTOM: 6,
3005
+ /**
3006
+ * Bottom-right edge of a window.
3007
+ */
3008
+ WINDOW_EDGE_BOTTOM_RIGHT: 7,
3009
+ /**
3010
+ * Represents the size of the {@link WindowResizeEdge} enum.
3011
+ */
3012
+ WINDOW_EDGE_MAX: 8,
3013
+ } as const;
3014
+
3015
+ export type WindowResizeEdge = (typeof WindowResizeEdge)[keyof typeof WindowResizeEdge];
3016
+
3017
+ export const VSyncMode = {
3018
+ /**
3019
+ * No vertical synchronization, which means the engine will display frames as fast as possible (tearing may be visible). Framerate is unlimited (regardless of {@link Engine.maxFps}).
3020
+ */
3021
+ VSYNC_DISABLED: 0,
3022
+ /**
3023
+ * Default vertical synchronization mode, the image is displayed only on vertical blanking intervals (no tearing is visible). Framerate is limited by the monitor refresh rate (regardless of {@link Engine.maxFps}).
3024
+ */
3025
+ VSYNC_ENABLED: 1,
3026
+ /**
3027
+ * Behaves like {@link VSYNC_DISABLED} when the framerate drops below the screen's refresh rate to reduce stuttering (tearing may be visible). Otherwise, vertical synchronization is enabled to avoid tearing. Framerate is limited by the monitor refresh rate (regardless of {@link Engine.maxFps}). Behaves like {@link VSYNC_ENABLED} when using the Compatibility rendering method.
3028
+ */
3029
+ VSYNC_ADAPTIVE: 2,
3030
+ /**
3031
+ * Displays the most recent image in the queue on vertical blanking intervals, while rendering to the other images (no tearing is visible). Framerate is unlimited (regardless of {@link Engine.maxFps}).
3032
+ * Although not guaranteed, the images can be rendered as fast as possible, which may reduce input lag (also called "Fast" V-Sync mode). {@link VSYNC_MAILBOX} works best when at least twice as many frames as the display refresh rate are rendered. Behaves like {@link VSYNC_ENABLED} when using the Compatibility rendering method.
3033
+ */
3034
+ VSYNC_MAILBOX: 3,
3035
+ } as const;
3036
+
3037
+ export type VSyncMode = (typeof VSyncMode)[keyof typeof VSyncMode];
3038
+
3039
+ export const HandleType = {
3040
+ /**
3041
+ * Display handle:
3042
+ * - Linux (X11): `X11::Display*` for the display.
3043
+ * - Linux (Wayland): `wl_display` for the display.
3044
+ * - Android: `EGLDisplay` for the display.
3045
+ */
3046
+ DISPLAY_HANDLE: 0,
3047
+ /**
3048
+ * Window handle:
3049
+ * - Windows: `HWND` for the window.
3050
+ * - Linux (X11): `X11::Window*` for the window.
3051
+ * - Linux (Wayland): `wl_surface` for the window.
3052
+ * - macOS: `NSWindow*` for the window.
3053
+ * - iOS: `UIViewController*` for the view controller.
3054
+ * - Android: `jObject` for the activity.
3055
+ */
3056
+ WINDOW_HANDLE: 1,
3057
+ /**
3058
+ * Window view:
3059
+ * - Windows: `HDC` for the window (only with the Compatibility renderer).
3060
+ * - macOS: `NSView*` for the window main view.
3061
+ * - iOS: `UIView*` for the window main view.
3062
+ */
3063
+ WINDOW_VIEW: 2,
3064
+ /**
3065
+ * OpenGL context (only with the Compatibility renderer):
3066
+ * - Windows: `HGLRC` for the window (native GL), or `EGLContext` for the window (ANGLE).
3067
+ * - Linux (X11): `GLXContext*` for the window.
3068
+ * - Linux (Wayland): `EGLContext` for the window.
3069
+ * - macOS: `NSOpenGLContext*` for the window (native GL), or `EGLContext` for the window (ANGLE).
3070
+ * - Android: `EGLContext` for the window.
3071
+ */
3072
+ OPENGL_CONTEXT: 3,
3073
+ /**
3074
+ * - Windows: `EGLDisplay` for the window (ANGLE).
3075
+ * - macOS: `EGLDisplay` for the window (ANGLE).
3076
+ * - Linux (Wayland): `EGLDisplay` for the window.
3077
+ */
3078
+ EGL_DISPLAY: 4,
3079
+ /**
3080
+ * - Windows: `EGLConfig` for the window (ANGLE).
3081
+ * - macOS: `EGLConfig` for the window (ANGLE).
3082
+ * - Linux (Wayland): `EGLConfig` for the window.
3083
+ */
3084
+ EGL_CONFIG: 5,
3085
+ /**
3086
+ * The GLX `VisualID` for the window.
3087
+ * **Note:** Only available on Linux when using X11.
3088
+ */
3089
+ GLX_VISUALID: 6,
3090
+ /**
3091
+ * The `GLXFBConfig` for the window.
3092
+ * **Note:** Only available on Linux when using X11.
3093
+ */
3094
+ GLX_FBCONFIG: 7,
3095
+ } as const;
3096
+
3097
+ export type HandleType = (typeof HandleType)[keyof typeof HandleType];
3098
+
3099
+ export const TTSUtteranceEvent = {
3100
+ /**
3101
+ * Utterance has begun to be spoken.
3102
+ */
3103
+ TTS_UTTERANCE_STARTED: 0,
3104
+ /**
3105
+ * Utterance was successfully finished.
3106
+ */
3107
+ TTS_UTTERANCE_ENDED: 1,
3108
+ /**
3109
+ * Utterance was canceled, or TTS service was unable to process it.
3110
+ */
3111
+ TTS_UTTERANCE_CANCELED: 2,
3112
+ /**
3113
+ * Utterance reached a word or sentence boundary.
3114
+ */
3115
+ TTS_UTTERANCE_BOUNDARY: 3,
3116
+ } as const;
3117
+
3118
+ export type TTSUtteranceEvent = (typeof TTSUtteranceEvent)[keyof typeof TTSUtteranceEvent];
3119
+