babylonjs-gui 9.13.0 → 9.14.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.
@@ -1,4 +1,10 @@
1
1
 
2
+ declare module "babylonjs-gui/pure" {
3
+ /** Pure barrel — re-exports only side-effect-free modules */
4
+ export * from "babylonjs-gui/2D/pure";
5
+ export * from "babylonjs-gui/3D/pure";
6
+
7
+ }
2
8
  declare module "babylonjs-gui/index" {
3
9
  export * from "babylonjs-gui/2D/index";
4
10
  export * from "babylonjs-gui/3D/index";
@@ -26,6 +32,15 @@ export class Vector3WithInfo extends Vector3 {
26
32
  buttonIndex?: number);
27
33
  }
28
34
 
35
+ }
36
+ declare module "babylonjs-gui/3D/pure" {
37
+ /** Pure barrel — re-exports only side-effect-free modules */
38
+ export * from "babylonjs-gui/3D/controls/pure";
39
+ export * from "babylonjs-gui/3D/materials/pure";
40
+ export * from "babylonjs-gui/3D/gizmos/pure";
41
+ export * from "babylonjs-gui/3D/gui3DManager";
42
+ export * from "babylonjs-gui/3D/vector3WithInfo";
43
+
29
44
  }
30
45
  declare module "babylonjs-gui/3D/index" {
31
46
  export * from "babylonjs-gui/3D/controls/index";
@@ -131,6 +146,15 @@ export class GUI3DManager implements IDisposable {
131
146
  dispose(): void;
132
147
  }
133
148
 
149
+ }
150
+ declare module "babylonjs-gui/3D/materials/pure" {
151
+ /** Pure barrel — re-exports only side-effect-free modules */
152
+ export * from "babylonjs-gui/3D/materials/fluent/pure";
153
+ export * from "babylonjs-gui/3D/materials/fluentButton/pure";
154
+ export * from "babylonjs-gui/3D/materials/fluentBackplate/pure";
155
+ export * from "babylonjs-gui/3D/materials/handle/pure";
156
+ export * from "babylonjs-gui/3D/materials/mrdl/pure";
157
+
134
158
  }
135
159
  declare module "babylonjs-gui/3D/materials/index" {
136
160
  export * from "babylonjs-gui/3D/materials/fluent/index";
@@ -147,20 +171,28 @@ declare module "babylonjs-gui/3D/materials/fluentMaterial" {
147
171
  export { FluentMaterial } from "babylonjs-gui/3D/materials/fluent/fluentMaterial";
148
172
 
149
173
  }
150
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderThumbMaterial" {
174
+ declare module "babylonjs-gui/3D/materials/mrdl/pure" {
175
+ /** Pure barrel — re-exports only side-effect-free modules */
176
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlSliderBarMaterial.pure";
177
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlSliderThumbMaterial.pure";
178
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlBackplateMaterial.pure";
179
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlBackglowMaterial.pure";
180
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlFrontplateMaterial.pure";
181
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlInnerquadMaterial.pure";
182
+
183
+ }
184
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderThumbMaterial.pure" {
151
185
  import { Nullable } from "babylonjs/types";
152
- import { Matrix, Vector2, Vector3, Vector4 } from "babylonjs/Maths/math.vector";
186
+ import { Matrix, Vector2, Vector3, Vector4 } from "babylonjs/Maths/math.vector.pure";
153
187
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
154
188
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
155
- import { Texture } from "babylonjs/Materials/Textures/texture";
189
+ import { Texture } from "babylonjs/Materials/Textures/texture.pure";
156
190
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
157
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
191
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
158
192
  import { SubMesh } from "babylonjs/Meshes/subMesh";
159
193
  import { Mesh } from "babylonjs/Meshes/mesh";
160
194
  import { Scene } from "babylonjs/scene";
161
- import { Color4 } from "babylonjs/Maths/math.color";
162
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment";
163
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex";
195
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
164
196
  /**
165
197
  * Class used to render Slider Thumb material with MRDL
166
198
  */
@@ -482,24 +514,44 @@ export class MRDLSliderThumbMaterial extends PushMaterial {
482
514
  clone(name: string): MRDLSliderThumbMaterial;
483
515
  serialize(): any;
484
516
  getClassName(): string;
517
+ /**
518
+ * Parses a serialized MRDLSliderThumbMaterial and returns a new instance.
519
+ * @param source - the serialized object
520
+ * @param scene - defines the hosting scene
521
+ * @param rootUrl - the root URL used to load any associated textures
522
+ * @returns a new MRDLSliderThumbMaterial
523
+ */
485
524
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderThumbMaterial;
486
525
  }
526
+ /**
527
+ * Registers the MRDLSliderThumbMaterial class with the type store for serialization support.
528
+ * Safe to call multiple times; only the first call has an effect.
529
+ */
530
+ export function RegisterMRDLSliderThumbMaterial(): void;
487
531
 
488
532
  }
489
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderBarMaterial" {
533
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderThumbMaterial" {
534
+ /**
535
+ * Re-exports the pure implementation and applies the runtime registration side effect.
536
+ * Import "./mrdlSliderThumbMaterial.pure" for tree-shakeable, side-effect-free usage.
537
+ */
538
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlSliderThumbMaterial.pure";
539
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment";
540
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex";
541
+
542
+ }
543
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderBarMaterial.pure" {
490
544
  import { Nullable } from "babylonjs/types";
491
- import { Matrix, Vector2, Vector3, Vector4 } from "babylonjs/Maths/math.vector";
545
+ import { Matrix, Vector2, Vector3, Vector4 } from "babylonjs/Maths/math.vector.pure";
492
546
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
493
547
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
494
- import { Texture } from "babylonjs/Materials/Textures/texture";
548
+ import { Texture } from "babylonjs/Materials/Textures/texture.pure";
495
549
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
496
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
550
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
497
551
  import { SubMesh } from "babylonjs/Meshes/subMesh";
498
552
  import { Mesh } from "babylonjs/Meshes/mesh";
499
553
  import { Scene } from "babylonjs/scene";
500
- import { Color4 } from "babylonjs/Maths/math.color";
501
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderBar.fragment";
502
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderBar.vertex";
554
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
503
555
  /**
504
556
  * Class used to render Slider Bar material with MRDL
505
557
  */
@@ -821,23 +873,43 @@ export class MRDLSliderBarMaterial extends PushMaterial {
821
873
  clone(name: string): MRDLSliderBarMaterial;
822
874
  serialize(): any;
823
875
  getClassName(): string;
876
+ /**
877
+ * Parses a serialized MRDLSliderBarMaterial and returns a new instance.
878
+ * @param source - the serialized object
879
+ * @param scene - defines the hosting scene
880
+ * @param rootUrl - the root URL used to load any associated textures
881
+ * @returns a new MRDLSliderBarMaterial
882
+ */
824
883
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLSliderBarMaterial;
825
884
  }
885
+ /**
886
+ * Registers the MRDLSliderBarMaterial class with the type store for serialization support.
887
+ * Safe to call multiple times; only the first call has an effect.
888
+ */
889
+ export function RegisterMRDLSliderBarMaterial(): void;
826
890
 
827
891
  }
828
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlInnerquadMaterial" {
829
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
892
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlSliderBarMaterial" {
893
+ /**
894
+ * Re-exports the pure implementation and applies the runtime registration side effect.
895
+ * Import "./mrdlSliderBarMaterial.pure" for tree-shakeable, side-effect-free usage.
896
+ */
897
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlSliderBarMaterial.pure";
898
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderBar.fragment";
899
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlSliderBar.vertex";
900
+
901
+ }
902
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlInnerquadMaterial.pure" {
903
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
830
904
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
831
905
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
832
- import { Matrix } from "babylonjs/Maths/math.vector";
906
+ import { Matrix } from "babylonjs/Maths/math.vector.pure";
833
907
  import { Mesh } from "babylonjs/Meshes/mesh";
834
908
  import { Nullable } from "babylonjs/types";
835
909
  import { Scene } from "babylonjs/scene";
836
910
  import { SubMesh } from "babylonjs/Meshes/subMesh";
837
- import { Color4 } from "babylonjs/Maths/math.color";
911
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
838
912
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
839
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlInnerquad.fragment";
840
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlInnerquad.vertex";
841
913
  export class MRDLInnerquadMaterial extends PushMaterial {
842
914
  /**
843
915
  * Gets or sets the color of the innerquad.
@@ -882,21 +954,34 @@ export class MRDLInnerquadMaterial extends PushMaterial {
882
954
  getClassName(): string;
883
955
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLInnerquadMaterial;
884
956
  }
957
+ /**
958
+ * Registers the MRDLInnerquadMaterial class with the type store for serialization support.
959
+ * Safe to call multiple times; only the first call has an effect.
960
+ */
961
+ export function RegisterMRDLInnerquadMaterial(): void;
885
962
 
886
963
  }
887
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlFrontplateMaterial" {
888
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
964
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlInnerquadMaterial" {
965
+ /**
966
+ * Re-exports the pure implementation and applies the runtime registration side effect.
967
+ * Import "./mrdlInnerquadMaterial.pure" for tree-shakeable, side-effect-free usage.
968
+ */
969
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlInnerquadMaterial.pure";
970
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlInnerquad.fragment";
971
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlInnerquad.vertex";
972
+
973
+ }
974
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlFrontplateMaterial.pure" {
975
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
889
976
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
890
977
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
891
- import { Matrix, Vector3 } from "babylonjs/Maths/math.vector";
978
+ import { Matrix, Vector3 } from "babylonjs/Maths/math.vector.pure";
892
979
  import { Mesh } from "babylonjs/Meshes/mesh";
893
980
  import { Nullable } from "babylonjs/types";
894
981
  import { Scene } from "babylonjs/scene";
895
982
  import { SubMesh } from "babylonjs/Meshes/subMesh";
896
- import { Color4 } from "babylonjs/Maths/math.color";
983
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
897
984
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
898
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlFrontplate.fragment";
899
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlFrontplate.vertex";
900
985
  export class MRDLFrontplateMaterial extends PushMaterial {
901
986
  /**
902
987
  * Gets or sets the corner radius on the frontplate. If this value is changed, update the lineWidth to match.
@@ -1070,21 +1155,34 @@ export class MRDLFrontplateMaterial extends PushMaterial {
1070
1155
  getClassName(): string;
1071
1156
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLFrontplateMaterial;
1072
1157
  }
1158
+ /**
1159
+ * Registers the MRDLFrontplateMaterial class with the type store for serialization support.
1160
+ * Safe to call multiple times; only the first call has an effect.
1161
+ */
1162
+ export function RegisterMRDLFrontplateMaterial(): void;
1073
1163
 
1074
1164
  }
1075
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackplateMaterial" {
1165
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlFrontplateMaterial" {
1166
+ /**
1167
+ * Re-exports the pure implementation and applies the runtime registration side effect.
1168
+ * Import "./mrdlFrontplateMaterial.pure" for tree-shakeable, side-effect-free usage.
1169
+ */
1170
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlFrontplateMaterial.pure";
1171
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlFrontplate.fragment";
1172
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlFrontplate.vertex";
1173
+
1174
+ }
1175
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackplateMaterial.pure" {
1076
1176
  import { Nullable } from "babylonjs/types";
1077
- import { Matrix, Vector4 } from "babylonjs/Maths/math.vector";
1177
+ import { Matrix, Vector4 } from "babylonjs/Maths/math.vector.pure";
1078
1178
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
1079
1179
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
1080
1180
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
1081
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
1181
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
1082
1182
  import { SubMesh } from "babylonjs/Meshes/subMesh";
1083
1183
  import { Mesh } from "babylonjs/Meshes/mesh";
1084
1184
  import { Scene } from "babylonjs/scene";
1085
- import { Color4 } from "babylonjs/Maths/math.color";
1086
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackplate.fragment";
1087
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackplate.vertex";
1185
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
1088
1186
  /**
1089
1187
  * Class used to render backplate material with MRDL
1090
1188
  */
@@ -1218,23 +1316,43 @@ export class MRDLBackplateMaterial extends PushMaterial {
1218
1316
  clone(name: string): MRDLBackplateMaterial;
1219
1317
  serialize(): any;
1220
1318
  getClassName(): string;
1319
+ /**
1320
+ * Parses a serialized MRDLBackplateMaterial and returns a new instance.
1321
+ * @param source - the serialized object
1322
+ * @param scene - defines the hosting scene
1323
+ * @param rootUrl - the root URL used to load any associated textures
1324
+ * @returns a new MRDLBackplateMaterial
1325
+ */
1221
1326
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLBackplateMaterial;
1222
1327
  }
1328
+ /**
1329
+ * Registers the MRDLBackplateMaterial class with the type store for serialization support.
1330
+ * Safe to call multiple times; only the first call has an effect.
1331
+ */
1332
+ export function RegisterMRDLBackplateMaterial(): void;
1223
1333
 
1224
1334
  }
1225
- declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackglowMaterial" {
1226
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
1335
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackplateMaterial" {
1336
+ /**
1337
+ * Re-exports the pure implementation and applies the runtime registration side effect.
1338
+ * Import "./mrdlBackplateMaterial.pure" for tree-shakeable, side-effect-free usage.
1339
+ */
1340
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlBackplateMaterial.pure";
1341
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackplate.fragment";
1342
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackplate.vertex";
1343
+
1344
+ }
1345
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackglowMaterial.pure" {
1346
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
1227
1347
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
1228
1348
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
1229
- import { Matrix } from "babylonjs/Maths/math.vector";
1349
+ import { Matrix } from "babylonjs/Maths/math.vector.pure";
1230
1350
  import { Mesh } from "babylonjs/Meshes/mesh";
1231
1351
  import { Nullable } from "babylonjs/types";
1232
1352
  import { Scene } from "babylonjs/scene";
1233
1353
  import { SubMesh } from "babylonjs/Meshes/subMesh";
