@types/three 0.180.0 → 0.182.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 (313) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/controls/ArcballControls.d.ts +1 -1
  3. three/examples/jsm/controls/DragControls.d.ts +1 -1
  4. three/examples/jsm/controls/FirstPersonControls.d.ts +1 -1
  5. three/examples/jsm/controls/FlyControls.d.ts +1 -1
  6. three/examples/jsm/controls/OrbitControls.d.ts +1 -1
  7. three/examples/jsm/controls/PointerLockControls.d.ts +1 -1
  8. three/examples/jsm/controls/TrackballControls.d.ts +1 -1
  9. three/examples/jsm/controls/TransformControls.d.ts +1 -1
  10. three/examples/jsm/geometries/TextGeometry.d.ts +2 -0
  11. three/examples/jsm/gpgpu/BitonicSort.d.ts +21 -0
  12. three/examples/jsm/inspector/Inspector.d.ts +10 -0
  13. three/examples/jsm/inspector/RendererInspector.d.ts +4 -0
  14. three/examples/jsm/inspector/tabs/Parameters.d.ts +95 -0
  15. three/examples/jsm/inspector/ui/Tab.d.ts +3 -0
  16. three/examples/jsm/inspector/ui/Values.d.ts +80 -0
  17. three/examples/jsm/interactive/SelectionBox.d.ts +9 -9
  18. three/examples/jsm/lighting/TiledLighting.d.ts +1 -2
  19. three/examples/jsm/loaders/FontLoader.d.ts +1 -1
  20. three/examples/jsm/loaders/KTX2Loader.d.ts +3 -0
  21. three/examples/jsm/loaders/UltraHDRLoader.d.ts +7 -0
  22. three/examples/jsm/loaders/VOXLoader.d.ts +22 -5
  23. three/examples/jsm/math/Octree.d.ts +36 -14
  24. three/examples/jsm/objects/SkyMesh.d.ts +11 -7
  25. three/examples/jsm/objects/WaterMesh.d.ts +2 -2
  26. three/examples/jsm/physics/AmmoPhysics.d.ts +1 -1
  27. three/examples/jsm/postprocessing/OutputPass.d.ts +10 -6
  28. three/examples/jsm/postprocessing/RenderPass.d.ts +15 -10
  29. three/examples/jsm/renderers/CSS2DRenderer.d.ts +15 -10
  30. three/examples/jsm/transpiler/AST.d.ts +17 -0
  31. three/examples/jsm/transpiler/TSLEncoder.d.ts +2 -0
  32. three/examples/jsm/tsl/display/AfterImageNode.d.ts +4 -5
  33. three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +1 -2
  34. three/examples/jsm/tsl/display/AnamorphicNode.d.ts +1 -2
  35. three/examples/jsm/tsl/display/BleachBypass.d.ts +1 -2
  36. three/examples/jsm/tsl/display/BloomNode.d.ts +2 -3
  37. three/examples/jsm/tsl/display/ChromaticAberrationNode.d.ts +1 -2
  38. three/examples/jsm/tsl/display/DenoiseNode.d.ts +1 -2
  39. three/examples/jsm/tsl/display/DepthOfFieldNode.d.ts +1 -2
  40. three/examples/jsm/tsl/display/DotScreenNode.d.ts +1 -2
  41. three/examples/jsm/tsl/display/FXAANode.d.ts +1 -2
  42. three/examples/jsm/tsl/display/FilmNode.d.ts +1 -2
  43. three/examples/jsm/tsl/display/GTAONode.d.ts +11 -10
  44. three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +2 -3
  45. three/examples/jsm/tsl/display/LensflareNode.d.ts +6 -7
  46. three/examples/jsm/tsl/display/Lut3DNode.d.ts +2 -3
  47. three/examples/jsm/tsl/display/MotionBlur.d.ts +1 -2
  48. three/examples/jsm/tsl/display/OutlineNode.d.ts +6 -7
  49. three/examples/jsm/tsl/display/ParallaxBarrierPassNode.d.ts +1 -2
  50. three/examples/jsm/tsl/display/PixelationPassNode.d.ts +1 -2
  51. three/examples/jsm/tsl/display/RGBShiftNode.d.ts +1 -2
  52. three/examples/jsm/tsl/display/SMAANode.d.ts +1 -2
  53. three/examples/jsm/tsl/display/SSAAPassNode.d.ts +1 -2
  54. three/examples/jsm/tsl/display/SSGINode.d.ts +30 -0
  55. three/examples/jsm/tsl/display/SSRNode.d.ts +12 -13
  56. three/examples/jsm/tsl/display/SSSNode.d.ts +20 -0
  57. three/examples/jsm/tsl/display/Sepia.d.ts +1 -2
  58. three/examples/jsm/tsl/display/SobelOperatorNode.d.ts +1 -2
  59. three/examples/jsm/tsl/display/StereoPassNode.d.ts +1 -2
  60. three/examples/jsm/tsl/display/TRAANode.d.ts +6 -2
  61. three/examples/jsm/tsl/display/TransitionNode.d.ts +1 -2
  62. three/examples/jsm/tsl/display/boxBlur.d.ts +1 -2
  63. three/examples/jsm/tsl/display/hashBlur.d.ts +1 -2
  64. three/examples/jsm/tsl/display/radialBlur.d.ts +12 -0
  65. three/examples/jsm/tsl/lighting/TiledLightsNode.d.ts +3 -4
  66. three/examples/jsm/tsl/math/Bayer.d.ts +1 -2
  67. three/examples/jsm/tsl/utils/Raymarching.d.ts +2 -3
  68. three/package.json +3 -3
  69. three/src/Three.Core.d.ts +1 -1
  70. three/src/Three.TSL.d.ts +21 -3
  71. three/src/Three.WebGPU.Nodes.d.ts +2 -0
  72. three/src/Three.WebGPU.d.ts +2 -0
  73. three/src/animation/AnimationMixer.d.ts +45 -3
  74. three/src/animation/AnimationUtils.d.ts +3 -8
  75. three/src/constants.d.ts +14 -0
  76. three/src/core/BufferGeometry.d.ts +3 -1
  77. three/src/extras/Controls.d.ts +3 -3
  78. three/src/lights/DirectionalLight.d.ts +10 -3
  79. three/src/lights/HemisphereLight.d.ts +8 -1
  80. three/src/lights/Light.d.ts +8 -12
  81. three/src/lights/LightProbe.d.ts +7 -3
  82. three/src/lights/PointLight.d.ts +12 -1
  83. three/src/lights/PointLightShadow.d.ts +1 -8
  84. three/src/lights/SpotLight.d.ts +17 -2
  85. three/src/loaders/ObjectLoader.d.ts +3 -3
  86. three/src/loaders/TextureLoader.d.ts +3 -3
  87. three/src/materials/Material.d.ts +3 -2
  88. three/src/materials/MeshLambertMaterial.d.ts +1 -1
  89. three/src/materials/MeshMatcapMaterial.d.ts +14 -0
  90. three/src/materials/MeshPhongMaterial.d.ts +1 -1
  91. three/src/materials/MeshPhysicalMaterial.d.ts +1 -1
  92. three/src/materials/MeshStandardMaterial.d.ts +7 -7
  93. three/src/materials/PointsMaterial.d.ts +1 -1
  94. three/src/materials/ShaderMaterial.d.ts +26 -11
  95. three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +1 -1
  96. three/src/materials/nodes/NodeMaterial.d.ts +9 -3
  97. three/src/materials/nodes/VolumeNodeMaterial.d.ts +1 -2
  98. three/src/math/Vector3.d.ts +2 -2
  99. three/src/nodes/Nodes.d.ts +1 -1
  100. three/src/nodes/TSL.d.ts +5 -2
  101. three/src/nodes/accessors/AccessorsUtils.d.ts +4 -5
  102. three/src/nodes/accessors/Arrays.d.ts +2 -3
  103. three/src/nodes/accessors/BatchNode.d.ts +1 -2
  104. three/src/nodes/accessors/Bitangent.d.ts +4 -5
  105. three/src/nodes/accessors/BufferAttributeNode.d.ts +17 -17
  106. three/src/nodes/accessors/BufferNode.d.ts +2 -2
  107. three/src/nodes/accessors/BuiltinNode.d.ts +1 -2
  108. three/src/nodes/accessors/Camera.d.ts +10 -11
  109. three/src/nodes/accessors/ClippingNode.d.ts +3 -6
  110. three/src/nodes/accessors/CubeTextureNode.d.ts +8 -9
  111. three/src/nodes/accessors/InstanceNode.d.ts +8 -8
  112. three/src/nodes/accessors/InstancedMeshNode.d.ts +1 -2
  113. three/src/nodes/accessors/Lights.d.ts +6 -7
  114. three/src/nodes/accessors/MaterialNode.d.ts +38 -39
  115. three/src/nodes/accessors/MaterialProperties.d.ts +3 -4
  116. three/src/nodes/accessors/MaterialReferenceNode.d.ts +2 -2
  117. three/src/nodes/accessors/ModelNode.d.ts +12 -13
  118. three/src/nodes/accessors/ModelViewProjectionNode.d.ts +1 -2
  119. three/src/nodes/accessors/MorphNode.d.ts +1 -2
  120. three/src/nodes/accessors/Normal.d.ts +13 -14
  121. three/src/nodes/accessors/Object3DNode.d.ts +6 -7
  122. three/src/nodes/accessors/PointUVNode.d.ts +1 -2
  123. three/src/nodes/accessors/Position.d.ts +7 -8
  124. three/src/nodes/accessors/ReferenceBaseNode.d.ts +2 -3
  125. three/src/nodes/accessors/ReferenceNode.d.ts +2 -3
  126. three/src/nodes/accessors/ReflectVector.d.ts +4 -5
  127. three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -2
  128. three/src/nodes/accessors/SceneNode.d.ts +3 -4
  129. three/src/nodes/accessors/SkinningNode.d.ts +5 -6
  130. three/src/nodes/accessors/StorageBufferNode.d.ts +5 -5
  131. three/src/nodes/accessors/StorageTextureNode.d.ts +7 -4
  132. three/src/nodes/accessors/Tangent.d.ts +4 -6
  133. three/src/nodes/accessors/TangentUtils.d.ts +2 -3
  134. three/src/nodes/accessors/Texture3DNode.d.ts +15 -4
  135. three/src/nodes/accessors/TextureBicubic.d.ts +2 -3
  136. three/src/nodes/accessors/TextureNode.d.ts +29 -24
  137. three/src/nodes/accessors/TextureSizeNode.d.ts +1 -2
  138. three/src/nodes/accessors/UV.d.ts +1 -2
  139. three/src/nodes/accessors/UniformArrayNode.d.ts +2 -3
  140. three/src/nodes/accessors/UserDataNode.d.ts +1 -2
  141. three/src/nodes/accessors/VelocityNode.d.ts +1 -2
  142. three/src/nodes/accessors/VertexColorNode.d.ts +1 -2
  143. three/src/nodes/code/CodeNode.d.ts +4 -5
  144. three/src/nodes/code/ExpressionNode.d.ts +1 -2
  145. three/src/nodes/code/FunctionCallNode.d.ts +6 -5
  146. three/src/nodes/code/FunctionNode.d.ts +4 -6
  147. three/src/nodes/code/ScriptableNode.d.ts +1 -2
  148. three/src/nodes/code/ScriptableValueNode.d.ts +1 -2
  149. three/src/nodes/core/ArrayNode.d.ts +6 -6
  150. three/src/nodes/core/AssignNode.d.ts +1 -8
  151. three/src/nodes/core/AttributeNode.d.ts +1 -2
  152. three/src/nodes/core/BypassNode.d.ts +5 -5
  153. three/src/nodes/core/ContextNode.d.ts +42 -14
  154. three/src/nodes/core/IndexNode.d.ts +10 -7
  155. three/src/nodes/core/InspectorNode.d.ts +16 -0
  156. three/src/nodes/core/IsolateNode.d.ts +36 -0
  157. three/src/nodes/core/MRTNode.d.ts +3 -4
  158. three/src/nodes/core/Node.d.ts +18 -2
  159. three/src/nodes/core/NodeUtils.d.ts +1 -11
  160. three/src/nodes/core/OutputStructNode.d.ts +1 -2
  161. three/src/nodes/core/ParameterNode.d.ts +1 -2
  162. three/src/nodes/core/PropertyNode.d.ts +32 -31
  163. three/src/nodes/core/StackNode.d.ts +1 -4
  164. three/src/nodes/core/StructNode.d.ts +3 -4
  165. three/src/nodes/core/SubBuildNode.d.ts +1 -2
  166. three/src/nodes/core/UniformNode.d.ts +3 -6
  167. three/src/nodes/core/VarNode.d.ts +12 -8
  168. three/src/nodes/core/VaryingNode.d.ts +12 -10
  169. three/src/nodes/display/BlendModes.d.ts +11 -12
  170. three/src/nodes/display/BumpMapNode.d.ts +1 -2
  171. three/src/nodes/display/ColorAdjustment.d.ts +7 -8
  172. three/src/nodes/display/ColorSpaceFunctions.d.ts +2 -3
  173. three/src/nodes/display/ColorSpaceNode.d.ts +19 -9
  174. three/src/nodes/display/FrontFacingNode.d.ts +3 -4
  175. three/src/nodes/display/NormalMapNode.d.ts +4 -3
  176. three/src/nodes/display/PassNode.d.ts +28 -11
  177. three/src/nodes/display/PosterizeNode.d.ts +1 -2
  178. three/src/nodes/display/RenderOutputNode.d.ts +11 -6
  179. three/src/nodes/display/ScreenNode.d.ts +9 -10
  180. three/src/nodes/display/ToneMappingFunctions.d.ts +6 -7
  181. three/src/nodes/display/ToneMappingNode.d.ts +9 -8
  182. three/src/nodes/display/ToonOutlinePassNode.d.ts +1 -2
  183. three/src/nodes/display/ViewportDepthNode.d.ts +3 -4
  184. three/src/nodes/display/ViewportDepthTextureNode.d.ts +1 -2
  185. three/src/nodes/display/ViewportSharedTextureNode.d.ts +1 -2
  186. three/src/nodes/display/ViewportTextureNode.d.ts +2 -3
  187. three/src/nodes/fog/Fog.d.ts +5 -6
  188. three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +4 -5
  189. three/src/nodes/functions/BSDF/BRDF_GGX_Multiscatter.d.ts +14 -0
  190. three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +1 -2
  191. three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +1 -2
  192. three/src/nodes/functions/BSDF/DFGLUT.d.ts +12 -0
  193. three/src/nodes/functions/BSDF/D_GGX.d.ts +1 -2
  194. three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +1 -2
  195. three/src/nodes/functions/BSDF/F_Schlick.d.ts +1 -2
  196. three/src/nodes/functions/BSDF/Schlick_to_F0.d.ts +1 -2
  197. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +1 -2
  198. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +1 -2
  199. three/src/nodes/functions/PhysicalLightingModel.d.ts +8 -1
  200. three/src/nodes/functions/ShadowMaskModel.d.ts +1 -2
  201. three/src/nodes/functions/material/getAlphaHashThreshold.d.ts +1 -2
  202. three/src/nodes/functions/material/getGeometryRoughness.d.ts +1 -2
  203. three/src/nodes/functions/material/getParallaxCorrectNormal.d.ts +1 -2
  204. three/src/nodes/functions/material/getRoughness.d.ts +1 -2
  205. three/src/nodes/functions/material/getShIrradianceAt.d.ts +1 -2
  206. three/src/nodes/geometry/RangeNode.d.ts +1 -2
  207. three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +10 -11
  208. three/src/nodes/gpgpu/BarrierNode.d.ts +3 -4
  209. three/src/nodes/gpgpu/ComputeBuiltinNode.d.ts +5 -6
  210. three/src/nodes/gpgpu/ComputeNode.d.ts +21 -13
  211. three/src/nodes/gpgpu/SubgroupFunctionNode.d.ts +25 -26
  212. three/src/nodes/gpgpu/WorkgroupInfoNode.d.ts +1 -2
  213. three/src/nodes/lighting/AnalyticLightNode.d.ts +3 -2
  214. three/src/nodes/lighting/LightUtils.d.ts +1 -2
  215. three/src/nodes/lighting/LightingContextNode.d.ts +1 -2
  216. three/src/nodes/lighting/LightsNode.d.ts +1 -2
  217. three/src/nodes/lighting/PointLightNode.d.ts +5 -6
  218. three/src/nodes/lighting/PointShadowNode.d.ts +12 -17
  219. three/src/nodes/lighting/ShadowBaseNode.d.ts +1 -2
  220. three/src/nodes/lighting/ShadowFilterNode.d.ts +6 -5
  221. three/src/nodes/lighting/ShadowNode.d.ts +1 -2
  222. three/src/nodes/lighting/SpotLightNode.d.ts +1 -2
  223. three/src/nodes/materialx/MaterialXNodes.d.ts +41 -42
  224. three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -3
  225. three/src/nodes/materialx/lib/mx_noise.d.ts +73 -74
  226. three/src/nodes/materialx/lib/mx_transform_color.d.ts +1 -2
  227. three/src/nodes/math/BitcastNode.d.ts +5 -6
  228. three/src/nodes/math/BitcountNode.d.ts +21 -0
  229. three/src/nodes/math/ConditionalNode.d.ts +11 -5
  230. three/src/nodes/math/Hash.d.ts +1 -2
  231. three/src/nodes/math/MathNode.d.ts +223 -77
  232. three/src/nodes/math/OperatorNode.d.ts +203 -59
  233. three/src/nodes/math/PackFloatNode.d.ts +19 -0
  234. three/src/nodes/math/TriNoise3D.d.ts +3 -4
  235. three/src/nodes/math/UnpackFloatNode.d.ts +18 -0
  236. three/src/nodes/pmrem/PMREMNode.d.ts +1 -2
  237. three/src/nodes/pmrem/PMREMUtils.d.ts +3 -4
  238. three/src/nodes/procedural/Checker.d.ts +1 -2
  239. three/src/nodes/shapes/Shapes.d.ts +1 -2
  240. three/src/nodes/tsl/TSLBase.d.ts +2 -1
  241. three/src/nodes/tsl/TSLCore.d.ts +235 -128
  242. three/src/nodes/utils/CubeMapNode.d.ts +1 -2
  243. three/src/nodes/utils/DebugNode.d.ts +9 -5
  244. three/src/nodes/utils/Discard.d.ts +6 -6
  245. three/src/nodes/utils/EquirectUV.d.ts +1 -2
  246. three/src/nodes/utils/EventNode.d.ts +8 -3
  247. three/src/nodes/utils/FunctionOverloadingNode.d.ts +1 -2
  248. three/src/nodes/utils/LoopNode.d.ts +7 -6
  249. three/src/nodes/utils/MatcapUV.d.ts +1 -2
  250. three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -2
  251. three/src/nodes/utils/Oscillators.d.ts +4 -5
  252. three/src/nodes/utils/Packing.d.ts +3 -3
  253. three/src/nodes/utils/PostProcessingUtils.d.ts +7 -4
  254. three/src/nodes/utils/RTTNode.d.ts +2 -3
  255. three/src/nodes/utils/ReflectorNode.d.ts +2 -3
  256. three/src/nodes/utils/RemapNode.d.ts +29 -7
  257. three/src/nodes/utils/RotateNode.d.ts +1 -2
  258. three/src/nodes/utils/SampleNode.d.ts +1 -2
  259. three/src/nodes/utils/SpriteSheetUVNode.d.ts +1 -2
  260. three/src/nodes/utils/SpriteUtils.d.ts +1 -2
  261. three/src/nodes/utils/StorageArrayElementNode.d.ts +1 -2
  262. three/src/nodes/utils/Timer.d.ts +3 -4
  263. three/src/nodes/utils/TriplanarTextures.d.ts +2 -3
  264. three/src/nodes/utils/UVUtils.d.ts +5 -3
  265. three/src/nodes/utils/ViewportUtils.d.ts +1 -2
  266. three/src/objects/LOD.d.ts +1 -1
  267. three/src/objects/Skeleton.d.ts +4 -2
  268. three/src/renderers/WebGLRenderer.d.ts +22 -4
  269. three/src/renderers/common/Animation.d.ts +4 -1
  270. three/src/renderers/common/Binding.d.ts +6 -0
  271. three/src/renderers/common/Bindings.d.ts +12 -0
  272. three/src/renderers/common/Buffer.d.ts +24 -0
  273. three/src/renderers/common/CanvasTarget.d.ts +142 -0
  274. three/src/renderers/common/ChainMap.d.ts +8 -1
  275. three/src/renderers/common/Geometries.d.ts +8 -0
  276. three/src/renderers/common/InspectorBase.d.ts +105 -0
  277. three/src/renderers/common/PostProcessing.d.ts +3 -0
  278. three/src/renderers/common/QuadMesh.d.ts +3 -0
  279. three/src/renderers/common/RenderContexts.d.ts +6 -2
  280. three/src/renderers/common/RenderObject.d.ts +6 -0
  281. three/src/renderers/common/Renderer.d.ts +145 -46
  282. three/src/renderers/common/SampledTexture.d.ts +2 -0
  283. three/src/renderers/common/Sampler.d.ts +2 -0
  284. three/src/renderers/common/Textures.d.ts +20 -0
  285. three/src/renderers/common/TimestampQueryPool.d.ts +24 -1
  286. three/src/renderers/common/UniformsGroup.d.ts +1 -0
  287. three/src/renderers/common/extras/PMREMGenerator.d.ts +19 -1
  288. three/src/renderers/common/nodes/NodeLibrary.d.ts +3 -7
  289. three/src/renderers/common/nodes/Nodes.d.ts +13 -14
  290. three/src/renderers/shaders/ShaderLib.d.ts +1 -1
  291. three/src/renderers/webgl/WebGLCapabilities.d.ts +2 -2
  292. three/src/renderers/webgl/WebGLPrograms.d.ts +0 -1
  293. three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +5 -0
  294. three/src/scenes/Scene.d.ts +2 -2
  295. three/src/textures/CanvasTexture.d.ts +3 -3
  296. three/src/textures/CompressedArrayTexture.d.ts +6 -9
  297. three/src/textures/CompressedCubeTexture.d.ts +3 -3
  298. three/src/textures/CompressedTexture.d.ts +6 -8
  299. three/src/textures/CubeDepthTexture.d.ts +41 -0
  300. three/src/textures/CubeTexture.d.ts +4 -11
  301. three/src/textures/Data3DTexture.d.ts +5 -10
  302. three/src/textures/DataArrayTexture.d.ts +10 -10
  303. three/src/textures/DataTexture.d.ts +4 -11
  304. three/src/textures/DepthTexture.d.ts +7 -8
  305. three/src/textures/ExternalTexture.d.ts +3 -1
  306. three/src/textures/FramebufferTexture.d.ts +6 -1
  307. three/src/textures/Source.d.ts +3 -3
  308. three/src/textures/Texture.d.ts +8 -8
  309. three/src/textures/VideoFrameTexture.d.ts +1 -1
  310. three/src/textures/VideoTexture.d.ts +2 -2
  311. three/src/utils.d.ts +30 -2
  312. three/src/nodes/core/CacheNode.d.ts +0 -21
  313. three/src/nodes/functions/BSDF/DFGApprox.d.ts +0 -11
