warscript 0.0.1-dev.38157d0 → 0.0.1-dev.3860fce

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/attributes.d.ts +5 -0
  2. package/attributes.lua +8 -1
  3. package/config.d.ts +5 -0
  4. package/config.lua +10 -0
  5. package/core/types/effect.d.ts +14 -6
  6. package/core/types/effect.lua +131 -35
  7. package/core/types/frame.d.ts +4 -0
  8. package/core/types/frame.lua +81 -12
  9. package/core/types/player.lua +3 -1
  10. package/core/types/playerCamera.d.ts +2 -0
  11. package/core/types/playerCamera.lua +79 -5
  12. package/core/types/sound.d.ts +17 -24
  13. package/core/types/sound.lua +99 -24
  14. package/core/types/timer.d.ts +8 -8
  15. package/core/types/timer.lua +25 -23
  16. package/core/util.d.ts +1 -1
  17. package/core/util.lua +18 -1
  18. package/decl/native.d.ts +844 -788
  19. package/engine/behavior.d.ts +4 -2
  20. package/engine/behavior.lua +59 -33
  21. package/engine/behaviour/ability/always-enabled.d.ts +7 -0
  22. package/engine/behaviour/ability/always-enabled.lua +31 -0
  23. package/engine/behaviour/ability/apply-buff.d.ts +5 -0
  24. package/engine/behaviour/ability/apply-buff.lua +32 -0
  25. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  26. package/engine/behaviour/ability/damage.d.ts +9 -3
  27. package/engine/behaviour/ability/damage.lua +26 -38
  28. package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
  29. package/engine/behaviour/ability/emulate-impact.lua +43 -0
  30. package/engine/behaviour/ability/instant-impact.d.ts +2 -2
  31. package/engine/behaviour/ability/instant-impact.lua +4 -19
  32. package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
  33. package/engine/behaviour/ability/on-command-impact.lua +25 -0
  34. package/engine/behaviour/ability/remove-buffs.d.ts +16 -0
  35. package/engine/behaviour/ability/remove-buffs.lua +28 -0
  36. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  37. package/engine/behaviour/ability/restore-mana.lua +6 -6
  38. package/engine/behaviour/ability.d.ts +20 -4
  39. package/engine/behaviour/ability.lua +111 -47
  40. package/engine/behaviour/unit/stun-immunity.d.ts +5 -3
  41. package/engine/behaviour/unit/stun-immunity.lua +43 -27
  42. package/engine/behaviour/unit.d.ts +32 -0
  43. package/engine/behaviour/unit.lua +185 -4
  44. package/engine/buff.d.ts +63 -45
  45. package/engine/buff.lua +300 -237
  46. package/engine/internal/ability.d.ts +23 -14
  47. package/engine/internal/ability.lua +128 -85
  48. package/engine/internal/item/ability.lua +162 -4
  49. package/engine/internal/item+owner.lua +12 -6
  50. package/engine/internal/item.d.ts +7 -4
  51. package/engine/internal/item.lua +141 -35
  52. package/engine/internal/mechanics/ability-duration.lua +1 -1
  53. package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
  54. package/engine/internal/misc/ability-disable-counter.lua +13 -0
  55. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  56. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  57. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  58. package/engine/internal/misc/frame-coordinates.lua +21 -0
  59. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  60. package/engine/internal/misc/get-terrain-z.lua +11 -0
  61. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  62. package/engine/internal/misc/player-local-handle.lua +5 -0
  63. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  64. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  65. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  66. package/engine/internal/object-data/evasion-probability.lua +16 -0
  67. package/engine/internal/unit/ability.d.ts +45 -1
  68. package/engine/internal/unit/ability.lua +98 -14
  69. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  70. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  71. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  72. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  73. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  74. package/engine/internal/unit/allowed-targets.lua +9 -1
  75. package/engine/internal/unit/bonus.d.ts +2 -0
  76. package/engine/internal/unit/bonus.lua +17 -0
  77. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  78. package/engine/internal/unit/ignore-events-items.lua +5 -0
  79. package/engine/internal/unit/item.d.ts +24 -0
  80. package/engine/internal/unit/item.lua +78 -0
  81. package/engine/internal/unit/main-selected.d.ts +13 -0
  82. package/engine/internal/unit/main-selected.lua +51 -0
  83. package/engine/internal/unit/order.d.ts +20 -0
  84. package/engine/internal/unit/order.lua +136 -0
  85. package/engine/internal/unit+ability.lua +10 -1
  86. package/engine/internal/unit+damage.d.ts +2 -11
  87. package/engine/internal/unit+damage.lua +10 -14
  88. package/engine/internal/unit+spellSteal.lua +1 -2
  89. package/engine/internal/unit-missile-launch.lua +33 -7
  90. package/engine/internal/unit.d.ts +50 -25
  91. package/engine/internal/unit.lua +372 -198
  92. package/engine/internal/utility.lua +12 -0
  93. package/engine/lightning.d.ts +12 -5
  94. package/engine/lightning.lua +48 -14
  95. package/engine/local-client.d.ts +7 -2
  96. package/engine/local-client.lua +82 -0
  97. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  98. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  99. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  100. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  101. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
  102. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  103. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  104. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  105. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  106. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  107. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  108. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  109. package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
  110. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  111. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  112. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  113. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  114. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  115. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  116. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  117. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  118. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  119. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  120. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  121. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  122. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  123. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  124. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  125. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  126. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  127. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  128. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  129. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  130. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  131. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  132. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  133. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  134. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  135. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  136. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  137. package/engine/object-data/entry/ability-type/web.lua +52 -0
  138. package/engine/object-data/entry/ability-type.d.ts +19 -17
  139. package/engine/object-data/entry/ability-type.lua +90 -36
  140. package/engine/object-data/entry/buff-type/applicable.lua +18 -37
  141. package/engine/object-data/entry/buff-type.d.ts +6 -12
  142. package/engine/object-data/entry/buff-type.lua +13 -29
  143. package/engine/object-data/entry/destructible-type.d.ts +1 -1
  144. package/engine/object-data/entry/item-type.d.ts +15 -1
  145. package/engine/object-data/entry/item-type.lua +93 -2
  146. package/engine/object-data/entry/lightning-type.d.ts +1 -1
  147. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  148. package/engine/object-data/entry/sound-preset.lua +140 -0
  149. package/engine/object-data/entry/unit-type.d.ts +21 -5
  150. package/engine/object-data/entry/unit-type.lua +214 -93
  151. package/engine/object-data/entry/upgrade.d.ts +1 -1
  152. package/engine/object-data/entry/upgrade.lua +4 -4
  153. package/engine/object-data/entry.d.ts +16 -14
  154. package/engine/object-data/entry.lua +60 -32
  155. package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
  156. package/engine/object-field/ability.d.ts +12 -6
  157. package/engine/object-field/ability.lua +9 -5
  158. package/engine/object-field/unit.d.ts +57 -3
  159. package/engine/object-field/unit.lua +207 -7
  160. package/engine/object-field.d.ts +17 -6
  161. package/engine/object-field.lua +190 -90
  162. package/engine/standard/entries/buff-type.d.ts +3 -0
  163. package/engine/standard/entries/buff-type.lua +3 -0
  164. package/engine/standard/entries/sound-preset.d.ts +10 -0
  165. package/engine/standard/entries/sound-preset.lua +10 -0
  166. package/engine/standard/fields/ability.d.ts +2 -0
  167. package/engine/standard/fields/ability.lua +2 -0
  168. package/engine/standard/fields/unit.d.ts +4 -0
  169. package/engine/standard/fields/unit.lua +7 -0
  170. package/engine/text-tag.d.ts +36 -2
  171. package/engine/text-tag.lua +249 -10
  172. package/engine/unit.d.ts +4 -0
  173. package/engine/unit.lua +4 -0
  174. package/index.d.ts +1 -0
  175. package/index.lua +1 -0
  176. package/objutil/buff.lua +1 -2
  177. package/objutil/unit.lua +8 -0
  178. package/package.json +2 -2
  179. package/patch-lua.d.ts +0 -0
  180. package/patch-lua.lua +10 -0
  181. package/utility/arrays.d.ts +9 -1
  182. package/utility/arrays.lua +37 -3
  183. package/utility/functions.d.ts +8 -0
  184. package/utility/functions.lua +13 -0
  185. package/utility/lazy.d.ts +2 -0
  186. package/utility/lazy.lua +14 -0
  187. package/utility/linked-set.d.ts +1 -0
  188. package/utility/linked-set.lua +3 -0
  189. package/utility/lua-maps.d.ts +4 -0
  190. package/utility/lua-maps.lua +20 -0
  191. package/utility/lua-sets.d.ts +2 -0
  192. package/utility/lua-sets.lua +7 -0
  193. package/utility/reflection.lua +11 -7
  194. package/core/types/order.d.ts +0 -25
  195. package/core/types/order.lua +0 -55
