@newkrok/nape-js 3.4.2 → 3.4.3

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.
package/dist/index.d.ts CHANGED
@@ -140,21 +140,88 @@ declare class ZPP_Contact {
140
140
  }
141
141
 
142
142
  /**
143
- * Core engine module — manages access to the compiled nape namespace.
143
+ * Callback event types.
144
144
  *
145
- * The nape-compiled.js file is generated by the prebuild script from the
146
- * original AMD module. It evaluates synchronously on import, so the
147
- * namespace is available immediately.
145
+ * - `BEGIN` — interaction just started
146
+ * - `ONGOING` interaction continues
147
+ * - `END` — interaction just ended
148
+ * - `WAKE` — body/constraint woke up
149
+ * - `SLEEP` — body/constraint went to sleep
150
+ * - `BREAK` — constraint was broken
151
+ * - `PRE` — pre-interaction callback
152
+ *
153
+ * Converted from nape-compiled.js lines 516–657.
148
154
  */
155
+ declare class CbEvent {
156
+ static __name__: string[];
157
+ constructor();
158
+ static get BEGIN(): CbEvent;
159
+ static get ONGOING(): CbEvent;
160
+ static get END(): CbEvent;
161
+ static get WAKE(): CbEvent;
162
+ static get SLEEP(): CbEvent;
163
+ static get BREAK(): CbEvent;
164
+ static get PRE(): CbEvent;
165
+ static get_BEGIN(): CbEvent;
166
+ static get_ONGOING(): CbEvent;
167
+ static get_END(): CbEvent;
168
+ static get_WAKE(): CbEvent;
169
+ static get_SLEEP(): CbEvent;
170
+ static get_BREAK(): CbEvent;
171
+ static get_PRE(): CbEvent;
172
+ toString(): string;
173
+ }
174
+
149
175
  /**
150
- * Returns the internal nape namespace object.
176
+ * ZPP_CbType — Internal callback type for the nape physics engine.
151
177
  *
152
- * All wrapper classes use this to access the underlying Haxe-compiled
153
- * constructors and prototypes.
178
+ * Manages three types of listener lists (interaction, body, constraint)
179
+ * with priority-ordered insertion. Tracks interactors and constraints
180
+ * that use this callback type, and invalidates callback sets on change.
154
181
  *
155
- * @internal
182
+ * Converted from nape-compiled.js lines 48256–48482.
156
183
  */
157
- declare function getNape(): any;
184
+ type Any$15 = any;
185
+ declare class ZPP_CbType {
186
+ static __name__: string[];
187
+ static _zpp: Any$15;
188
+ static ANY_SHAPE: Any$15;
189
+ static ANY_BODY: Any$15;
190
+ static ANY_COMPOUND: Any$15;
191
+ static ANY_CONSTRAINT: Any$15;
192
+ /**
193
+ * Initialize ANY_* singleton CbTypes. Called once from compiled factory.
194
+ */
195
+ static _initEnums(nape: Any$15): void;
196
+ outer: Any$15;
197
+ userData: Any$15;
198
+ id: number;
199
+ cbsets: Any$15;
200
+ interactors: Any$15;
201
+ wrap_interactors: Any$15;
202
+ constraints: Any$15;
203
+ wrap_constraints: Any$15;
204
+ listeners: Any$15;
205
+ bodylisteners: Any$15;
206
+ conlisteners: Any$15;
207
+ __class__: Any$15;
208
+ constructor();
209
+ /** Sort comparator by id. */
210
+ static setlt(a: ZPP_CbType, b: ZPP_CbType): boolean;
211
+ addInteractor(intx: Any$15): void;
212
+ remInteractor(intx: Any$15): void;
213
+ addConstraint(con: Any$15): void;
214
+ remConstraint(con: Any$15): void;
215
+ addint(x: Any$15): void;
216
+ removeint(x: Any$15): void;
217
+ invalidateint(): void;
218
+ addbody(x: Any$15): void;
219
+ removebody(x: Any$15): void;
220
+ invalidatebody(): void;
221
+ addconstraint(x: Any$15): void;
222
+ removeconstraint(x: Any$15): void;
223
+ invalidateconstraint(): void;
224
+ }
158
225
 
159
226
  /**
160
227
  * ZPP_Vec2 — Internal 2D vector AND intrusive linked list for the nape physics engine.
@@ -166,13 +233,13 @@ declare function getNape(): any;
166
233
  *
167
234
  * Converted from nape-compiled.js lines 83820–84273, 134996.
168
235
  */