1234
- import { Color4 } from "babylonjs/Maths/math.color";
1354
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
1235
1355
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
1236
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackglow.fragment";
1237
- import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackglow.vertex";
1238
1356
  export class MRDLBackglowMaterial extends PushMaterial {
1239
1357
  /**
1240
1358
  * Gets or sets the bevel radius on the backglow. If this value is changed, update the lineWidth to match.
@@ -1310,6 +1428,21 @@ export class MRDLBackglowMaterial extends PushMaterial {
1310
1428
  getClassName(): string;
1311
1429
  static Parse(source: any, scene: Scene, rootUrl: string): MRDLBackglowMaterial;
1312
1430
  }
1431
+ /**
1432
+ * Registers the MRDLBackglowMaterial class with the type store for serialization support.
1433
+ * Safe to call multiple times; only the first call has an effect.
1434
+ */
1435
+ export function RegisterMRDLBackglowMaterial(): void;
1436
+
1437
+ }
1438
+ declare module "babylonjs-gui/3D/materials/mrdl/mrdlBackglowMaterial" {
1439
+ /**
1440
+ * Re-exports the pure implementation and applies the runtime registration side effect.
1441
+ * Import "./mrdlBackglowMaterial.pure" for tree-shakeable, side-effect-free usage.
1442
+ */
1443
+ export * from "babylonjs-gui/3D/materials/mrdl/mrdlBackglowMaterial.pure";
1444
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackglow.fragment";
1445
+ import "babylonjs-gui/3D/materials/mrdl/shaders/mrdlBackglow.vertex";
1313
1446
 
1314
1447
  }
1315
1448
  declare module "babylonjs-gui/3D/materials/mrdl/index" {
@@ -1413,18 +1546,21 @@ export const mrdlBackglowPixelShader: {
1413
1546
  shader: string;
1414
1547
  };
1415
1548
 
1549
+ }
1550
+ declare module "babylonjs-gui/3D/materials/handle/pure" {
1551
+ /** Pure barrel — re-exports only side-effect-free modules */
1552
+ export * from "babylonjs-gui/3D/materials/handle/handleMaterial.pure";
1553
+
1416
1554
  }
1417
1555
  declare module "babylonjs-gui/3D/materials/handle/index" {
1418
1556
  export * from "babylonjs-gui/3D/materials/handle/handleMaterial";
1419
1557
 
1420
1558
  }