@@ -11,6 +11,10 @@ import { Ability, UnitAbility } from "./ability";
11
11
  import { Widget } from "../../core/types/widget";
12
12
  import type { UnitTypeId } from "../object-data/entry/unit-type";
13
13
  import { CombatClassification, CombatClassifications } from "../object-data/auxiliary/combat-classification";
14
+ import { MovementType } from "../object-data/auxiliary/movement-type";
15
+ import { UnitAttribute } from "../object-data/auxiliary/unit-attribute";
16
+ import { AttackType } from "../object-data/auxiliary/attack-type";
17
+ import { AttributesHolder } from "../../attributes";
14
18
  export type UnitClassification = junittype;
15
19
  export declare namespace UnitClassification {
16
20
  const STRUCTURE: junittype;
@@ -19,6 +23,7 @@ export declare namespace UnitClassification {
19
23
  const GROUND: junittype;
20
24
  const SUMMONED: junittype;
21
25
  const MECHANICAL: junittype;
26
+ const WORKER: junittype;
22
27
  const ANCIENT: junittype;
23
28
  const SUICIDAL: junittype;
24
29
  const TAUREN: junittype;
@@ -36,15 +41,18 @@ type AbilityDispatcherTable<T extends any[] = []> = {
36
41
  readonly [id: number]: Event<[Unit, Ability, ...T]>;
37
42
  };
38
43
  type AbilityEventDispatcher<T extends any[] = []> = Event<[Unit, Ability, ...T]> & AbilityDispatcherTable<T>;
39
- export interface DamagingEvent {
44
+ export interface DamagingEvent extends AttributesHolder {
40
45
  amount: number;
41
- attackType: jattacktype;
46
+ attackType: AttackType;
42
47
  damageType: jdamagetype;
43
48
  weaponType: jweapontype;
49
+ metadata: unknown;
44
50
  readonly isAttack: boolean;
45
51
  readonly originalAmount: number;
52
+ readonly originalMetadata: unknown;
53
+ preventRetaliation(this: DamagingEvent): void;
46
54
  }
47
- export type DamageEvent = DamagingEvent & {
55
+ export type DamageEvent = Omit<DamagingEvent, "preventRetaliation"> & {
48
56
  preventDeath<P extends any[]>(this: DamageEvent, callback: (this: void, ...parameters: P) => any, ...parameters: P): void;
49
57
  };
50
58
  export type AttackDamageEvent = DamagingEvent & {
@@ -68,16 +76,6 @@ declare const modifiers: {
68
76
  speed: (unit: junit, value: number) => void;
69
77
  armor: (unit: junit, value: number) => void;
70
78
  };
71
- export interface UnitItems extends Array<Item | undefined> {
72
- readonly length: 0 | 1 | 2 | 3 | 4 | 5 | 6;
73
- }
74
- export declare class UnitItems {
75
- private readonly handle;
76
- constructor(handle: junit);
77
- protected __newindex(slot: number, item: Item | undefined): void;
78
- protected __index(slot: number): Item | undefined;
79
- protected __len(): number;
80
- }
81
79
  export declare class UnitWeapon {
82
80
  readonly unit: Unit;
83
81
  readonly index: 0 | 1;
@@ -86,6 +84,8 @@ export declare class UnitWeapon {
86
84
  set cooldown(cooldown: number);
87
85
  get damage(): [minimumDamage: number, maximumDamage: number];
88
86
  set damage([minimumDamage, maximumDamage]: [number, number]);
87
+ get allowedTargetCombatClassifications(): CombatClassifications;
88
+ set allowedTargetCombatClassifications(allowedTargetCombatClassifications: CombatClassifications);
89
89
  get damageBase(): number;
90
90
  set damageBase(damageBase: number);
91
91
  get damageDiceCount(): number;
@@ -104,20 +104,29 @@ export declare class UnitWeapon {
104
104
  set missileSpeed(missileSpeed: number);
105
105
  }
106
106
  declare const enum UnitPropertyKey {
107
- IS_PAUSED = 100,
108
- STUN_COUNTER = 101,
109
- DELAY_HEALTH_CHECKS_COUNTER = 102,
110
- DELAY_HEALTH_CHECKS_HEALTH_BONUS = 103,
111
- PREVENT_DEATH_HEALTH_BONUS = 104,
112
- IS_TEAM_GLOW_HIDDEN = 105
107
+ SYNC_ID = 100,
108
+ IS_PAUSED = 101,
109
+ STUN_COUNTER = 102,
110
+ DELAY_HEALTH_CHECKS_COUNTER = 103,
111
+ DELAY_HEALTH_CHECKS_HEALTH_BONUS = 104,
112
+ PREVENT_DEATH_HEALTH_BONUS = 105,
113
+ IS_TEAM_GLOW_HIDDEN = 106,
114
+ LAST_X = 107,
115
+ LAST_Y = 108
113
116
  }
117
+ export type UnitSyncId = number & {
118
+ readonly __unitSyncId: unique symbol;
119
+ };
114
120
  export declare class Unit extends Handle<junit> {
121
+ readonly syncId: UnitSyncId;
115
122
  private [UnitPropertyKey.IS_PAUSED]?;
116
123
  private [UnitPropertyKey.STUN_COUNTER]?;
117
124
  private [UnitPropertyKey.DELAY_HEALTH_CHECKS_COUNTER]?;
118
125
  private [UnitPropertyKey.DELAY_HEALTH_CHECKS_HEALTH_BONUS]?;
119
126
  private [UnitPropertyKey.PREVENT_DEATH_HEALTH_BONUS]?;
120
127
  private [UnitPropertyKey.IS_TEAM_GLOW_HIDDEN]?;
128
+ private [UnitPropertyKey.LAST_X]?;
129
+ private [UnitPropertyKey.LAST_Y]?;
121
130
  private _owner?;
122
131
  private _timeScale?;
123
132
  private events?;
@@ -138,6 +147,7 @@ export declare class Unit extends Handle<junit> {
138
147
  get isAlive(): boolean;
139
148
  get isDead(): boolean;
140
149
  get isIllusion(): boolean;
150
+ get isStunned(): boolean;
141
151
  get combatClassifications(): CombatClassifications;
142
152
  set combatClassifications(combatClassifications: CombatClassifications);
143
153
  hasCombatClassification(combatClassification: CombatClassification): boolean;
@@ -150,16 +160,19 @@ export declare class Unit extends Handle<junit> {
150
160
  isInRangeOf(unit: Unit, range: number): boolean;
151
161
  isAllyOf(unit: Unit): boolean;
152
162
  isEnemyOf(unit: Unit): boolean;
153
- playAnimation(animation: string, rarity?: jraritycontrol): void;
154
- playAnimation(animation: number): void;
163
+ playAnimation(...parameters: [animation: number] | [animation: string, rarity?: jraritycontrol]): void;
164
+ resetAnimation(): void;
155
165
  queueAnimation(animation: string): void;
156
166
  get weapons(): [UnitWeapon, UnitWeapon];
157
167
  get firstWeapon(): UnitWeapon;
158
168
  get secondWeapon(): UnitWeapon;
169
+ chooseWeapon(target: Unit): UnitWeapon | undefined;
159
170
  get level(): number;
160
171
  set level(v: number);
161
172
  get xp(): number;
162
173
  set xp(v: number);
174
+ get primaryAttribute(): UnitAttribute;
175
+ set primaryAttribute(primaryAttribute: UnitAttribute);
163
176
  get strengthBase(): number;
164
177
  set strengthBase(strengthBase: number);
165
178
  get strengthBonus(): number;
@@ -234,6 +247,8 @@ export declare class Unit extends Handle<junit> {
234
247
  set timeScale(v: number);
235
248
  get collisionSize(): number;
236
249
  get pathingCollisionRange(): number;
250
+ get movementType(): MovementType;
251
+ set movementType(movementType: MovementType);
237
252
  set pathing(v: boolean);
238
253
  isSelected(player: Player): boolean;
239
254
  explode(): void;
@@ -251,8 +266,7 @@ export declare class Unit extends Handle<junit> {
251
266
  dropItemTarget(item: Item, target: Widget): boolean;
252
267
  dropItemSlot(item: Item, slot: number): boolean;
253
268
  itemInSlot(slot: number): Item | null;
254
- get items(): UnitItems;
255
- addAbility(abilityId: number): UnitAbility | null;
269
+ addAbility(abilityId: number): UnitAbility | undefined;
256
270
  makeAbilityPermanent(abilityId: number, permanent: true): boolean;
257
271
  setAbilityLevel(abilityId: number, level: number): number;
258
272
  getAbilityLevel(abilityId: number): number;
@@ -263,6 +277,7 @@ export declare class Unit extends Handle<junit> {
263
277
  getAbilityRemainingCooldown(abilityId: number): number;
264
278
  startAbilityCooldown(abilityId: number, cooldown: number): void;
265
279
  endAbilityCooldown(abilityId: number): void;
280
+ interruptMovement(): void;
266
281
  interruptAttack(): void;
267
282
  interruptCast(abilityId: number): void;
268
283
  getDistanceTo(target: Unit | Vec2): number;
@@ -285,6 +300,7 @@ export declare class Unit extends Handle<junit> {
285
300
  get onUnitInRange(): Record<number, Event<[Unit]>>;
286
301
  get onManaEqual(): Record<number, Event<[Unit, number]>>;
287
302
  get manaEvent(): Record<Operator, Record<number, Event<[Unit]>>>;
303
+ get targetAcquiredEvent(): Event;
288
304
  get onSelect(): Event;
289
305
  get onDeselect(): Event;
290
306
  get onImmediateOrder(): Event<[number]>;
@@ -299,7 +315,7 @@ export declare class Unit extends Handle<junit> {
299
315
  static getInRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
300
316
  static getInCollisionRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
301
317
  static getInSector(pos: Vec2, range: number, offsetAngle: number, centralAngle: number): Unit[];
302
- static getSelectionOf(player: Player): Unit[];
318
+ static getSelectionOf(player: Player, target?: Unit[]): Unit[];
303
319
  static readonly deathEvent: UnitTriggerEvent<[Unit]>;
304
320
  static readonly onDecay: UnitTriggerEvent<[]>;
305
321
  static readonly onResurrect: InitializingEvent<[Unit], void>;
@@ -337,7 +353,15 @@ export declare class Unit extends Handle<junit> {
337
353
  static itemDroppedEvent: UnitTriggerEvent<[Item]>;
338
354
  static itemPickedUpEvent: UnitTriggerEvent<[Item]>;
339
355
  static itemUsedEvent: UnitTriggerEvent<[Item]>;
340
- static itemStackedEvent: UnitTriggerEvent<[Item]>;
356
+ static itemStackedEvent: UnitTriggerEvent<[target: Item, source: Item]>;
357
+ static get itemChargesChangedEvent(): Event<[unit: Unit, item: Item]>;
358
+ static get itemUseOrderEvent(): Event<[unit: Unit, item: Item]>;
359
+ static get itemMoveOrderEvent(): Event<[
360
+ unit: Unit,
361
+ item: Item,
362
+ slotFrom: 0 | 1 | 2 | 3 | 4 | 5,
363
+ slotTo: 0 | 1 | 2 | 3 | 4 | 5
364
+ ]>;
341
365
  static get onCreate(): EventDispatcher<[Unit], [Unit]>;
342
366
  static get destroyEvent(): EventDispatcher<[Unit], [Unit]>;
343
367
  getField(field: junitintegerfield | junitrealfield): number;
@@ -348,5 +372,6 @@ export declare class Unit extends Handle<junit> {
348
372
  setField(field: junitbooleanfield, value: boolean): boolean;
349
373
  setField(field: junitstringfield, value: string): boolean;
350
374
  toString(): string;
375
+ static getBySyncId(syncId: UnitSyncId): Unit | undefined;
351
376
  }
352
377
  export {};