169
- type Any$15 = any;
236
+ type Any$14 = any;
170
237
  declare class ZPP_Vec2 {
171
238
  static zpp_pool: ZPP_Vec2 | null;
172
239
  static __name__: string[];
173
- static _nape: Any$15;
174
- static _zpp: Any$15;
175
- static _wrapFn: ((zpp: ZPP_Vec2) => Any$15) | null;
240
+ static _nape: Any$14;
241
+ static _zpp: Any$14;
242
+ static _wrapFn: ((zpp: ZPP_Vec2) => Any$14) | null;
176
243
  x: number;
177
244
  y: number;
178
245
  next: ZPP_Vec2 | null;
@@ -181,18 +248,18 @@ declare class ZPP_Vec2 {
181
248
  pushmod: boolean;
182
249
  _inuse: boolean;
183
250
  weak: boolean;
184
- outer: Any$15;
251
+ outer: Any$14;
185
252
  _immutable: boolean;
186
253
  _isimmutable: (() => void) | null;
187
254
  _validate: (() => void) | null;
188
255
  _invalidate: ((self: ZPP_Vec2) => void) | null;
189
- __class__: Any$15;
256
+ __class__: Any$14;
190
257
  /** Static factory with optional pooling and immutability. */
191
258
  static get(x: number, y: number, immutable?: boolean): ZPP_Vec2;
192
259
  validate(): void;
193
260
  invalidate(): void;
194
261
  immutable(): void;
195
- wrapper(): Any$15;
262
+ wrapper(): Any$14;
196
263
  free(): void;
197
264
  alloc(): void;
198
265
  elem(): ZPP_Vec2;
@@ -336,6 +403,137 @@ declare class Vec2 {
336
403
  /** @internal Opaque handle for any Haxe-compiled nape object. */
337
404
  type NapeInner = any;
338
405
 
406
+ type Any$13 = any;
407
+ /**
408
+ * Callback type — used to tag interactors so that listeners
409
+ * can filter which interactions they respond to.
410
+ *
411
+ * Converted from nape-compiled.js lines 689–770.
412
+ */
413
+ declare class CbType {
414
+ static __name__: string[];
415
+ zpp_inner: ZPP_CbType;
416
+ get _inner(): NapeInner;
417
+ constructor();
418
+ static get ANY_BODY(): CbType;
419
+ static get ANY_CONSTRAINT(): CbType;
420
+ static get ANY_SHAPE(): CbType;
421
+ static get ANY_COMPOUND(): CbType;
422
+ static get_ANY_BODY(): CbType;
423
+ static get_ANY_CONSTRAINT(): CbType;
424
+ static get_ANY_SHAPE(): CbType;
425
+ static get_ANY_COMPOUND(): CbType;
426
+ get id(): number;
427
+ get userData(): Any$13;
428
+ get interactors(): Any$13;
429
+ get constraints(): Any$13;
430
+ including(includes: Any$13): Any$13;
431
+ excluding(excludes: Any$13): Any$13;
432
+ toString(): string;
433
+ static _wrap(inner: any): CbType;
434
+ }
435
+
436
+ /**
437
+ * Listener type classification.
438
+ *
439
+ * - `BODY` — body event listener
440
+ * - `CONSTRAINT` — constraint event listener
441
+ * - `INTERACTION` — interaction event listener
442
+ * - `PRE` — pre-interaction listener
443
+ *
444
+ * Converted from nape-compiled.js lines 2554–2646.
445
+ */
446
+ declare class ListenerType {
447
+ static __name__: string[];
448
+ static BODY: ListenerType | null;
449
+ static CONSTRAINT: ListenerType | null;
450
+ static INTERACTION: ListenerType | null;
451
+ static PRE: ListenerType | null;
452
+ constructor();
453
+ static get_BODY(): ListenerType;
454
+ static get_CONSTRAINT(): ListenerType;
455
+ static get_INTERACTION(): ListenerType;
456
+ static get_PRE(): ListenerType;
457
+ toString(): string;
458
+ }
459
+
460
+ /**
461
+ * Arbiter type classification.
462
+ *
463
+ * - `COLLISION` — collision arbiter
464
+ * - `SENSOR` — sensor arbiter
465
+ * - `FLUID` — fluid arbiter
466
+ *
467
+ * Converted from nape-compiled.js lines 11653–11725.
468
+ */
469
+ declare class ArbiterType {
470
+ static __name__: string[];
471
+ static COLLISION: ArbiterType | null;
472
+ static SENSOR: ArbiterType | null;
473
+ static FLUID: ArbiterType | null;
474
+ constructor();
475
+ static get_COLLISION(): ArbiterType;
476
+ static get_SENSOR(): ArbiterType;
477
+ static get_FLUID(): ArbiterType;
478
+ toString(): string;
479
+ }
480
+
481
+ /**
482
+ * Body type enumeration.
483
+ *
484
+ * - `STATIC` — immovable, infinite mass (walls, floors)
485
+ * - `DYNAMIC` — fully simulated (default)
486
+ * - `KINEMATIC` — moves only via velocity, not affected by forces
487
+ *
488
+ * Converted from nape-compiled.js lines 24640–24705.
489
+ */
490
+ declare class BodyType {
491
+ static __name__: string[];
492
+ constructor();
493
+ static get STATIC(): BodyType;
494
+ static get DYNAMIC(): BodyType;
495
+ static get KINEMATIC(): BodyType;
496
+ static get_STATIC(): BodyType;
497
+ static get_DYNAMIC(): BodyType;
498
+ static get_KINEMATIC(): BodyType;
499
+ toString(): string;
500
+ }
501
+
502
+ /**
503
+ * Shape type classification.
504
+ *
505
+ * - `CIRCLE` — circle shape
506
+ * - `POLYGON` — polygon shape
507
+ *
508
+ * Converted from nape-compiled.js lines 30435–30482.
509
+ */
510
+ declare class ShapeType {
511
+ static __name__: string[];
512
+ constructor();
513
+ static get CIRCLE(): ShapeType;
514
+ static get POLYGON(): ShapeType;
515
+ static get_CIRCLE(): ShapeType;
516
+ static get_POLYGON(): ShapeType;
517
+ toString(): string;
518
+ }
519
+
520
+ /**
521
+ * Core engine module — manages access to the compiled nape namespace.
522
+ *
523
+ * The nape-compiled.js file is generated by the prebuild script from the
524
+ * original AMD module. It evaluates synchronously on import, so the
525
+ * namespace is available immediately.
526
+ */
527
+ /**
528
+ * Returns the internal nape namespace object.
529
+ *
530
+ * All wrapper classes use this to access the underlying Haxe-compiled
531
+ * constructors and prototypes.
532
+ *
533
+ * @internal
534
+ */
535
+ declare function getNape(): any;
536
+
339
537
  /**
340
538
  * ZPP_Vec3 — Internal 3D vector for the nape physics engine.
341
539
  *
@@ -344,20 +542,20 @@ type NapeInner = any;
344
542
  *
345
543
  * Converted from nape-compiled.js lines 83412–83434.
346
544
  */
347
- type Any$14 = any;
545
+ type Any$12 = any;
348
546
  declare class ZPP_Vec3 {
349
547
  static __name__: string[];
350
- static _zpp: Any$14;
351
- static _wrapFn: ((zpp: ZPP_Vec3) => Any$14) | null;
352
- outer: Any$14;
548
+ static _zpp: Any$12;
549
+ static _wrapFn: ((zpp: ZPP_Vec3) => Any$12) | null;
550
+ outer: Any$12;
353
551
  x: number;
354
552
  y: number;
355
553
  z: number;
356
554
  immutable: boolean;
357
555
  _validate: (() => void) | null;
358
- __class__: Any$14;
556
+ __class__: Any$12;
359
557
  validate(): void;
360
- wrapper(): Any$14;
558
+ wrapper(): Any$12;
361
559
  }
362
560
 
363
561
  /**
@@ -421,13 +619,13 @@ declare class Vec3 {
421
619
  *
422
620
  * Converted from nape-compiled.js lines 73495–73561, 133826.
423
621
  */
424
- type Any$13 = any;
622
+ type Any$11 = any;
425
623
  declare class ZPP_Mat23 {
426
624
  static __name__: string[];
427
- static _nape: Any$13;
428
- static _wrapFn: ((zpp: ZPP_Mat23) => Any$13) | null;
625
+ static _nape: Any$11;
626
+ static _wrapFn: ((zpp: ZPP_Mat23) => Any$11) | null;
429
627
  static zpp_pool: ZPP_Mat23 | null;
430
- outer: Any$13;
628
+ outer: Any$11;
431
629
  a: number;
432
630
  b: number;
433
631
  c: number;
@@ -436,13 +634,13 @@ declare class ZPP_Mat23 {
436
634
  ty: number;
437
635
  _invalidate: (() => void) | null;
438
636
  next: ZPP_Mat23 | null;
439
- __class__: Any$13;
637
+ __class__: Any$11;
440
638
  /** Static factory with pooling. */
441
639
  static get(): ZPP_Mat23;
442
640
  /** Create an identity matrix from pool. */
443
641
  static identity(): ZPP_Mat23;
444
642
  /** Create a public wrapper, recycling any existing inner. */
445
- wrapper(): Any$13;
643
+ wrapper(): Any$11;
446
644
  invalidate(): void;
447
645
  set(m: ZPP_Mat23): void;
448
646
  setas(a: number, b: number, c: number, d: number, tx: number, ty: number): void;
@@ -503,13 +701,13 @@ declare class Mat23 {
503
701
  *
504
702
  * Converted from nape-compiled.js lines 69554–69563.
505
703
  */
506
- type Any$12 = any;
704
+ type Any$10 = any;
507
705
  declare class ZPP_GeomPoly {
508
706
  static __name__: string[];
509
- outer: Any$12;
510
- vertices: Any$12;
511
- __class__: Any$12;
512
- constructor(outer?: Any$12);
707
+ outer: Any$10;
708
+ vertices: Any$10;
709
+ __class__: Any$10;
710
+ constructor(outer?: Any$10);
513
711
  }
514
712
 
515
713
  /**
@@ -533,7 +731,7 @@ declare class Winding {
533
731
  toString(): string;
534
732
  }
535
733
 
536
- type Any$11 = any;
734
+ type Any$$ = any;
537
735
  /**
538
736
  * A polygon represented as a circular doubly-linked list of vertices.
539
737
  *
@@ -548,8 +746,8 @@ declare class GeomPoly {
548
746
  zpp_inner: ZPP_GeomPoly;
549
747
  zpp_pool: GeomPoly | null;
550
748
  zpp_disp: boolean;
551
- get _inner(): Any$11;
552
- constructor(vertices?: Any$11);
749
+ get _inner(): Any$$;
750
+ constructor(vertices?: Any$$);
553
751
  private _checkDisposed;
554
752
  /** @internal Get compiled ZPP_GeomVert class */
555
753
  private static _gvClass;
@@ -575,12 +773,12 @@ declare class GeomPoly {
575
773
  private static _addVertices;
576
774
  /** @internal After copying, dispose weak Vec2 inputs */
577
775
  private static _disposeWeakInputs;
578
- static get(vertices?: Any$11): GeomPoly;
776
+ static get(vertices?: Any$$): GeomPoly;
579
777
  empty(): boolean;
580
778
  size(): number;
581
- iterator(): Any$11;
582
- forwardIterator(): Any$11;
583
- backwardsIterator(): Any$11;
779
+ iterator(): Any$$;
780
+ forwardIterator(): Any$$;
781
+ backwardsIterator(): Any$$;
584
782
  current(): Vec2;
585
783
  push(vertex: Vec2): this;
586
784
  pop(): this;
@@ -593,7 +791,7 @@ declare class GeomPoly {
593
791
  copy(): GeomPoly;
594
792
  dispose(): void;
595
793
  area(): number;
596
- winding(): Any$11;
794
+ winding(): Any$$;
597
795
  contains(point: Vec2): boolean;
598
796
  isClockwise(): boolean;
599
797
  isConvex(): boolean;
@@ -601,14 +799,14 @@ declare class GeomPoly {
601
799
  isMonotone(): boolean;
602
800
  isDegenerate(): boolean;
603
801
  simplify(epsilon: number): GeomPoly;
604
- simpleDecomposition(output?: Any$11): Any$11;
605
- monotoneDecomposition(output?: Any$11): Any$11;
606
- convexDecomposition(delaunay?: boolean, output?: Any$11): Any$11;
607
- triangularDecomposition(delaunay?: boolean, output?: Any$11): Any$11;
802
+ simpleDecomposition(output?: Any$$): Any$$;
803
+ monotoneDecomposition(output?: Any$$): Any$$;
804
+ convexDecomposition(delaunay?: boolean, output?: Any$$): Any$$;
805
+ triangularDecomposition(delaunay?: boolean, output?: Any$$): Any$$;
608
806
  inflate(inflation: number): GeomPoly;
609
- cut(start: Vec2, end: Vec2, boundedStart?: boolean, boundedEnd?: boolean, output?: Any$11): Any$11;
610
- transform(matrix: Any$11): this;
611
- bounds(): Any$11;
807
+ cut(start: Vec2, end: Vec2, boundedStart?: boolean, boundedEnd?: boolean, output?: Any$$): Any$$;
808
+ transform(matrix: Any$$): this;
809
+ bounds(): Any$$;
612
810
  top(): Vec2;
613
811
  bottom(): Vec2;
614
812
  left(): Vec2;
@@ -624,30 +822,30 @@ declare class GeomPoly {
624
822
  *
625
823
  * Converted from nape-compiled.js lines 63546–63965, 134951.
626
824
  */
627
- type Any$10 = any;
825
+ type Any$_ = any;
628
826
  declare class ZPP_AABB {
629
827
  static zpp_pool: ZPP_AABB | null;
630
828
  static __name__: string[];
631
- static _nape: Any$10;
632
- static _zpp: Any$10;
633
- static _wrapFn: ((zpp: ZPP_AABB) => Any$10) | null;
829
+ static _nape: Any$_;
830
+ static _zpp: Any$_;
831
+ static _wrapFn: ((zpp: ZPP_AABB) => Any$_) | null;
634
832
  _invalidate: ((self: ZPP_AABB) => void) | null;
635
833
  _validate: (() => void) | null;
636
834
  _immutable: boolean;
637
- outer: Any$10;
835
+ outer: Any$_;
638
836
  next: ZPP_AABB | null;
639
837
  minx: number;
640
838
  miny: number;
641
839
  maxx: number;
642
840
  maxy: number;
643
- wrap_min: Any$10;
644
- wrap_max: Any$10;
645
- __class__: Any$10;
841
+ wrap_min: Any$_;
842
+ wrap_max: Any$_;
843
+ __class__: Any$_;
646
844
  /** Static factory with pooling. */
647
845
  static get(minx: number, miny: number, maxx: number, maxy: number): ZPP_AABB;
648
846
  validate(): void;
649
847
  invalidate(): void;
650
- wrapper(): Any$10;
848
+ wrapper(): Any$_;
651
849
  alloc(): void;
652
850
  free(): void;
653
851
  copy(): ZPP_AABB;
@@ -658,10 +856,10 @@ declare class ZPP_AABB {
658
856
  private static _makeVec2Wrapper;
659
857
  getmin(): void;
660
858
  dom_min(): void;
661
- mod_min(min: Any$10): void;
859
+ mod_min(min: Any$_): void;
662
860
  getmax(): void;
663
861
  dom_max(): void;
664
- mod_max(max: Any$10): void;
862
+ mod_max(max: Any$_): void;
665
863
  intersectX(x: ZPP_AABB): boolean;
666
864
  intersectY(x: ZPP_AABB): boolean;
667
865
  intersect(x: ZPP_AABB): boolean;
@@ -725,18 +923,18 @@ declare class AABB {
725
923
  *
726
924
  * Converted from nape-compiled.js lines 72949–72972.
727
925
  */
728
- type Any$$ = any;
926
+ type Any$Z = any;
729
927
  declare class ZPP_MatMN {
730
928
  static __name__: string[];
731
- outer: Any$$;
929
+ outer: Any$Z;
732
930
  m: number;
733
931
  n: number;
734
932
  x: number[];
735
- __class__: Any$$;
933
+ __class__: Any$Z;
736
934
  constructor(m: number, n: number);
737
935
  }
738
936
 
739
- type Any$_ = any;
937
+ type Any$Y = any;
740
938
  /**
741
939
  * Variable-sized M×N matrix.
742
940
  *
@@ -747,7 +945,7 @@ declare class MatMN {
747
945
  zpp_inner: ZPP_MatMN;
748
946
  get _inner(): NapeInner;
749
947
  constructor(rows: number, cols: number);
750
- static _wrap(inner: Any$_): MatMN;
948
+ static _wrap(inner: Any$Y): MatMN;
751
949
  get rows(): number;
752
950
  get cols(): number;
753
951
  x(row: number, col: number): number;
@@ -757,7 +955,7 @@ declare class MatMN {
757
955
  mul(matrix: MatMN): MatMN;
758
956
  }
759
957
 
760
- type Any$Z = any;
958
+ type Any$X = any;
761
959
  /**
762
960
  * Isosurface extraction using the marching squares algorithm.
763
961
  *
@@ -780,7 +978,7 @@ declare class MarchingSquares {
780
978
  * @param output - Optional GeomPolyList to populate. If null, a new one is created.
781
979
  * @returns The populated GeomPolyList.
782
980
  */
783
- static run(iso: (x: number, y: number) => number, bounds: AABB, cellsize: Vec2, quality?: number, subgrid?: Vec2 | null, combine?: boolean, output?: Any$Z): Any$Z;
981
+ static run(iso: (x: number, y: number) => number, bounds: AABB, cellsize: Vec2, quality?: number, subgrid?: Vec2 | null, combine?: boolean, output?: Any$X): Any$X;
784
982
  }
785
983
 
786
984
  /**
@@ -792,7 +990,7 @@ declare class MarchingSquares {
792
990
  * Converted from nape-compiled.js lines 31239–33172, 65896.
793
991
  */
794
992
 
795
- type Any$Y = any;
993
+ type Any$W = any;
796
994
  declare class ZPP_Ray {
797
995
  static __name__: string[];
798
996
  static internal: boolean;
@@ -807,30 +1005,30 @@ declare class ZPP_Ray {
807
1005
  dirx: number;
808
1006
  originy: number;
809
1007
  originx: number;
810
- userData: Any$Y;
1008
+ userData: Any$W;
811
1009
  maxdist: number;
812
- direction: Any$Y;
813
- origin: Any$Y;
814
- __class__: Any$Y;
1010
+ direction: Any$W;
1011
+ origin: Any$W;
1012
+ __class__: Any$W;
815
1013
  constructor();
816
- origin_invalidate(x: Any$Y): void;
817
- direction_invalidate(x: Any$Y): void;
1014
+ origin_invalidate(x: Any$W): void;
1015
+ direction_invalidate(x: Any$W): void;
818
1016
  invalidate_dir(): void;
819
1017
  validate_dir(): void;
820
1018
  rayAABB(): ZPP_AABB;
821
- aabbtest(a: Any$Y): boolean;
822
- aabbsect(a: Any$Y): number;
1019
+ aabbtest(a: Any$W): boolean;
1020
+ aabbsect(a: Any$W): number;
823
1021
  private static _allocVec2;
824
1022
  private static _validateWorldCOM;
825
1023
  private _circleNormal;
826
1024
  private static _insertSorted;
827
- circlesect(c: Any$Y, inner: boolean, mint: number): Any$Y;
828
- circlesect2(c: Any$Y, inner: boolean, list: Any$Y): void;
829
- polysect(p: Any$Y, inner: boolean, mint: number): Any$Y;
830
- polysect2(p: Any$Y, inner: boolean, list: Any$Y): void;
1025
+ circlesect(c: Any$W, inner: boolean, mint: number): Any$W;
1026
+ circlesect2(c: Any$W, inner: boolean, list: Any$W): void;
1027
+ polysect(p: Any$W, inner: boolean, mint: number): Any$W;
1028
+ polysect2(p: Any$W, inner: boolean, list: Any$W): void;
831
1029
  }
832
1030
 
833
- type Any$X = any;
1031
+ type Any$V = any;
834
1032
  /**
835
1033
  * A ray for raycasting queries.
836
1034
  *
@@ -844,7 +1042,7 @@ declare class Ray {
844
1042
  get _inner(): this;
845
1043
  constructor(origin: Vec2, direction: Vec2);
846
1044
  /** @internal */
847
- static _wrap(inner: Any$X): Ray;
1045
+ static _wrap(inner: Any$V): Ray;
848
1046
  static fromSegment(start: Vec2, end: Vec2): Ray;
849
1047
  get origin(): Vec2;
850
1048
  set origin(value: Vec2);
@@ -862,7 +1060,7 @@ declare class Ray {
862
1060
  /** @internal */ set_direction(v: Vec2): Vec2;
863
1061
  /** @internal */ get_maxDistance(): number;
864
1062
  /** @internal */ set_maxDistance(v: number): number;
865
- /** @internal */ get_userData(): Any$X;
1063
+ /** @internal */ get_userData(): Any$V;
866
1064
  }
867
1065
 
868
1066
  /**
@@ -873,31 +1071,31 @@ declare class Ray {
873
1071
  *
874
1072
  * Converted from nape-compiled.js lines 38897–39076, 86860–86862.
875
1073
  */
876
- type Any$W = any;
1074
+ type Any$U = any;
877
1075
  declare class ZPP_ConvexRayResult {
878
1076
  static __name__: string[];
879
1077
  static rayPool: ZPP_ConvexRayResult | null;
880
1078
  static convexPool: ZPP_ConvexRayResult | null;
881
1079
  static internal: boolean;
882
- static _createRayResult: (() => Any$W) | null;
883
- static _createConvexResult: (() => Any$W) | null;
884
- normal: Any$W;
885
- shape: Any$W;
886
- convex: Any$W;
887
- position: Any$W;
888
- ray: Any$W;
1080
+ static _createRayResult: (() => Any$U) | null;
1081
+ static _createConvexResult: (() => Any$U) | null;
1082
+ normal: Any$U;
1083
+ shape: Any$U;
1084
+ convex: Any$U;
1085
+ position: Any$U;
1086
+ ray: Any$U;
889
1087
  inner: boolean;
890
1088
  next: ZPP_ConvexRayResult | null;
891
1089
  toiDistance: number;
892
- __class__: Any$W;
893
- static getRay(normal: Any$W, time: number, inner: boolean, shape: Any$W): Any$W;
894
- static getConvex(normal: Any$W, position: Any$W, toiDistance: number, shape: Any$W): Any$W;
1090
+ __class__: Any$U;
1091
+ static getRay(normal: Any$U, time: number, inner: boolean, shape: Any$U): Any$U;
1092
+ static getConvex(normal: Any$U, position: Any$U, toiDistance: number, shape: Any$U): Any$U;
895
1093
  disposed(): void;
896
1094
  free(): void;
897
1095
  private static _disposeVec2;
898
1096
  }
899
1097
 
900
- type Any$V = any;
1098
+ type Any$T = any;
901
1099
  /**
902
1100
  * Result from a convex-cast query.
903
1101
  *
@@ -912,18 +1110,18 @@ declare class ConvexResult {
912
1110
  get _inner(): NapeInner;
913
1111
  constructor();
914
1112
  /** @internal */
915
- static _wrap(inner: Any$V): ConvexResult;
1113
+ static _wrap(inner: Any$T): ConvexResult;
916
1114
  get normal(): Vec2;
917
1115
  get position(): Vec2;
918
1116
  get toi(): number;
919
- get shape(): Any$V;
1117
+ get shape(): Any$T;
920
1118
  dispose(): void;
921
1119
  toString(): string;
922
1120
  /** @internal */
923
1121
  private _disposed;
924
1122
  }
925
1123
 
926
- type Any$U = any;
1124
+ type Any$S = any;
927
1125
  /**
928
1126
  * Result from a raycast query.
929
1127
  *
@@ -938,11 +1136,11 @@ declare class RayResult {
938
1136
  get _inner(): NapeInner;
939
1137
  constructor();
940
1138
  /** @internal */
941
- static _wrap(inner: Any$U): RayResult;
1139
+ static _wrap(inner: Any$S): RayResult;
942
1140
  get normal(): Vec2;
943
1141
  get distance(): number;
944
1142
  get inner(): boolean;
945
- get shape(): Any$U;
1143
+ get shape(): Any$S;
946
1144
  dispose(): void;
947
1145
  toString(): string;
948
1146
  /** @internal */
@@ -1010,7 +1208,7 @@ declare class NapeList<T> implements Iterable<T> {
1010
1208
  *
1011
1209
  * Converted from nape-compiled.js lines 21424–21827.
1012
1210
  */
1013
- type Any$T = any;
1211
+ type Any$R = any;
1014
1212
  declare class ZPP_Constraint {
1015
1213
  static __name__: string[];
1016
1214
  /**
@@ -1018,13 +1216,13 @@ declare class ZPP_Constraint {
1018
1216
  * _nape = the `nape` public namespace (for CbTypeIterator in copyto)
1019
1217
  * _zpp = the `zpp_nape` internal namespace (for ZNPList_*, ZPP_CbSet, etc.)
1020
1218
  */
1021
- static _nape: Any$T;
1022
- static _zpp: Any$T;
1023
- outer: Any$T;
1219
+ static _nape: Any$R;
1220
+ static _zpp: Any$R;
1221
+ outer: Any$R;
1024
1222
  id: number;
1025
- userData: Any$T;
1026
- compound: Any$T;
1027
- space: Any$T;
1223
+ userData: Any$R;
1224
+ compound: Any$R;
1225
+ space: Any$R;
1028
1226
  active: boolean;
1029
1227
  stiff: boolean;
1030
1228
  frequency: number;
@@ -1034,14 +1232,14 @@ declare class ZPP_Constraint {
1034
1232
  breakUnderForce: boolean;
1035
1233
  breakUnderError: boolean;
1036
1234
  removeOnBreak: boolean;
1037
- component: Any$T;
1235
+ component: Any$R;
1038
1236
  ignore: boolean;
1039
1237
  __velocity: boolean;
1040
- cbTypes: Any$T;
1041
- cbSet: Any$T;
1042
- wrap_cbTypes: Any$T;
1238
+ cbTypes: Any$R;
1239
+ cbSet: Any$R;
1240
+ wrap_cbTypes: Any$R;
1043
1241
  pre_dt: number;
1044
- __class__: Any$T;
1242
+ __class__: Any$R;
1045
1243
  constructor();
1046
1244
  /**
1047
1245
  * Initialise base constraint fields.
@@ -1059,18 +1257,18 @@ declare class ZPP_Constraint {
1059
1257
  forest(): void;
1060
1258
  broken(): void;
1061
1259
  warmStart(): void;
1062
- draw(_g: Any$T): void;
1063
- pair_exists(_id: Any$T, _di: Any$T): boolean;
1260
+ draw(_g: Any$R): void;
1261
+ pair_exists(_id: Any$R, _di: Any$R): boolean;
1064
1262
  preStep(_dt: number): boolean;
1065
1263
  applyImpulseVel(): boolean;
1066
1264
  applyImpulsePos(): boolean;
1067
- copy(_dict?: Any$T, _todo?: Any$T): Any$T;
1265
+ copy(_dict?: Any$R, _todo?: Any$R): Any$R;
1068
1266
  immutable_midstep(name: string): void;
1069
1267
  setupcbTypes(): void;
1070
1268
  immutable_cbTypes(): void;
1071
- wrap_cbTypes_subber(pcb: Any$T): void;
1072
- wrap_cbTypes_adder(cb: Any$T): boolean;
1073
- insert_cbtype(cb: Any$T): void;
1269
+ wrap_cbTypes_subber(pcb: Any$R): void;
1270
+ wrap_cbTypes_adder(cb: Any$R): boolean;
1271
+ insert_cbtype(cb: Any$R): void;
1074
1272
  alloc_cbSet(): void;
1075
1273
  dealloc_cbSet(): void;
1076
1274
  activate(): void;
@@ -1080,12 +1278,12 @@ declare class ZPP_Constraint {
1080
1278
  activeInSpace(): void;
1081
1279
  inactiveOrOutSpace(): void;
1082
1280
  wake(): void;
1083
- copyto(ret: Any$T): void;
1084
- static _findRoot(comp: Any$T): Any$T;
1085
- static _unionComponents(a: Any$T, b: Any$T): void;
1281
+ copyto(ret: Any$R): void;
1282
+ static _findRoot(comp: Any$R): Any$R;
1283
+ static _unionComponents(a: Any$R, b: Any$R): void;
1086
1284
  }
1087
1285
 
1088
- type Any$S = any;
1286
+ type Any$Q = any;
1089
1287
  /**
1090
1288
  * Base class for all constraints / joints.
1091
1289
  *
@@ -1103,16 +1301,16 @@ declare class Constraint {
1103
1301
  * are fully modernized. Also serves as backward compat for compiled code.
1104
1302
  * @internal
1105
1303
  */
1106
- _inner: Any$S;
1304
+ _inner: Any$Q;
1107
1305
  debugDraw: boolean;
1108
1306
  /** @internal */
1109
1307
  protected constructor();
1110
1308
  /** @internal */
1111
- static _wrap(inner: Any$S): Constraint;
1309
+ static _wrap(inner: Any$Q): Constraint;
1112
1310
  get space(): Space | null;
1113
1311
  set space(value: Space | null);
1114
- get compound(): Any$S;
1115
- set compound(value: Any$S);
1312
+ get compound(): Any$Q;
1313
+ set compound(value: Any$Q);
1116
1314
  get active(): boolean;
1117
1315
  set active(value: boolean);
1118
1316
  get ignore(): boolean;
@@ -1135,17 +1333,17 @@ declare class Constraint {
1135
1333
  set removeOnBreak(value: boolean);
1136
1334
  get isSleeping(): boolean;
1137
1335
  get userData(): Record<string, unknown>;
1138
- get cbTypes(): Any$S;
1139
- impulse(): Any$S;
1140
- bodyImpulse(_body: Body): Any$S;
1336
+ get cbTypes(): Any$Q;
1337
+ impulse(): Any$Q;
1338
+ bodyImpulse(_body: Body): Any$Q;
1141
1339
  visitBodies(_fn: (body: Body) => void): void;
1142
1340
  copy(): Constraint;
1143
1341
  toString(): string;
1144
- /** @internal */ get_userData(): Any$S;
1145
- /** @internal */ get_compound(): Any$S;
1146
- /** @internal */ set_compound(v: Any$S): Any$S;
1147
- /** @internal */ get_space(): Any$S;
1148
- /** @internal */ set_space(v: Any$S): Any$S;
1342
+ /** @internal */ get_userData(): Any$Q;
1343
+ /** @internal */ get_compound(): Any$Q;
1344
+ /** @internal */ set_compound(v: Any$Q): Any$Q;
1345
+ /** @internal */ get_space(): Any$Q;
1346
+ /** @internal */ set_space(v: Any$Q): Any$Q;
1149
1347
  /** @internal */ get_isSleeping(): boolean;
1150
1348
  /** @internal */ get_active(): boolean;
1151
1349
  /** @internal */ set_active(v: boolean): boolean;
@@ -1167,7 +1365,7 @@ declare class Constraint {
1167
1365
  /** @internal */ set_breakUnderError(v: boolean): boolean;
1168
1366
  /** @internal */ get_removeOnBreak(): boolean;
1169
1367
  /** @internal */ set_removeOnBreak(v: boolean): boolean;
1170
- /** @internal */ get_cbTypes(): Any$S;
1368
+ /** @internal */ get_cbTypes(): Any$Q;
1171
1369
  }
1172
1370
 
1173
1371
  /**
@@ -1178,33 +1376,33 @@ declare class Constraint {
1178
1376
  *
1179
1377
  * Converted from nape-compiled.js lines 63255–63366, 135329.
1180
1378
  */
1181
- type Any$R = any;
1379
+ type Any$P = any;
1182
1380
  declare class ZPP_InteractionFilter {
1183
1381
  static zpp_pool: ZPP_InteractionFilter | null;
1184
1382
  static __name__: string[];
1185
- static _nape: Any$R;
1186
- static _zpp: Any$R;
1187
- static _wrapFn: ((zpp: ZPP_InteractionFilter) => Any$R) | null;
1383
+ static _nape: Any$P;
1384
+ static _zpp: Any$P;
1385
+ static _wrapFn: ((zpp: ZPP_InteractionFilter) => Any$P) | null;
1188
1386
  collisionGroup: number;
1189
1387
  collisionMask: number;
1190
1388
  sensorGroup: number;
1191
1389
  sensorMask: number;
1192
1390
  fluidGroup: number;
1193
1391
  fluidMask: number;
1194
- shapes: Any$R;
1195
- wrap_shapes: Any$R;
1196
- outer: Any$R;
1197
- userData: Any$R;
1392
+ shapes: Any$P;
1393
+ wrap_shapes: Any$P;
1394
+ outer: Any$P;
1395
+ userData: Any$P;
1198
1396
  next: ZPP_InteractionFilter | null;
1199
- __class__: Any$R;
1397
+ __class__: Any$P;
1200
1398
  constructor();
1201
1399
  /** Create/return the public nape.dynamics.InteractionFilter wrapper. */
1202
- wrapper(): Any$R;
1400
+ wrapper(): Any$P;
1203
1401
  free(): void;
1204
1402
  alloc(): void;
1205
1403
  feature_cons(): void;
1206
- addShape(shape: Any$R): void;
1207
- remShape(shape: Any$R): void;
1404
+ addShape(shape: Any$P): void;
1405
+ remShape(shape: Any$P): void;
1208
1406
  /** Create a copy with object pooling. */
1209
1407
  copy(): ZPP_InteractionFilter;
1210
1408
  /** Test whether two filters allow collision between their shapes. */
@@ -1268,35 +1466,35 @@ declare class InteractionFilter {
1268
1466
  *
1269
1467
  * Converted from nape-compiled.js lines 44587–44794, 133299–133300.
1270
1468
  */
1271
- type Any$Q = any;
1469
+ type Any$O = any;
1272
1470
  declare class ZPP_Callback {
1273
1471
  static __name__: string[];
1274
- static _nape: Any$Q;
1275
- static _zpp: Any$Q;
1472
+ static _nape: Any$O;
1473
+ static _zpp: Any$O;
1276
1474
  static internal: boolean;
1277
1475
  static zpp_pool: ZPP_Callback | null;
1278
- outer_body: Any$Q;
1279
- outer_con: Any$Q;
1280
- outer_int: Any$Q;
1476
+ outer_body: Any$O;
1477
+ outer_con: Any$O;
1478
+ outer_int: Any$O;
1281
1479
  event: number;
1282
- listener: Any$Q;
1283
- space: Any$Q;
1480
+ listener: Any$O;
1481
+ space: Any$O;
1284
1482
  index: number;
1285
1483
  next: ZPP_Callback | null;
1286
1484
  prev: ZPP_Callback | null;
1287
1485
  length: number;
1288
- int1: Any$Q;
1289
- int2: Any$Q;
1290
- set: Any$Q;
1291
- wrap_arbiters: Any$Q;
1292
- pre_arbiter: Any$Q;
1486
+ int1: Any$O;
1487
+ int2: Any$O;
1488
+ set: Any$O;
1489
+ wrap_arbiters: Any$O;
1490
+ pre_arbiter: Any$O;
1293
1491
  pre_swapped: boolean;
1294
- body: Any$Q;
1295
- constraint: Any$Q;
1296
- __class__: Any$Q;
1297
- wrapper_body(): Any$Q;
1298
- wrapper_con(): Any$Q;
1299
- wrapper_int(): Any$Q;
1492
+ body: Any$O;
1493
+ constraint: Any$O;
1494
+ __class__: Any$O;
1495
+ wrapper_body(): Any$O;
1496
+ wrapper_con(): Any$O;
1497
+ wrapper_int(): Any$O;
1300
1498
  push(obj: ZPP_Callback): void;
1301
1499
  push_rev(obj: ZPP_Callback): void;
1302
1500
  pop(): ZPP_Callback;
@@ -1324,138 +1522,138 @@ declare class ZPP_Callback {
1324
1522
  * sleeping/waking, and callback dispatch.
1325
1523
  */
1326
1524
 
1327
- type Any$P = any;
1525
+ type Any$N = any;
1328
1526
  declare class ZPP_Space {
1329
1527
  static __name__: string[];
1330
- static _zpp: Any$P;
1331
- static _nape: Any$P;
1332
- outer: Any$P;
1333
- userData: Any$P;
1334
- gravityx: Any$P;
1335
- gravityy: Any$P;
1336
- wrap_gravity: Any$P;
1337
- bodies: Any$P;
1338
- wrap_bodies: Any$P;
1339
- compounds: Any$P;
1340
- wrap_compounds: Any$P;
1341
- constraints: Any$P;
1342
- wrap_constraints: Any$P;
1343
- kinematics: Any$P;
1344
- bphase: Any$P;
1345
- __static: Any$P;
1346
- global_lin_drag: Any$P;
1347
- global_ang_drag: Any$P;
1348
- stamp: Any$P;
1349
- midstep: Any$P;
1350
- time: Any$P;
1351
- sortcontacts: Any$P;
1352
- c_arbiters_true: Any$P;
1353
- c_arbiters_false: Any$P;
1354
- f_arbiters: Any$P;
1355
- s_arbiters: Any$P;
1356
- wrap_arbiters: Any$P;
1357
- live: Any$P;
1358
- wrap_live: Any$P;
1359
- live_constraints: Any$P;
1360
- wrap_livecon: Any$P;
1361
- staticsleep: Any$P;
1362
- islands: Any$P;
1363
- listeners: Any$P;
1364
- wrap_listeners: Any$P;
1365
- callbacks: Any$P;
1366
- callbackset_list: Any$P;
1367
- cbsets: Any$P;
1368
- convexShapeList: Any$P;
1369
- pre_dt: Any$P;
1370
- toiEvents: Any$P;
1371
- continuous: Any$P;
1372
- precb: Any$P;
1373
- prelisteners: Any$P;
1374
- mrca1: Any$P;
1375
- mrca2: Any$P;
1376
- __class__: Any$P;
1377
- constructor(gravity?: Any$P, broadphase?: Any$P);
1528
+ static _zpp: Any$N;
1529
+ static _nape: Any$N;
1530
+ outer: Any$N;
1531
+ userData: Any$N;
1532
+ gravityx: Any$N;
1533
+ gravityy: Any$N;
1534
+ wrap_gravity: Any$N;
1535
+ bodies: Any$N;
1536
+ wrap_bodies: Any$N;
1537
+ compounds: Any$N;
1538
+ wrap_compounds: Any$N;
1539
+ constraints: Any$N;
1540
+ wrap_constraints: Any$N;
1541
+ kinematics: Any$N;
1542
+ bphase: Any$N;
1543
+ __static: Any$N;
1544
+ global_lin_drag: Any$N;
1545
+ global_ang_drag: Any$N;
1546
+ stamp: Any$N;
1547
+ midstep: Any$N;
1548
+ time: Any$N;
1549
+ sortcontacts: Any$N;
1550
+ c_arbiters_true: Any$N;
1551
+ c_arbiters_false: Any$N;
1552
+ f_arbiters: Any$N;
1553
+ s_arbiters: Any$N;
1554
+ wrap_arbiters: Any$N;
1555
+ live: Any$N;
1556
+ wrap_live: Any$N;
1557
+ live_constraints: Any$N;
1558
+ wrap_livecon: Any$N;
1559
+ staticsleep: Any$N;
1560
+ islands: Any$N;
1561
+ listeners: Any$N;
1562
+ wrap_listeners: Any$N;
1563
+ callbacks: Any$N;
1564
+ callbackset_list: Any$N;
1565
+ cbsets: Any$N;
1566
+ convexShapeList: Any$N;
1567
+ pre_dt: Any$N;
1568
+ toiEvents: Any$N;
1569
+ continuous: Any$N;
1570
+ precb: Any$N;
1571
+ prelisteners: Any$N;
1572
+ mrca1: Any$N;
1573
+ mrca2: Any$N;
1574
+ __class__: Any$N;
1575
+ constructor(gravity?: Any$N, broadphase?: Any$N);
1378
1576
  getgravity(): void;
1379
- gravity_invalidate(x: Any$P): void;
1577
+ gravity_invalidate(x: Any$N): void;
1380
1578
  gravity_validate(): void;
1381
1579
  clear(): void;
1382
- bodies_adder(x: Any$P): boolean;
1383
- bodies_subber(x: Any$P): void;
1580
+ bodies_adder(x: Any$N): boolean;
1581
+ bodies_subber(x: Any$N): void;
1384
1582
  bodies_modifiable(): void;
1385
- compounds_adder(x: Any$P): boolean;
1386
- compounds_subber(x: Any$P): void;
1583
+ compounds_adder(x: Any$N): boolean;
1584
+ compounds_subber(x: Any$N): void;
1387
1585
  compounds_modifiable(): void;
1388
- constraints_adder(x: Any$P): boolean;
1389
- constraints_subber(x: Any$P): void;
1586
+ constraints_adder(x: Any$N): boolean;
1587
+ constraints_subber(x: Any$N): void;
1390
1588
  constraints_modifiable(): void;
1391
- listeners_adder(x: Any$P): boolean;
1392
- listeners_subber(x: Any$P): void;
1589
+ listeners_adder(x: Any$N): boolean;
1590
+ listeners_subber(x: Any$N): void;
1393
1591
  listeners_modifiable(): void;
1394
- revoke_listener(x: Any$P): void;
1395
- unrevoke_listener(x: Any$P): void;
1396
- addListener(x: Any$P): void;
1397
- remListener(x: Any$P): void;
1398
- add_callbackset(cb: Any$P): void;
1399
- remove_callbackset(cb: Any$P): void;
1400
- transmitType(p: Any$P, new_type: Any$P): void;
1401
- added_shape(s: Any$P, dontwake: Any$P): void;
1402
- removed_shape(s: Any$P, deleting: Any$P): void;
1403
- addConstraint(con: Any$P): void;
1404
- remConstraint(con: Any$P): void;
1405
- addCompound(x: Any$P): void;
1406
- remCompound(x: Any$P): void;
1407
- addBody(body: Any$P, flag?: Any$P): void;
1408
- remBody(body: Any$P, flag?: Any$P): void;
1409
- shapesUnderPoint(x: Any$P, y: Any$P, filter: Any$P, output: Any$P): any;
1410
- bodiesUnderPoint(x: Any$P, y: Any$P, filter: Any$P, output: Any$P): any;
1411
- shapesInAABB(aabb: Any$P, strict: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1412
- bodiesInAABB(aabb: Any$P, strict: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1413
- shapesInCircle(pos: Any$P, rad: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1414
- bodiesInCircle(pos: Any$P, rad: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1415
- shapesInShape(shape: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1416
- bodiesInShape(shape: Any$P, cont: Any$P, filter: Any$P, output: Any$P): any;
1417
- rayCast(ray: Any$P, inner: Any$P, filter: Any$P): any;
1418
- rayMultiCast(ray: Any$P, inner: Any$P, filter: Any$P, output: Any$P): any;
1419
- convexCast(shape: Any$P, deltaTime: Any$P, filter: Any$P, dynamics: Any$P): any;
1420
- prepareCast(s: Any$P): void;
1421
- convexMultiCast(shape: Any$P, deltaTime: Any$P, filter: Any$P, dynamics: Any$P, output: Any$P): any;
1422
- push_callback(i: Any$P): ZPP_Callback;
1423
- step(deltaTime: Any$P, velocityIterations: Any$P, positionIterations: Any$P): void;
1424
- continuousCollisions(deltaTime: Any$P): void;
1425
- continuousEvent(s1: Any$P, s2: Any$P, stat: Any$P, in_arb: Any$P, _: Any$P): any;
1426
- bodyCbWake(b: Any$P): void;
1427
- bodyCbSleep(b: Any$P): void;
1428
- constraintCbWake(con: Any$P): void;
1429
- constraintCbSleep(con: Any$P): void;
1430
- constraintCbBreak(con: Any$P): void;
1431
- nullListenerType(cb1: Any$P, cb2: Any$P): void;
1432
- nullInteractorType(intx: Any$P, me: Any$P): void;
1433
- freshListenerType(cb1: Any$P, cb2: Any$P): void;
1434
- freshInteractorType(intx: Any$P, me: Any$P): void;
1435
- wakeCompound(x: Any$P): void;
1436
- wakeIsland(i: Any$P): void;
1437
- non_inlined_wake(o: Any$P, fst?: Any$P): void;
1438
- really_wake(o: Any$P, fst?: Any$P): void;
1439
- wake_constraint(con: Any$P, fst?: Any$P): boolean;
1440
- doForests(dt: Any$P): void;
1592
+ revoke_listener(x: Any$N): void;
1593
+ unrevoke_listener(x: Any$N): void;
1594
+ addListener(x: Any$N): void;
1595
+ remListener(x: Any$N): void;
1596
+ add_callbackset(cb: Any$N): void;
1597
+ remove_callbackset(cb: Any$N): void;
1598
+ transmitType(p: Any$N, new_type: Any$N): void;
1599
+ added_shape(s: Any$N, dontwake: Any$N): void;
1600
+ removed_shape(s: Any$N, deleting: Any$N): void;
1601
+ addConstraint(con: Any$N): void;
1602
+ remConstraint(con: Any$N): void;
1603
+ addCompound(x: Any$N): void;
1604
+ remCompound(x: Any$N): void;
1605
+ addBody(body: Any$N, flag?: Any$N): void;
1606
+ remBody(body: Any$N, flag?: Any$N): void;
1607
+ shapesUnderPoint(x: Any$N, y: Any$N, filter: Any$N, output: Any$N): any;
1608
+ bodiesUnderPoint(x: Any$N, y: Any$N, filter: Any$N, output: Any$N): any;
1609
+ shapesInAABB(aabb: Any$N, strict: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1610
+ bodiesInAABB(aabb: Any$N, strict: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1611
+ shapesInCircle(pos: Any$N, rad: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1612
+ bodiesInCircle(pos: Any$N, rad: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1613
+ shapesInShape(shape: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1614
+ bodiesInShape(shape: Any$N, cont: Any$N, filter: Any$N, output: Any$N): any;
1615
+ rayCast(ray: Any$N, inner: Any$N, filter: Any$N): any;
1616
+ rayMultiCast(ray: Any$N, inner: Any$N, filter: Any$N, output: Any$N): any;
1617
+ convexCast(shape: Any$N, deltaTime: Any$N, filter: Any$N, dynamics: Any$N): any;
1618
+ prepareCast(s: Any$N): void;
1619
+ convexMultiCast(shape: Any$N, deltaTime: Any$N, filter: Any$N, dynamics: Any$N, output: Any$N): any;
1620
+ push_callback(i: Any$N): ZPP_Callback;
1621
+ step(deltaTime: Any$N, velocityIterations: Any$N, positionIterations: Any$N): void;
1622
+ continuousCollisions(deltaTime: Any$N): void;
1623
+ continuousEvent(s1: Any$N, s2: Any$N, stat: Any$N, in_arb: Any$N, _: Any$N): any;
1624
+ bodyCbWake(b: Any$N): void;
1625
+ bodyCbSleep(b: Any$N): void;
1626
+ constraintCbWake(con: Any$N): void;
1627
+ constraintCbSleep(con: Any$N): void;
1628
+ constraintCbBreak(con: Any$N): void;
1629
+ nullListenerType(cb1: Any$N, cb2: Any$N): void;
1630
+ nullInteractorType(intx: Any$N, me: Any$N): void;
1631
+ freshListenerType(cb1: Any$N, cb2: Any$N): void;
1632
+ freshInteractorType(intx: Any$N, me: Any$N): void;
1633
+ wakeCompound(x: Any$N): void;
1634
+ wakeIsland(i: Any$N): void;
1635
+ non_inlined_wake(o: Any$N, fst?: Any$N): void;
1636
+ really_wake(o: Any$N, fst?: Any$N): void;
1637
+ wake_constraint(con: Any$N, fst?: Any$N): boolean;
1638
+ doForests(dt: Any$N): void;
1441
1639
  sleepArbiters(): void;
1442
- static_validation(body: Any$P): void;
1640
+ static_validation(body: Any$N): void;
1443
1641
  validation(): void;
1444
- updateVel(dt: Any$P): void;
1445
- updatePos(dt: Any$P): void;
1446
- presteparb(arb: Any$P, dt: Any$P, cont?: Any$P): boolean;
1447
- prestep(dt: Any$P): void;
1642
+ updateVel(dt: Any$N): void;
1643
+ updatePos(dt: Any$N): void;
1644
+ presteparb(arb: Any$N, dt: Any$N, cont?: Any$N): boolean;
1645
+ prestep(dt: Any$N): void;
1448
1646
  warmStart(): void;
1449
- iterateVel(times: Any$P): void;
1450
- iteratePos(times: Any$P): void;
1451
- group_ignore(s1: Any$P, s2: Any$P): boolean;
1452
- interactionType(s1: Any$P, s2: Any$P, b1: Any$P, b2: Any$P): 2 | 0 | 1 | -1;
1453
- narrowPhase(s1: Any$P, s2: Any$P, stat: Any$P, in_arb: Any$P, continuous: Any$P): any;
1454
- MRCA_chains(s1: Any$P, s2: Any$P): void;
1455
- inlined_MRCA_chains(s1: Any$P, s2: Any$P): void;
1647
+ iterateVel(times: Any$N): void;
1648
+ iteratePos(times: Any$N): void;
1649
+ group_ignore(s1: Any$N, s2: Any$N): boolean;
1650
+ interactionType(s1: Any$N, s2: Any$N, b1: Any$N, b2: Any$N): 2 | 0 | 1 | -1;
1651
+ narrowPhase(s1: Any$N, s2: Any$N, stat: Any$N, in_arb: Any$N, continuous: Any$N): any;
1652
+ MRCA_chains(s1: Any$N, s2: Any$N): void;
1653
+ inlined_MRCA_chains(s1: Any$N, s2: Any$N): void;
1456
1654
  }
1457
1655
 
1458
- type Any$O = any;
1656
+ type Any$M = any;
1459
1657
  /**
1460
1658
  * The physics world. Add bodies and constraints, then call `step()` each frame.
1461
1659
  *
@@ -1463,95 +1661,74 @@ type Any$O = any;
1463
1661
  */
1464
1662
  declare class Space {
1465
1663
  zpp_inner: ZPP_Space;
1466
- constructor(gravity?: Vec2, broadphase?: Any$O);
1664
+ constructor(gravity?: Vec2, broadphase?: Any$M);
1467
1665
  /** @internal */
1468
- get _inner(): Any$O;
1666
+ get _inner(): Any$M;
1469
1667
  /** @internal */
1470
1668
  static _wrap(inner: NapeInner): Space;
1471
1669
  get userData(): Record<string, unknown>;
1472
1670
  get gravity(): Vec2;
1473
1671
  set gravity(value: Vec2);
1474
- get broadphase(): Any$O;
1672
+ get broadphase(): Any$M;
1475
1673
  get sortContacts(): boolean;
1476
1674
  set sortContacts(value: boolean);
1477
1675
  get worldAngularDrag(): number;
1478
1676
  set worldAngularDrag(value: number);
1479
1677
  get worldLinearDrag(): number;
1480
1678
  set worldLinearDrag(value: number);
1481
- get compounds(): Any$O;
1482
- get bodies(): Any$O;
1483
- get liveBodies(): Any$O;
1484
- get constraints(): Any$O;
1485
- get liveConstraints(): Any$O;
1679
+ get compounds(): Any$M;
1680
+ get bodies(): Any$M;
1681
+ get liveBodies(): Any$M;
1682
+ get constraints(): Any$M;
1683
+ get liveConstraints(): Any$M;
1486
1684
  get world(): Body;
1487
- get arbiters(): Any$O;
1488
- get listeners(): Any$O;
1685
+ get arbiters(): Any$M;
1686
+ get listeners(): Any$M;
1489
1687
  get timeStamp(): number;
1490
1688
  get elapsedTime(): number;
1491
1689
  step(deltaTime: number, velocityIterations?: number, positionIterations?: number): void;
1492
1690
  clear(): void;
1493
1691
  visitBodies(lambda: (body: Body) => void): void;
1494
1692
  visitConstraints(lambda: (constraint: Constraint) => void): void;
1495
- visitCompounds(lambda: (compound: Any$O) => void): void;
1496
- interactionType(shape1: Shape, shape2: Shape): Any$O;
1497
- shapesUnderPoint(point: Vec2, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1498
- bodiesUnderPoint(point: Vec2, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1499
- shapesInAABB(aabb: AABB, containment?: boolean, strict?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1500
- bodiesInAABB(aabb: AABB, containment?: boolean, strict?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1501
- shapesInCircle(position: Vec2, radius: number, containment?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1502
- bodiesInCircle(position: Vec2, radius: number, containment?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1503
- shapesInShape(shape: Shape, containment?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1504
- bodiesInShape(shape: Shape, containment?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1505
- shapesInBody(body: Body, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1506
- bodiesInBody(body: Body, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1507
- convexCast(shape: Shape, deltaTime: number, liveSweep?: boolean, filter?: InteractionFilter | Any$O): Any$O;
1508
- convexMultiCast(shape: Shape, deltaTime: number, liveSweep?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1509
- rayCast(ray: Ray | Any$O, inner?: boolean, filter?: InteractionFilter | Any$O): Any$O;
1510
- rayMultiCast(ray: Ray | Any$O, inner?: boolean, filter?: InteractionFilter | Any$O, output?: Any$O): Any$O;
1693
+ visitCompounds(lambda: (compound: Any$M) => void): void;
1694
+ interactionType(shape1: Shape, shape2: Shape): Any$M;
1695
+ shapesUnderPoint(point: Vec2, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1696
+ bodiesUnderPoint(point: Vec2, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1697
+ shapesInAABB(aabb: AABB, containment?: boolean, strict?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1698
+ bodiesInAABB(aabb: AABB, containment?: boolean, strict?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1699
+ shapesInCircle(position: Vec2, radius: number, containment?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1700
+ bodiesInCircle(position: Vec2, radius: number, containment?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1701
+ shapesInShape(shape: Shape, containment?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1702
+ bodiesInShape(shape: Shape, containment?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1703
+ shapesInBody(body: Body, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1704
+ bodiesInBody(body: Body, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1705
+ convexCast(shape: Shape, deltaTime: number, liveSweep?: boolean, filter?: InteractionFilter | Any$M): Any$M;
1706
+ convexMultiCast(shape: Shape, deltaTime: number, liveSweep?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1707
+ rayCast(ray: Ray | Any$M, inner?: boolean, filter?: InteractionFilter | Any$M): Any$M;
1708
+ rayMultiCast(ray: Ray | Any$M, inner?: boolean, filter?: InteractionFilter | Any$M, output?: Any$M): Any$M;
1511
1709
  toString(): string;
1512
- /** @internal */ get_userData(): Any$O;
1513
- /** @internal */ get_gravity(): Any$O;
1514
- /** @internal */ set_gravity(v: Any$O): Any$O;
1515
- /** @internal */ get_broadphase(): Any$O;
1710
+ /** @internal */ get_userData(): Any$M;
1711
+ /** @internal */ get_gravity(): Any$M;
1712
+ /** @internal */ set_gravity(v: Any$M): Any$M;
1713
+ /** @internal */ get_broadphase(): Any$M;
1516
1714
  /** @internal */ get_sortContacts(): boolean;
1517
1715
  /** @internal */ set_sortContacts(v: boolean): boolean;
1518
1716
  /** @internal */ get_worldAngularDrag(): number;
1519
1717
  /** @internal */ set_worldAngularDrag(v: number): number;
1520
1718
  /** @internal */ get_worldLinearDrag(): number;
1521
1719
  /** @internal */ set_worldLinearDrag(v: number): number;
1522
- /** @internal */ get_compounds(): Any$O;
1523
- /** @internal */ get_bodies(): Any$O;
1524
- /** @internal */ get_liveBodies(): Any$O;
1525
- /** @internal */ get_constraints(): Any$O;
1526
- /** @internal */ get_liveConstraints(): Any$O;
1527
- /** @internal */ get_world(): Any$O;
1528
- /** @internal */ get_arbiters(): Any$O;
1529
- /** @internal */ get_listeners(): Any$O;
1720
+ /** @internal */ get_compounds(): Any$M;
1721
+ /** @internal */ get_bodies(): Any$M;
1722
+ /** @internal */ get_liveBodies(): Any$M;
1723
+ /** @internal */ get_constraints(): Any$M;
1724
+ /** @internal */ get_liveConstraints(): Any$M;
1725
+ /** @internal */ get_world(): Any$M;
1726
+ /** @internal */ get_arbiters(): Any$M;
1727
+ /** @internal */ get_listeners(): Any$M;
1530
1728
  /** @internal */ get_timeStamp(): number;
1531
1729
  /** @internal */ get_elapsedTime(): number;
1532
1730
  }
1533
1731
 
1534
- /**
1535
- * Body type enumeration.
1536
- *
1537
- * - `STATIC` — immovable, infinite mass (walls, floors)
1538
- * - `DYNAMIC` — fully simulated (default)
1539
- * - `KINEMATIC` — moves only via velocity, not affected by forces
1540
- *
1541
- * Converted from nape-compiled.js lines 24640–24705.
1542
- */
1543
- declare class BodyType {
1544
- static __name__: string[];
1545
- constructor();
1546
- static get STATIC(): BodyType;
1547
- static get DYNAMIC(): BodyType;
1548
- static get KINEMATIC(): BodyType;
1549
- static get_STATIC(): BodyType;
1550
- static get_DYNAMIC(): BodyType;
1551
- static get_KINEMATIC(): BodyType;
1552
- toString(): string;
1553
- }
1554
-
1555
1732
  /**
1556
1733
  * ZPP_InteractionGroup — Internal interaction group for the nape physics engine.
1557
1734
  *
@@ -1560,22 +1737,22 @@ declare class BodyType {
1560
1737
  *
1561
1738
  * Converted from nape-compiled.js lines 63367–63463, 135330–135331.
1562
1739
  */
1563
- type Any$N = any;
1740
+ type Any$L = any;
1564
1741
  declare class ZPP_InteractionGroup {
1565
1742
  static SHAPE: number;
1566
1743
  static BODY: number;
1567
1744
  static __name__: string[];
1568
- static _zpp: Any$N;
1569
- static _wrapFn: ((zpp: ZPP_InteractionGroup) => Any$N) | null;
1570
- outer: Any$N;
1745
+ static _zpp: Any$L;
1746
+ static _wrapFn: ((zpp: ZPP_InteractionGroup) => Any$L) | null;
1747
+ outer: Any$L;
1571
1748
  ignore: boolean;
1572
1749
  group: ZPP_InteractionGroup | null;
1573
- groups: Any$N;
1574
- wrap_groups: Any$N;
1575
- interactors: Any$N;
1576
- wrap_interactors: Any$N;
1750
+ groups: Any$L;
1751
+ wrap_groups: Any$L;
1752
+ interactors: Any$L;
1753
+ wrap_interactors: Any$L;
1577
1754
  depth: number;
1578
- __class__: Any$N;
1755
+ __class__: Any$L;
1579
1756
  constructor();
1580
1757
  /** Set or change the parent group. */
1581
1758
  setGroup(group: ZPP_InteractionGroup | null): void;
@@ -1586,9 +1763,9 @@ declare class ZPP_InteractionGroup {
1586
1763
  /** Remove a child group. */
1587
1764
  remGroup(group: ZPP_InteractionGroup): void;
1588
1765
  /** Register an interactor in this group. */
1589
- addInteractor(intx: Any$N): void;
1766
+ addInteractor(intx: Any$L): void;
1590
1767
  /** Unregister an interactor from this group. */
1591
- remInteractor(intx: Any$N, flag?: number): void;
1768
+ remInteractor(intx: Any$L, flag?: number): void;
1592
1769
  }
1593
1770
 
1594
1771
  /**
@@ -1633,6 +1810,8 @@ declare class InteractionGroup {
1633
1810
  * via `zpp_inner_i` (no compiled prototype delegation).
1634
1811
  */
1635
1812
  declare class Interactor {
1813
+ /** @internal – guards against direct instantiation (matches compiled zpp_internalAlloc pattern). */
1814
+ static zpp_internalAlloc: boolean;
1636
1815
  /**
1637
1816
  * @internal ZPP_Interactor-compatible object set by subclass constructors.
1638
1817
  * For fully modernized subclasses (Body, Compound): this is the ZPP_Body/ZPP_Compound.
@@ -1683,46 +1862,46 @@ declare class Interactor {
1683
1862
  * Converted from nape-compiled.js lines 52431–54547.
1684
1863
  */
1685
1864
 
1686
- type Any$M = any;
1865
+ type Any$K = any;
1687
1866
  declare class ZPP_Body {
1688
1867
  static __name__: string[];
1689
- static __super__: Any$M;
1868
+ static __super__: Any$K;
1690
1869
  /**
1691
1870
  * Namespace references, set by the compiled module after import.
1692
1871
  * _nape = the `nape` public namespace
1693
1872
  * _zpp = the `zpp_nape` internal namespace
1694
1873
  */
1695
- static _nape: Any$M;
1696
- static _zpp: Any$M;
1697
- static types: Any$M[];
1698
- static bodystack: Any$M;
1699
- static bodyset: Any$M;
1874
+ static _nape: Any$K;
1875
+ static _zpp: Any$K;
1876
+ static types: Any$K[];
1877
+ static bodystack: Any$K;
1878
+ static bodyset: Any$K;
1700
1879
  static cur_graph_depth: number;
1701
- static bodysetlt(a: Any$M, b: Any$M): boolean;
1702
- static __static(): Any$M;
1703
- outer_i: Any$M;
1880
+ static bodysetlt(a: Any$K, b: Any$K): boolean;
1881
+ static __static(): Any$K;
1882
+ outer_i: Any$K;
1704
1883
  id: number;
1705
- userData: Any$M;
1706
- ishape: Any$M;
1707
- ibody: Any$M;
1708
- icompound: Any$M;
1709
- wrap_cbTypes: Any$M;
1710
- cbSet: Any$M;
1711
- cbTypes: Any$M;
1712
- group: Any$M;
1713
- cbsets: Any$M;
1714
- outer: Any$M;
1884
+ userData: Any$K;
1885
+ ishape: Any$K;
1886
+ ibody: Any$K;
1887
+ icompound: Any$K;
1888
+ wrap_cbTypes: Any$K;
1889
+ cbSet: Any$K;
1890
+ cbTypes: Any$K;
1891
+ group: Any$K;
1892
+ cbsets: Any$K;
1893
+ outer: Any$K;
1715
1894
  world: boolean;
1716
1895
  type: number;
1717
- compound: Any$M;
1718
- shapes: Any$M;
1719
- wrap_shapes: Any$M;
1720
- space: Any$M;
1721
- arbiters: Any$M;
1722
- wrap_arbiters: Any$M;
1723
- constraints: Any$M;
1724
- wrap_constraints: Any$M;
1725
- component: Any$M;
1896
+ compound: Any$K;
1897
+ shapes: Any$K;
1898
+ wrap_shapes: Any$K;
1899
+ space: Any$K;
1900
+ arbiters: Any$K;
1901
+ wrap_arbiters: Any$K;
1902
+ constraints: Any$K;
1903
+ wrap_constraints: Any$K;
1904
+ component: Any$K;
1726
1905
  graph_depth: number;
1727
1906
  sweepTime: number;
1728
1907
  sweep_angvel: number;
@@ -1735,20 +1914,20 @@ declare class ZPP_Body {
1735
1914
  pre_posy: number;
1736
1915
  posx: number;
1737
1916
  posy: number;
1738
- wrap_pos: Any$M;
1917
+ wrap_pos: Any$K;
1739
1918
  velx: number;
1740
1919
  vely: number;
1741
- wrap_vel: Any$M;
1920
+ wrap_vel: Any$K;
1742
1921
  forcex: number;
1743
1922
  forcey: number;
1744
- wrap_force: Any$M;
1923
+ wrap_force: Any$K;
1745
1924
  kinvelx: number;
1746
1925
  kinvely: number;
1747
- wrap_kinvel: Any$M;
1926
+ wrap_kinvel: Any$K;
1748
1927
  svelx: number;
1749
1928
  svely: number;
1750
- wrap_svel: Any$M;
1751
- wrapcvel: Any$M;
1929
+ wrap_svel: Any$K;
1930
+ wrapcvel: Any$K;
1752
1931
  angvel: number;
1753
1932
  torque: number;
1754
1933
  kinangvel: number;
@@ -1785,9 +1964,9 @@ declare class ZPP_Body {
1785
1964
  worldCOMx: number;
1786
1965
  worldCOMy: number;
1787
1966
  zip_worldCOM: boolean;
1788
- wrap_localCOM: Any$M;
1789
- wrap_worldCOM: Any$M;
1790
- __class__: Any$M;
1967
+ wrap_localCOM: Any$K;
1968
+ wrap_worldCOM: Any$K;
1969
+ __class__: Any$K;
1791
1970
  constructor();
1792
1971
  isStatic(): boolean;
1793
1972
  isDynamic(): boolean;
@@ -1795,23 +1974,23 @@ declare class ZPP_Body {
1795
1974
  invalidate_type(): void;
1796
1975
  invalidate_shapes(): void;
1797
1976
  init_bodysetlist(): void;
1798
- connectedBodies_cont(b: Any$M): void;
1799
- connectedBodies(depth: number, output: Any$M): Any$M;
1800
- interactingBodies(type: number, output: Any$M): Any$M;
1977
+ connectedBodies_cont(b: Any$K): void;
1978
+ connectedBodies(depth: number, output: Any$K): Any$K;
1979
+ interactingBodies(type: number, output: Any$K): Any$K;
1801
1980
  atRest(dt: number): boolean;
1802
1981
  refreshArbiters(): void;
1803
1982
  sweepIntegrate(dt: number): void;
1804
- sweepValidate(s: Any$M): void;
1983
+ sweepValidate(s: Any$K): void;
1805
1984
  invalidate_pos(): void;
1806
- pos_invalidate(pos: Any$M): void;
1985
+ pos_invalidate(pos: Any$K): void;
1807
1986
  pos_validate(): void;
1808
- vel_invalidate(vel: Any$M): void;
1987
+ vel_invalidate(vel: Any$K): void;
1809
1988
  vel_validate(): void;
1810
- kinvel_invalidate(vel: Any$M): void;
1989
+ kinvel_invalidate(vel: Any$K): void;
1811
1990
  kinvel_validate(): void;
1812
- svel_invalidate(vel: Any$M): void;
1991
+ svel_invalidate(vel: Any$K): void;
1813
1992
  svel_validate(): void;
1814
- force_invalidate(force: Any$M): void;
1993
+ force_invalidate(force: Any$K): void;
1815
1994
  force_validate(): void;
1816
1995
  private _setupVec2Wrapper;
1817
1996
  setupPosition(): void;
@@ -1848,41 +2027,41 @@ declare class ZPP_Body {
1848
2027
  getworldCOM(): void;
1849
2028
  __immutable_midstep(): void;
1850
2029
  clear(): void;
1851
- shapes_adder(s: Any$M): boolean;
1852
- shapes_subber(s: Any$M): void;
1853
- shapes_invalidate(_param: Any$M): void;
2030
+ shapes_adder(s: Any$K): boolean;
2031
+ shapes_subber(s: Any$K): void;
2032
+ shapes_invalidate(_param: Any$K): void;
1854
2033
  shapes_modifiable(): void;
1855
2034
  addedToSpace(): void;
1856
2035
  removedFromSpace(): void;
1857
2036
  private _removeArbiterFromList;
1858
- copy(): Any$M;
2037
+ copy(): Any$K;
1859
2038
  wake: () => void;
1860
2039
  __iaddedToSpace: () => void;
1861
2040
  __iremovedFromSpace: () => void;
1862
2041
  immutable_midstep: (name: string) => void;
1863
- copyto: (ret: Any$M) => void;
1864
- insert_cbtype: (cb: Any$M) => void;
2042
+ copyto: (ret: Any$K) => void;
2043
+ insert_cbtype: (cb: Any$K) => void;
1865
2044
  alloc_cbSet: () => void;
1866
2045
  dealloc_cbSet: () => void;
1867
2046
  setupcbTypes: () => void;
1868
2047
  immutable_cbTypes: () => void;
1869
- wrap_cbTypes_subber: (pcb: Any$M) => void;
1870
- wrap_cbTypes_adder: (cb: Any$M) => void;
1871
- setGroup: (group: Any$M) => void;
1872
- lookup_group: () => Any$M;
1873
- getSpace: () => Any$M;
2048
+ wrap_cbTypes_subber: (pcb: Any$K) => void;
2049
+ wrap_cbTypes_adder: (cb: Any$K) => void;
2050
+ setGroup: (group: Any$K) => void;
2051
+ lookup_group: () => Any$K;
2052
+ getSpace: () => Any$K;
1874
2053
  isShape: () => boolean;
1875
2054
  isBody: () => boolean;
1876
2055
  isCompound: () => boolean;
1877
2056
  static _initialized: boolean;
1878
- static _init(zpp: Any$M, nape: Any$M): void;
2057
+ static _init(zpp: Any$K, nape: Any$K): void;
1879
2058
  /**
1880
2059
  * Initialize BodyType singleton enums. Called once from compiled factory.
1881
2060
  */
1882
- static _initEnums(nape: Any$M, ZPP_Flags: Any$M): void;
2061
+ static _initEnums(nape: Any$K, ZPP_Flags: Any$K): void;
1883
2062
  }
1884
2063
 
1885
- type Any$L = any;
2064
+ type Any$J = any;
1886
2065
  /**
1887
2066
  * A rigid body in the physics simulation.
1888
2067
  *
@@ -1890,7 +2069,7 @@ type Any$L = any;
1890
2069
  */
1891
2070
  declare class Body extends Interactor {
1892
2071
  static __name__: string[];
1893
- static __super__: Any$L;
2072
+ static __super__: Any$J;
1894
2073
  /** Direct access to the extracted internal ZPP_Body. */
1895
2074
  zpp_inner: ZPP_Body;
1896
2075
  debugDraw: boolean;
@@ -1942,47 +2121,47 @@ declare class Body extends Interactor {
1942
2121
  get shapes(): NapeList<Shape>;
1943
2122
  get space(): Space;
1944
2123
  set space(value: Space | null);
1945
- get compound(): Any$L;
1946
- set compound(value: Any$L);
2124
+ get compound(): Any$J;
2125
+ set compound(value: Any$J);
1947
2126
  get bounds(): AABB;
1948
2127
  get constraintVelocity(): Vec2;
1949
2128
  get localCOM(): Vec2;
1950
2129
  get worldCOM(): Vec2;
1951
- get massMode(): Any$L;
1952
- set massMode(value: Any$L);
1953
- get inertiaMode(): Any$L;
1954
- set inertiaMode(value: Any$L);
1955
- get gravMassMode(): Any$L;
1956
- set gravMassMode(value: Any$L);
2130
+ get massMode(): Any$J;
2131
+ set massMode(value: Any$J);
2132
+ get inertiaMode(): Any$J;
2133
+ set inertiaMode(value: Any$J);
2134
+ get gravMassMode(): Any$J;
2135
+ set gravMassMode(value: Any$J);
1957
2136
  copy(): Body;
1958
2137
  toString(): string;
1959
- get_type(): Any$L;
1960
- set_type(type: Any$L): Any$L;
1961
- get_shapes(): Any$L;
2138
+ get_type(): Any$J;
2139
+ set_type(type: Any$J): Any$J;
2140
+ get_shapes(): Any$J;
1962
2141
  get_isBullet(): boolean;
1963
2142
  set_isBullet(v: boolean): boolean;
1964
2143
  get_disableCCD(): boolean;
1965
2144
  set_disableCCD(v: boolean): boolean;
1966
- get_position(): Any$L;
1967
- set_position(position: Any$L): Any$L;
1968
- get_velocity(): Any$L;
1969
- set_velocity(velocity: Any$L): Any$L;
2145
+ get_position(): Any$J;
2146
+ set_position(position: Any$J): Any$J;
2147
+ get_velocity(): Any$J;
2148
+ set_velocity(velocity: Any$J): Any$J;
1970
2149
  get_rotation(): number;
1971
2150
  set_rotation(rotation: number): number;
1972
2151
  get_angularVel(): number;
1973
2152
  set_angularVel(angularVel: number): number;
1974
- get_kinematicVel(): Any$L;
1975
- set_kinematicVel(kinematicVel: Any$L): Any$L;
2153
+ get_kinematicVel(): Any$J;
2154
+ set_kinematicVel(kinematicVel: Any$J): Any$J;
1976
2155
  get_kinAngVel(): number;
1977
2156
  set_kinAngVel(kinAngVel: number): number;
1978
- get_surfaceVel(): Any$L;
1979
- set_surfaceVel(surfaceVel: Any$L): Any$L;
1980
- get_force(): Any$L;
1981
- set_force(force: Any$L): Any$L;
2157
+ get_surfaceVel(): Any$J;
2158
+ set_surfaceVel(surfaceVel: Any$J): Any$J;
2159
+ get_force(): Any$J;
2160
+ set_force(force: Any$J): Any$J;
1982
2161
  get_torque(): number;
1983
2162
  set_torque(torque: number): number;
1984
- get_bounds(): Any$L;
1985
- get_constraintVelocity(): Any$L;
2163
+ get_bounds(): Any$J;
2164
+ get_constraintVelocity(): Any$J;
1986
2165
  get_constraintMass(): number;
1987
2166
  get_constraintInertia(): number;
1988
2167
  get_allowMovement(): boolean;
@@ -1990,28 +2169,28 @@ declare class Body extends Interactor {
1990
2169
  get_allowRotation(): boolean;
1991
2170
  set_allowRotation(allowRotation: boolean): boolean;
1992
2171
  get_isSleeping(): boolean;
1993
- get_compound(): Any$L;
1994
- set_compound(compound: Any$L): Any$L;
1995
- get_space(): Any$L;
1996
- set_space(space: Any$L): Any$L;
1997
- get_arbiters(): Any$L;
1998
- get_constraints(): Any$L;
1999
- get_massMode(): Any$L;
2000
- set_massMode(massMode: Any$L): Any$L;
2172
+ get_compound(): Any$J;
2173
+ set_compound(compound: Any$J): Any$J;
2174
+ get_space(): Any$J;
2175
+ set_space(space: Any$J): Any$J;
2176
+ get_arbiters(): Any$J;
2177
+ get_constraints(): Any$J;
2178
+ get_massMode(): Any$J;
2179
+ set_massMode(massMode: Any$J): Any$J;
2001
2180
  get_mass(): number;
2002
2181
  set_mass(mass: number): number;
2003
- get_gravMassMode(): Any$L;
2004
- set_gravMassMode(gravMassMode: Any$L): Any$L;
2182
+ get_gravMassMode(): Any$J;
2183
+ set_gravMassMode(gravMassMode: Any$J): Any$J;
2005
2184
  get_gravMass(): number;
2006
2185
  set_gravMass(gravMass: number): number;
2007
2186
  get_gravMassScale(): number;
2008
2187
  set_gravMassScale(gravMassScale: number): number;
2009
- get_inertiaMode(): Any$L;
2010
- set_inertiaMode(inertiaMode: Any$L): Any$L;
2188
+ get_inertiaMode(): Any$J;
2189
+ set_inertiaMode(inertiaMode: Any$J): Any$J;
2011
2190
  get_inertia(): number;
2012
2191
  set_inertia(inertia: number): number;
2013
- get_localCOM(): Any$L;
2014
- get_worldCOM(): Any$L;
2192
+ get_localCOM(): Any$J;
2193
+ get_worldCOM(): Any$J;
2015
2194
  integrate(deltaTime: number): Body;
2016
2195
  localPointToWorld(point: Vec2, weak?: boolean): Vec2;
2017
2196
  worldPointToLocal(point: Vec2, weak?: boolean): Vec2;
@@ -2023,24 +2202,24 @@ declare class Body extends Interactor {
2023
2202
  translateShapes(translation: Vec2): Body;
2024
2203
  rotateShapes(angle: number): Body;
2025
2204
  scaleShapes(scaleX: number, scaleY: number): Body;
2026
- transformShapes(matrix: Any$L): Body;
2205
+ transformShapes(matrix: Any$J): Body;
2027
2206
  align(): Body;
2028
2207
  rotate(centre: Vec2, angle: number): Body;
2029
- setShapeMaterials(material: Any$L): Body;
2030
- setShapeFilters(filter: Any$L): Body;
2031
- setShapeFluidProperties(fluidProperties: Any$L): Body;
2208
+ setShapeMaterials(material: Any$J): Body;
2209
+ setShapeFilters(filter: Any$J): Body;
2210
+ setShapeFluidProperties(fluidProperties: Any$J): Body;
2032
2211
  contains(point: Vec2): boolean;
2033
- connectedBodies(depth?: number, output?: Any$L): Any$L;
2034
- interactingBodies(type?: Any$L, depth?: number, output?: Any$L): Any$L;
2035
- normalImpulse(body?: Any$L, freshOnly?: boolean): Vec3;
2036
- tangentImpulse(body?: Any$L, freshOnly?: boolean): Vec3;
2037
- totalContactsImpulse(body?: Any$L, freshOnly?: boolean): Vec3;
2038
- rollingImpulse(body?: Any$L, freshOnly?: boolean): number;
2039
- buoyancyImpulse(body?: Any$L): Vec3;
2040
- dragImpulse(body?: Any$L): Vec3;
2041
- totalFluidImpulse(body?: Any$L): Vec3;
2212
+ connectedBodies(depth?: number, output?: Any$J): Any$J;
2213
+ interactingBodies(type?: Any$J, depth?: number, output?: Any$J): Any$J;
2214
+ normalImpulse(body?: Any$J, freshOnly?: boolean): Vec3;
2215
+ tangentImpulse(body?: Any$J, freshOnly?: boolean): Vec3;
2216
+ totalContactsImpulse(body?: Any$J, freshOnly?: boolean): Vec3;
2217
+ rollingImpulse(body?: Any$J, freshOnly?: boolean): number;
2218
+ buoyancyImpulse(body?: Any$J): Vec3;
2219
+ dragImpulse(body?: Any$J): Vec3;
2220
+ totalFluidImpulse(body?: Any$J): Vec3;
2042
2221
  constraintsImpulse(): Vec3;
2043
- totalImpulse(body?: Any$L, freshOnly?: boolean): Vec3;
2222
+ totalImpulse(body?: Any$J, freshOnly?: boolean): Vec3;
2044
2223
  crushFactor(): number;
2045
2224
  private _arbiterImpulseQuery;
2046
2225
  }
@@ -2053,7 +2232,7 @@ declare class Body extends Interactor {
2053
2232
  *
2054
2233
  * Converted from nape-compiled.js lines 87523–87601, 135477–135481.
2055
2234
  */
2056
- type Any$K = any;
2235
+ type Any$I = any;
2057
2236
  declare class ZPP_Material {
2058
2237
  static zpp_pool: ZPP_Material | null;
2059
2238
  static WAKE: number;
@@ -2066,27 +2245,27 @@ declare class ZPP_Material {
2066
2245
  * _nape = the `nape` public namespace (for wrapper creation)
2067
2246
  * _zpp = the `zpp_nape` internal namespace (for ZNPList_ZPP_Shape)
2068
2247
  */
2069
- static _nape: Any$K;
2070
- static _zpp: Any$K;
2248
+ static _nape: Any$I;
2249
+ static _zpp: Any$I;
2071
2250
  /**
2072
2251
  * Wrapper factory callback, registered by the modernized Material class.
2073
2252
  * When set, wrapper() uses this instead of creating a compiled Material.
2074
2253
  */
2075
- static _wrapFn: ((zpp: ZPP_Material) => Any$K) | null;
2254
+ static _wrapFn: ((zpp: ZPP_Material) => Any$I) | null;
2076
2255
  elasticity: number;
2077
2256
  dynamicFriction: number;
2078
2257
  staticFriction: number;
2079
2258
  density: number;
2080
2259
  rollingFriction: number;
2081
- shapes: Any$K;
2082
- wrap_shapes: Any$K;
2083
- outer: Any$K;
2084
- userData: Any$K;
2260
+ shapes: Any$I;
2261
+ wrap_shapes: Any$I;
2262
+ outer: Any$I;
2263
+ userData: Any$I;
2085
2264
  next: ZPP_Material | null;
2086
- __class__: Any$K;
2265
+ __class__: Any$I;
2087
2266
  constructor();
2088
2267
  /** Create/return the public nape.phys.Material wrapper for this internal object. */
2089
- wrapper(): Any$K;
2268
+ wrapper(): Any$I;
2090
2269
  /** Called when this object is returned to the pool. */
2091
2270
  free(): void;
2092
2271
  /** Called when this object is taken from the pool. */
@@ -2094,9 +2273,9 @@ declare class ZPP_Material {
2094
2273
  /** Initialize the shapes list (called during feature construction). */
2095
2274
  feature_cons(): void;
2096
2275
  /** Register a shape that uses this material. */
2097
- addShape(shape: Any$K): void;
2276
+ addShape(shape: Any$I): void;
2098
2277
  /** Unregister a shape that no longer uses this material. */
2099
- remShape(shape: Any$K): void;
2278
+ remShape(shape: Any$I): void;
2100
2279
  /** Create a copy with the same property values. */
2101
2280
  copy(): ZPP_Material;
2102
2281
  /** Copy all property values from another ZPP_Material. */
@@ -2156,36 +2335,36 @@ declare class Material {
2156
2335
  *
2157
2336
  * Converted from nape-compiled.js lines 87335–87523, 135403.
2158
2337
  */
2159
- type Any$J = any;
2338
+ type Any$H = any;
2160
2339
  declare class ZPP_FluidProperties {
2161
2340
  static zpp_pool: ZPP_FluidProperties | null;
2162
2341
  static __name__: string[];
2163
- static _nape: Any$J;
2164
- static _zpp: Any$J;
2165
- static _wrapFn: ((zpp: ZPP_FluidProperties) => Any$J) | null;
2342
+ static _nape: Any$H;
2343
+ static _zpp: Any$H;
2344
+ static _wrapFn: ((zpp: ZPP_FluidProperties) => Any$H) | null;
2166
2345
  viscosity: number;
2167
2346
  density: number;
2168
2347
  gravityx: number;
2169
2348
  gravityy: number;
2170
- wrap_gravity: Any$J;
2171
- shapes: Any$J;
2172
- wrap_shapes: Any$J;
2173
- outer: Any$J;
2174
- userData: Any$J;
2349
+ wrap_gravity: Any$H;
2350
+ shapes: Any$H;
2351
+ wrap_shapes: Any$H;
2352
+ outer: Any$H;
2353
+ userData: Any$H;
2175
2354
  next: ZPP_FluidProperties | null;
2176
- __class__: Any$J;
2355
+ __class__: Any$H;
2177
2356
  constructor();
2178
2357
  /** Create/return the public nape.phys.FluidProperties wrapper. */
2179
- wrapper(): Any$J;
2358
+ wrapper(): Any$H;
2180
2359
  free(): void;
2181
2360
  alloc(): void;
2182
2361
  feature_cons(): void;
2183
- addShape(shape: Any$J): void;
2184
- remShape(shape: Any$J): void;
2362
+ addShape(shape: Any$H): void;
2363
+ remShape(shape: Any$H): void;
2185
2364
  /** Copy with object pooling. */
2186
2365
  copy(): ZPP_FluidProperties;
2187
2366
  /** Called when gravity Vec2 wrapper is invalidated (user set new gravity). */
2188
- gravity_invalidate(x: Any$J): void;
2367
+ gravity_invalidate(x: Any$H): void;
2189
2368
  /** Sync the gravity Vec2 wrapper with internal values. */
2190
2369
  gravity_validate(): void;
2191
2370
  /** Lazily create and return the gravity Vec2 wrapper. */
@@ -2228,24 +2407,6 @@ declare class FluidProperties {
2228
2407
  toString(): string;
2229
2408
  }
2230
2409
 
2231
- /**
2232
- * Shape type classification.
2233
- *
2234
- * - `CIRCLE` — circle shape
2235
- * - `POLYGON` — polygon shape
2236
- *
2237
- * Converted from nape-compiled.js lines 30435–30482.
2238
- */
2239
- declare class ShapeType {
2240
- static __name__: string[];
2241
- constructor();
2242
- static get CIRCLE(): ShapeType;
2243
- static get POLYGON(): ShapeType;
2244
- static get_CIRCLE(): ShapeType;
2245
- static get_POLYGON(): ShapeType;
2246
- toString(): string;
2247
- }
2248
-
2249
2410
  /**
2250
2411
  * Base class for physics shapes (Circle, Polygon).
2251
2412
  *
@@ -2369,77 +2530,77 @@ declare class Geom {
2369
2530
  *
2370
2531
  * Converted from nape-compiled.js lines 55195–55521.
2371
2532
  */
2372
- type Any$I = any;
2533
+ type Any$G = any;
2373
2534
  declare class ZPP_Compound {
2374
2535
  static __name__: string[];
2375
- static __super__: Any$I;
2536
+ static __super__: Any$G;
2376
2537
  /**
2377
2538
  * Namespace references, set by the compiled module after import.
2378
2539
  * _nape = the `nape` public namespace (for wrapper creation in copy())
2379
2540
  * _zpp = the `zpp_nape` internal namespace (for ZNPList_*, ZPP_BodyList, etc.)
2380
2541
  */
2381
- static _nape: Any$I;
2382
- static _zpp: Any$I;
2542
+ static _nape: Any$G;
2543
+ static _zpp: Any$G;
2383
2544
  /**
2384
2545
  * Wrapper factory callback, registered by the modernized Compound class.
2385
2546
  * When set, wrapper() uses this instead of the compiled Compound constructor.
2386
2547
  */
2387
- static _wrapFn: ((zpp: ZPP_Compound) => Any$I) | null;
2388
- outer_i: Any$I;
2548
+ static _wrapFn: ((zpp: ZPP_Compound) => Any$G) | null;
2549
+ outer_i: Any$G;
2389
2550
  id: number;
2390
- userData: Any$I;
2391
- ishape: Any$I;
2392
- ibody: Any$I;
2393
- icompound: Any$I;
2394
- wrap_cbTypes: Any$I;
2395
- cbSet: Any$I;
2396
- cbTypes: Any$I;
2397
- group: Any$I;
2398
- cbsets: Any$I;
2399
- outer: Any$I;
2400
- bodies: Any$I;
2401
- constraints: Any$I;
2402
- compounds: Any$I;
2403
- wrap_bodies: Any$I;
2404
- wrap_constraints: Any$I;
2405
- wrap_compounds: Any$I;
2551
+ userData: Any$G;
2552
+ ishape: Any$G;
2553
+ ibody: Any$G;
2554
+ icompound: Any$G;
2555
+ wrap_cbTypes: Any$G;
2556
+ cbSet: Any$G;
2557
+ cbTypes: Any$G;
2558
+ group: Any$G;
2559
+ cbsets: Any$G;
2560
+ outer: Any$G;
2561
+ bodies: Any$G;
2562
+ constraints: Any$G;
2563
+ compounds: Any$G;
2564
+ wrap_bodies: Any$G;
2565
+ wrap_constraints: Any$G;
2566
+ wrap_compounds: Any$G;
2406
2567
  depth: number;
2407
- compound: Any$I;
2408
- space: Any$I;
2409
- __class__: Any$I;
2568
+ compound: Any$G;
2569
+ space: Any$G;
2570
+ __class__: Any$G;
2410
2571
  constructor();
2411
2572
  __imutable_midstep(name: string): void;
2412
2573
  addedToSpace(): void;
2413
2574
  removedFromSpace(): void;
2414
2575
  breakApart(): void;
2415
2576
  private static _zppOf;
2416
- bodies_adder(x: Any$I): boolean;
2417
- bodies_subber(x: Any$I): void;
2577
+ bodies_adder(x: Any$G): boolean;
2578
+ bodies_subber(x: Any$G): void;
2418
2579
  bodies_modifiable(): void;
2419
- constraints_adder(x: Any$I): boolean;
2420
- constraints_subber(x: Any$I): void;
2580
+ constraints_adder(x: Any$G): boolean;
2581
+ constraints_subber(x: Any$G): void;
2421
2582
  constraints_modifiable(): void;
2422
- compounds_adder(x: Any$I): boolean;
2423
- compounds_subber(x: Any$I): void;
2583
+ compounds_adder(x: Any$G): boolean;
2584
+ compounds_subber(x: Any$G): void;
2424
2585
  compounds_modifiable(): void;
2425
- copy(dict?: Any$I[], todo?: Any$I[]): Any$I;
2586
+ copy(dict?: Any$G[], todo?: Any$G[]): Any$G;
2426
2587
  isShape: () => boolean;
2427
2588
  isBody: () => boolean;
2428
2589
  isCompound: () => boolean;
2429
2590
  __iaddedToSpace: () => void;
2430
2591
  __iremovedFromSpace: () => void;
2431
2592
  wake: () => void;
2432
- getSpace: () => Any$I;
2593
+ getSpace: () => Any$G;
2433
2594
  setupcbTypes: () => void;
2434
2595
  immutable_cbTypes: () => void;
2435
- wrap_cbTypes_subber: (pcb: Any$I) => void;
2436
- wrap_cbTypes_adder: (cb: Any$I) => boolean;
2437
- insert_cbtype: (cb: Any$I) => void;
2596
+ wrap_cbTypes_subber: (pcb: Any$G) => void;
2597
+ wrap_cbTypes_adder: (cb: Any$G) => boolean;
2598
+ insert_cbtype: (cb: Any$G) => void;
2438
2599
  alloc_cbSet: () => void;
2439
2600
  dealloc_cbSet: () => void;
2440
2601
  immutable_midstep: (name: string) => void;
2441
- copyto: (ret: Any$I) => void;
2442
- lookup_group: () => Any$I;
2602
+ copyto: (ret: Any$G) => void;
2603
+ lookup_group: () => Any$G;
2443
2604
  /**
2444
2605
  * Initialize prototype by copying ZPP_Interactor methods.
2445
2606
  * Must be called after _zpp is set (during compiled module init).
@@ -2447,7 +2608,7 @@ declare class ZPP_Compound {
2447
2608
  static _init(): void;
2448
2609
  }
2449
2610
 
2450
- type Any$H = any;
2611
+ type Any$F = any;
2451
2612
  /**
2452
2613
  * A compound physics object — a hierarchical grouping of Bodies, Constraints,
2453
2614
  * and other Compounds.
@@ -2456,18 +2617,18 @@ type Any$H = any;
2456
2617
  */
2457
2618
  declare class Compound extends Interactor {
2458
2619
  static __name__: string[];
2459
- static __super__: Any$H;
2620
+ static __super__: Any$F;
2460
2621
  /** Direct access to the extracted internal ZPP_Compound. */
2461
2622
  zpp_inner: ZPP_Compound;
2462
2623
  constructor();
2463
2624
  /** @internal */
2464
2625
  static _wrap(inner: NapeInner): Compound;
2465
2626
  /** Bodies in this compound. */
2466
- get bodies(): Any$H;
2627
+ get bodies(): Any$F;
2467
2628
  /** Constraints in this compound. */
2468
- get constraints(): Any$H;
2629
+ get constraints(): Any$F;
2469
2630
  /** Child compounds in this compound. */
2470
- get compounds(): Any$H;
2631
+ get compounds(): Any$F;
2471
2632
  /** Parent compound, or null if this is a root compound. */
2472
2633
  get compound(): Compound | null;
2473
2634
  set compound(value: Compound | null);
@@ -2481,7 +2642,7 @@ declare class Compound extends Interactor {
2481
2642
  /** Recursively visit all bodies in this compound and its sub-compounds. */
2482
2643
  visitBodies(lambda: (body: Body) => void): void;
2483
2644
  /** Recursively visit all constraints in this compound and its sub-compounds. */
2484
- visitConstraints(lambda: (constraint: Any$H) => void): void;
2645
+ visitConstraints(lambda: (constraint: Any$F) => void): void;
2485
2646
  /** Recursively visit all sub-compounds in this compound. */
2486
2647
  visitCompounds(lambda: (compound: Compound) => void): void;
2487
2648
  /** Calculate the center of mass of all bodies in this compound. */
@@ -2491,13 +2652,13 @@ declare class Compound extends Interactor {
2491
2652
  /** Rotate all bodies in this compound around the given centre point. */
2492
2653
  rotate(centre: Vec2, angle: number): Compound;
2493
2654
  toString(): string;
2494
- get_bodies(): Any$H;
2495
- get_constraints(): Any$H;
2496
- get_compounds(): Any$H;
2497
- get_compound(): Any$H;
2498
- set_compound(compound: Any$H): Any$H;
2499
- get_space(): Any$H;
2500
- set_space(space: Any$H): Any$H;
2655
+ get_bodies(): Any$F;
2656
+ get_constraints(): Any$F;
2657
+ get_compounds(): Any$F;
2658
+ get_compound(): Any$F;
2659
+ set_compound(compound: Any$F): Any$F;
2660
+ get_space(): Any$F;
2661
+ set_space(space: Any$F): Any$F;
2501
2662
  }
2502
2663
 
2503
2664
  /**
@@ -2565,21 +2726,21 @@ declare class MassMode {
2565
2726
  *
2566
2727
  * Converted from nape-compiled.js lines 41496–41827.
2567
2728
  */
2568
- type Any$G = any;
2729
+ type Any$E = any;
2569
2730
  declare class ZPP_Circle {
2570
2731
  static __name__: string[];
2571
- static __super__: Any$G;
2572
- static _nape: Any$G;
2573
- static _zpp: Any$G;
2732
+ static __super__: Any$E;
2733
+ static _nape: Any$E;
2734
+ static _zpp: Any$E;
2574
2735
  static _initialized: boolean;
2575
2736
  radius: number;
2576
- outer_zn: Any$G;
2577
- __class__: Any$G;
2578
- body: Any$G;
2737
+ outer_zn: Any$E;
2738
+ __class__: Any$E;
2739
+ body: Any$E;
2579
2740
  type: number;
2580
- circle: Any$G;
2581
- polygon: Any$G;
2582
- aabb: Any$G;
2741
+ circle: Any$E;
2742
+ polygon: Any$E;
2743
+ aabb: Any$E;
2583
2744
  localCOMx: number;
2584
2745
  localCOMy: number;
2585
2746
  worldCOMx: number;
@@ -2593,25 +2754,25 @@ declare class ZPP_Circle {
2593
2754
  angDrag: number;
2594
2755
  sweepCoef: number;
2595
2756
  sweepRadius: number;
2596
- material: Any$G;
2597
- filter: Any$G;
2598
- wrap_localCOM: Any$G;
2599
- outer: Any$G;
2600
- outer_i: Any$G;
2601
- space: Any$G;
2757
+ material: Any$E;
2758
+ filter: Any$E;
2759
+ wrap_localCOM: Any$E;
2760
+ outer: Any$E;
2761
+ outer_i: Any$E;
2762
+ space: Any$E;
2602
2763
  invalidate_area_inertia: () => void;
2603
2764
  invalidate_angDrag: () => void;
2604
2765
  invalidate_localCOM: () => void;
2605
2766
  immutable_midstep: (name: string) => void;
2606
- setMaterial: (mat: Any$G) => void;
2607
- setFilter: (filt: Any$G) => void;
2608
- insert_cbtype: (cb: Any$G) => void;
2767
+ setMaterial: (mat: Any$E) => void;
2768
+ setFilter: (filt: Any$E) => void;
2769
+ insert_cbtype: (cb: Any$E) => void;
2609
2770
  constructor();
2610
2771
  static _init(): void;
2611
2772
  __clear(): void;
2612
2773
  invalidate_radius(): void;
2613
2774
  localCOM_validate(): void;
2614
- localCOM_invalidate(x: Any$G): void;
2775
+ localCOM_invalidate(x: Any$E): void;
2615
2776
  localCOM_immutable(): void;
2616
2777
  setupLocalCOM(): void;
2617
2778
  __validate_aabb(): void;
@@ -2622,11 +2783,11 @@ declare class ZPP_Circle {
2622
2783
  __scale(sx: number, sy: number): void;
2623
2784
  __translate(x: number, y: number): void;
2624
2785
  __rotate(x: number, y: number): void;
2625
- __transform(m: Any$G): void;
2626
- __copy(): Any$G;
2786
+ __transform(m: Any$E): void;
2787
+ __copy(): Any$E;
2627
2788
  }
2628
2789
 
2629
- type Any$F = any;
2790
+ type Any$D = any;
2630
2791
  /**
2631
2792
  * A circular physics shape.
2632
2793
  *
@@ -2636,7 +2797,7 @@ type Any$F = any;
2636
2797
  */
2637
2798
  declare class Circle extends Shape {
2638
2799
  static __name__: string[];
2639
- static __super__: Any$F;
2800
+ static __super__: Any$D;
2640
2801
  /** Direct access to the extracted internal ZPP_Circle. */
2641
2802
  zpp_inner_zn: ZPP_Circle;
2642
2803
  constructor(radius?: number, localCOM?: Vec2, material?: Material, filter?: InteractionFilter);
@@ -2654,20 +2815,20 @@ declare class Circle extends Shape {
2654
2815
  *
2655
2816
  * Converted from nape-compiled.js lines 42176–43786.
2656
2817
  */
2657
- type Any$E = any;
2818
+ type Any$C = any;
2658
2819
  declare class ZPP_Polygon {
2659
2820
  static __name__: string[];
2660
- static __super__: Any$E;
2661
- static _nape: Any$E;
2662
- static _zpp: Any$E;
2821
+ static __super__: Any$C;
2822
+ static _nape: Any$C;
2823
+ static _zpp: Any$C;
2663
2824
  static _initialized: boolean;
2664
- outer_zn: Any$E;
2665
- lverts: Any$E;
2666
- wrap_lverts: Any$E;
2667
- gverts: Any$E;
2668
- wrap_gverts: Any$E;
2669
- edges: Any$E;
2670
- wrap_edges: Any$E;
2825
+ outer_zn: Any$C;
2826
+ lverts: Any$C;
2827
+ wrap_lverts: Any$C;
2828
+ gverts: Any$C;
2829
+ wrap_gverts: Any$C;
2830
+ edges: Any$C;
2831
+ wrap_edges: Any$C;
2671
2832
  edgeCnt: number;
2672
2833
  reverse_flag: boolean;
2673
2834
  zip_lverts: boolean;
@@ -2676,13 +2837,13 @@ declare class ZPP_Polygon {
2676
2837
  zip_gaxi: boolean;
2677
2838
  zip_valid: boolean;
2678
2839
  zip_sanitation: boolean;
2679
- validation: Any$E;
2680
- __class__: Any$E;
2681
- body: Any$E;
2840
+ validation: Any$C;
2841
+ __class__: Any$C;
2842
+ body: Any$C;
2682
2843
  type: number;
2683
- circle: Any$E;
2684
- polygon: Any$E;
2685
- aabb: Any$E;
2844
+ circle: Any$C;
2845
+ polygon: Any$C;
2846
+ aabb: Any$C;
2686
2847
  localCOMx: number;
2687
2848
  localCOMy: number;
2688
2849
  worldCOMx: number;
@@ -2698,11 +2859,11 @@ declare class ZPP_Polygon {
2698
2859
  angDrag: number;
2699
2860
  sweepCoef: number;
2700
2861
  sweepRadius: number;
2701
- material: Any$E;
2702
- filter: Any$E;
2703
- wrap_localCOM: Any$E;
2704
- outer: Any$E;
2705
- outer_i: Any$E;
2862
+ material: Any$C;
2863
+ filter: Any$C;
2864
+ wrap_localCOM: Any$C;
2865
+ outer: Any$C;
2866
+ outer_i: Any$C;
2706
2867
  invalidate_area_inertia: () => void;
2707
2868
  invalidate_angDrag: () => void;
2708
2869
  invalidate_localCOM: () => void;
@@ -2711,18 +2872,18 @@ declare class ZPP_Polygon {
2711
2872
  validate_localCOM: () => void;
2712
2873
  immutable_midstep: (name: string) => void;
2713
2874
  wake: () => void;
2714
- setMaterial: (m: Any$E) => void;
2715
- setFilter: (f: Any$E) => void;
2716
- insert_cbtype: (cb: Any$E) => void;
2875
+ setMaterial: (m: Any$C) => void;
2876
+ setFilter: (f: Any$C) => void;
2877
+ insert_cbtype: (cb: Any$C) => void;
2717
2878
  constructor();
2718
2879
  static _init(): void;
2719
2880
  __clear(): void;
2720
- lverts_pa_invalidate(_x: Any$E): void;
2881
+ lverts_pa_invalidate(_x: Any$C): void;
2721
2882
  lverts_pa_immutable(): void;
2722
2883
  gverts_pa_validate(): void;
2723
- lverts_post_adder(x: Any$E): void;
2724
- lverts_subber(x: Any$E): void;
2725
- lverts_invalidate(_: Any$E): void;
2884
+ lverts_post_adder(x: Any$C): void;
2885
+ lverts_subber(x: Any$C): void;
2886
+ lverts_invalidate(_: Any$C): void;
2726
2887
  lverts_validate(): void;
2727
2888
  lverts_modifiable(): void;
2728
2889
  gverts_validate(): void;
@@ -2740,11 +2901,11 @@ declare class ZPP_Polygon {
2740
2901
  validate_gaxi(): void;
2741
2902
  /** Internal helper: recompute world vertex positions from local verts + body transform */
2742
2903
  private _validateGverts;
2743
- cleanup_lvert(x: Any$E): void;
2904
+ cleanup_lvert(x: Any$C): void;
2744
2905
  splice_collinear(): void;
2745
2906
  splice_collinear_real(): void;
2746
2907
  reverse_vertices(): void;
2747
- valid(): Any$E;
2908
+ valid(): Any$C;
2748
2909
  /** Helper: check if two edges (u1→v1) and (a→b) do NOT intersect */
2749
2910
  private _checkNoIntersection;
2750
2911
  __validate_aabb(): void;
@@ -2754,16 +2915,16 @@ declare class ZPP_Polygon {
2754
2915
  __validate_angDrag(): void;
2755
2916
  __validate_localCOM(): void;
2756
2917
  localCOM_validate(): void;
2757
- localCOM_invalidate(x: Any$E): void;
2918
+ localCOM_invalidate(x: Any$C): void;
2758
2919
  setupLocalCOM(): void;
2759
2920
  __translate(dx: number, dy: number): void;
2760
2921
  __scale(sx: number, sy: number): void;
2761
2922
  __rotate(ax: number, ay: number): void;
2762
- __transform(mat: Any$E): void;
2763
- __copy(): Any$E;
2923
+ __transform(mat: Any$C): void;
2924
+ __copy(): Any$C;
2764
2925
  }
2765
2926
 
2766
- type Any$D = any;
2927
+ type Any$B = any;
2767
2928
  /**
2768
2929
  * A convex polygon physics shape.
2769
2930
  *
@@ -2772,26 +2933,26 @@ type Any$D = any;
2772
2933
  */
2773
2934
  declare class Polygon extends Shape {
2774
2935
  static __name__: string[];
2775
- static __super__: Any$D;
2936
+ static __super__: Any$B;
2776
2937
  /** Direct access to the extracted internal ZPP_Polygon. */
2777
2938
  zpp_inner_zn: ZPP_Polygon;
2778
- constructor(localVerts?: Vec2[] | Any$D, material?: Material, filter?: InteractionFilter);
2939
+ constructor(localVerts?: Vec2[] | Any$B, material?: Material, filter?: InteractionFilter);
2779
2940
  /** @internal */
2780
2941
  static _wrap(inner: NapeInner): Polygon;
2781
2942
  static rect(x: number, y: number, width: number, height: number, weak?: boolean): Vec2[];
2782
2943
  static box(width: number, height?: number, weak?: boolean): Vec2[];
2783
2944
  static regular(xRadius: number, yRadius: number, edgeCount: number, angleOffset?: number, weak?: boolean): Vec2[];
2784
2945
  /** Read-only list of local-space vertices. */
2785
- get localVerts(): Any$D;
2946
+ get localVerts(): Any$B;
2786
2947
  /** Read-only list of world-space vertices (computed after stepping). */
2787
- get worldVerts(): Any$D;
2948
+ get worldVerts(): Any$B;
2788
2949
  /** Read-only edge list. */
2789
- get edges(): Any$D;
2950
+ get edges(): Any$B;
2790
2951
  /** Validate the polygon geometry. */
2791
- validity(): Any$D;
2792
- /** @internal */ get_localVerts(): Any$D;
2793
- /** @internal */ get_worldVerts(): Any$D;
2794
- /** @internal */ get_edges(): Any$D;
2952
+ validity(): Any$B;
2953
+ /** @internal */ get_localVerts(): Any$B;
2954
+ /** @internal */ get_worldVerts(): Any$B;
2955
+ /** @internal */ get_edges(): Any$B;
2795
2956
  }
2796
2957
 
2797
2958
  /**
@@ -2802,44 +2963,44 @@ declare class Polygon extends Shape {
2802
2963
  *
2803
2964
  * Converted from nape-compiled.js lines 41828–42175.
2804
2965
  */
2805
- type Any$C = any;
2966
+ type Any$A = any;
2806
2967
  declare class ZPP_Edge {
2807
2968
  static __name__: string[];
2808
2969
  static zpp_pool: ZPP_Edge | null;
2809
2970
  static internal: boolean;
2810
- static _nape: Any$C;
2811
- static _zpp: Any$C;
2812
- static _wrapFn: ((zpp: ZPP_Edge) => Any$C) | null;
2971
+ static _nape: Any$A;
2972
+ static _zpp: Any$A;
2973
+ static _wrapFn: ((zpp: ZPP_Edge) => Any$A) | null;
2813
2974
  next: ZPP_Edge | null;
2814
- polygon: Any$C;
2815
- outer: Any$C;
2975
+ polygon: Any$A;
2976
+ outer: Any$A;
2816
2977
  lnormx: number;
2817
2978
  lnormy: number;
2818
- wrap_lnorm: Any$C;
2979
+ wrap_lnorm: Any$A;
2819
2980
  gnormx: number;
2820
2981
  gnormy: number;
2821
- wrap_gnorm: Any$C;
2982
+ wrap_gnorm: Any$A;
2822
2983
  length: number;
2823
2984
  lprojection: number;
2824
2985
  gprojection: number;
2825
- lp0: Any$C;
2826
- gp0: Any$C;
2827
- lp1: Any$C;
2828
- gp1: Any$C;
2986
+ lp0: Any$A;
2987
+ gp0: Any$A;
2988
+ lp1: Any$A;
2989
+ gp1: Any$A;
2829
2990
  tp0: number;
2830
2991
  tp1: number;
2831
- __class__: Any$C;
2992
+ __class__: Any$A;
2832
2993
  constructor();
2833
2994
  free(): void;
2834
2995
  alloc(): void;
2835
- wrapper(): Any$C;
2996
+ wrapper(): Any$A;
2836
2997
  lnorm_validate(): void;
2837
2998
  gnorm_validate(): void;
2838
2999
  getlnorm(): void;
2839
3000
  getgnorm(): void;
2840
3001
  }
2841
3002
 
2842
- type Any$B = any;
3003
+ type Any$z = any;
2843
3004
  /**
2844
3005
  * An edge of a polygon shape.
2845
3006
  *
@@ -2854,9 +3015,9 @@ declare class Edge {
2854
3015
  zpp_inner: ZPP_Edge;
2855
3016
  constructor();
2856
3017
  /** @internal */
2857
- static _wrap(inner: Any$B): Edge;
3018
+ static _wrap(inner: Any$z): Edge;
2858
3019
  /** Parent polygon (as compiled Polygon wrapper). */
2859
- get polygon(): Any$B;
3020
+ get polygon(): Any$z;
2860
3021
  /** Local-space normal vector (immutable Vec2). */
2861
3022
  get localNormal(): Vec2;
2862
3023
  /** World-space normal vector (immutable Vec2). Requires polygon in a body. */
@@ -2925,27 +3086,6 @@ declare class Broadphase {
2925
3086
  toString(): string;
2926
3087
  }
2927
3088
 
2928
- /**
2929
- * Arbiter type classification.
2930
- *
2931
- * - `COLLISION` — collision arbiter
2932
- * - `SENSOR` — sensor arbiter
2933
- * - `FLUID` — fluid arbiter
2934
- *
2935
- * Converted from nape-compiled.js lines 11653–11725.
2936
- */
2937
- declare class ArbiterType {
2938
- static __name__: string[];
2939
- static COLLISION: ArbiterType | null;
2940
- static SENSOR: ArbiterType | null;
2941
- static FLUID: ArbiterType | null;
2942
- constructor();
2943
- static get_COLLISION(): ArbiterType;
2944
- static get_SENSOR(): ArbiterType;
2945
- static get_FLUID(): ArbiterType;
2946
- toString(): string;
2947
- }
2948
-
2949
3089
  /**
2950
3090
  * ZPP_Arbiter — Internal arbiter base class for the nape physics engine.
2951
3091
  *
@@ -2955,21 +3095,21 @@ declare class ArbiterType {
2955
3095
  *
2956
3096
  * Converted from nape-compiled.js lines 29044–29362, 80738–80766.
2957
3097
  */
2958
- type Any$A = any;
3098
+ type Any$y = any;
2959
3099
  declare class ZPP_Arbiter {
2960
3100
  static __name__: string[];
2961
- static _nape: Any$A;
2962
- static _zpp: Any$A;
3101
+ static _nape: Any$y;
3102
+ static _zpp: Any$y;
2963
3103
  static internal: boolean;
2964
3104
  static COL: number;
2965
3105
  static FLUID: number;
2966
3106
  static SENSOR: number;
2967
- static types: Any$A[];
3107
+ static types: Any$y[];
2968
3108
  /**
2969
3109
  * Initialize ArbiterType singleton enums. Called once from compiled factory.
2970
3110
  */
2971
- static _initEnums(nape: Any$A, ZPP_Flags: Any$A): void;
2972
- outer: Any$A;
3111
+ static _initEnums(nape: Any$y, ZPP_Flags: Any$y): void;
3112
+ outer: Any$y;
2973
3113
  hnext: ZPP_Arbiter | null;
2974
3114
  id: number;
2975
3115
  di: number;
@@ -2987,31 +3127,31 @@ declare class ZPP_Arbiter {
2987
3127
  fresh: boolean;
2988
3128
  immState: number;
2989
3129
  invalidated: boolean;
2990
- b1: Any$A;
2991
- b2: Any$A;
2992
- ws1: Any$A;
2993
- ws2: Any$A;
2994
- pair: Any$A;
3130
+ b1: Any$y;
3131
+ b2: Any$y;
3132
+ ws1: Any$y;
3133
+ ws2: Any$y;
3134
+ pair: Any$y;
2995
3135
  type: number;
2996
- colarb: Any$A;
2997
- fluidarb: Any$A;
2998
- sensorarb: Any$A;
2999
- __class__: Any$A;
3136
+ colarb: Any$y;
3137
+ fluidarb: Any$y;
3138
+ sensorarb: Any$y;
3139
+ __class__: Any$y;
3000
3140
  constructor();
3001
- wrapper(): Any$A;
3141
+ wrapper(): Any$y;
3002
3142
  inactiveme(): boolean;
3003
3143
  acting(): boolean;
3004
3144
  swap_features(): void;
3005
- lazyRetire(s: Any$A, b: Any$A): void;
3006
- sup_assign(s1: Any$A, s2: Any$A, id: number, di: number): void;
3145
+ lazyRetire(s: Any$y, b: Any$y): void;
3146
+ sup_assign(s1: Any$y, s2: Any$y, id: number, di: number): void;
3007
3147
  sup_retire(): void;
3008
3148
  /** Remove this arbiter from a ZNPList_ZPP_Arbiter */
3009
- static _removeFromArbiterList(list: Any$A, arb: ZPP_Arbiter, zpp: Any$A): void;
3149
+ static _removeFromArbiterList(list: Any$y, arb: ZPP_Arbiter, zpp: Any$y): void;
3010
3150
  /** Add this arbiter to a ZNPList_ZPP_Arbiter */
3011
- static _addToArbiterList(list: Any$A, arb: ZPP_Arbiter, zpp: Any$A): void;
3151
+ static _addToArbiterList(list: Any$y, arb: ZPP_Arbiter, zpp: Any$y): void;
3012
3152
  }
3013
3153
 
3014
- type Any$z = any;
3154
+ type Any$x = any;
3015
3155
  /**
3016
3156
  * Represents an interaction arbiter between two shapes.
3017
3157
  *
@@ -3030,21 +3170,21 @@ declare class Arbiter {
3030
3170
  /** Whether this arbiter is currently sleeping. */
3031
3171
  get isSleeping(): boolean;
3032
3172
  /** The type of this arbiter (COLLISION, SENSOR, or FLUID). */
3033
- get type(): Any$z;
3173
+ get type(): Any$x;
3034
3174
  /** Cast to CollisionArbiter if this is a collision, else null. */
3035
- get collisionArbiter(): Any$z;
3175
+ get collisionArbiter(): Any$x;
3036
3176
  /** Cast to FluidArbiter if this is a fluid interaction, else null. */
3037
- get fluidArbiter(): Any$z;
3177
+ get fluidArbiter(): Any$x;
3038
3178
  /** First shape (lower id). */
3039
- get shape1(): Any$z;
3179
+ get shape1(): Any$x;
3040
3180
  /** Second shape (higher id). */
3041
- get shape2(): Any$z;
3181
+ get shape2(): Any$x;
3042
3182
  /** Body of shape1. */
3043
- get body1(): Any$z;
3183
+ get body1(): Any$x;
3044
3184
  /** Body of shape2. */
3045
- get body2(): Any$z;
3185
+ get body2(): Any$x;
3046
3186
  /** The pre-handler state of this arbiter. */
3047
- get state(): Any$z;
3187
+ get state(): Any$x;
3048
3188
  /** Whether this is a collision arbiter. */
3049
3189
  isCollisionArbiter(): boolean;
3050
3190
  /** Whether this is a fluid arbiter. */
@@ -3055,15 +3195,15 @@ declare class Arbiter {
3055
3195
  * Total impulse of this arbiter. Base implementation returns Vec3(0,0,0).
3056
3196
  * Overridden by CollisionArbiter and FluidArbiter.
3057
3197
  */
3058
- totalImpulse(body?: Any$z, _freshOnly?: boolean): Vec3;
3198
+ totalImpulse(body?: Any$x, _freshOnly?: boolean): Vec3;
3059
3199
  toString(): string;
3060
3200
  /** @internal */
3061
3201
  protected _activeCheck(): void;
3062
3202
  /** @internal */
3063
- protected _checkBody(body: Any$z): void;
3203
+ protected _checkBody(body: Any$x): void;
3064
3204
  }
3065
3205
 
3066
- type Any$y = any;
3206
+ type Any$w = any;
3067
3207
  /**
3068
3208
  * A collision arbiter between two shapes in contact.
3069
3209
  *
@@ -3077,15 +3217,15 @@ declare class CollisionArbiter extends Arbiter {
3077
3217
  static __super__: typeof Arbiter;
3078
3218
  constructor();
3079
3219
  /** Contact points for this collision. */
3080
- get contacts(): Any$y;
3220
+ get contacts(): Any$w;
3081
3221
  /** Collision normal vector. */
3082
- get normal(): Any$y;
3222
+ get normal(): Any$w;
3083
3223
  /** Sum of the radii of the two shapes at the collision point. */
3084
3224
  get radius(): number;
3085
3225
  /** Reference edge of shape1 (if polygon), or null. */
3086
- get referenceEdge1(): Any$y;
3226
+ get referenceEdge1(): Any$w;
3087
3227
  /** Reference edge of shape2 (if polygon), or null. */
3088
- get referenceEdge2(): Any$y;
3228
+ get referenceEdge2(): Any$w;
3089
3229
  /** Coefficient of restitution (elasticity). Mutable in pre-handler only. */
3090
3230
  get elasticity(): number;
3091
3231
  set elasticity(value: number);
@@ -3103,20 +3243,20 @@ declare class CollisionArbiter extends Arbiter {
3103
3243
  /** Whether the second contact point lies on a polygon vertex (poly-circle only). */
3104
3244
  secondVertex(): boolean;
3105
3245
  /** Normal impulse accumulated across all contacts. */
3106
- normalImpulse(body?: Any$y, freshOnly?: boolean): Vec3;
3246
+ normalImpulse(body?: Any$w, freshOnly?: boolean): Vec3;
3107
3247
  /** Tangent (friction) impulse accumulated across all contacts. */
3108
- tangentImpulse(body?: Any$y, freshOnly?: boolean): Vec3;
3248
+ tangentImpulse(body?: Any$w, freshOnly?: boolean): Vec3;
3109
3249
  /** Total impulse (normal + tangent + rolling) accumulated across all contacts. */
3110
- totalImpulse(body?: Any$y, freshOnly?: boolean): Vec3;
3250
+ totalImpulse(body?: Any$w, freshOnly?: boolean): Vec3;
3111
3251
  /** Rolling impulse for this collision. */
3112
- rollingImpulse(body?: Any$y, freshOnly?: boolean): number;
3252
+ rollingImpulse(body?: Any$w, freshOnly?: boolean): number;
3113
3253
  /** @internal Throw if not in pre-handler mutable window. */
3114
3254
  private _mutableCheck;
3115
3255
  /** @internal Accumulate impulse from contacts. */
3116
3256
  private _accumulateImpulse;
3117
3257
  }
3118
3258
 
3119
- type Any$x = any;
3259
+ type Any$v = any;
3120
3260
  /**
3121
3261
  * A fluid arbiter between two shapes with fluid interaction.
3122
3262
  *
@@ -3136,14 +3276,14 @@ declare class FluidArbiter extends Arbiter {
3136
3276
  get overlap(): number;
3137
3277
  set overlap(value: number);
3138
3278
  /** Buoyancy impulse applied by this fluid arbiter. */
3139
- buoyancyImpulse(body?: Any$x): Vec3;
3279
+ buoyancyImpulse(body?: Any$v): Vec3;
3140
3280
  /** Drag impulse applied by this fluid arbiter. */
3141
- dragImpulse(body?: Any$x): Vec3;
3281
+ dragImpulse(body?: Any$v): Vec3;
3142
3282
  /** Total impulse (buoyancy + drag). */
3143
- totalImpulse(body?: Any$x, _freshOnly?: boolean): Vec3;
3283
+ totalImpulse(body?: Any$v, _freshOnly?: boolean): Vec3;
3144
3284
  }
3145
3285
 
3146
- type Any$w = any;
3286
+ type Any$u = any;
3147
3287
  /**
3148
3288
  * Represents a contact point between two colliding shapes.
3149
3289
  *
@@ -3160,7 +3300,7 @@ declare class Contact {
3160
3300
  get _inner(): NapeInner;
3161
3301
  constructor();
3162
3302
  /** The collision arbiter this contact belongs to, or null. */
3163
- get arbiter(): Any$w;
3303
+ get arbiter(): Any$u;
3164
3304
  /** Penetration depth of this contact (positive = overlapping). */
3165
3305
  get penetration(): number;
3166
3306
  /** World-space position of this contact point. */
@@ -3174,25 +3314,25 @@ declare class Contact {
3174
3314
  * @param body - If null, returns world-frame impulse. Otherwise returns
3175
3315
  * impulse on the given body (must be one of the two in contact).
3176
3316
  */
3177
- normalImpulse(body?: Any$w): Vec3;
3317
+ normalImpulse(body?: Any$u): Vec3;
3178
3318
  /**
3179
3319
  * Tangent impulse at this contact point.
3180
3320
  * @param body - If null, returns world-frame impulse. Otherwise returns
3181
3321
  * impulse on the given body.
3182
3322
  */
3183
- tangentImpulse(body?: Any$w): Vec3;
3323
+ tangentImpulse(body?: Any$u): Vec3;
3184
3324
  /**
3185
3325
  * Rolling impulse at this contact point.
3186
3326
  * @param body - If null, returns total rolling impulse. Otherwise returns
3187
3327
  * rolling impulse on the given body.
3188
3328
  */
3189
- rollingImpulse(body?: Any$w): number;
3329
+ rollingImpulse(body?: Any$u): number;
3190
3330
  /**
3191
3331
  * Total impulse (normal + tangent + rolling) at this contact point.
3192
3332
  * @param body - If null, returns world-frame impulse. Otherwise returns
3193
3333
  * impulse on the given body.
3194
3334
  */
3195
- totalImpulse(body?: Any$w): Vec3;
3335
+ totalImpulse(body?: Any$u): Vec3;
3196
3336
  toString(): string;
3197
3337
  /** @internal */
3198
3338
  private _inactiveCheck;
@@ -3200,120 +3340,6 @@ declare class Contact {
3200
3340
  private _checkBody;
3201
3341
  }
3202
3342
 
3203
- /**
3204
- * Callback event types.
3205
- *
3206
- * - `BEGIN` — interaction just started
3207
- * - `ONGOING` — interaction continues
3208
- * - `END` — interaction just ended
3209
- * - `WAKE` — body/constraint woke up
3210
- * - `SLEEP` — body/constraint went to sleep
3211
- * - `BREAK` — constraint was broken
3212
- * - `PRE` — pre-interaction callback
3213
- *
3214
- * Converted from nape-compiled.js lines 516–657.
3215
- */
3216
- declare class CbEvent {
3217
- static __name__: string[];
3218
- constructor();
3219
- static get BEGIN(): CbEvent;
3220
- static get ONGOING(): CbEvent;
3221
- static get END(): CbEvent;
3222
- static get WAKE(): CbEvent;
3223
- static get SLEEP(): CbEvent;
3224
- static get BREAK(): CbEvent;
3225
- static get PRE(): CbEvent;
3226
- static get_BEGIN(): CbEvent;
3227
- static get_ONGOING(): CbEvent;
3228
- static get_END(): CbEvent;
3229
- static get_WAKE(): CbEvent;
3230
- static get_SLEEP(): CbEvent;
3231
- static get_BREAK(): CbEvent;
3232
- static get_PRE(): CbEvent;
3233
- toString(): string;
3234
- }
3235
-
3236
- /**
3237
- * ZPP_CbType — Internal callback type for the nape physics engine.
3238
- *
3239
- * Manages three types of listener lists (interaction, body, constraint)
3240
- * with priority-ordered insertion. Tracks interactors and constraints
3241
- * that use this callback type, and invalidates callback sets on change.
3242
- *
3243
- * Converted from nape-compiled.js lines 48256–48482.
3244
- */
3245
- type Any$v = any;
3246
- declare class ZPP_CbType {
3247
- static __name__: string[];
3248
- static _zpp: Any$v;
3249
- static ANY_SHAPE: Any$v;
3250
- static ANY_BODY: Any$v;
3251
- static ANY_COMPOUND: Any$v;
3252
- static ANY_CONSTRAINT: Any$v;
3253
- /**
3254
- * Initialize ANY_* singleton CbTypes. Called once from compiled factory.
3255
- */
3256
- static _initEnums(nape: Any$v): void;
3257
- outer: Any$v;
3258
- userData: Any$v;
3259
- id: number;
3260
- cbsets: Any$v;
3261
- interactors: Any$v;
3262
- wrap_interactors: Any$v;
3263
- constraints: Any$v;
3264
- wrap_constraints: Any$v;
3265
- listeners: Any$v;
3266
- bodylisteners: Any$v;
3267
- conlisteners: Any$v;
3268
- __class__: Any$v;
3269
- constructor();
3270
- /** Sort comparator by id. */
3271
- static setlt(a: ZPP_CbType, b: ZPP_CbType): boolean;
3272
- addInteractor(intx: Any$v): void;
3273
- remInteractor(intx: Any$v): void;
3274
- addConstraint(con: Any$v): void;
3275
- remConstraint(con: Any$v): void;
3276
- addint(x: Any$v): void;
3277
- removeint(x: Any$v): void;
3278
- invalidateint(): void;
3279
- addbody(x: Any$v): void;
3280
- removebody(x: Any$v): void;
3281
- invalidatebody(): void;
3282
- addconstraint(x: Any$v): void;
3283
- removeconstraint(x: Any$v): void;
3284
- invalidateconstraint(): void;
3285
- }
3286
-
3287
- type Any$u = any;
3288
- /**
3289
- * Callback type — used to tag interactors so that listeners
3290
- * can filter which interactions they respond to.
3291
- *
3292
- * Converted from nape-compiled.js lines 689–770.
3293
- */
3294
- declare class CbType {
3295
- static __name__: string[];
3296
- zpp_inner: ZPP_CbType;
3297
- get _inner(): NapeInner;
3298
- constructor();
3299
- static get ANY_BODY(): CbType;
3300
- static get ANY_CONSTRAINT(): CbType;
3301
- static get ANY_SHAPE(): CbType;
3302
- static get ANY_COMPOUND(): CbType;
3303
- static get_ANY_BODY(): CbType;
3304
- static get_ANY_CONSTRAINT(): CbType;
3305
- static get_ANY_SHAPE(): CbType;
3306
- static get_ANY_COMPOUND(): CbType;
3307
- get id(): number;
3308
- get userData(): Any$u;
3309
- get interactors(): Any$u;
3310
- get constraints(): Any$u;
3311
- including(includes: Any$u): Any$u;
3312
- excluding(excludes: Any$u): Any$u;
3313
- toString(): string;
3314
- static _wrap(inner: any): CbType;
3315
- }
3316
-
3317
3343
  /**
3318
3344
  * Interaction type filter for interaction listeners.
3319
3345
  *
@@ -3462,30 +3488,6 @@ declare class ZPP_Listener {
3462
3488
  static _initEnums(nape: Any$r, ZPP_Flags: Any$r): void;
3463
3489
  }
3464
3490
 
3465
- /**
3466
- * Listener type classification.
3467
- *
3468
- * - `BODY` — body event listener
3469
- * - `CONSTRAINT` — constraint event listener
3470
- * - `INTERACTION` — interaction event listener
3471
- * - `PRE` — pre-interaction listener
3472
- *
3473
- * Converted from nape-compiled.js lines 2554–2646.
3474
- */
3475
- declare class ListenerType {
3476
- static __name__: string[];
3477
- static BODY: ListenerType | null;
3478
- static CONSTRAINT: ListenerType | null;
3479
- static INTERACTION: ListenerType | null;
3480
- static PRE: ListenerType | null;
3481
- constructor();
3482
- static get_BODY(): ListenerType;
3483
- static get_CONSTRAINT(): ListenerType;
3484
- static get_INTERACTION(): ListenerType;
3485
- static get_PRE(): ListenerType;
3486
- toString(): string;
3487
- }
3488
-
3489
3491
  /**
3490
3492
  * Listener — Base class for all physics event listeners.
3491
3493
  *