@@ -1,7 +1,6 @@
1
1
  import { Vector3 } from "../../math/Vector3.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
- import { ShaderNodeObject } from "../tsl/TSLCore.js";
5
4
  import OperatorNode from "./OperatorNode.js";
6
5
 
7
6
  export type MathNodeMethod1 =
@@ -130,14 +129,22 @@ export default class MathNode extends TempNode {
130
129
  constructor(method: MathNodeMethod3, aNode: Node, bNode: Node, cNode: Node);
131
130
  }
132
131
 
133
- export const EPSILON: ShaderNodeObject<Node>;
134
- export const INFINITY: ShaderNodeObject<Node>;
135
- export const PI: ShaderNodeObject<Node>;
136
- export const PI2: ShaderNodeObject<Node>;
132
+ export const EPSILON: Node;
133
+ export const INFINITY: Node;
134
+ export const PI: Node;
135
+
136
+ /**
137
+ * @deprecated Please use the non-deprecated version `TWO_PI`.
138
+ */
139
+ export const PI2: Node;
140
+
141
+ export const TWO_PI: Node;
142
+
143
+ export const HALF_PI: Node;
137
144
 
138
145
  type MathNodeParameter = Node | number;
139
146
 
140
- type Unary = (a: MathNodeParameter) => ShaderNodeObject<MathNode>;
147
+ type Unary = (a: MathNodeParameter) => MathNode;
141
148
 