1421
- declare module "babylonjs-gui/3D/materials/handle/handleMaterial" {
1422
- import { ShaderMaterial } from "babylonjs/Materials/shaderMaterial";
1559
+ declare module "babylonjs-gui/3D/materials/handle/handleMaterial.pure" {
1560
+ import { ShaderMaterial } from "babylonjs/Materials/shaderMaterial.pure";
1423
1561
  import { Scene } from "babylonjs/scene";
1424
- import { Color3 } from "babylonjs/Maths/math.color";
1425
- import { Vector3 } from "babylonjs/Maths/math.vector";
1426
- import "babylonjs-gui/3D/materials/handle/shaders/handle.vertex";
1427
- import "babylonjs-gui/3D/materials/handle/shaders/handle.fragment";
1562
+ import { Color3 } from "babylonjs/Maths/math.color.pure";
1563
+ import { Vector3 } from "babylonjs/Maths/math.vector.pure";
1428
1564
  /**
1429
1565
  * Class used to render gizmo handles with fluent design
1430
1566
  */
@@ -1488,6 +1624,16 @@ export class HandleMaterial extends ShaderMaterial {
1488
1624
  dispose(): void;
1489
1625
  }
1490
1626
 
1627
+ }
1628
+ declare module "babylonjs-gui/3D/materials/handle/handleMaterial" {
1629
+ /**
1630
+ * Re-exports the pure implementation and applies the runtime registration side effect.
1631
+ * Import "./handleMaterial.pure" for tree-shakeable, side-effect-free usage.
1632
+ */
1633
+ export * from "babylonjs-gui/3D/materials/handle/handleMaterial.pure";
1634
+ import "babylonjs-gui/3D/materials/handle/shaders/handle.vertex";
1635
+ import "babylonjs-gui/3D/materials/handle/shaders/handle.fragment";
1636
+
1491
1637
  }
1492
1638
  declare module "babylonjs-gui/3D/materials/handle/wgsl/handle.vertex" {
1493
1639
  /** @internal */
@@ -1520,24 +1666,27 @@ export const handlePixelShader: {
1520
1666
  shader: string;
1521
1667
  };
1522
1668
 
1669
+ }
1670
+ declare module "babylonjs-gui/3D/materials/fluentButton/pure" {
1671
+ /** Pure barrel — re-exports only side-effect-free modules */
1672
+ export * from "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial.pure";
1673
+
1523
1674
  }
1524
1675
  declare module "babylonjs-gui/3D/materials/fluentButton/index" {
1525
1676
  export * from "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial";
1526
1677
 
1527
1678
  }
1528
- declare module "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial" {
1679
+ declare module "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial.pure" {
1529
1680
  import { Nullable } from "babylonjs/types";
1530
- import { Matrix, Vector3 } from "babylonjs/Maths/math.vector";
1681
+ import { Matrix, Vector3 } from "babylonjs/Maths/math.vector.pure";
1531
1682
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
1532
1683
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
1533
1684
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
1534
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
1685
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
1535
1686
  import { SubMesh } from "babylonjs/Meshes/subMesh";
1536
1687
  import { Mesh } from "babylonjs/Meshes/mesh";
1537
1688
  import { Scene } from "babylonjs/scene";
1538
- import { Color4 } from "babylonjs/Maths/math.color";
1539
- import "babylonjs-gui/3D/materials/fluentButton/shaders/fluentButton.fragment";
1540
- import "babylonjs-gui/3D/materials/fluentButton/shaders/fluentButton.vertex";
1689
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
1541
1690
  /**
1542
1691
  * Class used to render square buttons with fluent design
1543
1692
  * @since 5.0.0
@@ -1728,6 +1877,21 @@ export class FluentButtonMaterial extends PushMaterial {
1728
1877
  */
1729
1878
  static Parse(source: any, scene: Scene, rootUrl: string): FluentButtonMaterial;
1730
1879
  }
1880
+ /**
1881
+ * Registers the FluentButtonMaterial class with the type store for serialization support.
1882
+ * Safe to call multiple times; only the first call has an effect.
1883
+ */
1884
+ export function RegisterFluentButtonMaterial(): void;
1885
+
1886
+ }
1887
+ declare module "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial" {
1888
+ /**
1889
+ * Re-exports the pure implementation and applies the runtime registration side effect.
1890
+ * Import "./fluentButtonMaterial.pure" for tree-shakeable, side-effect-free usage.
1891
+ */
1892
+ export * from "babylonjs-gui/3D/materials/fluentButton/fluentButtonMaterial.pure";
1893
+ import "babylonjs-gui/3D/materials/fluentButton/shaders/fluentButton.fragment";
1894
+ import "babylonjs-gui/3D/materials/fluentButton/shaders/fluentButton.vertex";
1731
1895
 
1732
1896
  }
1733
1897
  declare module "babylonjs-gui/3D/materials/fluentButton/wgsl/fluentButton.vertex" {
@@ -1761,24 +1925,27 @@ export const fluentButtonPixelShader: {
1761
1925
  shader: string;
1762
1926
  };
1763
1927
 
1928
+ }
1929
+ declare module "babylonjs-gui/3D/materials/fluentBackplate/pure" {
1930
+ /** Pure barrel — re-exports only side-effect-free modules */
1931
+ export * from "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial.pure";
1932
+
1764
1933
  }
1765
1934
  declare module "babylonjs-gui/3D/materials/fluentBackplate/index" {
1766
1935
  export * from "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial";
1767
1936
 
1768
1937
  }
1769
- declare module "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial" {
1938
+ declare module "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial.pure" {
1770
1939
  import { Nullable } from "babylonjs/types";
1771
- import { Matrix, Vector3, Vector4 } from "babylonjs/Maths/math.vector";
1940
+ import { Matrix, Vector3, Vector4 } from "babylonjs/Maths/math.vector.pure";
1772
1941
  import { IAnimatable } from "babylonjs/Animations/animatable.interface";
1773
1942
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
1774
1943
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
1775
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
1944
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
1776
1945
  import { SubMesh } from "babylonjs/Meshes/subMesh";
1777
1946
  import { Mesh } from "babylonjs/Meshes/mesh";
1778
1947
  import { Scene } from "babylonjs/scene";
1779
- import { Color4 } from "babylonjs/Maths/math.color";
1780
- import "babylonjs-gui/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment";
1781
- import "babylonjs-gui/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex";
1948
+ import { Color4 } from "babylonjs/Maths/math.color.pure";
1782
1949
  /**
1783
1950
  * Class used to render square buttons with fluent design
1784
1951
  */
@@ -1933,6 +2100,21 @@ export class FluentBackplateMaterial extends PushMaterial {
1933
2100
  */
1934
2101
  static Parse(source: any, scene: Scene, rootUrl: string): FluentBackplateMaterial;
1935
2102
  }
2103
+ /**
2104
+ * Registers the FluentBackplateMaterial class with the type store for serialization support.
2105
+ * Safe to call multiple times; only the first call has an effect.
2106
+ */
2107
+ export function RegisterFluentBackplateMaterial(): void;
2108
+
2109
+ }
2110
+ declare module "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial" {
2111
+ /**
2112
+ * Re-exports the pure implementation and applies the runtime registration side effect.
2113
+ * Import "./fluentBackplateMaterial.pure" for tree-shakeable, side-effect-free usage.
2114
+ */
2115
+ export * from "babylonjs-gui/3D/materials/fluentBackplate/fluentBackplateMaterial.pure";
2116
+ import "babylonjs-gui/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment";
2117
+ import "babylonjs-gui/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex";
1936
2118
 
1937
2119
  }
1938
2120
  declare module "babylonjs-gui/3D/materials/fluentBackplate/wgsl/fluentBackplate.vertex" {
@@ -1966,24 +2148,27 @@ export const fluentBackplatePixelShader: {
1966
2148
  shader: string;
1967
2149
  };
1968
2150
 
2151
+ }
2152
+ declare module "babylonjs-gui/3D/materials/fluent/pure" {
2153
+ /** Pure barrel — re-exports only side-effect-free modules */
2154
+ export * from "babylonjs-gui/3D/materials/fluent/fluentMaterial.pure";
2155
+
1969
2156
  }
1970
2157
  declare module "babylonjs-gui/3D/materials/fluent/index" {
1971
2158
  export * from "babylonjs-gui/3D/materials/fluent/fluentMaterial";
1972
2159
 
1973
2160
  }
1974
- declare module "babylonjs-gui/3D/materials/fluent/fluentMaterial" {
2161
+ declare module "babylonjs-gui/3D/materials/fluent/fluentMaterial.pure" {
1975
2162
  import { Nullable } from "babylonjs/types";
1976
- import { Matrix, Vector3 } from "babylonjs/Maths/math.vector";
2163
+ import { Matrix, Vector3 } from "babylonjs/Maths/math.vector.pure";
1977
2164
  import { BaseTexture } from "babylonjs/Materials/Textures/baseTexture";
1978
2165
  import { MaterialDefines } from "babylonjs/Materials/materialDefines";
1979
2166
  import { PushMaterial } from "babylonjs/Materials/pushMaterial";
1980
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
2167
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
1981
2168
  import { SubMesh } from "babylonjs/Meshes/subMesh";
1982
2169
  import { Mesh } from "babylonjs/Meshes/mesh";
1983
2170
  import { Scene } from "babylonjs/scene";
1984
- import { Color3, Color4 } from "babylonjs/Maths/math.color";
1985
- import "babylonjs-gui/3D/materials/fluent/shaders/fluent.vertex";
1986
- import "babylonjs-gui/3D/materials/fluent/shaders/fluent.fragment";
2171
+ import { Color3, Color4 } from "babylonjs/Maths/math.color.pure";
1987
2172
  /** @internal */
1988
2173
  export class FluentMaterialDefines extends MaterialDefines {
1989
2174
  INNERGLOW: boolean;
@@ -2074,6 +2259,21 @@ export class FluentMaterial extends PushMaterial {
2074
2259
  */
2075
2260
  static Parse(source: any, scene: Scene, rootUrl: string): FluentMaterial;
2076
2261
  }
2262
+ /**
2263
+ * Registers the FluentMaterial class with the type store for serialization support.
2264
+ * Safe to call multiple times; only the first call has an effect.
2265
+ */
2266
+ export function RegisterFluentMaterial(): void;
2267
+
2268
+ }
2269
+ declare module "babylonjs-gui/3D/materials/fluent/fluentMaterial" {
2270
+ /**
2271
+ * Re-exports the pure implementation and applies the runtime registration side effect.
2272
+ * Import "./fluentMaterial.pure" for tree-shakeable, side-effect-free usage.
2273
+ */
2274
+ export * from "babylonjs-gui/3D/materials/fluent/fluentMaterial.pure";
2275
+ import "babylonjs-gui/3D/materials/fluent/shaders/fluent.vertex";
2276
+ import "babylonjs-gui/3D/materials/fluent/shaders/fluent.fragment";
2077
2277
 
2078
2278
  }
2079
2279
  declare module "babylonjs-gui/3D/materials/fluent/wgsl/fluent.vertex" {
@@ -2167,6 +2367,12 @@ export class SlateGizmo extends Gizmo {
2167
2367
  dispose(): void;
2168
2368
  }
2169
2369
 
2370
+ }
2371
+ declare module "babylonjs-gui/3D/gizmos/pure" {
2372
+ /** Pure barrel — re-exports only side-effect-free modules */
2373
+ export * from "babylonjs-gui/3D/gizmos/slateGizmo";
2374
+ export * from "babylonjs-gui/3D/gizmos/gizmoHandle";
2375
+
2170
2376
  }
2171
2377
  declare module "babylonjs-gui/3D/gizmos/index" {
2172
2378
  export * from "babylonjs-gui/3D/gizmos/slateGizmo";
@@ -2784,6 +2990,32 @@ export class ScatterPanel extends VolumeBasedPanel {
2784
2990
  protected _finalProcessing(): void;
2785
2991
  }
2786
2992
 
2993
+ }
2994
+ declare module "babylonjs-gui/3D/controls/pure" {
2995
+ /** Pure barrel — re-exports only side-effect-free modules */
2996
+ export * from "babylonjs-gui/3D/controls/abstractButton3D";
2997
+ export * from "babylonjs-gui/3D/controls/button3D";
2998
+ export * from "babylonjs-gui/3D/controls/container3D";
2999
+ export * from "babylonjs-gui/3D/controls/control3D";
3000
+ export * from "babylonjs-gui/3D/controls/cylinderPanel";
3001
+ export * from "babylonjs-gui/3D/controls/handMenu";
3002
+ export * from "babylonjs-gui/3D/controls/holographicBackplate";
3003
+ export * from "babylonjs-gui/3D/controls/holographicButton";
3004
+ export * from "babylonjs-gui/3D/controls/holographicSlate";
3005
+ export * from "babylonjs-gui/3D/controls/meshButton3D";
3006
+ export * from "babylonjs-gui/3D/controls/nearMenu";
3007
+ export * from "babylonjs-gui/3D/controls/planePanel";
3008
+ export * from "babylonjs-gui/3D/controls/scatterPanel";
3009
+ export * from "babylonjs-gui/3D/controls/slider3D";
3010
+ export * from "babylonjs-gui/3D/controls/spherePanel";
3011
+ export * from "babylonjs-gui/3D/controls/stackPanel3D";
3012
+ export * from "babylonjs-gui/3D/controls/touchButton3D";
3013
+ export * from "babylonjs-gui/3D/controls/touchMeshButton3D";
3014
+ export * from "babylonjs-gui/3D/controls/touchHolographicButton";
3015
+ export * from "babylonjs-gui/3D/controls/touchHolographicMenu";
3016
+ export * from "babylonjs-gui/3D/controls/volumeBasedPanel";
3017
+ export { TouchHolographicButton as TouchHolographicButtonV3 } from "babylonjs-gui/3D/controls/MRTK3/touchHolographicButton";
3018
+
2787
3019
  }
2788
3020
  declare module "babylonjs-gui/3D/controls/planePanel" {
2789
3021
  import { Vector3 } from "babylonjs/Maths/math.vector";
@@ -4100,6 +4332,22 @@ export class Style implements IDisposable {
4100
4332
  dispose(): void;
4101
4333
  }
4102
4334
 
4335
+ }
4336
+ declare module "babylonjs-gui/2D/pure" {
4337
+ /** Pure barrel — re-exports only side-effect-free modules */
4338
+ export * from "babylonjs-gui/2D/controls/pure";
4339
+ export * from "babylonjs-gui/2D/advancedDynamicTexture";
4340
+ export * from "babylonjs-gui/2D/adtInstrumentation";
4341
+ export * from "babylonjs-gui/2D/math2D";
4342
+ export * from "babylonjs-gui/2D/measure";
4343
+ export * from "babylonjs-gui/2D/multiLinePoint";
4344
+ export * from "babylonjs-gui/2D/FrameGraph/guiTask";
4345
+ export * from "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock.pure";
4346
+ export * from "babylonjs-gui/2D/style";
4347
+ export * from "babylonjs-gui/2D/valueAndUnit";
4348
+ export * from "babylonjs-gui/2D/xmlLoader";
4349
+ export * from "babylonjs-gui/2D/FrameGraph/pure";
4350
+
4103
4351
  }
4104
4352
  declare module "babylonjs-gui/2D/multiLinePoint" {
4105
4353
  import { Nullable } from "babylonjs/types";
@@ -4988,13 +5236,13 @@ export class AdvancedDynamicTextureInstrumentation implements IDisposable {
4988
5236
  }
4989
5237
 
4990
5238
  }
4991
- declare module "babylonjs-gui/2D/controls/virtualKeyboard" {
5239
+ declare module "babylonjs-gui/2D/controls/virtualKeyboard.pure" {
4992
5240
  import { Nullable } from "babylonjs/types";
4993
5241
  import { Observable } from "babylonjs/Misc/observable";
4994
- import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel";
4995
- import { InputText } from "babylonjs-gui/2D/controls/inputText";
5242
+ import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel.pure";
5243
+ import { InputText } from "babylonjs-gui/2D/controls/inputText.pure";
4996
5244
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
4997
- import { InputTextArea } from "babylonjs-gui/2D/controls/inputTextArea";
5245
+ import { InputTextArea } from "babylonjs-gui/2D/controls/inputTextArea.pure";
4998
5246
  /**
4999
5247
  * Class used to store key control properties
5000
5248
  */
@@ -5091,13 +5339,26 @@ export class VirtualKeyboard extends StackPanel {
5091
5339
  */
5092
5340
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
5093
5341
  }
5342
+ /**
5343
+ * Registers the VirtualKeyboard class with the type store for serialization support.
5344
+ * Safe to call multiple times; only the first call has an effect.
5345
+ */
5346
+ export function RegisterVirtualKeyboard(): void;
5347
+
5348
+ }
5349
+ declare module "babylonjs-gui/2D/controls/virtualKeyboard" {
5350
+ /**
5351
+ * Re-exports the pure implementation and applies the runtime registration side effect.
5352
+ * Import "./virtualKeyboard.pure" for tree-shakeable, side-effect-free usage.
5353
+ */
5354
+ export * from "babylonjs-gui/2D/controls/virtualKeyboard.pure";
5094
5355
 
5095
5356
  }
5096
- declare module "babylonjs-gui/2D/controls/toggleButton" {
5357
+ declare module "babylonjs-gui/2D/controls/toggleButton.pure" {
5097
5358
  import { Observable } from "babylonjs/Misc/observable";
5098
- import { Vector2 } from "babylonjs/Maths/math.vector";
5099
- import { Rectangle } from "babylonjs-gui/2D/controls/rectangle";
5100
- import { Control } from "babylonjs-gui/2D/controls/control";
5359
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
5360
+ import { Rectangle } from "babylonjs-gui/2D/controls/rectangle.pure";
5361
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
5101
5362
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
5102
5363
  /**
5103
5364
  * Class used to create toggle buttons
@@ -5187,6 +5448,19 @@ export class ToggleButton extends Rectangle {
5187
5448
  */
5188
5449
  _onPointerUp(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, notifyClick: boolean, pi: PointerInfoBase): void;
5189
5450
  }
5451
+ /**
5452
+ * Registers the ToggleButton class with the type store for serialization support.
5453
+ * Safe to call multiple times; only the first call has an effect.
5454
+ */
5455
+ export function RegisterToggleButton(): void;
5456
+
5457
+ }
5458
+ declare module "babylonjs-gui/2D/controls/toggleButton" {
5459
+ /**
5460
+ * Re-exports the pure implementation and applies the runtime registration side effect.
5461
+ * Import "./toggleButton.pure" for tree-shakeable, side-effect-free usage.
5462
+ */
5463
+ export * from "babylonjs-gui/2D/controls/toggleButton.pure";
5190
5464
 
5191
5465
  }
5192
5466
  declare module "babylonjs-gui/2D/controls/textWrapper" {
@@ -5205,10 +5479,10 @@ export class TextWrapper {
5205
5479
  }
5206
5480
 
5207
5481
  }
5208
- declare module "babylonjs-gui/2D/controls/textBlock" {
5482
+ declare module "babylonjs-gui/2D/controls/textBlock.pure" {
5209
5483
  import { Observable } from "babylonjs/Misc/observable";
5210
5484
  import { Measure } from "babylonjs-gui/2D/measure";
5211
- import { Control } from "babylonjs-gui/2D/controls/control";
5485
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
5212
5486
  import { Nullable } from "babylonjs/types";
5213
5487
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
5214
5488
  /**
@@ -5425,19 +5699,45 @@ export class TextBlock extends Control {
5425
5699
  computeExpectedHeight(): number;
5426
5700
  dispose(): void;
5427
5701
  }
5702
+ /**
5703
+ * Registers the TextBlock class with the type store for serialization support.
5704
+ * Safe to call multiple times; only the first call has an effect.
5705
+ */
5706
+ export function RegisterTextBlock(): void;
5428
5707
 
5429
5708
  }
5430
- declare module "babylonjs-gui/2D/controls/statics" {
5709
+ declare module "babylonjs-gui/2D/controls/textBlock" {
5710
+ /**
5711
+ * Re-exports the pure implementation and applies the runtime registration side effect.
5712
+ * Import "./textBlock.pure" for tree-shakeable, side-effect-free usage.
5713
+ */
5714
+ export * from "babylonjs-gui/2D/controls/textBlock.pure";
5715
+
5716
+ }
5717
+ declare module "babylonjs-gui/2D/controls/statics.pure" {
5431
5718
  /**
5432
5719
  * Forcing an export so that this code will execute
5433
5720
  * @internal
5434
5721
  */
5435
5722
  const Name = "Statics";
5436
5723
  export { Name as name };
5724
+ /**
5725
+ * Registers GUI static helpers such as {@link Control.AddHeader}.
5726
+ * Safe to call multiple times; only the first call has an effect.
5727
+ */
5728
+ export function RegisterGUIStatics(): void;
5437
5729
 
5438
5730
  }
5439
- declare module "babylonjs-gui/2D/controls/stackPanel" {
5440
- import { Container } from "babylonjs-gui/2D/controls/container";
5731
+ declare module "babylonjs-gui/2D/controls/statics" {
5732
+ /**
5733
+ * Re-exports the pure implementation and applies the runtime registration side effect.
5734
+ * Import "./statics.pure" for tree-shakeable, side-effect-free usage.
5735
+ */
5736
+ export * from "babylonjs-gui/2D/controls/statics.pure";
5737
+
5738
+ }
5739
+ declare module "babylonjs-gui/2D/controls/stackPanel.pure" {
5740
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
5441
5741
  import { Measure } from "babylonjs-gui/2D/measure";
5442
5742
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
5443
5743
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
@@ -5501,6 +5801,19 @@ export class StackPanel extends Container {
5501
5801
  */
5502
5802
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
5503
5803
  }
5804
+ /**
5805
+ * Registers the StackPanel class with the type store for serialization support.
5806
+ * Safe to call multiple times; only the first call has an effect.
5807
+ */
5808
+ export function RegisterStackPanel(): void;
5809
+
5810
+ }
5811
+ declare module "babylonjs-gui/2D/controls/stackPanel" {
5812
+ /**
5813
+ * Re-exports the pure implementation and applies the runtime registration side effect.
5814
+ * Import "./stackPanel.pure" for tree-shakeable, side-effect-free usage.
5815
+ */
5816
+ export * from "babylonjs-gui/2D/controls/stackPanel.pure";
5504
5817
 
5505
5818
  }
5506
5819
  declare module "babylonjs-gui/2D/controls/selector" {
@@ -5743,8 +6056,8 @@ export class SelectionPanel extends Rectangle {
5743
6056
  }
5744
6057
 
5745
6058
  }
5746
- declare module "babylonjs-gui/2D/controls/rectangle" {
5747
- import { Container } from "babylonjs-gui/2D/controls/container";
6059
+ declare module "babylonjs-gui/2D/controls/rectangle.pure" {
6060
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
5748
6061
  import { Measure } from "babylonjs-gui/2D/measure";
5749
6062
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
5750
6063
  /** Class used to create rectangle container */
@@ -5787,13 +6100,26 @@ export class Rectangle extends Container {
5787
6100
  private _drawRoundedRect;
5788
6101
  protected _clipForChildren(context: ICanvasRenderingContext): void;
5789
6102
  }
6103
+ /**
6104
+ * Registers the Rectangle class with the type store for serialization support.
6105
+ * Safe to call multiple times; only the first call has an effect.
6106
+ */
6107
+ export function RegisterRectangle(): void;
5790
6108
 
5791
6109
  }
5792
- declare module "babylonjs-gui/2D/controls/radioButton" {
6110
+ declare module "babylonjs-gui/2D/controls/rectangle" {
6111
+ /**
6112
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6113
+ * Import "./rectangle.pure" for tree-shakeable, side-effect-free usage.
6114
+ */
6115
+ export * from "babylonjs-gui/2D/controls/rectangle.pure";
6116
+
6117
+ }
6118
+ declare module "babylonjs-gui/2D/controls/radioButton.pure" {
5793
6119
  import { Observable } from "babylonjs/Misc/observable";
5794
- import { Vector2 } from "babylonjs/Maths/math.vector";
5795
- import { Control } from "babylonjs-gui/2D/controls/control";
5796
- import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel";
6120
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
6121
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6122
+ import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel.pure";
5797
6123
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
5798
6124
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
5799
6125
  /**
@@ -5839,11 +6165,65 @@ export class RadioButton extends Control {
5839
6165
  */
5840
6166
  static AddRadioButtonWithHeader(title: string, group: string, isChecked: boolean, onValueChanged: (button: RadioButton, value: boolean) => void): StackPanel;
5841
6167
  }
6168
+ /**
6169
+ * Registers the RadioButton class with the type store for serialization support.
6170
+ * Safe to call multiple times; only the first call has an effect.
6171
+ */
6172
+ export function RegisterRadioButton(): void;
5842
6173
 
5843
6174
  }
5844
- declare module "babylonjs-gui/2D/controls/multiLine" {
5845
- import { AbstractMesh } from "babylonjs/Meshes/abstractMesh";
5846
- import { Control } from "babylonjs-gui/2D/controls/control";
6175
+ declare module "babylonjs-gui/2D/controls/radioButton" {
6176
+ /**
6177
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6178
+ * Import "./radioButton.pure" for tree-shakeable, side-effect-free usage.
6179
+ */
6180
+ export * from "babylonjs-gui/2D/controls/radioButton.pure";
6181
+
6182
+ }
6183
+ declare module "babylonjs-gui/2D/controls/pure" {
6184
+ /** Pure barrel — re-exports only side-effect-free modules */
6185
+ export * from "babylonjs-gui/2D/controls/button.pure";
6186
+ export * from "babylonjs-gui/2D/controls/checkbox.pure";
6187
+ export * from "babylonjs-gui/2D/controls/colorpicker.pure";
6188
+ export * from "babylonjs-gui/2D/controls/container.pure";
6189
+ export * from "babylonjs-gui/2D/controls/control.pure";
6190
+ export * from "babylonjs-gui/2D/controls/ellipse.pure";
6191
+ export * from "babylonjs-gui/2D/controls/focusableButton.pure";
6192
+ export * from "babylonjs-gui/2D/controls/focusableControl";
6193
+ export * from "babylonjs-gui/2D/controls/grid.pure";
6194
+ export * from "babylonjs-gui/2D/controls/image.pure";
6195
+ export * from "babylonjs-gui/2D/controls/inputText.pure";
6196
+ export * from "babylonjs-gui/2D/controls/inputTextArea.pure";
6197
+ export * from "babylonjs-gui/2D/controls/inputPassword.pure";
6198
+ export * from "babylonjs-gui/2D/controls/line.pure";
6199
+ export * from "babylonjs-gui/2D/controls/multiLine.pure";
6200
+ export * from "babylonjs-gui/2D/controls/radioButton.pure";
6201
+ export * from "babylonjs-gui/2D/controls/stackPanel.pure";
6202
+ export * from "babylonjs-gui/2D/controls/selector";
6203
+ export * from "babylonjs-gui/2D/controls/scrollViewers/scrollViewer.pure";
6204
+ export * from "babylonjs-gui/2D/controls/textBlock.pure";
6205
+ export * from "babylonjs-gui/2D/controls/textWrapper";
6206
+ export * from "babylonjs-gui/2D/controls/toggleButton.pure";
6207
+ export * from "babylonjs-gui/2D/controls/virtualKeyboard.pure";
6208
+ export * from "babylonjs-gui/2D/controls/rectangle.pure";
6209
+ export * from "babylonjs-gui/2D/controls/displayGrid.pure";
6210
+ export * from "babylonjs-gui/2D/controls/sliders/baseSlider";
6211
+ export * from "babylonjs-gui/2D/controls/sliders/slider.pure";
6212
+ export * from "babylonjs-gui/2D/controls/sliders/imageBasedSlider.pure";
6213
+ export * from "babylonjs-gui/2D/controls/sliders/scrollBar.pure";
6214
+ export * from "babylonjs-gui/2D/controls/sliders/imageScrollBar";
6215
+ export * from "babylonjs-gui/2D/controls/statics.pure";
6216
+ export * from "babylonjs-gui/2D/controls/gradient/BaseGradient";
6217
+ export * from "babylonjs-gui/2D/controls/gradient/LinearGradient.pure";
6218
+ export * from "babylonjs-gui/2D/controls/gradient/RadialGradient.pure";
6219
+ export * from "babylonjs-gui/2D/controls/gradient/pure";
6220
+ export * from "babylonjs-gui/2D/controls/scrollViewers/pure";
6221
+ export * from "babylonjs-gui/2D/controls/sliders/pure";
6222
+
6223
+ }
6224
+ declare module "babylonjs-gui/2D/controls/multiLine.pure" {
6225
+ import { AbstractMesh } from "babylonjs/Meshes/abstractMesh.pure";
6226
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
5847
6227
  import { MultiLinePoint } from "babylonjs-gui/2D/multiLinePoint";
5848
6228
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
5849
6229
  /**
@@ -5917,12 +6297,25 @@ export class MultiLine extends Control {
5917
6297
  protected _computeAlignment(): void;
5918
6298
  dispose(): void;
5919
6299
  }
6300
+ /**
6301
+ * Registers the MultiLine class with the type store for serialization support.
6302
+ * Safe to call multiple times; only the first call has an effect.
6303
+ */
6304
+ export function RegisterMultiLine(): void;
5920
6305
 
5921
6306
  }
5922
- declare module "babylonjs-gui/2D/controls/line" {
5923
- import { Vector3 } from "babylonjs/Maths/math.vector";
6307
+ declare module "babylonjs-gui/2D/controls/multiLine" {
6308
+ /**
6309
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6310
+ * Import "./multiLine.pure" for tree-shakeable, side-effect-free usage.
6311
+ */
6312
+ export * from "babylonjs-gui/2D/controls/multiLine.pure";
6313
+
6314
+ }
6315
+ declare module "babylonjs-gui/2D/controls/line.pure" {
6316
+ import { Vector3 } from "babylonjs/Maths/math.vector.pure";
5924
6317
  import { Scene } from "babylonjs/scene";
5925
- import { Control } from "babylonjs-gui/2D/controls/control";
6318
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
5926
6319
  import { ValueAndUnit } from "babylonjs-gui/2D/valueAndUnit";
5927
6320
  import { Measure } from "babylonjs-gui/2D/measure";
5928
6321
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
@@ -5994,16 +6387,29 @@ export class Line extends Control {
5994
6387
  */
5995
6388
  _moveToProjectedPosition(projectedPosition: Vector3, end?: boolean): void;
5996
6389
  }
6390
+ /**
6391
+ * Registers the Line class with the type store for serialization support.
6392
+ * Safe to call multiple times; only the first call has an effect.
6393
+ */
6394
+ export function RegisterLine(): void;
5997
6395
 
5998
6396
  }
5999
- declare module "babylonjs-gui/2D/controls/inputTextArea" {
6397
+ declare module "babylonjs-gui/2D/controls/line" {
6398
+ /**
6399
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6400
+ * Import "./line.pure" for tree-shakeable, side-effect-free usage.
6401
+ */
6402
+ export * from "babylonjs-gui/2D/controls/line.pure";
6403
+
6404
+ }
6405
+ declare module "babylonjs-gui/2D/controls/inputTextArea.pure" {
6000
6406
  import { Nullable } from "babylonjs/types";
6001
6407
  import { Observable } from "babylonjs/Misc/observable";
6002
- import { Vector2 } from "babylonjs/Maths/math.vector";
6003
- import { Control } from "babylonjs-gui/2D/controls/control";
6004
- import { VirtualKeyboard } from "babylonjs-gui/2D/controls/virtualKeyboard";
6408
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
6409
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6410
+ import { VirtualKeyboard } from "babylonjs-gui/2D/controls/virtualKeyboard.pure";
6005
6411
  import { Measure } from "babylonjs-gui/2D/measure";
6006
- import { InputText } from "babylonjs-gui/2D/controls/inputText";
6412
+ import { InputText } from "babylonjs-gui/2D/controls/inputText.pure";
6007
6413
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
6008
6414
  import { PointerInfo, PointerInfoBase } from "babylonjs/Events/pointerEvents";
6009
6415
  import { IKeyboardEvent } from "babylonjs/Events/deviceInputEvents";
@@ -6139,17 +6545,30 @@ export class InputTextArea extends InputText {
6139
6545
  selectAllText(): void;
6140
6546
  dispose(): void;
6141
6547
  }
6548
+ /**
6549
+ * Registers the InputTextArea class with the type store for serialization support.
6550
+ * Safe to call multiple times; only the first call has an effect.
6551
+ */
6552
+ export function RegisterInputTextArea(): void;
6142
6553
 
6143
6554
  }
6144
- declare module "babylonjs-gui/2D/controls/inputText" {
6555
+ declare module "babylonjs-gui/2D/controls/inputTextArea" {
6556
+ /**
6557
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6558
+ * Import "./inputTextArea.pure" for tree-shakeable, side-effect-free usage.
6559
+ */
6560
+ export * from "babylonjs-gui/2D/controls/inputTextArea.pure";
6561
+
6562
+ }
6563
+ declare module "babylonjs-gui/2D/controls/inputText.pure" {
6145
6564
  import { Nullable } from "babylonjs/types";
6146
6565
  import { Observer, Observable } from "babylonjs/Misc/observable";
6147
- import { Vector2 } from "babylonjs/Maths/math.vector";
6566
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
6148
6567
  import { ClipboardInfo } from "babylonjs/Events/clipboardEvents";
6149
6568
  import { PointerInfo, PointerInfoBase } from "babylonjs/Events/pointerEvents";
6150
- import { Control } from "babylonjs-gui/2D/controls/control";
6569
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6151
6570
  import { ValueAndUnit } from "babylonjs-gui/2D/valueAndUnit";
6152
- import { VirtualKeyboard } from "babylonjs-gui/2D/controls/virtualKeyboard";
6571
+ import { VirtualKeyboard } from "babylonjs-gui/2D/controls/virtualKeyboard.pure";
6153
6572
  import { TextWrapper } from "babylonjs-gui/2D/controls/textWrapper";
6154
6573
  import { IKeyboardEvent } from "babylonjs/Events/deviceInputEvents";
6155
6574
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
@@ -6346,10 +6765,23 @@ export class InputText extends Control {
6346
6765
  private get isTextHighlightOn();
6347
6766
  dispose(): void;
6348
6767
  }
6768
+ /**
6769
+ * Registers the InputText class with the type store for serialization support.
6770
+ * Safe to call multiple times; only the first call has an effect.
6771
+ */
6772
+ export function RegisterInputText(): void;
6349
6773
 
6350
6774
  }
6351
- declare module "babylonjs-gui/2D/controls/inputPassword" {
6352
- import { InputText } from "babylonjs-gui/2D/controls/inputText";
6775
+ declare module "babylonjs-gui/2D/controls/inputText" {
6776
+ /**
6777
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6778
+ * Import "./inputText.pure" for tree-shakeable, side-effect-free usage.
6779
+ */
6780
+ export * from "babylonjs-gui/2D/controls/inputText.pure";
6781
+
6782
+ }
6783
+ declare module "babylonjs-gui/2D/controls/inputPassword.pure" {
6784
+ import { InputText } from "babylonjs-gui/2D/controls/inputText.pure";
6353
6785
  import { TextWrapper } from "babylonjs-gui/2D/controls/textWrapper";
6354
6786
  /**
6355
6787
  * Class used to create a password control
@@ -6358,6 +6790,19 @@ export class InputPassword extends InputText {
6358
6790
  protected _getTypeName(): string;
6359
6791
  protected _beforeRenderText(textWrapper: TextWrapper): TextWrapper;
6360
6792
  }
6793
+ /**
6794
+ * Registers the InputPassword class with the type store for serialization support.
6795
+ * Safe to call multiple times; only the first call has an effect.
6796
+ */
6797
+ export function RegisterInputPassword(): void;
6798
+
6799
+ }
6800
+ declare module "babylonjs-gui/2D/controls/inputPassword" {
6801
+ /**
6802
+ * Re-exports the pure implementation and applies the runtime registration side effect.
6803
+ * Import "./inputPassword.pure" for tree-shakeable, side-effect-free usage.
6804
+ */
6805
+ export * from "babylonjs-gui/2D/controls/inputPassword.pure";
6361
6806
 
6362
6807
  }
6363
6808
  declare module "babylonjs-gui/2D/controls/index" {
@@ -6397,10 +6842,10 @@ export * from "babylonjs-gui/2D/controls/gradient/LinearGradient";
6397
6842
  export * from "babylonjs-gui/2D/controls/gradient/RadialGradient";
6398
6843
 
6399
6844
  }
6400
- declare module "babylonjs-gui/2D/controls/image" {
6845
+ declare module "babylonjs-gui/2D/controls/image.pure" {
6401
6846
  import { Nullable } from "babylonjs/types";
6402
6847
  import { Observable } from "babylonjs/Misc/observable";
6403
- import { Control } from "babylonjs-gui/2D/controls/control";
6848
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6404
6849
  import { Measure } from "babylonjs-gui/2D/measure";
6405
6850
  import { ICanvasRenderingContext, IImage } from "babylonjs/Engines/ICanvas";
6406
6851
  /**
@@ -6626,13 +7071,26 @@ export class Image extends Control {
6626
7071
  /** NINE_PATCH */
6627
7072
  static readonly STRETCH_NINE_PATCH: number;
6628
7073
  }
7074
+ /**
7075
+ * Registers the Image class with the type store for serialization support.
7076
+ * Safe to call multiple times; only the first call has an effect.
7077
+ */
7078
+ export function RegisterImage(): void;
6629
7079
 
6630
7080
  }
6631
- declare module "babylonjs-gui/2D/controls/grid" {
7081
+ declare module "babylonjs-gui/2D/controls/image" {
7082
+ /**
7083
+ * Re-exports the pure implementation and applies the runtime registration side effect.
7084
+ * Import "./image.pure" for tree-shakeable, side-effect-free usage.
7085
+ */
7086
+ export * from "babylonjs-gui/2D/controls/image.pure";
7087
+
7088
+ }
7089
+ declare module "babylonjs-gui/2D/controls/grid.pure" {
6632
7090
  import { Nullable } from "babylonjs/types";
6633
- import { Container } from "babylonjs-gui/2D/controls/container";
7091
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
6634
7092
  import { ValueAndUnit } from "babylonjs-gui/2D/valueAndUnit";
6635
- import { Control } from "babylonjs-gui/2D/controls/control";
7093
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6636
7094
  import { Measure } from "babylonjs-gui/2D/measure";
6637
7095
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
6638
7096
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
@@ -6780,6 +7238,19 @@ export class Grid extends Container {
6780
7238
  */
6781
7239
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
6782
7240
  }
7241
+ /**
7242
+ * Registers the Grid class with the type store for serialization support.
7243
+ * Safe to call multiple times; only the first call has an effect.
7244
+ */
7245
+ export function RegisterGrid(): void;
7246
+
7247
+ }
7248
+ declare module "babylonjs-gui/2D/controls/grid" {
7249
+ /**
7250
+ * Re-exports the pure implementation and applies the runtime registration side effect.
7251
+ * Import "./grid.pure" for tree-shakeable, side-effect-free usage.
7252
+ */
7253
+ export * from "babylonjs-gui/2D/controls/grid.pure";
6783
7254
 
6784
7255
  }
6785
7256
  declare module "babylonjs-gui/2D/controls/focusableControl" {
@@ -6828,10 +7299,10 @@ export interface IFocusableControl {
6828
7299
  }
6829
7300
 
6830
7301
  }
6831
- declare module "babylonjs-gui/2D/controls/focusableButton" {
6832
- import { Vector2 } from "babylonjs/Maths/math.vector";
6833
- import { Button } from "babylonjs-gui/2D/controls/button";
6834
- import { Control } from "babylonjs-gui/2D/controls/control";
7302
+ declare module "babylonjs-gui/2D/controls/focusableButton.pure" {
7303
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
7304
+ import { Button } from "babylonjs-gui/2D/controls/button.pure";
7305
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6835
7306
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
6836
7307
  import { IFocusableControl } from "babylonjs-gui/2D/controls/focusableControl";
6837
7308
  /**
@@ -6846,10 +7317,23 @@ export class FocusableButton extends Button implements IFocusableControl {
6846
7317
  */
6847
7318
  _onPointerDown(target: Control, coordinates: Vector2, pointerId: number, buttonIndex: number, pi: PointerInfoBase): boolean;
6848
7319
  }
7320
+ /**
7321
+ * Registers the FocusableButton class with the type store for serialization support.
7322
+ * Safe to call multiple times; only the first call has an effect.
7323
+ */
7324
+ export function RegisterFocusableButton(): void;
6849
7325
 
6850
7326
  }
6851
- declare module "babylonjs-gui/2D/controls/ellipse" {
6852
- import { Container } from "babylonjs-gui/2D/controls/container";
7327
+ declare module "babylonjs-gui/2D/controls/focusableButton" {
7328
+ /**
7329
+ * Re-exports the pure implementation and applies the runtime registration side effect.
7330
+ * Import "./focusableButton.pure" for tree-shakeable, side-effect-free usage.
7331
+ */
7332
+ export * from "babylonjs-gui/2D/controls/focusableButton.pure";
7333
+
7334
+ }
7335
+ declare module "babylonjs-gui/2D/controls/ellipse.pure" {
7336
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
6853
7337
  import { Measure } from "babylonjs-gui/2D/measure";
6854
7338
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
6855
7339
  /** Class used to create 2D ellipse containers */
@@ -6874,10 +7358,23 @@ export class Ellipse extends Container {
6874
7358
  protected _clipForChildren(context: ICanvasRenderingContext): void;
6875
7359
  _renderHighlightSpecific(context: ICanvasRenderingContext): void;
6876
7360
  }
7361
+ /**
7362
+ * Registers the Ellipse class with the type store for serialization support.
7363
+ * Safe to call multiple times; only the first call has an effect.
7364
+ */
7365
+ export function RegisterEllipse(): void;
6877
7366
 
6878
7367
  }
6879
- declare module "babylonjs-gui/2D/controls/displayGrid" {
6880
- import { Control } from "babylonjs-gui/2D/controls/control";
7368
+ declare module "babylonjs-gui/2D/controls/ellipse" {
7369
+ /**
7370
+ * Re-exports the pure implementation and applies the runtime registration side effect.
7371
+ * Import "./ellipse.pure" for tree-shakeable, side-effect-free usage.
7372
+ */
7373
+ export * from "babylonjs-gui/2D/controls/ellipse.pure";
7374
+
7375
+ }
7376
+ declare module "babylonjs-gui/2D/controls/displayGrid.pure" {
7377
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
6881
7378
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
6882
7379
  /** Class used to render a grid */
6883
7380
  export class DisplayGrid extends Control {
@@ -6930,16 +7427,29 @@ export class DisplayGrid extends Control {
6930
7427
  _draw(context: ICanvasRenderingContext): void;
6931
7428
  protected _getTypeName(): string;
6932
7429
  }
7430
+ /**
7431
+ * Registers the DisplayGrid class with the type store for serialization support.
7432
+ * Safe to call multiple times; only the first call has an effect.
7433
+ */
7434
+ export function RegisterDisplayGrid(): void;
6933
7435
 
6934
7436
  }
6935
- declare module "babylonjs-gui/2D/controls/control" {
7437
+ declare module "babylonjs-gui/2D/controls/displayGrid" {
7438
+ /**
7439
+ * Re-exports the pure implementation and applies the runtime registration side effect.
7440
+ * Import "./displayGrid.pure" for tree-shakeable, side-effect-free usage.
7441
+ */
7442
+ export * from "babylonjs-gui/2D/controls/displayGrid.pure";
7443
+
7444
+ }
7445
+ declare module "babylonjs-gui/2D/controls/control.pure" {
6936
7446
  import { Nullable } from "babylonjs/types";
6937
7447
  import { Observable } from "babylonjs/Misc/observable";
6938
- import { Vector2, Vector3 } from "babylonjs/Maths/math.vector";
7448
+ import { Vector2, Vector3 } from "babylonjs/Maths/math.vector.pure";
6939
7449
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
6940
7450
  import { TransformNode } from "babylonjs/Meshes/transformNode";
6941
7451
  import { Scene } from "babylonjs/scene";
6942
- import { Container } from "babylonjs-gui/2D/controls/container";
7452
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
6943
7453
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
6944
7454
  import { ValueAndUnit } from "babylonjs-gui/2D/valueAndUnit";
6945
7455
  import { Measure } from "babylonjs-gui/2D/measure";
@@ -7879,16 +8389,29 @@ export class Control implements IAnimatable, IFocusableControl {
7879
8389
  */
7880
8390
  isReady(): boolean;
7881
8391
  }
8392
+ /**
8393
+ * Registers the Control class with the type store for serialization support.
8394
+ * Safe to call multiple times; only the first call has an effect.
8395
+ */
8396
+ export function RegisterControl(): void;
7882
8397
 
7883
8398
  }
7884
- declare module "babylonjs-gui/2D/controls/container" {
8399
+ declare module "babylonjs-gui/2D/controls/control" {
8400
+ /**
8401
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8402
+ * Import "./control.pure" for tree-shakeable, side-effect-free usage.
8403
+ */
8404
+ export * from "babylonjs-gui/2D/controls/control.pure";
8405
+
8406
+ }
8407
+ declare module "babylonjs-gui/2D/controls/container.pure" {
7885
8408
  import { Nullable } from "babylonjs/types";
7886
- import { Control } from "babylonjs-gui/2D/controls/control";
8409
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
7887
8410
  import { Measure } from "babylonjs-gui/2D/measure";
7888
8411
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
7889
8412
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
7890
8413
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
7891
- import { DynamicTexture } from "babylonjs/Materials/Textures/dynamicTexture";
8414
+ import { DynamicTexture } from "babylonjs/Materials/Textures/dynamicTexture.pure";
7892
8415
  import { Observable } from "babylonjs/Misc/observable";
7893
8416
  import { BaseGradient } from "babylonjs-gui/2D/controls/gradient/BaseGradient";
7894
8417
  /**
@@ -8061,15 +8584,28 @@ export class Container extends Control {
8061
8584
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture, urlRewriter?: (url: string) => string): void;
8062
8585
  isReady(): boolean;
8063
8586
  }
8587
+ /**
8588
+ * Registers the Container class with the type store for serialization support.
8589
+ * Safe to call multiple times; only the first call has an effect.
8590
+ */
8591
+ export function RegisterContainer(): void;
8064
8592
 
8065
8593
  }
8066
- declare module "babylonjs-gui/2D/controls/colorpicker" {
8594
+ declare module "babylonjs-gui/2D/controls/container" {
8595
+ /**
8596
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8597
+ * Import "./container.pure" for tree-shakeable, side-effect-free usage.
8598
+ */
8599
+ export * from "babylonjs-gui/2D/controls/container.pure";
8600
+
8601
+ }
8602
+ declare module "babylonjs-gui/2D/controls/colorpicker.pure" {
8067
8603
  import { Observable } from "babylonjs/Misc/observable";
8068
- import { Vector2 } from "babylonjs/Maths/math.vector";
8069
- import { Control } from "babylonjs-gui/2D/controls/control";
8604
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
8605
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
8070
8606
  import { Measure } from "babylonjs-gui/2D/measure";
8071
8607
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
8072
- import { Color3 } from "babylonjs/Maths/math.color";
8608
+ import { Color3 } from "babylonjs/Maths/math.color.pure";
8073
8609
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
8074
8610
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8075
8611
  /** Class used to create color pickers */
@@ -8165,13 +8701,26 @@ export class ColorPicker extends Control {
8165
8701
  pickedColor: string;
8166
8702
  }>;
8167
8703
  }
8704
+ /**
8705
+ * Registers the ColorPicker class with the type store for serialization support.
8706
+ * Safe to call multiple times; only the first call has an effect.
8707
+ */
8708
+ export function RegisterColorPicker(): void;
8168
8709
 
8169
8710
  }
8170
- declare module "babylonjs-gui/2D/controls/checkbox" {
8711
+ declare module "babylonjs-gui/2D/controls/colorpicker" {
8712
+ /**
8713
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8714
+ * Import "./colorpicker.pure" for tree-shakeable, side-effect-free usage.
8715
+ */
8716
+ export * from "babylonjs-gui/2D/controls/colorpicker.pure";
8717
+
8718
+ }
8719
+ declare module "babylonjs-gui/2D/controls/checkbox.pure" {
8171
8720
  import { Observable } from "babylonjs/Misc/observable";
8172
- import { Vector2 } from "babylonjs/Maths/math.vector";
8173
- import { Control } from "babylonjs-gui/2D/controls/control";
8174
- import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel";
8721
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
8722
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
8723
+ import { StackPanel } from "babylonjs-gui/2D/controls/stackPanel.pure";
8175
8724
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
8176
8725
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8177
8726
  /**
@@ -8221,15 +8770,28 @@ export class Checkbox extends Control {
8221
8770
  */
8222
8771
  static AddCheckBoxWithHeader(title: string, onValueChanged: (value: boolean) => void): StackPanel;
8223
8772
  }
8773
+ /**
8774
+ * Registers the Checkbox class with the type store for serialization support.
8775
+ * Safe to call multiple times; only the first call has an effect.
8776
+ */
8777
+ export function RegisterCheckbox(): void;
8224
8778
 
8225
8779
  }
8226
- declare module "babylonjs-gui/2D/controls/button" {
8780
+ declare module "babylonjs-gui/2D/controls/checkbox" {
8781
+ /**
8782
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8783
+ * Import "./checkbox.pure" for tree-shakeable, side-effect-free usage.
8784
+ */
8785
+ export * from "babylonjs-gui/2D/controls/checkbox.pure";
8786
+
8787
+ }
8788
+ declare module "babylonjs-gui/2D/controls/button.pure" {
8227
8789
  import { Nullable } from "babylonjs/types";
8228
- import { Vector2 } from "babylonjs/Maths/math.vector";
8229
- import { Rectangle } from "babylonjs-gui/2D/controls/rectangle";
8230
- import { Control } from "babylonjs-gui/2D/controls/control";
8231
- import { TextBlock } from "babylonjs-gui/2D/controls/textBlock";
8232
- import { Image } from "babylonjs-gui/2D/controls/image";
8790
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
8791
+ import { Rectangle } from "babylonjs-gui/2D/controls/rectangle.pure";
8792
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
8793
+ import { TextBlock } from "babylonjs-gui/2D/controls/textBlock.pure";
8794
+ import { Image } from "babylonjs-gui/2D/controls/image.pure";
8233
8795
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
8234
8796
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
8235
8797
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
@@ -8333,9 +8895,22 @@ export class Button extends Rectangle {
8333
8895
  */
8334
8896
  static CreateImageWithCenterTextButton(name: string, text: string, imageUrl: string): Button;
8335
8897
  }
8898
+ /**
8899
+ * Registers the Button class with the type store for serialization support.
8900
+ * Safe to call multiple times; only the first call has an effect.
8901
+ */
8902
+ export function RegisterButton(): void;
8336
8903
 
8337
8904
  }
8338
- declare module "babylonjs-gui/2D/controls/sliders/slider" {
8905
+ declare module "babylonjs-gui/2D/controls/button" {
8906
+ /**
8907
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8908
+ * Import "./button.pure" for tree-shakeable, side-effect-free usage.
8909
+ */
8910
+ export * from "babylonjs-gui/2D/controls/button.pure";
8911
+
8912
+ }
8913
+ declare module "babylonjs-gui/2D/controls/sliders/slider.pure" {
8339
8914
  import { BaseSlider } from "babylonjs-gui/2D/controls/sliders/baseSlider";
8340
8915
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8341
8916
  import { Nullable } from "babylonjs/types";
@@ -8382,12 +8957,25 @@ export class Slider extends BaseSlider {
8382
8957
  /** @internal */
8383
8958
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
8384
8959
  }
8960
+ /**
8961
+ * Registers the Slider class with the type store for serialization support.
8962
+ * Safe to call multiple times; only the first call has an effect.
8963
+ */
8964
+ export function RegisterSlider(): void;
8385
8965
 
8386
8966
  }
8387
- declare module "babylonjs-gui/2D/controls/sliders/scrollBar" {
8388
- import { Vector2 } from "babylonjs/Maths/math.vector";
8967
+ declare module "babylonjs-gui/2D/controls/sliders/slider" {
8968
+ /**
8969
+ * Re-exports the pure implementation and applies the runtime registration side effect.
8970
+ * Import "./slider.pure" for tree-shakeable, side-effect-free usage.
8971
+ */
8972
+ export * from "babylonjs-gui/2D/controls/sliders/slider.pure";
8973
+
8974
+ }
8975
+ declare module "babylonjs-gui/2D/controls/sliders/scrollBar.pure" {
8976
+ import { Vector2 } from "babylonjs/Maths/math.vector.pure";
8389
8977
  import { BaseSlider } from "babylonjs-gui/2D/controls/sliders/baseSlider";
8390
- import { Control } from "babylonjs-gui/2D/controls/control";
8978
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
8391
8979
  import { PointerInfoBase } from "babylonjs/Events/pointerEvents";
8392
8980
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8393
8981
  import { Nullable } from "babylonjs/types";
@@ -8435,6 +9023,26 @@ export class ScrollBar extends BaseSlider {
8435
9023
  serialize(serializationObject: any): void;
8436
9024
  _parseFromContent(serializationObject: any, host: AdvancedDynamicTexture): void;
8437
9025
  }
9026
+ /**
9027
+ * Registers the ScrollBar class with the type store for serialization support.
9028
+ * Safe to call multiple times; only the first call has an effect.
9029
+ */
9030
+ export function RegisterScrollBar(): void;
9031
+
9032
+ }
9033
+ declare module "babylonjs-gui/2D/controls/sliders/scrollBar" {
9034
+ /**
9035
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9036
+ * Import "./scrollBar.pure" for tree-shakeable, side-effect-free usage.
9037
+ */
9038
+ export * from "babylonjs-gui/2D/controls/sliders/scrollBar.pure";
9039
+
9040
+ }
9041
+ declare module "babylonjs-gui/2D/controls/sliders/pure" {
9042
+ /** Pure barrel — re-exports only side-effect-free modules */
9043
+ export * from "babylonjs-gui/2D/controls/sliders/imageBasedSlider.pure";
9044
+ export * from "babylonjs-gui/2D/controls/sliders/scrollBar.pure";
9045
+ export * from "babylonjs-gui/2D/controls/sliders/slider.pure";
8438
9046
 
8439
9047
  }
8440
9048
  declare module "babylonjs-gui/2D/controls/sliders/imageScrollBar" {
@@ -8507,9 +9115,9 @@ export class ImageScrollBar extends BaseSlider {
8507
9115
  }
8508
9116
 
8509
9117
  }
8510
- declare module "babylonjs-gui/2D/controls/sliders/imageBasedSlider" {
9118
+ declare module "babylonjs-gui/2D/controls/sliders/imageBasedSlider.pure" {
8511
9119
  import { BaseSlider } from "babylonjs-gui/2D/controls/sliders/baseSlider";
8512
- import { Image } from "babylonjs-gui/2D/controls/image";
9120
+ import { Image } from "babylonjs-gui/2D/controls/image.pure";
8513
9121
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8514
9122
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
8515
9123
  /**
@@ -8555,6 +9163,19 @@ export class ImageBasedSlider extends BaseSlider {
8555
9163
  */
8556
9164
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
8557
9165
  }
9166
+ /**
9167
+ * Registers the ImageBasedSlider class with the type store for serialization support.
9168
+ * Safe to call multiple times; only the first call has an effect.
9169
+ */
9170
+ export function RegisterImageBasedSlider(): void;
9171
+
9172
+ }
9173
+ declare module "babylonjs-gui/2D/controls/sliders/imageBasedSlider" {
9174
+ /**
9175
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9176
+ * Import "./imageBasedSlider.pure" for tree-shakeable, side-effect-free usage.
9177
+ */
9178
+ export * from "babylonjs-gui/2D/controls/sliders/imageBasedSlider.pure";
8558
9179
 
8559
9180
  }
8560
9181
  declare module "babylonjs-gui/2D/controls/sliders/baseSlider" {
@@ -8694,15 +9315,15 @@ export class _ScrollViewerWindow extends Container {
8694
9315
  }
8695
9316
 
8696
9317
  }
8697
- declare module "babylonjs-gui/2D/controls/scrollViewers/scrollViewer" {
9318
+ declare module "babylonjs-gui/2D/controls/scrollViewers/scrollViewer.pure" {
8698
9319
  import { Nullable } from "babylonjs/types";
8699
- import { Rectangle } from "babylonjs-gui/2D/controls/rectangle";
8700
- import { Image } from "babylonjs-gui/2D/controls/image";
8701
- import { Control } from "babylonjs-gui/2D/controls/control";
8702
- import { Container } from "babylonjs-gui/2D/controls/container";
9320
+ import { Rectangle } from "babylonjs-gui/2D/controls/rectangle.pure";
9321
+ import { Image } from "babylonjs-gui/2D/controls/image.pure";
9322
+ import { Control } from "babylonjs-gui/2D/controls/control.pure";
9323
+ import { Container } from "babylonjs-gui/2D/controls/container.pure";
8703
9324
  import { Measure } from "babylonjs-gui/2D/measure";
8704
9325
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
8705
- import { ScrollBar } from "babylonjs-gui/2D/controls/sliders/scrollBar";
9326
+ import { ScrollBar } from "babylonjs-gui/2D/controls/sliders/scrollBar.pure";
8706
9327
  import { ImageScrollBar } from "babylonjs-gui/2D/controls/sliders/imageScrollBar";
8707
9328
  import { ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8708
9329
  /**
@@ -8873,9 +9494,33 @@ export class ScrollViewer extends Rectangle {
8873
9494
  /** Releases associated resources */
8874
9495
  dispose(): void;
8875
9496
  }
9497
+ /**
9498
+ * Registers the ScrollViewer class with the type store for serialization support.
9499
+ * Safe to call multiple times; only the first call has an effect.
9500
+ */
9501
+ export function RegisterScrollViewer(): void;
8876
9502
 
8877
9503
  }
8878
- declare module "babylonjs-gui/2D/controls/gradient/RadialGradient" {
9504
+ declare module "babylonjs-gui/2D/controls/scrollViewers/scrollViewer" {
9505
+ /**
9506
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9507
+ * Import "./scrollViewer.pure" for tree-shakeable, side-effect-free usage.
9508
+ */
9509
+ export * from "babylonjs-gui/2D/controls/scrollViewers/scrollViewer.pure";
9510
+
9511
+ }
9512
+ declare module "babylonjs-gui/2D/controls/scrollViewers/pure" {
9513
+ /** Pure barrel — re-exports only side-effect-free modules */
9514
+ export * from "babylonjs-gui/2D/controls/scrollViewers/scrollViewer.pure";
9515
+
9516
+ }
9517
+ declare module "babylonjs-gui/2D/controls/gradient/pure" {
9518
+ /** Pure barrel — re-exports only side-effect-free modules */
9519
+ export * from "babylonjs-gui/2D/controls/gradient/LinearGradient.pure";
9520
+ export * from "babylonjs-gui/2D/controls/gradient/RadialGradient.pure";
9521
+
9522
+ }
9523
+ declare module "babylonjs-gui/2D/controls/gradient/RadialGradient.pure" {
8879
9524
  import { ICanvasGradient, ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8880
9525
  import { BaseGradient } from "babylonjs-gui/2D/controls/gradient/BaseGradient";
8881
9526
  /**
@@ -8929,9 +9574,22 @@ export class RadialGradient extends BaseGradient {
8929
9574
  */
8930
9575
  parse(serializationObject: any): void;
8931
9576
  }
9577
+ /**
9578
+ * Registers the RadialGradient class with the type store for serialization support.
9579
+ * Safe to call multiple times; only the first call has an effect.
9580
+ */
9581
+ export function RegisterRadialGradient(): void;
8932
9582
 
8933
9583
  }
8934
- declare module "babylonjs-gui/2D/controls/gradient/LinearGradient" {
9584
+ declare module "babylonjs-gui/2D/controls/gradient/RadialGradient" {
9585
+ /**
9586
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9587
+ * Import "./RadialGradient.pure" for tree-shakeable, side-effect-free usage.
9588
+ */
9589
+ export * from "babylonjs-gui/2D/controls/gradient/RadialGradient.pure";
9590
+
9591
+ }
9592
+ declare module "babylonjs-gui/2D/controls/gradient/LinearGradient.pure" {
8935
9593
  import { ICanvasGradient, ICanvasRenderingContext } from "babylonjs/Engines/ICanvas";
8936
9594
  import { BaseGradient } from "babylonjs-gui/2D/controls/gradient/BaseGradient";
8937
9595
  /**
@@ -8977,6 +9635,19 @@ export class LinearGradient extends BaseGradient {
8977
9635
  */
8978
9636
  parse(serializationObject: any): void;
8979
9637
  }
9638
+ /**
9639
+ * Registers the LinearGradient class with the type store for serialization support.
9640
+ * Safe to call multiple times; only the first call has an effect.
9641
+ */
9642
+ export function RegisterLinearGradient(): void;
9643
+
9644
+ }
9645
+ declare module "babylonjs-gui/2D/controls/gradient/LinearGradient" {
9646
+ /**
9647
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9648
+ * Import "./LinearGradient.pure" for tree-shakeable, side-effect-free usage.
9649
+ */
9650
+ export * from "babylonjs-gui/2D/controls/gradient/LinearGradient.pure";
8980
9651
 
8981
9652
  }
8982
9653
  declare module "babylonjs-gui/2D/controls/gradient/BaseGradient" {
@@ -9051,7 +9722,7 @@ export abstract class BaseGradient {
9051
9722
  }
9052
9723
 
9053
9724
  }
9054
- declare module "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock" {
9725
+ declare module "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock.pure" {
9055
9726
  import { NodeRenderGraphBlock } from "babylonjs/FrameGraph/Node/nodeRenderGraphBlock";
9056
9727
  import { AdvancedDynamicTexture } from "babylonjs-gui/2D/advancedDynamicTexture";
9057
9728
  import { Scene } from "babylonjs/scene";
@@ -9095,6 +9766,24 @@ export class NodeRenderGraphGUIBlock extends NodeRenderGraphBlock {
9095
9766
  get output(): NodeRenderGraphConnectionPoint;
9096
9767
  protected _buildBlock(state: NodeRenderGraphBuildState): void;
9097
9768
  }
9769
+ /**
9770
+ * Registers the NodeRenderGraphGUIBlock class with the type store for serialization support.
9771
+ * Safe to call multiple times; only the first call has an effect.
9772
+ */
9773
+ export function RegisterNodeRenderGraphGUIBlock(): void;
9774
+
9775
+ }
9776
+ declare module "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock" {
9777
+ /**
9778
+ * Re-exports the pure implementation and applies the runtime registration side effect.
9779
+ * Import "./renderGraphGUIBlock.pure" for tree-shakeable, side-effect-free usage.
9780
+ */
9781
+ export * from "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock.pure";
9782
+
9783
+ }
9784
+ declare module "babylonjs-gui/2D/FrameGraph/pure" {
9785
+ /** Pure barrel — re-exports only side-effect-free modules */
9786
+ export * from "babylonjs-gui/2D/FrameGraph/renderGraphGUIBlock.pure";
9098
9787
 
9099
9788
  }
9100
9789
  declare module "babylonjs-gui/2D/FrameGraph/guiTask" {
@@ -9142,6 +9831,9 @@ declare module "babylonjs-gui" {
9142
9831
 
9143
9832
 
9144
9833
  declare namespace BABYLON.GUI {
9834
+ /** Pure barrel — re-exports only side-effect-free modules */
9835
+
9836
+
9145
9837
 
9146
9838
 
9147
9839
  /**
@@ -9161,6 +9853,9 @@ declare namespace BABYLON.GUI {
9161
9853
  }
9162
9854
 
9163
9855
 
9856
+ /** Pure barrel — re-exports only side-effect-free modules */
9857
+
9858
+
9164
9859
 
9165
9860
 
9166
9861
  /**
@@ -9250,6 +9945,9 @@ declare namespace BABYLON.GUI {
9250
9945
  }
9251
9946
 
9252
9947
 
9948
+ /** Pure barrel — re-exports only side-effect-free modules */
9949
+
9950
+
9253
9951
 
9254
9952
 
9255
9953
  /**
@@ -9257,6 +9955,9 @@ declare namespace BABYLON.GUI {
9257
9955
  */
9258
9956
 
9259
9957
 
9958
+ /** Pure barrel — re-exports only side-effect-free modules */
9959
+
9960
+
9260
9961
  /**
9261
9962
  * Class used to render Slider Thumb material with MRDL
9262
9963
  */
@@ -9578,8 +10279,26 @@ declare namespace BABYLON.GUI {
9578
10279
  clone(name: string): MRDLSliderThumbMaterial;
9579
10280
  serialize(): any;
9580
10281
  getClassName(): string;
10282
+ /**
10283
+ * Parses a serialized MRDLSliderThumbMaterial and returns a new instance.
10284
+ * @param source - the serialized object
10285
+ * @param scene - defines the hosting scene
10286
+ * @param rootUrl - the root URL used to load any associated textures
10287
+ * @returns a new MRDLSliderThumbMaterial
10288
+ */
9581
10289
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLSliderThumbMaterial;
9582
10290
  }
10291
+ /**
10292
+ * Registers the MRDLSliderThumbMaterial class with the type store for serialization support.
10293
+ * Safe to call multiple times; only the first call has an effect.
10294
+ */
10295
+ export function RegisterMRDLSliderThumbMaterial(): void;
10296
+
10297
+
10298
+ /**
10299
+ * Re-exports the pure implementation and applies the runtime registration side effect.
10300
+ * Import "./mrdlSliderThumbMaterial.pure" for tree-shakeable, side-effect-free usage.
10301
+ */
9583
10302
 
9584
10303
 
9585
10304
  /**
@@ -9903,8 +10622,26 @@ declare namespace BABYLON.GUI {
9903
10622
  clone(name: string): MRDLSliderBarMaterial;
9904
10623
  serialize(): any;
9905
10624
  getClassName(): string;
10625
+ /**
10626
+ * Parses a serialized MRDLSliderBarMaterial and returns a new instance.
10627
+ * @param source - the serialized object
10628
+ * @param scene - defines the hosting scene
10629
+ * @param rootUrl - the root URL used to load any associated textures
10630
+ * @returns a new MRDLSliderBarMaterial
10631
+ */
9906
10632
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLSliderBarMaterial;
9907
10633
  }
10634
+ /**
10635
+ * Registers the MRDLSliderBarMaterial class with the type store for serialization support.
10636
+ * Safe to call multiple times; only the first call has an effect.
10637
+ */
10638
+ export function RegisterMRDLSliderBarMaterial(): void;
10639
+
10640
+
10641
+ /**
10642
+ * Re-exports the pure implementation and applies the runtime registration side effect.
10643
+ * Import "./mrdlSliderBarMaterial.pure" for tree-shakeable, side-effect-free usage.
10644
+ */
9908
10645
 
9909
10646
 
9910
10647
  export class MRDLInnerquadMaterial extends BABYLON.PushMaterial {
@@ -9951,6 +10688,17 @@ declare namespace BABYLON.GUI {
9951
10688
  getClassName(): string;
9952
10689
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLInnerquadMaterial;
9953
10690
  }
10691
+ /**
10692
+ * Registers the MRDLInnerquadMaterial class with the type store for serialization support.
10693
+ * Safe to call multiple times; only the first call has an effect.
10694
+ */
10695
+ export function RegisterMRDLInnerquadMaterial(): void;
10696
+
10697
+
10698
+ /**
10699
+ * Re-exports the pure implementation and applies the runtime registration side effect.
10700
+ * Import "./mrdlInnerquadMaterial.pure" for tree-shakeable, side-effect-free usage.
10701
+ */
9954
10702
 
9955
10703
 
9956
10704
  export class MRDLFrontplateMaterial extends BABYLON.PushMaterial {
@@ -10126,6 +10874,17 @@ declare namespace BABYLON.GUI {
10126
10874
  getClassName(): string;
10127
10875
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLFrontplateMaterial;
10128
10876
  }
10877
+ /**
10878
+ * Registers the MRDLFrontplateMaterial class with the type store for serialization support.
10879
+ * Safe to call multiple times; only the first call has an effect.
10880
+ */
10881
+ export function RegisterMRDLFrontplateMaterial(): void;
10882
+
10883
+
10884
+ /**
10885
+ * Re-exports the pure implementation and applies the runtime registration side effect.
10886
+ * Import "./mrdlFrontplateMaterial.pure" for tree-shakeable, side-effect-free usage.
10887
+ */
10129
10888
 
10130
10889
 
10131
10890
  /**
@@ -10261,8 +11020,26 @@ declare namespace BABYLON.GUI {
10261
11020
  clone(name: string): MRDLBackplateMaterial;
10262
11021
  serialize(): any;
10263
11022
  getClassName(): string;
11023
+ /**
11024
+ * Parses a serialized MRDLBackplateMaterial and returns a new instance.
11025
+ * @param source - the serialized object
11026
+ * @param scene - defines the hosting scene
11027
+ * @param rootUrl - the root URL used to load any associated textures
11028
+ * @returns a new MRDLBackplateMaterial
11029
+ */
10264
11030
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLBackplateMaterial;
10265
11031
  }
11032
+ /**
11033
+ * Registers the MRDLBackplateMaterial class with the type store for serialization support.
11034
+ * Safe to call multiple times; only the first call has an effect.
11035
+ */
11036
+ export function RegisterMRDLBackplateMaterial(): void;
11037
+
11038
+
11039
+ /**
11040
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11041
+ * Import "./mrdlBackplateMaterial.pure" for tree-shakeable, side-effect-free usage.
11042
+ */
10266
11043
 
10267
11044
 
10268
11045
  export class MRDLBackglowMaterial extends BABYLON.PushMaterial {
@@ -10340,6 +11117,17 @@ declare namespace BABYLON.GUI {
10340
11117
  getClassName(): string;
10341
11118
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): MRDLBackglowMaterial;
10342
11119
  }
11120
+ /**
11121
+ * Registers the MRDLBackglowMaterial class with the type store for serialization support.
11122
+ * Safe to call multiple times; only the first call has an effect.
11123
+ */
11124
+ export function RegisterMRDLBackglowMaterial(): void;
11125
+
11126
+
11127
+ /**
11128
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11129
+ * Import "./mrdlBackglowMaterial.pure" for tree-shakeable, side-effect-free usage.
11130
+ */
10343
11131
 
10344
11132
 
10345
11133
 
@@ -10428,6 +11216,9 @@ declare namespace BABYLON.GUI {
10428
11216
  };
10429
11217
 
10430
11218
 
11219
+ /** Pure barrel — re-exports only side-effect-free modules */
11220
+
11221
+
10431
11222
 
10432
11223
 
10433
11224
  /**
@@ -10494,6 +11285,12 @@ declare namespace BABYLON.GUI {
10494
11285
  }
10495
11286
 
10496
11287
 
11288
+ /**
11289
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11290
+ * Import "./handleMaterial.pure" for tree-shakeable, side-effect-free usage.
11291
+ */
11292
+
11293
+
10497
11294
  /** @internal */
10498
11295
  export var handleVertexShaderWGSL: {
10499
11296
  name: string;
@@ -10522,6 +11319,9 @@ declare namespace BABYLON.GUI {
10522
11319
  };
10523
11320
 
10524
11321
 
11322
+ /** Pure barrel — re-exports only side-effect-free modules */
11323
+
11324
+
10525
11325
 
10526
11326
 
10527
11327
  /**
@@ -10714,6 +11514,17 @@ declare namespace BABYLON.GUI {
10714
11514
  */
10715
11515
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): FluentButtonMaterial;
10716
11516
  }
11517
+ /**
11518
+ * Registers the FluentButtonMaterial class with the type store for serialization support.
11519
+ * Safe to call multiple times; only the first call has an effect.
11520
+ */
11521
+ export function RegisterFluentButtonMaterial(): void;
11522
+
11523
+
11524
+ /**
11525
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11526
+ * Import "./fluentButtonMaterial.pure" for tree-shakeable, side-effect-free usage.
11527
+ */
10717
11528
 
10718
11529
 
10719
11530
  /** @internal */
@@ -10744,6 +11555,9 @@ declare namespace BABYLON.GUI {
10744
11555
  };
10745
11556
 
10746
11557
 
11558
+ /** Pure barrel — re-exports only side-effect-free modules */
11559
+
11560
+
10747
11561
 
10748
11562
 
10749
11563
  /**
@@ -10900,6 +11714,17 @@ declare namespace BABYLON.GUI {
10900
11714
  */
10901
11715
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): FluentBackplateMaterial;
10902
11716
  }
11717
+ /**
11718
+ * Registers the FluentBackplateMaterial class with the type store for serialization support.
11719
+ * Safe to call multiple times; only the first call has an effect.
11720
+ */
11721
+ export function RegisterFluentBackplateMaterial(): void;
11722
+
11723
+
11724
+ /**
11725
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11726
+ * Import "./fluentBackplateMaterial.pure" for tree-shakeable, side-effect-free usage.
11727
+ */
10903
11728
 
10904
11729
 
10905
11730
  /** @internal */
@@ -10930,6 +11755,9 @@ declare namespace BABYLON.GUI {
10930
11755
  };
10931
11756
 
10932
11757
 
11758
+ /** Pure barrel — re-exports only side-effect-free modules */
11759
+
11760
+
10933
11761
 
10934
11762
 
10935
11763
  /** @internal */
@@ -11022,6 +11850,17 @@ declare namespace BABYLON.GUI {
11022
11850
  */
11023
11851
  static Parse(source: any, scene: BABYLON.Scene, rootUrl: string): FluentMaterial;
11024
11852
  }
11853
+ /**
11854
+ * Registers the FluentMaterial class with the type store for serialization support.
11855
+ * Safe to call multiple times; only the first call has an effect.
11856
+ */
11857
+ export function RegisterFluentMaterial(): void;
11858
+
11859
+
11860
+ /**
11861
+ * Re-exports the pure implementation and applies the runtime registration side effect.
11862
+ * Import "./fluentMaterial.pure" for tree-shakeable, side-effect-free usage.
11863
+ */
11025
11864
 
11026
11865
 
11027
11866
  /** @internal */
@@ -11106,6 +11945,9 @@ declare namespace BABYLON.GUI {
11106
11945
  }
11107
11946
 
11108
11947
 
11948
+ /** Pure barrel — re-exports only side-effect-free modules */
11949
+
11950
+
11109
11951
 
11110
11952
 
11111
11953
  /**
@@ -11652,6 +12494,9 @@ declare namespace BABYLON.GUI {
11652
12494
  }
11653
12495
 
11654
12496
 
12497
+ /** Pure barrel — re-exports only side-effect-free modules */
12498
+
12499
+
11655
12500
  /**
11656
12501
  * Class used to create a container panel deployed on the surface of a plane
11657
12502
  */
@@ -12827,6 +13672,9 @@ declare namespace BABYLON.GUI {
12827
13672
  }
12828
13673
 
12829
13674
 
13675
+ /** Pure barrel — re-exports only side-effect-free modules */
13676
+
13677
+
12830
13678
  /**
12831
13679
  * Class used to store a point for a MultiLine object.
12832
13680
  * The point can be pure 2D coordinates, a mesh or a control
@@ -13768,6 +14616,17 @@ declare namespace BABYLON.GUI {
13768
14616
  */
13769
14617
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
13770
14618
  }
14619
+ /**
14620
+ * Registers the VirtualKeyboard class with the type store for serialization support.
14621
+ * Safe to call multiple times; only the first call has an effect.
14622
+ */
14623
+ export function RegisterVirtualKeyboard(): void;
14624
+
14625
+
14626
+ /**
14627
+ * Re-exports the pure implementation and applies the runtime registration side effect.
14628
+ * Import "./virtualKeyboard.pure" for tree-shakeable, side-effect-free usage.
14629
+ */
13771
14630
 
13772
14631
 
13773
14632
  /**
@@ -13858,6 +14717,17 @@ declare namespace BABYLON.GUI {
13858
14717
  */
13859
14718
  _onPointerUp(target: Control, coordinates: BABYLON.Vector2, pointerId: number, buttonIndex: number, notifyClick: boolean, pi: BABYLON.PointerInfoBase): void;
13860
14719
  }
14720
+ /**
14721
+ * Registers the ToggleButton class with the type store for serialization support.
14722
+ * Safe to call multiple times; only the first call has an effect.
14723
+ */
14724
+ export function RegisterToggleButton(): void;
14725
+
14726
+
14727
+ /**
14728
+ * Re-exports the pure implementation and applies the runtime registration side effect.
14729
+ * Import "./toggleButton.pure" for tree-shakeable, side-effect-free usage.
14730
+ */
13861
14731
 
13862
14732
 
13863
14733
  /** @internal */
@@ -14087,6 +14957,17 @@ declare namespace BABYLON.GUI {
14087
14957
  computeExpectedHeight(): number;
14088
14958
  dispose(): void;
14089
14959
  }
14960
+ /**
14961
+ * Registers the TextBlock class with the type store for serialization support.
14962
+ * Safe to call multiple times; only the first call has an effect.
14963
+ */
14964
+ export function RegisterTextBlock(): void;
14965
+
14966
+
14967
+ /**
14968
+ * Re-exports the pure implementation and applies the runtime registration side effect.
14969
+ * Import "./textBlock.pure" for tree-shakeable, side-effect-free usage.
14970
+ */
14090
14971
 
14091
14972
 
14092
14973
  /**
@@ -14094,6 +14975,17 @@ declare namespace BABYLON.GUI {
14094
14975
  * @internal
14095
14976
  */
14096
14977
  const Name = "Statics";
14978
+ /**
14979
+ * Registers GUI static helpers such as {@link Control.AddHeader}.
14980
+ * Safe to call multiple times; only the first call has an effect.
14981
+ */
14982
+ export function RegisterGUIStatics(): void;
14983
+
14984
+
14985
+ /**
14986
+ * Re-exports the pure implementation and applies the runtime registration side effect.
14987
+ * Import "./statics.pure" for tree-shakeable, side-effect-free usage.
14988
+ */
14097
14989
 
14098
14990
 
14099
14991
  /**
@@ -14156,6 +15048,17 @@ declare namespace BABYLON.GUI {
14156
15048
  */
14157
15049
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
14158
15050
  }
15051
+ /**
15052
+ * Registers the StackPanel class with the type store for serialization support.
15053
+ * Safe to call multiple times; only the first call has an effect.
15054
+ */
15055
+ export function RegisterStackPanel(): void;
15056
+
15057
+
15058
+ /**
15059
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15060
+ * Import "./stackPanel.pure" for tree-shakeable, side-effect-free usage.
15061
+ */
14159
15062
 
14160
15063
 
14161
15064
  /** Class used to create a RadioGroup
@@ -14435,6 +15338,17 @@ declare namespace BABYLON.GUI {
14435
15338
  private _drawRoundedRect;
14436
15339
  protected _clipForChildren(context: BABYLON.ICanvasRenderingContext): void;
14437
15340
  }
15341
+ /**
15342
+ * Registers the Rectangle class with the type store for serialization support.
15343
+ * Safe to call multiple times; only the first call has an effect.
15344
+ */
15345
+ export function RegisterRectangle(): void;
15346
+
15347
+
15348
+ /**
15349
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15350
+ * Import "./rectangle.pure" for tree-shakeable, side-effect-free usage.
15351
+ */
14438
15352
 
14439
15353
 
14440
15354
  /**
@@ -14480,6 +15394,20 @@ declare namespace BABYLON.GUI {
14480
15394
  */
14481
15395
  static AddRadioButtonWithHeader(title: string, group: string, isChecked: boolean, onValueChanged: (button: RadioButton, value: boolean) => void): StackPanel;
14482
15396
  }
15397
+ /**
15398
+ * Registers the RadioButton class with the type store for serialization support.
15399
+ * Safe to call multiple times; only the first call has an effect.
15400
+ */
15401
+ export function RegisterRadioButton(): void;
15402
+
15403
+
15404
+ /**
15405
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15406
+ * Import "./radioButton.pure" for tree-shakeable, side-effect-free usage.
15407
+ */
15408
+
15409
+
15410
+ /** Pure barrel — re-exports only side-effect-free modules */
14483
15411
 
14484
15412
 
14485
15413
  /**
@@ -14553,6 +15481,17 @@ declare namespace BABYLON.GUI {
14553
15481
  protected _computeAlignment(): void;
14554
15482
  dispose(): void;
14555
15483
  }
15484
+ /**
15485
+ * Registers the MultiLine class with the type store for serialization support.
15486
+ * Safe to call multiple times; only the first call has an effect.
15487
+ */
15488
+ export function RegisterMultiLine(): void;
15489
+
15490
+
15491
+ /**
15492
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15493
+ * Import "./multiLine.pure" for tree-shakeable, side-effect-free usage.
15494
+ */
14556
15495
 
14557
15496
 
14558
15497
  /** Class used to render 2D lines */
@@ -14623,6 +15562,17 @@ declare namespace BABYLON.GUI {
14623
15562
  */
14624
15563
  _moveToProjectedPosition(projectedPosition: BABYLON.Vector3, end?: boolean): void;
14625
15564
  }
15565
+ /**
15566
+ * Registers the Line class with the type store for serialization support.
15567
+ * Safe to call multiple times; only the first call has an effect.
15568
+ */
15569
+ export function RegisterLine(): void;
15570
+
15571
+
15572
+ /**
15573
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15574
+ * Import "./line.pure" for tree-shakeable, side-effect-free usage.
15575
+ */
14626
15576
 
14627
15577
 
14628
15578
  /**
@@ -14757,6 +15707,17 @@ declare namespace BABYLON.GUI {
14757
15707
  selectAllText(): void;
14758
15708
  dispose(): void;
14759
15709
  }
15710
+ /**
15711
+ * Registers the InputTextArea class with the type store for serialization support.
15712
+ * Safe to call multiple times; only the first call has an effect.
15713
+ */
15714
+ export function RegisterInputTextArea(): void;
15715
+
15716
+
15717
+ /**
15718
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15719
+ * Import "./inputTextArea.pure" for tree-shakeable, side-effect-free usage.
15720
+ */
14760
15721
 
14761
15722
 
14762
15723
  /**
@@ -14952,6 +15913,17 @@ declare namespace BABYLON.GUI {
14952
15913
  private get isTextHighlightOn();
14953
15914
  dispose(): void;
14954
15915
  }
15916
+ /**
15917
+ * Registers the InputText class with the type store for serialization support.
15918
+ * Safe to call multiple times; only the first call has an effect.
15919
+ */
15920
+ export function RegisterInputText(): void;
15921
+
15922
+
15923
+ /**
15924
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15925
+ * Import "./inputText.pure" for tree-shakeable, side-effect-free usage.
15926
+ */
14955
15927
 
14956
15928
 
14957
15929
  /**
@@ -14961,6 +15933,17 @@ declare namespace BABYLON.GUI {
14961
15933
  protected _getTypeName(): string;
14962
15934
  protected _beforeRenderText(textWrapper: TextWrapper): TextWrapper;
14963
15935
  }
15936
+ /**
15937
+ * Registers the InputPassword class with the type store for serialization support.
15938
+ * Safe to call multiple times; only the first call has an effect.
15939
+ */
15940
+ export function RegisterInputPassword(): void;
15941
+
15942
+
15943
+ /**
15944
+ * Re-exports the pure implementation and applies the runtime registration side effect.
15945
+ * Import "./inputPassword.pure" for tree-shakeable, side-effect-free usage.
15946
+ */
14964
15947
 
14965
15948
 
14966
15949
 
@@ -15188,6 +16171,17 @@ declare namespace BABYLON.GUI {
15188
16171
  /** NINE_PATCH */
15189
16172
  static readonly STRETCH_NINE_PATCH = 4;
15190
16173
  }
16174
+ /**
16175
+ * Registers the Image class with the type store for serialization support.
16176
+ * Safe to call multiple times; only the first call has an effect.
16177
+ */
16178
+ export function RegisterImage(): void;
16179
+
16180
+
16181
+ /**
16182
+ * Re-exports the pure implementation and applies the runtime registration side effect.
16183
+ * Import "./image.pure" for tree-shakeable, side-effect-free usage.
16184
+ */
15191
16185
 
15192
16186
 
15193
16187
  /**
@@ -15334,6 +16328,17 @@ declare namespace BABYLON.GUI {
15334
16328
  */
15335
16329
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
15336
16330
  }
16331
+ /**
16332
+ * Registers the Grid class with the type store for serialization support.
16333
+ * Safe to call multiple times; only the first call has an effect.
16334
+ */
16335
+ export function RegisterGrid(): void;
16336
+
16337
+
16338
+ /**
16339
+ * Re-exports the pure implementation and applies the runtime registration side effect.
16340
+ * Import "./grid.pure" for tree-shakeable, side-effect-free usage.
16341
+ */
15337
16342
 
15338
16343
 
15339
16344
  /**
@@ -15390,6 +16395,17 @@ declare namespace BABYLON.GUI {
15390
16395
  */
15391
16396
  _onPointerDown(target: Control, coordinates: BABYLON.Vector2, pointerId: number, buttonIndex: number, pi: BABYLON.PointerInfoBase): boolean;
15392
16397
  }
16398
+ /**
16399
+ * Registers the FocusableButton class with the type store for serialization support.
16400
+ * Safe to call multiple times; only the first call has an effect.
16401
+ */
16402
+ export function RegisterFocusableButton(): void;
16403
+
16404
+
16405
+ /**
16406
+ * Re-exports the pure implementation and applies the runtime registration side effect.
16407
+ * Import "./focusableButton.pure" for tree-shakeable, side-effect-free usage.
16408
+ */
15393
16409
 
15394
16410
 
15395
16411
  /** Class used to create 2D ellipse containers */
@@ -15414,6 +16430,17 @@ declare namespace BABYLON.GUI {
15414
16430
  protected _clipForChildren(context: BABYLON.ICanvasRenderingContext): void;
15415
16431
  _renderHighlightSpecific(context: BABYLON.ICanvasRenderingContext): void;
15416
16432
  }
16433
+ /**
16434
+ * Registers the Ellipse class with the type store for serialization support.
16435
+ * Safe to call multiple times; only the first call has an effect.
16436
+ */
16437
+ export function RegisterEllipse(): void;
16438
+
16439
+
16440
+ /**
16441
+ * Re-exports the pure implementation and applies the runtime registration side effect.
16442
+ * Import "./ellipse.pure" for tree-shakeable, side-effect-free usage.
16443
+ */
15417
16444
 
15418
16445
 
15419
16446
  /** Class used to render a grid */
@@ -15467,6 +16494,17 @@ declare namespace BABYLON.GUI {
15467
16494
  _draw(context: BABYLON.ICanvasRenderingContext): void;
15468
16495
  protected _getTypeName(): string;
15469
16496
  }
16497
+ /**
16498
+ * Registers the DisplayGrid class with the type store for serialization support.
16499
+ * Safe to call multiple times; only the first call has an effect.
16500
+ */
16501
+ export function RegisterDisplayGrid(): void;
16502
+
16503
+
16504
+ /**
16505
+ * Re-exports the pure implementation and applies the runtime registration side effect.
16506
+ * Import "./displayGrid.pure" for tree-shakeable, side-effect-free usage.
16507
+ */
15470
16508
 
15471
16509
 
15472
16510
  /**
@@ -16395,6 +17433,17 @@ declare namespace BABYLON.GUI {
16395
17433
  */
16396
17434
  isReady(): boolean;
16397
17435
  }
17436
+ /**
17437
+ * Registers the Control class with the type store for serialization support.
17438
+ * Safe to call multiple times; only the first call has an effect.
17439
+ */
17440
+ export function RegisterControl(): void;
17441
+
17442
+
17443
+ /**
17444
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17445
+ * Import "./control.pure" for tree-shakeable, side-effect-free usage.
17446
+ */
16398
17447
 
16399
17448
 
16400
17449
  /**
@@ -16567,6 +17616,17 @@ declare namespace BABYLON.GUI {
16567
17616
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture, urlRewriter?: (url: string) => string): void;
16568
17617
  isReady(): boolean;
16569
17618
  }
17619
+ /**
17620
+ * Registers the Container class with the type store for serialization support.
17621
+ * Safe to call multiple times; only the first call has an effect.
17622
+ */
17623
+ export function RegisterContainer(): void;
17624
+
17625
+
17626
+ /**
17627
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17628
+ * Import "./container.pure" for tree-shakeable, side-effect-free usage.
17629
+ */
16570
17630
 
16571
17631
 
16572
17632
  /** Class used to create color pickers */
@@ -16662,6 +17722,17 @@ declare namespace BABYLON.GUI {
16662
17722
  pickedColor: string;
16663
17723
  }>;
16664
17724
  }
17725
+ /**
17726
+ * Registers the ColorPicker class with the type store for serialization support.
17727
+ * Safe to call multiple times; only the first call has an effect.
17728
+ */
17729
+ export function RegisterColorPicker(): void;
17730
+
17731
+
17732
+ /**
17733
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17734
+ * Import "./colorpicker.pure" for tree-shakeable, side-effect-free usage.
17735
+ */
16665
17736
 
16666
17737
 
16667
17738
  /**
@@ -16711,6 +17782,17 @@ declare namespace BABYLON.GUI {
16711
17782
  */
16712
17783
  static AddCheckBoxWithHeader(title: string, onValueChanged: (value: boolean) => void): StackPanel;
16713
17784
  }
17785
+ /**
17786
+ * Registers the Checkbox class with the type store for serialization support.
17787
+ * Safe to call multiple times; only the first call has an effect.
17788
+ */
17789
+ export function RegisterCheckbox(): void;
17790
+
17791
+
17792
+ /**
17793
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17794
+ * Import "./checkbox.pure" for tree-shakeable, side-effect-free usage.
17795
+ */
16714
17796
 
16715
17797
 
16716
17798
  /**
@@ -16813,6 +17895,17 @@ declare namespace BABYLON.GUI {
16813
17895
  */
16814
17896
  static CreateImageWithCenterTextButton(name: string, text: string, imageUrl: string): Button;
16815
17897
  }
17898
+ /**
17899
+ * Registers the Button class with the type store for serialization support.
17900
+ * Safe to call multiple times; only the first call has an effect.
17901
+ */
17902
+ export function RegisterButton(): void;
17903
+
17904
+
17905
+ /**
17906
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17907
+ * Import "./button.pure" for tree-shakeable, side-effect-free usage.
17908
+ */
16816
17909
 
16817
17910
 
16818
17911
  /**
@@ -16856,6 +17949,17 @@ declare namespace BABYLON.GUI {
16856
17949
  /** @internal */
16857
17950
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
16858
17951
  }
17952
+ /**
17953
+ * Registers the Slider class with the type store for serialization support.
17954
+ * Safe to call multiple times; only the first call has an effect.
17955
+ */
17956
+ export function RegisterSlider(): void;
17957
+
17958
+
17959
+ /**
17960
+ * Re-exports the pure implementation and applies the runtime registration side effect.
17961
+ * Import "./slider.pure" for tree-shakeable, side-effect-free usage.
17962
+ */
16859
17963
 
16860
17964
 
16861
17965
  /**
@@ -16900,6 +18004,20 @@ declare namespace BABYLON.GUI {
16900
18004
  serialize(serializationObject: any): void;
16901
18005
  _parseFromContent(serializationObject: any, host: AdvancedDynamicTexture): void;
16902
18006
  }
18007
+ /**
18008
+ * Registers the ScrollBar class with the type store for serialization support.
18009
+ * Safe to call multiple times; only the first call has an effect.
18010
+ */
18011
+ export function RegisterScrollBar(): void;
18012
+
18013
+
18014
+ /**
18015
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18016
+ * Import "./scrollBar.pure" for tree-shakeable, side-effect-free usage.
18017
+ */
18018
+
18019
+
18020
+ /** Pure barrel — re-exports only side-effect-free modules */
16903
18021
 
16904
18022
 
16905
18023
  /**
@@ -17008,6 +18126,17 @@ declare namespace BABYLON.GUI {
17008
18126
  */
17009
18127
  _parseFromContent(serializedObject: any, host: AdvancedDynamicTexture): void;
17010
18128
  }
18129
+ /**
18130
+ * Registers the ImageBasedSlider class with the type store for serialization support.
18131
+ * Safe to call multiple times; only the first call has an effect.
18132
+ */
18133
+ export function RegisterImageBasedSlider(): void;
18134
+
18135
+
18136
+ /**
18137
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18138
+ * Import "./imageBasedSlider.pure" for tree-shakeable, side-effect-free usage.
18139
+ */
17011
18140
 
17012
18141
 
17013
18142
  /**
@@ -17305,6 +18434,23 @@ declare namespace BABYLON.GUI {
17305
18434
  /** Releases associated resources */
17306
18435
  dispose(): void;
17307
18436
  }
18437
+ /**
18438
+ * Registers the ScrollViewer class with the type store for serialization support.
18439
+ * Safe to call multiple times; only the first call has an effect.
18440
+ */
18441
+ export function RegisterScrollViewer(): void;
18442
+
18443
+
18444
+ /**
18445
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18446
+ * Import "./scrollViewer.pure" for tree-shakeable, side-effect-free usage.
18447
+ */
18448
+
18449
+
18450
+ /** Pure barrel — re-exports only side-effect-free modules */
18451
+
18452
+
18453
+ /** Pure barrel — re-exports only side-effect-free modules */
17308
18454
 
17309
18455
 
17310
18456
  /**
@@ -17358,6 +18504,17 @@ declare namespace BABYLON.GUI {
17358
18504
  */
17359
18505
  parse(serializationObject: any): void;
17360
18506
  }
18507
+ /**
18508
+ * Registers the RadialGradient class with the type store for serialization support.
18509
+ * Safe to call multiple times; only the first call has an effect.
18510
+ */
18511
+ export function RegisterRadialGradient(): void;
18512
+
18513
+
18514
+ /**
18515
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18516
+ * Import "./RadialGradient.pure" for tree-shakeable, side-effect-free usage.
18517
+ */
17361
18518
 
17362
18519
 
17363
18520
  /**
@@ -17403,6 +18560,17 @@ declare namespace BABYLON.GUI {
17403
18560
  */
17404
18561
  parse(serializationObject: any): void;
17405
18562
  }
18563
+ /**
18564
+ * Registers the LinearGradient class with the type store for serialization support.
18565
+ * Safe to call multiple times; only the first call has an effect.
18566
+ */
18567
+ export function RegisterLinearGradient(): void;
18568
+
18569
+
18570
+ /**
18571
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18572
+ * Import "./LinearGradient.pure" for tree-shakeable, side-effect-free usage.
18573
+ */
17406
18574
 
17407
18575
 
17408
18576
  /**
@@ -17511,6 +18679,20 @@ declare namespace BABYLON.GUI {
17511
18679
  get output(): BABYLON.NodeRenderGraphConnectionPoint;
17512
18680
  protected _buildBlock(state: BABYLON.NodeRenderGraphBuildState): void;
17513
18681
  }
18682
+ /**
18683
+ * Registers the NodeRenderGraphGUIBlock class with the type store for serialization support.
18684
+ * Safe to call multiple times; only the first call has an effect.
18685
+ */
18686
+ export function RegisterNodeRenderGraphGUIBlock(): void;
18687
+
18688
+
18689
+ /**
18690
+ * Re-exports the pure implementation and applies the runtime registration side effect.
18691
+ * Import "./renderGraphGUIBlock.pure" for tree-shakeable, side-effect-free usage.
18692
+ */
18693
+
18694
+
18695
+ /** Pure barrel — re-exports only side-effect-free modules */
17514
18696
 
17515
18697
 
17516
18698
  /**