fleethub-core 0.8.0 → 0.8.1

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.
@@ -0,0 +1,1120 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * @param {Gear} gear
5
+ * @returns {boolean}
6
+ */
7
+ export function air_squadron_can_equip(gear: Gear): boolean;
8
+ /**
9
+ */
10
+ export function set_panic_hook(): void;
11
+ /**
12
+ * @param {bindings.OrgType} org_type
13
+ * @returns {boolean}
14
+ */
15
+ export function org_type_is_single(org_type: bindings.OrgType): boolean;
16
+ /**
17
+ * @param {bindings.OrgType} org_type
18
+ * @returns {bindings.Formation}
19
+ */
20
+ export function org_type_default_formation(org_type: bindings.OrgType): bindings.Formation;
21
+ /**
22
+ * @param {bindings.OrgType} org_type
23
+ * @returns {boolean}
24
+ */
25
+ export function org_type_is_player(org_type: bindings.OrgType): boolean;
26
+ /**
27
+ * @param {bindings.OrgType} org_type
28
+ * @returns {bindings.Side}
29
+ */
30
+ export function org_type_side(org_type: bindings.OrgType): bindings.Side;
31
+
32
+ import * as bindings from "../bindings";
33
+ export * from "../bindings";
34
+
35
+
36
+ /**
37
+ */
38
+ export class AirSquadron {
39
+ free(): void;
40
+ /**
41
+ * @param {string} key
42
+ * @returns {Gear | undefined}
43
+ */
44
+ get_gear(key: string): Gear | undefined;
45
+ /**
46
+ * @param {Gear} gear
47
+ * @returns {boolean}
48
+ */
49
+ can_equip(gear: Gear): boolean;
50
+ /**
51
+ * @param {number} index
52
+ * @returns {number}
53
+ */
54
+ get_slot_size(index: number): number;
55
+ /**
56
+ * @param {number} index
57
+ * @returns {number}
58
+ */
59
+ get_max_slot_size(index: number): number;
60
+ /**
61
+ * @returns {number}
62
+ */
63
+ fighter_power(): number;
64
+ /**
65
+ * @returns {number}
66
+ */
67
+ interception_power(): number;
68
+ /**
69
+ * 行動半径
70
+ * @returns {number}
71
+ */
72
+ radius(): number;
73
+ /**
74
+ */
75
+ id: string;
76
+ /**
77
+ */
78
+ mode: bindings.AirSquadronMode;
79
+ /**
80
+ */
81
+ xxh3: BigInt;
82
+ }
83
+ /**
84
+ */
85
+ export class Analyzer {
86
+ free(): void;
87
+ /**
88
+ * @param {Comp} comp
89
+ * @param {bindings.Formation} formation
90
+ * @param {number | undefined} adjusted_anti_air_resist
91
+ * @param {number | undefined} fleet_anti_air_resist
92
+ * @param {number | undefined} aaci
93
+ * @returns {bindings.CompAntiAirInfo}
94
+ */
95
+ analyze_anti_air(comp: Comp, formation: bindings.Formation, adjusted_anti_air_resist?: number, fleet_anti_air_resist?: number, aaci?: number): bindings.CompAntiAirInfo;
96
+ /**
97
+ * @param {Comp} comp
98
+ * @returns {bindings.CompDayCutinRateInfo}
99
+ */
100
+ analyze_day_cutin(comp: Comp): bindings.CompDayCutinRateInfo;
101
+ /**
102
+ * @param {Comp} comp
103
+ * @param {bindings.NightSituation} attacker_situation
104
+ * @param {bindings.NightSituation} target_situation
105
+ * @returns {bindings.FleetNightCutinRateInfo}
106
+ */
107
+ analyze_night_cutin(comp: Comp, attacker_situation: bindings.NightSituation, target_situation: bindings.NightSituation): bindings.FleetNightCutinRateInfo;
108
+ /**
109
+ * @param {Comp} comp
110
+ * @returns {bindings.CompContactChanceInfo}
111
+ */
112
+ analyze_contact_chance(comp: Comp): bindings.CompContactChanceInfo;
113
+ /**
114
+ * @param {bindings.WarfareAnalyzerContext} params
115
+ * @param {Ship} attacker
116
+ * @param {Ship} target
117
+ * @returns {bindings.WarfareInfo}
118
+ */
119
+ analyze_warfare(params: bindings.WarfareAnalyzerContext, attacker: Ship, target: Ship): bindings.WarfareInfo;
120
+ /**
121
+ * @param {Comp} comp
122
+ * @param {bindings.Engagement} engagement
123
+ * @returns {bindings.FleetCutinAnalysis}
124
+ */
125
+ analyze_fleet_cutin(comp: Comp, engagement: bindings.Engagement): bindings.FleetCutinAnalysis;
126
+ }
127
+ /**
128
+ */
129
+ export class Comp {
130
+ free(): void;
131
+ /**
132
+ * @returns {bindings.Side}
133
+ */
134
+ side(): bindings.Side;
135
+ /**
136
+ * @returns {boolean}
137
+ */
138
+ is_combined(): boolean;
139
+ /**
140
+ * @returns {boolean}
141
+ */
142
+ is_enemy(): boolean;
143
+ /**
144
+ * @returns {bindings.CompMeta}
145
+ */
146
+ meta(): bindings.CompMeta;
147
+ /**
148
+ * @param {bindings.FleetType} ft
149
+ * @returns {string | undefined}
150
+ */
151
+ get_fleet_id(ft: bindings.FleetType): string | undefined;
152
+ /**
153
+ * @param {bindings.FleetType} ft
154
+ * @param {string} key
155
+ * @returns {Ship | undefined}
156
+ */
157
+ get_ship_with_clone(ft: bindings.FleetType, key: string): Ship | undefined;
158
+ /**
159
+ * @param {bindings.FleetType} ft
160
+ * @param {string} key
161
+ * @returns {string | undefined}
162
+ */
163
+ get_ship_entity_id(ft: bindings.FleetType, key: string): string | undefined;
164
+ /**
165
+ * @param {string} id
166
+ * @returns {Ship | undefined}
167
+ */
168
+ get_ship_by_eid_with_clone(id: string): Ship | undefined;
169
+ /**
170
+ * @returns {bindings.Formation}
171
+ */
172
+ default_formation(): bindings.Formation;
173
+ /**
174
+ * 艦隊対空値
175
+ * @param {number} formation_mod
176
+ * @returns {number}
177
+ */
178
+ fleet_anti_air(formation_mod: number): number;
179
+ /**
180
+ * 制空値
181
+ * @param {boolean} anti_combined
182
+ * @param {boolean} anti_lbas
183
+ * @returns {number | undefined}
184
+ */
185
+ fighter_power(anti_combined: boolean, anti_lbas: boolean): number | undefined;
186
+ /**
187
+ * マップ索敵
188
+ * @param {number} node_divaricated_factor
189
+ * @returns {number | undefined}
190
+ */
191
+ elos(node_divaricated_factor: number): number | undefined;
192
+ /**
193
+ * 輸送物資量(TP)
194
+ * @returns {number}
195
+ */
196
+ transport_point(): number;
197
+ /**
198
+ */
199
+ boss_sup?: Fleet;
200
+ /**
201
+ */
202
+ escort?: Fleet;
203
+ /**
204
+ */
205
+ hq_level: number;
206
+ /**
207
+ */
208
+ main: Fleet;
209
+ /**
210
+ */
211
+ org_type: bindings.OrgType;
212
+ /**
213
+ */
214
+ route_sup?: Fleet;
215
+ }
216
+ /**
217
+ */
218
+ export class FhCore {
219
+ free(): void;
220
+ /**
221
+ * @param {any} js_master
222
+ * @param {Function} js_fn
223
+ */
224
+ constructor(js_master: any, js_fn: Function);
225
+ /**
226
+ * @param {bindings.GearState | undefined} input
227
+ * @returns {Gear | undefined}
228
+ */
229
+ create_gear(input?: bindings.GearState): Gear | undefined;
230
+ /**
231
+ * @param {bindings.ShipState | undefined} input
232
+ * @returns {Ship | undefined}
233
+ */
234
+ create_ship(input?: bindings.ShipState): Ship | undefined;
235
+ /**
236
+ * @param {bindings.AirSquadronState | undefined} input
237
+ * @returns {AirSquadron}
238
+ */
239
+ create_air_squadron(input?: bindings.AirSquadronState): AirSquadron;
240
+ /**
241
+ * @param {bindings.FleetState | undefined} input
242
+ * @returns {Fleet}
243
+ */
244
+ create_fleet(input?: bindings.FleetState): Fleet;
245
+ /**
246
+ * @param {bindings.OrgState | undefined} input
247
+ * @returns {Org | undefined}
248
+ */
249
+ create_org(input?: bindings.OrgState): Org | undefined;
250
+ /**
251
+ * @param {number} ship_id
252
+ * @returns {Ship | undefined}
253
+ */
254
+ create_ship_by_id(ship_id: number): Ship | undefined;
255
+ /**
256
+ * @param {Uint16Array} main
257
+ * @param {Uint16Array | undefined} escort
258
+ * @returns {Comp}
259
+ */
260
+ create_comp_by_map_enemy(main: Uint16Array, escort?: Uint16Array): Comp;
261
+ /**
262
+ * @returns {Ship}
263
+ */
264
+ create_default_ship(): Ship;
265
+ /**
266
+ * @returns {Analyzer}
267
+ */
268
+ create_analyzer(): Analyzer;
269
+ /**
270
+ * @param {Comp} player
271
+ * @param {Comp} enemy
272
+ * @param {bindings.ShellingSupportSimulatorParams} params
273
+ * @param {number} times
274
+ * @returns {bindings.SimulatorResult}
275
+ */
276
+ simulate_shelling_support(player: Comp, enemy: Comp, params: bindings.ShellingSupportSimulatorParams, times: number): bindings.SimulatorResult;
277
+ }
278
+ /**
279
+ */
280
+ export class Fleet {
281
+ free(): void;
282
+ /**
283
+ * @returns {bindings.FleetMeta}
284
+ */
285
+ meta(): bindings.FleetMeta;
286
+ /**
287
+ * @returns {(string)[]}
288
+ */
289
+ ship_keys(): (string)[];
290
+ /**
291
+ * @returns {(string)[]}
292
+ */
293
+ ship_ids(): (string)[];
294
+ /**
295
+ * @returns {(string)[]}
296
+ */
297
+ get_gear_ids_by_improvable(): (string)[];
298
+ /**
299
+ * @returns {(string)[]}
300
+ */
301
+ get_gear_ids_by_proficiency(): (string)[];
302
+ /**
303
+ * @param {string} id
304
+ * @param {bindings.DamageState} state
305
+ * @returns {number | undefined}
306
+ */
307
+ get_damage_bound(id: string, state: bindings.DamageState): number | undefined;
308
+ /**
309
+ * @param {string} id
310
+ * @param {number} rate
311
+ * @param {boolean} ceil
312
+ * @returns {number | undefined}
313
+ */
314
+ get_remaining_fuel(id: string, rate: number, ceil: boolean): number | undefined;
315
+ /**
316
+ * @param {string} id
317
+ * @param {number} rate
318
+ * @param {boolean} ceil
319
+ * @returns {number | undefined}
320
+ */
321
+ get_remaining_ammo(id: string, rate: number, ceil: boolean): number | undefined;
322
+ /**
323
+ * @returns {number}
324
+ */
325
+ count_ships(): number;
326
+ /**
327
+ * @param {string} key
328
+ * @returns {Ship | undefined}
329
+ */
330
+ get_ship(key: string): Ship | undefined;
331
+ /**
332
+ * @param {boolean} anti_lbas
333
+ * @returns {number | undefined}
334
+ */
335
+ fighter_power(anti_lbas: boolean): number | undefined;
336
+ /**
337
+ * マップ索敵
338
+ * @param {number} hq_level
339
+ * @param {number} node_divaricated_factor
340
+ * @returns {number | undefined}
341
+ */
342
+ elos(hq_level: number, node_divaricated_factor: number): number | undefined;
343
+ /**
344
+ * 航空索敵スコア
345
+ * @returns {number | undefined}
346
+ */
347
+ aviation_detection_score(): number | undefined;
348
+ /**
349
+ * 遠征ボーナス
350
+ * @returns {number}
351
+ */
352
+ expedition_bonus(): number;
353
+ /**
354
+ * @param {string} key
355
+ * @returns {number | undefined}
356
+ */
357
+ sum_ship_stat_by(key: string): number | undefined;
358
+ /**
359
+ */
360
+ reset_battle_state(): void;
361
+ /**
362
+ * @returns {number | undefined}
363
+ */
364
+ readonly fleet_los_mod: number | undefined;
365
+ /**
366
+ */
367
+ id: string;
368
+ /**
369
+ */
370
+ len: number;
371
+ /**
372
+ */
373
+ xxh3: BigInt;
374
+ }
375
+ /**
376
+ */
377
+ export class Gear {
378
+ free(): void;
379
+ /**
380
+ * @returns {Gear}
381
+ */
382
+ static default(): Gear;
383
+ /**
384
+ * @param {bindings.GearAttr} attr
385
+ * @returns {boolean}
386
+ */
387
+ has_attr(attr: bindings.GearAttr): boolean;
388
+ /**
389
+ * @returns {bindings.GearCategory}
390
+ */
391
+ category(): bindings.GearCategory;
392
+ /**
393
+ * @returns {boolean}
394
+ */
395
+ is_carrier_shelling_plane(): boolean;
396
+ /**
397
+ * @returns {boolean}
398
+ */
399
+ has_proficiency(): boolean;
400
+ /**
401
+ * @returns {boolean}
402
+ */
403
+ max_exp_eq_120(): boolean;
404
+ /**
405
+ * @returns {number}
406
+ */
407
+ proficiency_critical_power_mod(): number;
408
+ /**
409
+ * @param {number} slot_size
410
+ * @returns {number}
411
+ */
412
+ calc_fighter_power(slot_size: number): number;
413
+ /**
414
+ * @param {number} slot_size
415
+ * @returns {number}
416
+ */
417
+ calc_interception_power(slot_size: number): number;
418
+ /**
419
+ * @returns {number}
420
+ */
421
+ fleet_anti_air(): number;
422
+ /**
423
+ * @returns {number}
424
+ */
425
+ adjusted_anti_air(): number;
426
+ /**
427
+ * @param {number} slot_size
428
+ * @returns {number}
429
+ */
430
+ calc_contact_trigger_factor(slot_size: number): number;
431
+ /**
432
+ * @returns {boolean}
433
+ */
434
+ is_contact_selection_plane(): boolean;
435
+ /**
436
+ * @param {bindings.AirStateRank} rank
437
+ * @returns {number}
438
+ */
439
+ contact_selection_rate(rank: bindings.AirStateRank): number;
440
+ /**
441
+ * @param {number} level
442
+ * @returns {number}
443
+ */
444
+ night_contact_rate(level: number): number;
445
+ /**
446
+ * @returns {boolean}
447
+ */
448
+ is_night_plane(): boolean;
449
+ /**
450
+ * @param {number} slot_size
451
+ * @param {boolean} anti_inst
452
+ * @returns {number}
453
+ */
454
+ night_plane_power(slot_size: number, anti_inst: boolean): number;
455
+ /**
456
+ * @returns {number}
457
+ */
458
+ elos(): number;
459
+ /**
460
+ * @returns {boolean}
461
+ */
462
+ is_abyssal(): boolean;
463
+ /**
464
+ * @returns {boolean}
465
+ */
466
+ is_abyssal_cuttlefish_torpedo(): boolean;
467
+ /**
468
+ * @returns {boolean}
469
+ */
470
+ is_abyssal_patrolling_attack_hawk(): boolean;
471
+ /**
472
+ * @returns {number}
473
+ */
474
+ expedition_bonus(): number;
475
+ /**
476
+ */
477
+ accuracy: number;
478
+ /**
479
+ * @returns {number}
480
+ */
481
+ readonly ace: number;
482
+ /**
483
+ */
484
+ adjusted_anti_air_resistance: number;
485
+ /**
486
+ */
487
+ anti_air: number;
488
+ /**
489
+ * @returns {number}
490
+ */
491
+ readonly anti_bomber: number;
492
+ /**
493
+ */
494
+ armor: number;
495
+ /**
496
+ */
497
+ asw: number;
498
+ /**
499
+ */
500
+ bombing: number;
501
+ /**
502
+ */
503
+ cost: number;
504
+ /**
505
+ */
506
+ default_exp: number;
507
+ /**
508
+ */
509
+ evasion: number;
510
+ /**
511
+ */
512
+ exp: number;
513
+ /**
514
+ */
515
+ firepower: number;
516
+ /**
517
+ */
518
+ fleet_anti_air_resistance: number;
519
+ /**
520
+ */
521
+ gear_id: number;
522
+ /**
523
+ */
524
+ gear_type: bindings.GearType;
525
+ /**
526
+ * @returns {number}
527
+ */
528
+ readonly gear_type_id: number;
529
+ /**
530
+ * @returns {number}
531
+ */
532
+ readonly icon_id: number;
533
+ /**
534
+ */
535
+ id: string;
536
+ /**
537
+ */
538
+ improvable: boolean;
539
+ /**
540
+ * @returns {number}
541
+ */
542
+ readonly interception: number;
543
+ /**
544
+ */
545
+ los: number;
546
+ /**
547
+ */
548
+ luck: number;
549
+ /**
550
+ */
551
+ max_hp: number;
552
+ /**
553
+ */
554
+ name: string;
555
+ /**
556
+ */
557
+ radius: number;
558
+ /**
559
+ */
560
+ range: number;
561
+ /**
562
+ * @returns {number}
563
+ */
564
+ readonly special_type_id: number;
565
+ /**
566
+ */
567
+ speed: number;
568
+ /**
569
+ */
570
+ stars: number;
571
+ /**
572
+ */
573
+ torpedo: number;
574
+ /**
575
+ * @returns {any}
576
+ */
577
+ readonly types: any;
578
+ /**
579
+ */
580
+ xxh3: BigInt;
581
+ }
582
+ /**
583
+ */
584
+ export class IBonuses {
585
+ free(): void;
586
+ /**
587
+ */
588
+ adjusted_anti_air: number;
589
+ /**
590
+ */
591
+ asw_accuracy: number;
592
+ /**
593
+ */
594
+ asw_power: number;
595
+ /**
596
+ */
597
+ carrier_shelling_power: number;
598
+ /**
599
+ */
600
+ contact_selection: number;
601
+ /**
602
+ */
603
+ defense_power: number;
604
+ /**
605
+ */
606
+ elos: number;
607
+ /**
608
+ */
609
+ fighter_power: number;
610
+ /**
611
+ */
612
+ fleet_anti_air: number;
613
+ /**
614
+ */
615
+ night_accuracy: number;
616
+ /**
617
+ */
618
+ night_power: number;
619
+ /**
620
+ */
621
+ shelling_accuracy: number;
622
+ /**
623
+ */
624
+ shelling_power: number;
625
+ /**
626
+ */
627
+ torpedo_accuracy: number;
628
+ /**
629
+ */
630
+ torpedo_evasion: number;
631
+ /**
632
+ */
633
+ torpedo_power: number;
634
+ }
635
+ /**
636
+ */
637
+ export class Org {
638
+ free(): void;
639
+ /**
640
+ * @param {bindings.Role} role
641
+ * @returns {number}
642
+ */
643
+ fleet_len(role: bindings.Role): number;
644
+ /**
645
+ * @param {bindings.Role} role
646
+ * @param {string} key
647
+ * @returns {string | undefined}
648
+ */
649
+ get_ship_entity_id(role: bindings.Role, key: string): string | undefined;
650
+ /**
651
+ * @returns {(string)[]}
652
+ */
653
+ air_squadron_ids(): (string)[];
654
+ /**
655
+ * @param {bindings.Role} role
656
+ * @returns {number | undefined}
657
+ */
658
+ fleet_los_mod(role: bindings.Role): number | undefined;
659
+ /**
660
+ * @returns {Uint16Array}
661
+ */
662
+ main_ship_ids(): Uint16Array;
663
+ /**
664
+ * @returns {Uint16Array}
665
+ */
666
+ escort_ship_ids(): Uint16Array;
667
+ /**
668
+ * @param {string} key
669
+ * @returns {Fleet}
670
+ */
671
+ clone_fleet(key: string): Fleet;
672
+ /**
673
+ * @param {bindings.Role} role
674
+ * @param {string} key
675
+ * @returns {Ship | undefined}
676
+ */
677
+ get_ship(role: bindings.Role, key: string): Ship | undefined;
678
+ /**
679
+ * @param {string} id
680
+ * @returns {Ship | undefined}
681
+ */
682
+ get_ship_by_id(id: string): Ship | undefined;
683
+ /**
684
+ * @param {bindings.Role} role
685
+ * @returns {string}
686
+ */
687
+ get_fleet_id_by_role(role: bindings.Role): string;
688
+ /**
689
+ * @returns {Comp}
690
+ */
691
+ create_comp(): Comp;
692
+ /**
693
+ * @param {string} key
694
+ * @returns {Comp}
695
+ */
696
+ create_comp_by_key(key: string): Comp;
697
+ /**
698
+ * @param {string} key
699
+ * @returns {AirSquadron}
700
+ */
701
+ get_air_squadron(key: string): AirSquadron;
702
+ /**
703
+ * @returns {(string)[]}
704
+ */
705
+ get_air_squadron_gear_ids_by_improvable(): (string)[];
706
+ /**
707
+ * @returns {(string)[]}
708
+ */
709
+ get_air_squadron_gear_ids_by_proficiency(): (string)[];
710
+ /**
711
+ * @returns {boolean}
712
+ */
713
+ is_player(): boolean;
714
+ /**
715
+ * @returns {boolean}
716
+ */
717
+ is_enemy(): boolean;
718
+ /**
719
+ * @returns {boolean}
720
+ */
721
+ is_single(): boolean;
722
+ /**
723
+ * @returns {boolean}
724
+ */
725
+ is_combined(): boolean;
726
+ /**
727
+ * 防空時の基地制空値
728
+ * @returns {number}
729
+ */
730
+ interception_power(): number;
731
+ /**
732
+ * 高高度迎撃時の基地制空値
733
+ * @returns {number}
734
+ */
735
+ high_altitude_interception_power(): number;
736
+ /**
737
+ * @param {Ship} ship
738
+ * @param {bindings.Formation} formation
739
+ * @returns {bindings.WarfareShipEnvironment}
740
+ */
741
+ create_warfare_ship_environment(ship: Ship, formation: bindings.Formation): bindings.WarfareShipEnvironment;
742
+ /**
743
+ * @returns {Org}
744
+ */
745
+ static default(): Org;
746
+ /**
747
+ */
748
+ boss_sup?: string;
749
+ /**
750
+ */
751
+ hq_level: number;
752
+ /**
753
+ */
754
+ id: string;
755
+ /**
756
+ */
757
+ org_type: bindings.OrgType;
758
+ /**
759
+ */
760
+ route_sup?: string;
761
+ /**
762
+ */
763
+ sortie: string;
764
+ /**
765
+ */
766
+ xxh3: BigInt;
767
+ }
768
+ /**
769
+ */
770
+ export class Ship {
771
+ free(): void;
772
+ /**
773
+ * @returns {Ship}
774
+ */
775
+ static default(): Ship;
776
+ /**
777
+ * @param {string} id
778
+ * @returns {boolean}
779
+ */
780
+ eq_id(id: string): boolean;
781
+ /**
782
+ * @returns {bindings.ShipState}
783
+ */
784
+ state(): bindings.ShipState;
785
+ /**
786
+ * @returns {bindings.ShipMeta}
787
+ */
788
+ meta(): bindings.ShipMeta;
789
+ /**
790
+ * @returns {number}
791
+ */
792
+ remodel_rank(): number;
793
+ /**
794
+ * @returns {bindings.DamageState}
795
+ */
796
+ damage_state(): bindings.DamageState;
797
+ /**
798
+ * @returns {bindings.MoraleState}
799
+ */
800
+ morale_state(): bindings.MoraleState;
801
+ /**
802
+ * @returns {bindings.ShipCategory}
803
+ */
804
+ category(): bindings.ShipCategory;
805
+ /**
806
+ * @param {bindings.ShipAttr} attr
807
+ * @returns {boolean}
808
+ */
809
+ has_attr(attr: bindings.ShipAttr): boolean;
810
+ /**
811
+ * @returns {any}
812
+ */
813
+ gear_keys(): any;
814
+ /**
815
+ * @param {string} key
816
+ * @returns {Gear | undefined}
817
+ */
818
+ get_gear(key: string): Gear | undefined;
819
+ /**
820
+ * @param {bindings.DamageState} state
821
+ * @returns {number | undefined}
822
+ */
823
+ get_damage_bound(state: bindings.DamageState): number | undefined;
824
+ /**
825
+ * @param {number} rate
826
+ * @param {boolean} ceil
827
+ * @returns {number}
828
+ */
829
+ get_remaining_fuel(rate: number, ceil: boolean): number;
830
+ /**
831
+ * @param {number} rate
832
+ * @param {boolean} ceil
833
+ * @returns {number}
834
+ */
835
+ get_remaining_ammo(rate: number, ceil: boolean): number;
836
+ /**
837
+ * @param {string} key
838
+ * @returns {boolean}
839
+ */
840
+ has_unknown_stat(key: string): boolean;
841
+ /**
842
+ * @param {string} key
843
+ * @returns {number | undefined}
844
+ */
845
+ get_naked_stat(key: string): number | undefined;
846
+ /**
847
+ * @param {string} key
848
+ * @returns {number | undefined}
849
+ */
850
+ get_stat_interval_left(key: string): number | undefined;
851
+ /**
852
+ * @param {string} key
853
+ * @returns {number | undefined}
854
+ */
855
+ get_stat_interval_right(key: string): number | undefined;
856
+ /**
857
+ * @param {string} key
858
+ * @returns {number}
859
+ */
860
+ get_gear_stat(key: string): number;
861
+ /**
862
+ * @param {string} key
863
+ * @returns {number}
864
+ */
865
+ get_ebonus(key: string): number;
866
+ /**
867
+ * @param {string} key
868
+ * @returns {number | undefined}
869
+ */
870
+ get_stat_mod(key: string): number | undefined;
871
+ /**
872
+ * @returns {boolean}
873
+ */
874
+ is_abyssal(): boolean;
875
+ /**
876
+ * @returns {boolean}
877
+ */
878
+ is_submarine(): boolean;
879
+ /**
880
+ * @param {Gear} gear
881
+ * @param {string} key
882
+ * @returns {boolean}
883
+ */
884
+ can_equip(gear: Gear, key: string): boolean;
885
+ /**
886
+ * @returns {boolean}
887
+ */
888
+ is_installation(): boolean;
889
+ /**
890
+ * @param {number} index
891
+ * @returns {number | undefined}
892
+ */
893
+ get_slot_size(index: number): number | undefined;
894
+ /**
895
+ * @param {number} index
896
+ * @returns {number | undefined}
897
+ */
898
+ get_max_slot_size(index: number): number | undefined;
899
+ /**
900
+ * @returns {number}
901
+ */
902
+ remaining_ammo_mod(): number;
903
+ /**
904
+ * @returns {number}
905
+ */
906
+ remaining_fuel_mod(): number;
907
+ /**
908
+ * @param {boolean} anti_lbas
909
+ * @returns {number | undefined}
910
+ */
911
+ fighter_power(anti_lbas: boolean): number | undefined;
912
+ /**
913
+ * @returns {number | undefined}
914
+ */
915
+ fleet_los_factor(): number | undefined;
916
+ /**
917
+ * @returns {number}
918
+ */
919
+ fleet_anti_air(): number;
920
+ /**
921
+ * @returns {number}
922
+ */
923
+ cruiser_fit_bonus(): number;
924
+ /**
925
+ * @param {boolean} is_night
926
+ * @returns {number}
927
+ */
928
+ fit_gun_bonus(is_night: boolean): number;
929
+ /**
930
+ * @returns {number | undefined}
931
+ */
932
+ basic_accuracy_term(): number | undefined;
933
+ /**
934
+ * @returns {number | undefined}
935
+ */
936
+ basic_evasion_term(): number | undefined;
937
+ /**
938
+ * @param {number} formation_mod
939
+ * @param {number} postcap_additive
940
+ * @param {number} postcap_multiplicative
941
+ * @returns {number | undefined}
942
+ */
943
+ evasion_term(formation_mod: number, postcap_additive: number, postcap_multiplicative: number): number | undefined;
944
+ /**
945
+ * @param {number} armor_penetration
946
+ * @returns {number | undefined}
947
+ */
948
+ basic_defense_power(armor_penetration: number): number | undefined;
949
+ /**
950
+ * @returns {Uint8Array}
951
+ */
952
+ get_possible_anti_air_cutin_ids(): Uint8Array;
953
+ /**
954
+ * @returns {number}
955
+ */
956
+ transport_point(): number;
957
+ /**
958
+ * @param {number} node_divaricated_factor
959
+ * @returns {number | undefined}
960
+ */
961
+ elos(node_divaricated_factor: number): number | undefined;
962
+ /**
963
+ * @param {number} value
964
+ */
965
+ take_damage(value: number): void;
966
+ /**
967
+ * @returns {number}
968
+ */
969
+ readonly accuracy: number;
970
+ /**
971
+ */
972
+ ammo: number;
973
+ /**
974
+ * @returns {number | undefined}
975
+ */
976
+ readonly anti_air: number | undefined;
977
+ /**
978
+ * @returns {number | undefined}
979
+ */
980
+ readonly armor: number | undefined;
981
+ /**
982
+ * @returns {number | undefined}
983
+ */
984
+ readonly asw: number | undefined;
985
+ /**
986
+ * @returns {number}
987
+ */
988
+ readonly ctype: number;
989
+ /**
990
+ */
991
+ current_hp: number;
992
+ /**
993
+ * @returns {number | undefined}
994
+ */
995
+ readonly evasion: number | undefined;
996
+ /**
997
+ * @returns {number | undefined}
998
+ */
999
+ readonly firepower: number | undefined;
1000
+ /**
1001
+ */
1002
+ fuel: number;
1003
+ /**
1004
+ */
1005
+ id: string;
1006
+ /**
1007
+ */
1008
+ level: number;
1009
+ /**
1010
+ * @returns {number | undefined}
1011
+ */
1012
+ readonly los: number | undefined;
1013
+ /**
1014
+ * @returns {number | undefined}
1015
+ */
1016
+ readonly luck: number | undefined;
1017
+ /**
1018
+ * @returns {number}
1019
+ */
1020
+ readonly max_ammo: number;
1021
+ /**
1022
+ * @returns {number}
1023
+ */
1024
+ readonly max_fuel: number;
1025
+ /**
1026
+ * @returns {number | undefined}
1027
+ */
1028
+ readonly max_hp: number | undefined;
1029
+ /**
1030
+ */
1031
+ morale: number;
1032
+ /**
1033
+ * @returns {number | undefined}
1034
+ */
1035
+ readonly naked_anti_air: number | undefined;
1036
+ /**
1037
+ * @returns {number | undefined}
1038
+ */
1039
+ readonly naked_armor: number | undefined;
1040
+ /**
1041
+ * @returns {number | undefined}
1042
+ */
1043
+ readonly naked_asw: number | undefined;
1044
+ /**
1045
+ * @returns {number | undefined}
1046
+ */
1047
+ readonly naked_evasion: number | undefined;
1048
+ /**
1049
+ * @returns {number | undefined}
1050
+ */
1051
+ readonly naked_firepower: number | undefined;
1052
+ /**
1053
+ * @returns {number | undefined}
1054
+ */
1055
+ readonly naked_los: number | undefined;
1056
+ /**
1057
+ * @returns {number | undefined}
1058
+ */
1059
+ readonly naked_range: number | undefined;
1060
+ /**
1061
+ * @returns {number}
1062
+ */
1063
+ readonly naked_speed: number;
1064
+ /**
1065
+ * @returns {number | undefined}
1066
+ */
1067
+ readonly naked_torpedo: number | undefined;
1068
+ /**
1069
+ * @returns {string}
1070
+ */
1071
+ readonly name: string;
1072
+ /**
1073
+ * @returns {number}
1074
+ */
1075
+ readonly next_id: number;
1076
+ /**
1077
+ * @returns {number | undefined}
1078
+ */
1079
+ readonly range: number | undefined;
1080
+ /**
1081
+ */
1082
+ ship_class: bindings.ShipClass;
1083
+ /**
1084
+ */
1085
+ ship_id: number;
1086
+ /**
1087
+ */
1088
+ ship_type: bindings.ShipType;
1089
+ /**
1090
+ * @returns {number}
1091
+ */
1092
+ readonly slotnum: number;
1093
+ /**
1094
+ * @returns {number}
1095
+ */
1096
+ readonly sort_id: number;
1097
+ /**
1098
+ * @returns {number}
1099
+ */
1100
+ readonly speed: number;
1101
+ /**
1102
+ * @returns {number}
1103
+ */
1104
+ readonly stype: number;
1105
+ /**
1106
+ * @returns {number | undefined}
1107
+ */
1108
+ readonly torpedo: number | undefined;
1109
+ /**
1110
+ * @returns {boolean}
1111
+ */
1112
+ readonly useful: boolean;
1113
+ /**
1114
+ */
1115
+ xxh3: BigInt;
1116
+ /**
1117
+ * @returns {string}
1118
+ */
1119
+ readonly yomi: string;
1120
+ }