142
149
  export const all: Unary;
143
150
  export const any: Unary;
@@ -157,14 +164,14 @@ export const sqrt: Unary;
157
164
  export const inverseSqrt: Unary;
158
165
  export const floor: Unary;
159
166
  export const ceil: Unary;
160
- export const normalize: (a: Node | Vector3) => ShaderNodeObject<MathNode>;
167
+ export const normalize: (a: Node | Vector3) => MathNode;
161
168
  export const fract: Unary;
162
169
  export const sin: Unary;
163
170
  export const cos: Unary;
164
171
  export const tan: Unary;
165
172
  export const asin: Unary;
166
173
  export const acos: Unary;
167
- export const atan: (a: MathNodeParameter, b?: MathNodeParameter) => ShaderNodeObject<MathNode>;
174
+ export const atan: (a: MathNodeParameter, b?: MathNodeParameter) => MathNode;
168
175
  export const abs: Unary;
169
176
  export const sign: Unary;
170
177
  export const length: Unary;
@@ -177,27 +184,27 @@ export const reciprocal: Unary;
177
184
  export const trunc: Unary;
178
185
  export const fwidth: Unary;
179
186
  export const transpose: Unary;
180
- export const determinant: (x: Node) => ShaderNodeObject<MathNode>;
181
- export const inverse: (x: Node) => ShaderNodeObject<MathNode>;
187
+ export const determinant: (x: Node) => MathNode;
188
+ export const inverse: (x: Node) => MathNode;
182
189
 
183
- type Binary = (a: MathNodeParameter, b: MathNodeParameter) => ShaderNodeObject<MathNode>;
190
+ type Binary = (a: MathNodeParameter, b: MathNodeParameter) => MathNode;
184
191
 
185
192
  export const min: (
186
193
  x: MathNodeParameter,
187
194
  y: MathNodeParameter,
188
195
  ...values: MathNodeParameter[]
189
- ) => ShaderNodeObject<MathNode>;
196
+ ) => MathNode;
190
197
  export const max: (
191
198
  x: MathNodeParameter,
192
199
  y: MathNodeParameter,
193
200
  ...values: MathNodeParameter[]
194
- ) => ShaderNodeObject<MathNode>;
201
+ ) => MathNode;
195
202
  export const step: Binary;
196
203
  export const reflect: Binary;
197
204
  export const distance: Binary;
198
205
  export const difference: Binary;
199
206
  export const dot: Binary;
200
- export const cross: (x: Node, y: Node) => ShaderNodeObject<MathNode>;
207
+ export const cross: (x: Node, y: Node) => MathNode;
201
208
  export const pow: Binary;
202
209
  export const pow2: Unary;
203
210
  export const pow3: Unary;
@@ -206,20 +213,20 @@ export const transformDirection: Binary;
206
213
  export const cbrt: Unary;
207
214
  export const lengthSq: Unary;
208
215
 
209
- type Ternary = (a: MathNodeParameter, b: MathNodeParameter, c: MathNodeParameter) => ShaderNodeObject<MathNode>;
216
+ type Ternary = (a: MathNodeParameter, b: MathNodeParameter, c: MathNodeParameter) => MathNode;
210
217
 
211
218
  export const mix: Ternary;
212
219
  export const clamp: (
213
220
  a: MathNodeParameter,
214
221
  b?: MathNodeParameter,
215
222
  c?: MathNodeParameter,
216
- ) => ShaderNodeObject<MathNode>;
223
+ ) => MathNode;
217
224
  export const saturate: Unary;
218
225
  export const refract: Ternary;
219
226
  export const smoothstep: Ternary;
220
227
  export const faceForward: Ternary;
221
228
 
222
- export const rand: (uv: MathNodeParameter) => ShaderNodeObject<OperatorNode>;
229
+ export const rand: (uv: MathNodeParameter) => OperatorNode;
223
230
 
224
231
  export const mixElement: Ternary;
225
232
  export const smoothstepElement: Ternary;
@@ -237,65 +244,204 @@ export const inversesqrt: typeof inverseSqrt;
237
244
 
238
245
  // Method chaining
239
246
 
240
- declare module "../tsl/TSLCore.js" {
241
- interface NodeElements {
242
- all: typeof all;
243
- any: typeof any;
244
- equals: typeof equals;
245
- radians: typeof radians;
246
- degrees: typeof degrees;
247
- exp: typeof exp;
248
- exp2: typeof exp2;
249
- log: typeof log;
250
- log2: typeof log2;
251
- sqrt: typeof sqrt;
252
- inverseSqrt: typeof inverseSqrt;
253
- floor: typeof floor;
254
- ceil: typeof ceil;
255
- normalize: typeof normalize;
256
- fract: typeof fract;
257
- sin: typeof sin;
258
- cos: typeof cos;
259
- tan: typeof tan;
260
- asin: typeof asin;
261
- acos: typeof acos;
262
- atan: typeof atan;
263
- abs: typeof abs;
264
- sign: typeof sign;
265
- length: typeof length;
266
- lengthSq: typeof lengthSq;
267
- negate: typeof negate;
268
- oneMinus: typeof oneMinus;
269
- dFdx: typeof dFdx;
270
- dFdy: typeof dFdy;
271
- round: typeof round;
272
- reciprocal: typeof reciprocal;
273
- trunc: typeof trunc;
274
- fwidth: typeof fwidth;
275
- atan2: typeof atan2;
276
- min: typeof min;
277
- max: typeof max;
278
- step: typeof stepElement;
279
- reflect: typeof reflect;
280
- distance: typeof distance;
281
- dot: typeof dot;
282
- cross: typeof cross;
283
- pow: typeof pow;
284
- pow2: typeof pow2;
285
- pow3: typeof pow3;
286
- pow4: typeof pow4;
287
- transformDirection: typeof transformDirection;
288
- mix: typeof mixElement;
289
- clamp: typeof clamp;
290
- refract: typeof refract;
291
- smoothstep: typeof smoothstepElement;
292
- faceForward: typeof faceForward;
293
- difference: typeof difference;
294
- saturate: typeof saturate;
295
- cbrt: typeof cbrt;
296
- transpose: typeof transpose;
297
- determinant: typeof determinant;
298
- inverse: typeof inverse;
299
- rand: typeof rand;
247
+ declare module "../Nodes.js" {
248
+ interface Node {
249
+ all: () => MathNode;
250
+ allAssign: () => this;
251
+
252
+ any: () => MathNode;
253
+ anyAssign: () => this;
254
+
255
+ /**
256
+ * @deprecated "equals" is deprecated. Use "equal" inside a vector instead, like: "bvec*( equal( ... ) )"
257
+ */
258
+ equals: () => MathNode;
259
+ /**
260
+ * @deprecated "equals" is deprecated. Use "equal" inside a vector instead, like: "bvec*( equal( ... ) )"
261
+ */
262
+ equalsAssign: () => this;
263
+
264
+ radians: () => MathNode;
265
+ radiansAssign: () => this;
266
+
267
+ degrees: () => MathNode;
268
+ degreesAssign: () => this;
269
+
270
+ exp: () => MathNode;
271
+ expAssign: () => this;
272
+
273
+ exp2: () => MathNode;
274
+ exp2Assign: () => this;
275
+
276
+ log: () => MathNode;
277
+ logAssign: () => this;
278
+
279
+ log2: () => MathNode;
280
+ log2Assign: () => this;
281
+
282
+ sqrt: () => MathNode;
283
+ sqrtAssign: () => this;
284
+
285
+ inverseSqrt: () => MathNode;
286
+ inverseSqrtAssign: () => this;
287
+
288
+ floor: () => MathNode;
289
+ floorAssign: () => this;
290
+
291
+ ceil: () => MathNode;
292
+ ceilAssign: () => this;
293
+
294
+ normalize: () => MathNode;
295
+ normalizeAssign: () => this;
296
+
297
+ fract: () => MathNode;
298
+ fractAssign: () => this;
299
+
300
+ sin: () => MathNode;
301
+ sinAssign: () => this;
302
+
303
+ cos: () => MathNode;
304
+ cosAssign: () => this;
305
+
306
+ tan: () => MathNode;
307
+ tanAssign: () => this;
308
+
309
+ asin: () => MathNode;
310
+ asinAssign: () => this;
311
+
312
+ acos: () => MathNode;
313
+ acosAssign: () => this;
314
+
315
+ atan: (b?: MathNodeParameter) => MathNode;
316
+ atanAssign: (b?: MathNodeParameter) => this;
317
+
318
+ abs: () => MathNode;
319
+ absAssign: () => this;
320
+
321
+ sign: () => MathNode;
322
+ signAssign: () => this;
323
+
324
+ length: () => MathNode;
325
+ lengthAssign: () => this;
326
+
327
+ lengthSq: () => MathNode;
328
+ lengthSqAssign: () => this;
329
+
330
+ negate: () => MathNode;
331
+ negateAssign: () => this;
332
+
333
+ oneMinus: () => MathNode;
334
+ oneMinusAssign: () => this;
335
+
336
+ dFdx: () => MathNode;
337
+ dFdxAssign: () => this;
338
+
339
+ dFdy: () => MathNode;
340
+ dFdyAssign: () => this;
341
+
342
+ round: () => MathNode;
343
+ roundAssign: () => this;
344
+
345
+ reciprocal: () => MathNode;
346
+ reciprocalAssign: () => this;
347
+
348
+ trunc: () => MathNode;
349
+ truncAssign: () => this;
350
+
351
+ fwidth: () => MathNode;
352
+ fwidthAssign: () => this;
353
+
354
+ /**
355
+ * @deprecated
356
+ */
357
+ atan2: (b: MathNodeParameter) => MathNode;
358
+ /**
359
+ * @deprecated
360
+ */
361
+ atan2Assign: (b: MathNodeParameter) => this;
362
+
363
+ min: (
364
+ y: MathNodeParameter,
365
+ ...values: MathNodeParameter[]
366
+ ) => MathNode;
367
+ minAssign: (
368
+ y: MathNodeParameter,
369
+ ...values: MathNodeParameter[]
370
+ ) => this;
371
+
372
+ max: (
373
+ y: MathNodeParameter,
374
+ ...values: MathNodeParameter[]
375
+ ) => MathNode;
376
+ maxAssign: (
377
+ y: MathNodeParameter,
378
+ ...values: MathNodeParameter[]
379
+ ) => this;
380
+
381
+ step: (b: MathNodeParameter) => MathNode;
382
+ stepAssign: (b: MathNodeParameter) => this;
383
+
384
+ reflect: (b: MathNodeParameter) => MathNode;
385
+ reflectAssign: (b: MathNodeParameter) => this;
386
+
387
+ distance: (b: MathNodeParameter) => MathNode;
388
+ distanceAssign: (b: MathNodeParameter) => this;
389
+
390
+ dot: (b: MathNodeParameter) => MathNode;
391
+ dotAssign: (b: MathNodeParameter) => this;
392
+
393
+ cross: (y: Node) => MathNode;
394
+ crossAssign: (y: Node) => this;
395
+
396
+ pow: (b: MathNodeParameter) => MathNode;
397
+ powAssign: (b: MathNodeParameter) => this;
398
+
399
+ pow2: () => MathNode;
400
+ pow2Assign: () => this;
401
+
402
+ pow3: () => MathNode;
403
+ pow3Assign: () => this;
404
+
405
+ pow4: () => MathNode;
406
+ pow4Assign: () => this;
407
+
408
+ transformDirection: (b: MathNodeParameter) => MathNode;
409
+ transformDirectionAssign: (b: MathNodeParameter) => this;
410
+
411
+ mix: (b: MathNodeParameter, c: MathNodeParameter) => MathNode;
412
+ mixAssign: (b: MathNodeParameter, c: MathNodeParameter) => this;
413
+
414
+ clamp: (b?: MathNodeParameter, c?: MathNodeParameter) => MathNode;
415
+ clampAssign: (b?: MathNodeParameter, c?: MathNodeParameter) => this;
416
+
417
+ refract: (b: MathNodeParameter, c: MathNodeParameter) => MathNode;
418
+ refractAssign: (b: MathNodeParameter, c: MathNodeParameter) => this;
419
+
420
+ smoothstep: (b: MathNodeParameter, c: MathNodeParameter) => MathNode;
421
+ smoothstepAssign: (b: MathNodeParameter, c: MathNodeParameter) => this;
422
+
423
+ faceForward: (b: MathNodeParameter, c: MathNodeParameter) => MathNode;
424
+ faceForwardAssign: (b: MathNodeParameter, c: MathNodeParameter) => this;
425
+
426
+ difference: (b: MathNodeParameter) => MathNode;
427
+ differenceAssign: (b: MathNodeParameter) => this;
428
+
429
+ saturate: () => MathNode;
430
+ saturateAssign: () => this;
431
+
432
+ cbrt: () => MathNode;
433
+ cbrtAssign: () => this;
434
+
435
+ transpose: () => MathNode;
436
+ transposeAssign: () => this;
437
+
438
+ determinant: () => MathNode;
439
+ determinantAssign: () => this;
440
+
441
+ inverse: () => MathNode;
442
+ inverseAssign: () => this;
443
+
444
+ rand: () => OperatorNode;
445
+ randAssign: () => this;
300
446
  }
301
447
  }
@@ -1,6 +1,5 @@
1
1
  import Node from "../core/Node.js";
2
2
  import TempNode from "../core/TempNode.js";
3
- import { ShaderNodeObject } from "../tsl/TSLCore.js";
4
3
 
5
4
  export type OperatorNodeOp =
6
5
  | "%"
@@ -39,93 +38,238 @@ export const add: (
39
38
  a: OperatorNodeParameter,
40
39
  b: OperatorNodeParameter,
41
40
  ...params: OperatorNodeParameter[]
42
- ) => ShaderNodeObject<OperatorNode>;
41
+ ) => OperatorNode;
43
42
  export const sub: (
44
43
  a: OperatorNodeParameter,
45
44
  b: OperatorNodeParameter,
46
45
  ...params: OperatorNodeParameter[]
47
- ) => ShaderNodeObject<OperatorNode>;
46
+ ) => OperatorNode;
48
47
  export const mul: (
49
48
  a: OperatorNodeParameter,
50
49
  b: OperatorNodeParameter,
51
50
  ...params: OperatorNodeParameter[]
52
- ) => ShaderNodeObject<OperatorNode>;
51
+ ) => OperatorNode;
53
52
  export const div: (
54
53
  a: OperatorNodeParameter,
55
54
  b: OperatorNodeParameter,
56
55
  ...params: OperatorNodeParameter[]
57
- ) => ShaderNodeObject<OperatorNode>;
58
- export const mod: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
59
- export const equal: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
60
- export const notEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
61
- export const lessThan: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
62
- export const greaterThan: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
63
- export const lessThanEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
64
- export const greaterThanEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
56
+ ) => OperatorNode;
57
+ export const mod: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
58
+ export const equal: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
59
+ export const notEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
60
+ export const lessThan: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
61
+ export const greaterThan: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
62
+ export const lessThanEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
63
+ export const greaterThanEqual: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
65
64
  export const and: (
66
65
  a: OperatorNodeParameter,
67
66
  b: OperatorNodeParameter,
68
67
  ...params: OperatorNodeParameter[]
69
- ) => ShaderNodeObject<OperatorNode>;
68
+ ) => OperatorNode;
70
69
  export const or: (
71
70
  a: OperatorNodeParameter,
72
71
  b: OperatorNodeParameter,
73
72
  ...params: OperatorNodeParameter[]
74
- ) => ShaderNodeObject<OperatorNode>;
75
- export const not: (value: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
76
- export const xor: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
77
- export const bitAnd: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
78
- export const bitNot: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
79
- export const bitOr: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
80
- export const bitXor: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
81
- export const shiftLeft: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
82
- export const shiftRight: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
83
-
84
- export const incrementBefore: (a: OperatorNodeParameter) => ShaderNodeObject<Node>;
85
- export const decrementBefore: (a: OperatorNodeParameter) => ShaderNodeObject<Node>;
86
- export const increment: (a: OperatorNodeParameter) => ShaderNodeObject<Node>;
87
- export const decrement: (a: OperatorNodeParameter) => ShaderNodeObject<Node>;
88
-
89
- declare module "../tsl/TSLCore.js" {
90
- interface NodeElements {
91
- add: typeof add;
92
- sub: typeof sub;
93
- mul: typeof mul;
94
- div: typeof div;
95
- mod: typeof mod;
96
- equal: typeof equal;
97
- notEqual: typeof notEqual;
98
- lessThan: typeof lessThan;
99
- greaterThan: typeof greaterThan;
100
- lessThanEqual: typeof lessThanEqual;
101
- greaterThanEqual: typeof greaterThanEqual;
102
- and: typeof and;
103
- or: typeof or;
104
- not: typeof not;
105
- xor: typeof xor;
106
- bitAnd: typeof bitAnd;
107
- bitNot: typeof bitNot;
108
- bitOr: typeof bitOr;
109
- bitXor: typeof bitXor;
110
- shiftLeft: typeof shiftLeft;
111
- shiftRight: typeof shiftRight;
112
- incrementBefore: typeof incrementBefore;
113
- decrementBefore: typeof decrement;
114
- increment: typeof increment;
115
- decrement: typeof decrement;
73
+ ) => OperatorNode;
74
+ export const not: (value: OperatorNodeParameter) => OperatorNode;
75
+ export const xor: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
76
+ export const bitAnd: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
77
+ export const bitNot: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
78
+ export const bitOr: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
79
+ export const bitXor: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
80
+ export const shiftLeft: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
81
+ export const shiftRight: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
82
+
83
+ export const incrementBefore: (a: OperatorNodeParameter) => Node;
84
+ export const decrementBefore: (a: OperatorNodeParameter) => Node;
85
+ export const increment: (a: OperatorNodeParameter) => Node;
86
+ export const decrement: (a: OperatorNodeParameter) => Node;
87
+
88
+ declare module "../Nodes.js" {
89
+ interface Node {
90
+ add: (
91
+ b: OperatorNodeParameter,
92
+ ...params: OperatorNodeParameter[]
93
+ ) => OperatorNode;
94
+ addAssign: (
95
+ b: OperatorNodeParameter,
96
+ ...params: OperatorNodeParameter[]
97
+ ) => this;
98
+
99
+ sub: (
100
+ b: OperatorNodeParameter,
101
+ ...params: OperatorNodeParameter[]
102
+ ) => OperatorNode;
103
+ subAssign: (
104
+ b: OperatorNodeParameter,
105
+ ...params: OperatorNodeParameter[]
106
+ ) => this;
107
+
108
+ mul: (
109
+ b: OperatorNodeParameter,
110
+ ...params: OperatorNodeParameter[]
111
+ ) => OperatorNode;
112
+ mulAssign: (
113
+ b: OperatorNodeParameter,
114
+ ...params: OperatorNodeParameter[]
115
+ ) => this;
116
+
117
+ div: (
118
+ b: OperatorNodeParameter,
119
+ ...params: OperatorNodeParameter[]
120
+ ) => OperatorNode;
121
+ divAssign: (
122
+ b: OperatorNodeParameter,
123
+ ...params: OperatorNodeParameter[]
124
+ ) => this;
125
+
126
+ mod: (
127
+ b: OperatorNodeParameter,
128
+ ) => OperatorNode;
129
+ modAssign: (
130
+ b: OperatorNodeParameter,
131
+ ) => this;
132
+
133
+ equal: (
134
+ b: OperatorNodeParameter,
135
+ ) => OperatorNode;
136
+ equalAssign: (
137
+ b: OperatorNodeParameter,
138
+ ) => this;
139
+
140
+ notEqual: (
141
+ b: OperatorNodeParameter,
142
+ ) => OperatorNode;
143
+ notEqualAssign: (
144
+ b: OperatorNodeParameter,
145
+ ) => this;
146
+
147
+ lessThan: (
148
+ b: OperatorNodeParameter,
149
+ ) => OperatorNode;
150
+ lessThanAssign: (
151
+ b: OperatorNodeParameter,
152
+ ) => this;
153
+
154
+ greaterThan: (
155
+ b: OperatorNodeParameter,
156
+ ) => OperatorNode;
157
+ greaterThanAssign: (
158
+ b: OperatorNodeParameter,
159
+ ) => this;
160
+
161
+ lessThanEqual: (
162
+ b: OperatorNodeParameter,
163
+ ) => OperatorNode;
164
+ lessThanEqualAssign: (
165
+ b: OperatorNodeParameter,
166
+ ) => this;
167
+
168
+ greaterThanEqual: (
169
+ b: OperatorNodeParameter,
170
+ ) => OperatorNode;
171
+ greaterThanEqualAssign: (
172
+ b: OperatorNodeParameter,
173
+ ) => this;
174
+
175
+ and: (
176
+ b: OperatorNodeParameter,
177
+ ...params: OperatorNodeParameter[]
178
+ ) => OperatorNode;
179
+ andAssign: (
180
+ b: OperatorNodeParameter,
181
+ ...params: OperatorNodeParameter[]
182
+ ) => this;
183
+
184
+ or: (
185
+ b: OperatorNodeParameter,
186
+ ...params: OperatorNodeParameter[]
187
+ ) => OperatorNode;
188
+ orAssign: (
189
+ b: OperatorNodeParameter,
190
+ ...params: OperatorNodeParameter[]
191
+ ) => this;
192
+
193
+ not: () => OperatorNode;
194
+ notAssign: () => this;
195
+
196
+ xor: (
197
+ b: OperatorNodeParameter,
198
+ ) => OperatorNode;
199
+ xorAssign: (
200
+ b: OperatorNodeParameter,
201
+ ) => this;
202
+
203
+ bitAnd: (
204
+ b: OperatorNodeParameter,
205
+ ) => OperatorNode;
206
+ bitAndAssign: (
207
+ b: OperatorNodeParameter,
208
+ ) => this;
209
+
210
+ bitNot: (
211
+ b: OperatorNodeParameter,
212
+ ) => OperatorNode;
213
+ bitNotAssign: (
214
+ b: OperatorNodeParameter,
215
+ ) => this;
216
+
217
+ bitOr: (
218
+ b: OperatorNodeParameter,
219
+ ) => OperatorNode;
220
+ bitOrAssign: (
221
+ b: OperatorNodeParameter,
222
+ ) => this;
223
+
224
+ bitXor: (
225
+ b: OperatorNodeParameter,
226
+ ) => OperatorNode;
227
+ bitXorAssign: (
228
+ b: OperatorNodeParameter,
229
+ ) => this;
230
+
231
+ shiftLeft: (
232
+ b: OperatorNodeParameter,
233
+ ) => OperatorNode;
234
+ shiftLeftAssign: (
235
+ b: OperatorNodeParameter,
236
+ ) => this;
237
+
238
+ shiftRight: (
239
+ b: OperatorNodeParameter,
240
+ ) => OperatorNode;
241
+ shiftRightAssign: (
242
+ b: OperatorNodeParameter,
243
+ ) => this;
244
+
245
+ incrementBefore: () => OperatorNode;
246
+ incrementBeforeAssign: () => this;
247
+
248
+ decrementBefore: () => OperatorNode;
249
+ decrementBeforeAssign: () => this;
250
+
251
+ increment: () => OperatorNode;
252
+ incrementAssign: () => this;
253
+
254
+ decrement: () => OperatorNode;
255
+ decrementAssign: () => this;
116
256
  }
117
257
  }
118
258
 
119
259
  /**
120
260
  * @deprecated "modInt()" is deprecated. Use "mod( int( ... ) )" instead.
121
261
  */
122
- export const modInt: (a: OperatorNodeParameter, b: OperatorNodeParameter) => ShaderNodeObject<OperatorNode>;
262
+ export const modInt: (a: OperatorNodeParameter, b: OperatorNodeParameter) => OperatorNode;
123
263
 
124
- declare module "../tsl/TSLCore.js" {
125
- interface NodeElements {
264
+ declare module "../Nodes.js" {
265
+ interface Nodes {
266
+ /**
267
+ * @deprecated "modInt()" is deprecated. Use "mod( int( ... ) )" instead.
268
+ */
269
+ modInt: (b: OperatorNodeParameter) => OperatorNode;
126
270
  /**
127
271
  * @deprecated "modInt()" is deprecated. Use "mod( int( ... ) )" instead.
128
272
  */
129
- modInt: typeof modInt;
273
+ modIntAssign: (b: OperatorNodeParameter) => this;
130
274
  }
131
275
  }