fleethub-core 1.7.11 → 1.7.13

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.
@@ -108,6 +108,23 @@ export type ShipAttr =
108
108
  | ShipAttr.BattleshipSummerPrincess
109
109
  | ShipAttr.HeavyCruiserSummerPrincess;
110
110
 
111
+ declare namespace FleetCutin {
112
+ export type NelsonTouch = "NelsonTouch";
113
+ export type NagatoClassCutin = "NagatoClassCutin";
114
+ export type ColoradoClassCutin = "ColoradoClassCutin";
115
+ export type KongouClassCutin = "KongouClassCutin";
116
+ export type Yamato2ShipCutin = "Yamato2ShipCutin";
117
+ export type Yamato3ShipCutin = "Yamato3ShipCutin";
118
+ }
119
+
120
+ export type FleetCutin =
121
+ | FleetCutin.NelsonTouch
122
+ | FleetCutin.NagatoClassCutin
123
+ | FleetCutin.ColoradoClassCutin
124
+ | FleetCutin.KongouClassCutin
125
+ | FleetCutin.Yamato2ShipCutin
126
+ | FleetCutin.Yamato3ShipCutin;
127
+
111
128
  declare namespace AirStateRank {
112
129
  export type Rank0 = "Rank0";
113
130
  export type Rank1 = "Rank1";
@@ -160,15 +177,6 @@ export interface MasterIBonusRule {
160
177
  formula: CompiledEvaler;
161
178
  }
162
179
 
163
- declare namespace ShellingAttackType {
164
- export type Normal = "Normal";
165
- export type Carrier = "Carrier";
166
- }
167
-
168
- export type ShellingAttackType =
169
- | ShellingAttackType.Normal
170
- | ShellingAttackType.Carrier;
171
-
172
180
  export interface FleetCutinAnalysis {
173
181
  shelling: FleetCutinInfo[];
174
182
  night: FleetCutinInfo[];
@@ -188,6 +196,70 @@ export interface FleetCutinInfoItem {
188
196
  stats: AttackStats;
189
197
  }
190
198
 
199
+ declare namespace SpecialEnemyType {
200
+ export type None = "None";
201
+ export type SoftSkinned = "SoftSkinned";
202
+ export type Pillbox = "Pillbox";
203
+ export type IsolatedIsland = "IsolatedIsland";
204
+ export type SupplyDepot = "SupplyDepot";
205
+ export type HarbourSummerPrincess = "HarbourSummerPrincess";
206
+ export type PtImp = "PtImp";
207
+ export type BattleshipSummerPrincess = "BattleshipSummerPrincess";
208
+ export type HeavyCruiserSummerPrincess = "HeavyCruiserSummerPrincess";
209
+ }
210
+
211
+ export type SpecialEnemyType =
212
+ | SpecialEnemyType.None
213
+ | SpecialEnemyType.SoftSkinned
214
+ | SpecialEnemyType.Pillbox
215
+ | SpecialEnemyType.IsolatedIsland
216
+ | SpecialEnemyType.SupplyDepot
217
+ | SpecialEnemyType.HarbourSummerPrincess
218
+ | SpecialEnemyType.PtImp
219
+ | SpecialEnemyType.BattleshipSummerPrincess
220
+ | SpecialEnemyType.HeavyCruiserSummerPrincess;
221
+
222
+ declare namespace MoraleState {
223
+ export type Sparkle = "Sparkle";
224
+ export type Normal = "Normal";
225
+ export type Orange = "Orange";
226
+ export type Red = "Red";
227
+ }
228
+
229
+ export type MoraleState =
230
+ | MoraleState.Sparkle
231
+ | MoraleState.Normal
232
+ | MoraleState.Orange
233
+ | MoraleState.Red;
234
+
235
+ declare namespace DamageState {
236
+ export type Normal = "Normal";
237
+ export type Shouha = "Shouha";
238
+ export type Chuuha = "Chuuha";
239
+ export type Taiha = "Taiha";
240
+ export type Sunk = "Sunk";
241
+ }
242
+
243
+ export type DamageState =
244
+ | DamageState.Normal
245
+ | DamageState.Shouha
246
+ | DamageState.Chuuha
247
+ | DamageState.Taiha
248
+ | DamageState.Sunk;
249
+
250
+ declare namespace SpeedGroup {
251
+ export type A = "A";
252
+ export type B1 = "B1";
253
+ export type B2 = "B2";
254
+ export type C = "C";
255
+ }
256
+
257
+ export type SpeedGroup =
258
+ | SpeedGroup.A
259
+ | SpeedGroup.B1
260
+ | SpeedGroup.B2
261
+ | SpeedGroup.C;
262
+
191
263
  declare namespace AirWaveType {
192
264
  export type Jet = "Jet";
193
265
  export type LandBase = "LandBase";
@@ -211,13 +283,6 @@ export interface SimulatorResultItem {
211
283
  damage_state_map: Record<DamageState, number>;
212
284
  }
213
285
 
214
- declare namespace AswAttackType {
215
- export type DepthCharge = "DepthCharge";
216
- export type Aircraft = "Aircraft";
217
- }
218
-
219
- export type AswAttackType = AswAttackType.DepthCharge | AswAttackType.Aircraft;
220
-
221
286
  declare namespace OrgType {
222
287
  export type Single = "Single";
223
288
  export type CarrierTaskForce = "CarrierTaskForce";
@@ -235,13 +300,6 @@ export type OrgType =
235
300
  | OrgType.EnemySingle
236
301
  | OrgType.EnemyCombined;
237
302
 
238
- declare namespace Role {
239
- export type Main = "Main";
240
- export type Escort = "Escort";
241
- }
242
-
243
- export type Role = Role.Main | Role.Escort;
244
-
245
303
  export interface CompMeta {
246
304
  fleets: Record<FleetType, FleetMeta>;
247
305
  }
@@ -257,6 +315,13 @@ export interface ShipMeta {
257
315
  ship_id: number;
258
316
  }
259
317
 
318
+ declare namespace AswAttackType {
319
+ export type DepthCharge = "DepthCharge";
320
+ export type Aircraft = "Aircraft";
321
+ }
322
+
323
+ export type AswAttackType = AswAttackType.DepthCharge | AswAttackType.Aircraft;
324
+
260
325
  declare namespace GearCategory {
261
326
  export type Fighter = "Fighter";
262
327
  export type Bomber = "Bomber";
@@ -409,32 +474,6 @@ export type GearType =
409
474
  | GearType.LargeRadar2
410
475
  | GearType.CbRecon2;
411
476
 
412
- export interface MasterData {
413
- gears: MasterGear[];
414
- gear_attrs: MasterAttrRule<GearAttr>[];
415
- ships: MasterShip[];
416
- ship_attrs: MasterAttrRule<ShipAttr>[];
417
- ibonuses: MasterIBonuses;
418
- equippable: MasterEquippable;
419
- formation: NestedFormationDef[];
420
- anti_air_cutin: AntiAirCutinDef[];
421
- day_cutin: DayCutinDef[];
422
- night_cutin: NightCutinDef[];
423
- }
424
-
425
- export interface MasterConfig {
426
- formation: NestedFormationDef[];
427
- anti_air_cutin: AntiAirCutinDef[];
428
- day_cutin: DayCutinDef[];
429
- night_cutin: NightCutinDef[];
430
- }
431
-
432
- export interface MasterAttrRule<T> {
433
- tag: T;
434
- name: string;
435
- expr: string;
436
- }
437
-
438
477
  export type NumMap<K, V> = Partial<Record<K, V>>;
439
478
 
440
479
  type __ShellingSpecialAttackDayCutin = DayCutin;
@@ -473,6 +512,13 @@ export type DayCutin =
473
512
  | DayCutin.BBA
474
513
  | DayCutin.BA;
475
514
 
515
+ declare namespace Role {
516
+ export type Main = "Main";
517
+ export type Escort = "Escort";
518
+ }
519
+
520
+ export type Role = Role.Main | Role.Escort;
521
+
476
522
  declare namespace Engagement {
477
523
  export type GreenT = "GreenT";
478
524
  export type Parallel = "Parallel";
@@ -512,6 +558,32 @@ export interface BattleConditions {
512
558
  night_conditions: NightConditions;
513
559
  }
514
560
 
561
+ export interface MasterData {
562
+ gears: MasterGear[];
563
+ gear_attrs: MasterAttrRule<GearAttr>[];
564
+ ships: MasterShip[];
565
+ ship_attrs: MasterAttrRule<ShipAttr>[];
566
+ ibonuses: MasterIBonuses;
567
+ equippable: MasterEquippable;
568
+ formation: NestedFormationDef[];
569
+ anti_air_cutin: AntiAirCutinDef[];
570
+ day_cutin: DayCutinDef[];
571
+ night_cutin: NightCutinDef[];
572
+ }
573
+
574
+ export interface MasterConfig {
575
+ formation: NestedFormationDef[];
576
+ anti_air_cutin: AntiAirCutinDef[];
577
+ day_cutin: DayCutinDef[];
578
+ night_cutin: NightCutinDef[];
579
+ }
580
+
581
+ export interface MasterAttrRule<T> {
582
+ tag: T;
583
+ name: string;
584
+ expr: string;
585
+ }
586
+
515
587
  export interface CompDayCutinRateInfo {
516
588
  main: FleetDayCutinRateInfo;
517
589
  escort: FleetDayCutinRateInfo | null;
@@ -600,6 +672,7 @@ declare namespace GearAttr {
600
672
  export type NightFighter = "NightFighter";
601
673
  export type NightAttacker = "NightAttacker";
602
674
  export type HeavyBomber = "HeavyBomber";
675
+ export type NightRecon = "NightRecon";
603
676
  export type MainGun = "MainGun";
604
677
  export type Radar = "Radar";
605
678
  export type SurfaceRadar = "SurfaceRadar";
@@ -619,7 +692,6 @@ declare namespace GearAttr {
619
692
  export type ObservationSeaplane = "ObservationSeaplane";
620
693
  export type CbFighterBomber = "CbFighterBomber";
621
694
  export type AntiInstDiveBomber = "AntiInstDiveBomber";
622
- export type NightRecon = "NightRecon";
623
695
  export type CbSwordfish = "CbSwordfish";
624
696
  export type SemiNightPlane = "SemiNightPlane";
625
697
  export type HighAltitudeInterceptor = "HighAltitudeInterceptor";
@@ -632,6 +704,7 @@ export type GearAttr =
632
704
  | GearAttr.NightFighter
633
705
  | GearAttr.NightAttacker
634
706
  | GearAttr.HeavyBomber
707
+ | GearAttr.NightRecon
635
708
  | GearAttr.MainGun
636
709
  | GearAttr.Radar
637
710
  | GearAttr.SurfaceRadar
@@ -651,7 +724,6 @@ export type GearAttr =
651
724
  | GearAttr.ObservationSeaplane
652
725
  | GearAttr.CbFighterBomber
653
726
  | GearAttr.AntiInstDiveBomber
654
- | GearAttr.NightRecon
655
727
  | GearAttr.CbSwordfish
656
728
  | GearAttr.SemiNightPlane
657
729
  | GearAttr.HighAltitudeInterceptor;
@@ -695,23 +767,6 @@ export type SingleFormation =
695
767
  | SingleFormation.LineAbreast
696
768
  | SingleFormation.Vanguard;
697
769
 
698
- declare namespace FleetCutin {
699
- export type NelsonTouch = "NelsonTouch";
700
- export type NagatoClassCutin = "NagatoClassCutin";
701
- export type ColoradoClassCutin = "ColoradoClassCutin";
702
- export type KongouClassCutin = "KongouClassCutin";
703
- export type Yamato2ShipCutin = "Yamato2ShipCutin";
704
- export type Yamato3ShipCutin = "Yamato3ShipCutin";
705
- }
706
-
707
- export type FleetCutin =
708
- | FleetCutin.NelsonTouch
709
- | FleetCutin.NagatoClassCutin
710
- | FleetCutin.ColoradoClassCutin
711
- | FleetCutin.KongouClassCutin
712
- | FleetCutin.Yamato2ShipCutin
713
- | FleetCutin.Yamato3ShipCutin;
714
-
715
770
  export interface CustomPowerModifiers {
716
771
  precap_mod?: AttackPowerModifier;
717
772
  postcap_mod?: AttackPowerModifier;
@@ -777,13 +832,15 @@ export interface EquipStype {
777
832
  equip_type: number[];
778
833
  }
779
834
 
780
- export interface WarfareContext {
781
- attacker_env: ShipEnvironment;
782
- target_env: ShipEnvironment;
783
- engagement: Engagement;
784
- air_state: AirState;
835
+ declare namespace ShellingAttackType {
836
+ export type Normal = "Normal";
837
+ export type Carrier = "Carrier";
785
838
  }
786
839
 
840
+ export type ShellingAttackType =
841
+ | ShellingAttackType.Normal
842
+ | ShellingAttackType.Carrier;
843
+
787
844
  export interface AttackPower {
788
845
  precap: number;
789
846
  is_capped: boolean;
@@ -870,140 +927,31 @@ export interface AirstrikeContactChance {
870
927
  total: number;
871
928
  }
872
929
 
873
- export type ShipStateMap = Record<ShipKey, ShipState>;
930
+ export type SlotSizeVec = (number | null)[];
874
931
 
875
- declare namespace ShipKey {
876
- export type s1 = "s1";
877
- export type s2 = "s2";
878
- export type s3 = "s3";
879
- export type s4 = "s4";
880
- export type s5 = "s5";
881
- export type s6 = "s6";
882
- export type s7 = "s7";
932
+ declare namespace Side {
933
+ export type Player = "Player";
934
+ export type Enemy = "Enemy";
883
935
  }
884
936
 
885
- export type ShipKey =
886
- | ShipKey.s1
887
- | ShipKey.s2
888
- | ShipKey.s3
889
- | ShipKey.s4
890
- | ShipKey.s5
891
- | ShipKey.s6
892
- | ShipKey.s7;
937
+ export type Side = Side.Player | Side.Enemy;
893
938
 
894
- export interface OrgState {
895
- id?: string;
896
- f1?: FleetState;
897
- f2?: FleetState;
898
- f3?: FleetState;
899
- f4?: FleetState;
900
- a1?: AirSquadronState;
901
- a2?: AirSquadronState;
902
- a3?: AirSquadronState;
903
- hq_level?: number;
904
- org_type?: OrgType;
905
- sortie?: string;
906
- route_sup?: string;
907
- boss_sup?: string;
939
+ declare namespace NightAttackType {
940
+ export type Normal = "Normal";
941
+ export type ArkRoyal = "ArkRoyal";
942
+ export type Carrier = "Carrier";
908
943
  }
909
944
 
910
- export interface AirSquadronState extends GearVecState, SlotSizeVecState {
911
- id?: string;
912
- mode?: AirSquadronMode;
913
- }
914
-
915
- declare namespace AirSquadronMode {
916
- export type Sortie = "Sortie";
917
- export type AirDefense = "AirDefense";
918
- }
919
-
920
- export type AirSquadronMode =
921
- | AirSquadronMode.Sortie
922
- | AirSquadronMode.AirDefense;
923
-
924
- export interface FleetState {
925
- id?: string;
926
- len?: number;
927
- s1?: ShipState;
928
- s2?: ShipState;
929
- s3?: ShipState;
930
- s4?: ShipState;
931
- s5?: ShipState;
932
- s6?: ShipState;
933
- s7?: ShipState;
934
- }
935
-
936
- export interface ShipState extends GearVecState, SlotSizeVecState {
937
- id?: string;
938
- ship_id: number;
939
- level?: number;
940
- current_hp?: number;
941
- morale?: number;
942
- ammo?: number;
943
- fuel?: number;
944
- max_hp_mod?: number;
945
- firepower_mod?: number;
946
- torpedo_mod?: number;
947
- armor_mod?: number;
948
- anti_air_mod?: number;
949
- evasion_mod?: number;
950
- asw_mod?: number;
951
- los_mod?: number;
952
- luck_mod?: number;
953
- day_gunfit_accuracy?: number;
954
- night_gunfit_accuracy?: number;
955
- custom_power_mods?: CustomPowerModifiers;
956
- }
957
-
958
- export interface SlotSizeVecState {
959
- ss1?: number;
960
- ss2?: number;
961
- ss3?: number;
962
- ss4?: number;
963
- ss5?: number;
964
- }
965
-
966
- export interface GearVecState {
967
- g1?: GearState;
968
- g2?: GearState;
969
- g3?: GearState;
970
- g4?: GearState;
971
- g5?: GearState;
972
- gx?: GearState;
973
- }
974
-
975
- export interface GearState {
976
- id?: string;
977
- gear_id: number;
978
- exp?: number;
979
- stars?: number;
980
- }
981
-
982
- export type SlotSizeVec = (number | null)[];
983
-
984
- declare namespace Side {
985
- export type Player = "Player";
986
- export type Enemy = "Enemy";
987
- }
988
-
989
- export type Side = Side.Player | Side.Enemy;
990
-
991
- declare namespace NightAttackType {
992
- export type Normal = "Normal";
993
- export type ArkRoyal = "ArkRoyal";
994
- export type Carrier = "Carrier";
995
- }
996
-
997
- export type NightAttackType =
998
- | NightAttackType.Normal
999
- | NightAttackType.ArkRoyal
1000
- | NightAttackType.Carrier;
1001
-
1002
- type __NightSpecialAttackFleetCutin = FleetCutin;
1003
- type __NightSpecialAttackNightCutin = NightCutin;
1004
- declare namespace NightSpecialAttack {
1005
- export type NightCutin = { NightCutin: __NightSpecialAttackNightCutin };
1006
- export type FleetCutin = { FleetCutin: __NightSpecialAttackFleetCutin };
945
+ export type NightAttackType =
946
+ | NightAttackType.Normal
947
+ | NightAttackType.ArkRoyal
948
+ | NightAttackType.Carrier;
949
+
950
+ type __NightSpecialAttackFleetCutin = FleetCutin;
951
+ type __NightSpecialAttackNightCutin = NightCutin;
952
+ declare namespace NightSpecialAttack {
953
+ export type NightCutin = { NightCutin: __NightSpecialAttackNightCutin };
954
+ export type FleetCutin = { FleetCutin: __NightSpecialAttackFleetCutin };
1007
955
  }
1008
956
 
1009
957
  export type NightSpecialAttack =
@@ -1056,37 +1004,7 @@ export type ContactRank =
1056
1004
  | ContactRank.Rank2
1057
1005
  | ContactRank.Rank3;
1058
1006
 
1059
- type __NightBattleAttackTypeAswAttackType = AswAttackType;
1060
- type __NightBattleAttackTypeNightAttackType = NightAttackType;
1061
- declare namespace NightBattleAttackType {
1062
- export type NightAttack = {
1063
- t: "NightAttack";
1064
- c: __NightBattleAttackTypeNightAttackType;
1065
- };
1066
- export type Asw = { t: "Asw"; c: __NightBattleAttackTypeAswAttackType };
1067
- }
1068
-
1069
- export type NightBattleAttackType =
1070
- | NightBattleAttackType.NightAttack
1071
- | NightBattleAttackType.Asw;
1072
-
1073
- type __DayBattleAttackTypeAswAttackType = AswAttackType;
1074
- type __DayBattleAttackTypeShellingAttackType = ShellingAttackType;
1075
- declare namespace DayBattleAttackType {
1076
- export type Shelling = {
1077
- t: "Shelling";
1078
- c: __DayBattleAttackTypeShellingAttackType;
1079
- };
1080
- export type Asw = { t: "Asw"; c: __DayBattleAttackTypeAswAttackType };
1081
- }
1082
-
1083
- export type DayBattleAttackType =
1084
- | DayBattleAttackType.Shelling
1085
- | DayBattleAttackType.Asw;
1086
-
1087
- export type GearTypeIdArray = [number, number, number, number, number];
1088
-
1089
- export interface BattleConfig {
1007
+ export interface BattleDefinitions {
1090
1008
  formation: Record<Formation, NestedFormationDef>;
1091
1009
  anti_air_cutin: Record<number, AntiAirCutinDef>;
1092
1010
  day_cutin: Record<DayCutin, DayCutinDef>;
@@ -1205,6 +1123,163 @@ export interface MasterGear {
1205
1123
  fleet_anti_air_resistance?: number;
1206
1124
  }
1207
1125
 
1126
+ export interface WarfareContext {
1127
+ attacker_env: ShipEnvironment;
1128
+ target_env: ShipEnvironment;
1129
+ engagement: Engagement;
1130
+ air_state: AirState;
1131
+ }
1132
+
1133
+ type __NightBattleAttackTypeAswAttackType = AswAttackType;
1134
+ type __NightBattleAttackTypeNightAttackType = NightAttackType;
1135
+ declare namespace NightBattleAttackType {
1136
+ export type NightAttack = {
1137
+ t: "NightAttack";
1138
+ c: __NightBattleAttackTypeNightAttackType;
1139
+ };
1140
+ export type Asw = { t: "Asw"; c: __NightBattleAttackTypeAswAttackType };
1141
+ }
1142
+
1143
+ export type NightBattleAttackType =
1144
+ | NightBattleAttackType.NightAttack
1145
+ | NightBattleAttackType.Asw;
1146
+
1147
+ type __DayBattleAttackTypeAswAttackType = AswAttackType;
1148
+ type __DayBattleAttackTypeShellingAttackType = ShellingAttackType;
1149
+ declare namespace DayBattleAttackType {
1150
+ export type Shelling = {
1151
+ t: "Shelling";
1152
+ c: __DayBattleAttackTypeShellingAttackType;
1153
+ };
1154
+ export type Asw = { t: "Asw"; c: __DayBattleAttackTypeAswAttackType };
1155
+ }
1156
+
1157
+ export type DayBattleAttackType =
1158
+ | DayBattleAttackType.Shelling
1159
+ | DayBattleAttackType.Asw;
1160
+
1161
+ export interface WarfareAnalysisResult {
1162
+ player: AttackAnalysisResult;
1163
+ enemy: AttackAnalysisResult;
1164
+ }
1165
+
1166
+ export interface AttackAnalysisResult {
1167
+ day: AttackInfo<DayBattleAttackType, DayCutin | null> | null;
1168
+ closing_torpedo: AttackInfo<null, null> | null;
1169
+ night: AttackInfo<NightBattleAttackType, NightCutin | null> | null;
1170
+ shelling_support: AttackInfo<null, null> | null;
1171
+ opening_asw: AttackInfo<null, null> | null;
1172
+ }
1173
+
1174
+ export type ShipStateMap = Record<ShipKey, ShipState>;
1175
+
1176
+ declare namespace ShipKey {
1177
+ export type s1 = "s1";
1178
+ export type s2 = "s2";
1179
+ export type s3 = "s3";
1180
+ export type s4 = "s4";
1181
+ export type s5 = "s5";
1182
+ export type s6 = "s6";
1183
+ export type s7 = "s7";
1184
+ }
1185
+
1186
+ export type ShipKey =
1187
+ | ShipKey.s1
1188
+ | ShipKey.s2
1189
+ | ShipKey.s3
1190
+ | ShipKey.s4
1191
+ | ShipKey.s5
1192
+ | ShipKey.s6
1193
+ | ShipKey.s7;
1194
+
1195
+ export interface OrgState {
1196
+ id?: string;
1197
+ f1?: FleetState;
1198
+ f2?: FleetState;
1199
+ f3?: FleetState;
1200
+ f4?: FleetState;
1201
+ a1?: AirSquadronState;
1202
+ a2?: AirSquadronState;
1203
+ a3?: AirSquadronState;
1204
+ hq_level?: number;
1205
+ org_type?: OrgType;
1206
+ sortie?: string;
1207
+ route_sup?: string;
1208
+ boss_sup?: string;
1209
+ }
1210
+
1211
+ export interface AirSquadronState extends GearVecState, SlotSizeVecState {
1212
+ id?: string;
1213
+ mode?: AirSquadronMode;
1214
+ }
1215
+
1216
+ declare namespace AirSquadronMode {
1217
+ export type Sortie = "Sortie";
1218
+ export type AirDefense = "AirDefense";
1219
+ }
1220
+
1221
+ export type AirSquadronMode =
1222
+ | AirSquadronMode.Sortie
1223
+ | AirSquadronMode.AirDefense;
1224
+
1225
+ export interface FleetState {
1226
+ id?: string;
1227
+ len?: number;
1228
+ s1?: ShipState;
1229
+ s2?: ShipState;
1230
+ s3?: ShipState;
1231
+ s4?: ShipState;
1232
+ s5?: ShipState;
1233
+ s6?: ShipState;
1234
+ s7?: ShipState;
1235
+ }
1236
+
1237
+ export interface ShipState extends GearVecState, SlotSizeVecState {
1238
+ id?: string;
1239
+ ship_id: number;
1240
+ level?: number;
1241
+ current_hp?: number;
1242
+ morale?: number;
1243
+ ammo?: number;
1244
+ fuel?: number;
1245
+ max_hp_mod?: number;
1246
+ firepower_mod?: number;
1247
+ torpedo_mod?: number;
1248
+ armor_mod?: number;
1249
+ anti_air_mod?: number;
1250
+ evasion_mod?: number;
1251
+ asw_mod?: number;
1252
+ los_mod?: number;
1253
+ luck_mod?: number;
1254
+ day_gunfit_accuracy?: number;
1255
+ night_gunfit_accuracy?: number;
1256
+ custom_power_mods?: CustomPowerModifiers;
1257
+ }
1258
+
1259
+ export interface SlotSizeVecState {
1260
+ ss1?: number;
1261
+ ss2?: number;
1262
+ ss3?: number;
1263
+ ss4?: number;
1264
+ ss5?: number;
1265
+ }
1266
+
1267
+ export interface GearVecState {
1268
+ g1?: GearState;
1269
+ g2?: GearState;
1270
+ g3?: GearState;
1271
+ g4?: GearState;
1272
+ g5?: GearState;
1273
+ gx?: GearState;
1274
+ }
1275
+
1276
+ export interface GearState {
1277
+ id?: string;
1278
+ gear_id: number;
1279
+ exp?: number;
1280
+ stars?: number;
1281
+ }
1282
+
1208
1283
  export interface HitRate {
1209
1284
  total: number;
1210
1285
  normal: number;
@@ -1220,6 +1295,24 @@ export interface HitRateParams {
1220
1295
  hit_percentage_bonus: number;
1221
1296
  }
1222
1297
 
1298
+ export type GearTypeIdArray = [number, number, number, number, number];
1299
+
1300
+ declare namespace ShellingAttackType {
1301
+ export type Normal = "Normal";
1302
+ export type Carrier = "Carrier";
1303
+ }
1304
+
1305
+ export type ShellingAttackType =
1306
+ | ShellingAttackType.Normal
1307
+ | ShellingAttackType.Carrier;
1308
+
1309
+ declare namespace AswAttackType {
1310
+ export type DepthCharge = "DepthCharge";
1311
+ export type Aircraft = "Aircraft";
1312
+ }
1313
+
1314
+ export type AswAttackType = AswAttackType.DepthCharge | AswAttackType.Aircraft;
1315
+
1223
1316
  export interface FleetNightCutinRateInfo {
1224
1317
  night_contact_chance: NightContactChance;
1225
1318
  ships: ShipNightCutinRateInfo[];
@@ -1243,70 +1336,6 @@ export interface NightContactChance {
1243
1336
  total: number;
1244
1337
  }
1245
1338
 
1246
- declare namespace SpecialEnemyType {
1247
- export type None = "None";
1248
- export type SoftSkinned = "SoftSkinned";
1249
- export type Pillbox = "Pillbox";
1250
- export type IsolatedIsland = "IsolatedIsland";
1251
- export type SupplyDepot = "SupplyDepot";
1252
- export type HarbourSummerPrincess = "HarbourSummerPrincess";
1253
- export type PtImp = "PtImp";
1254
- export type BattleshipSummerPrincess = "BattleshipSummerPrincess";
1255
- export type HeavyCruiserSummerPrincess = "HeavyCruiserSummerPrincess";
1256
- }
1257
-
1258
- export type SpecialEnemyType =
1259
- | SpecialEnemyType.None
1260
- | SpecialEnemyType.SoftSkinned
1261
- | SpecialEnemyType.Pillbox
1262
- | SpecialEnemyType.IsolatedIsland
1263
- | SpecialEnemyType.SupplyDepot
1264
- | SpecialEnemyType.HarbourSummerPrincess
1265
- | SpecialEnemyType.PtImp
1266
- | SpecialEnemyType.BattleshipSummerPrincess
1267
- | SpecialEnemyType.HeavyCruiserSummerPrincess;
1268
-
1269
- declare namespace MoraleState {
1270
- export type Sparkle = "Sparkle";
1271
- export type Normal = "Normal";
1272
- export type Orange = "Orange";
1273
- export type Red = "Red";
1274
- }
1275
-
1276
- export type MoraleState =
1277
- | MoraleState.Sparkle
1278
- | MoraleState.Normal
1279
- | MoraleState.Orange
1280
- | MoraleState.Red;
1281
-
1282
- declare namespace DamageState {
1283
- export type Normal = "Normal";
1284
- export type Shouha = "Shouha";
1285
- export type Chuuha = "Chuuha";
1286
- export type Taiha = "Taiha";
1287
- export type Sunk = "Sunk";
1288
- }
1289
-
1290
- export type DamageState =
1291
- | DamageState.Normal
1292
- | DamageState.Shouha
1293
- | DamageState.Chuuha
1294
- | DamageState.Taiha
1295
- | DamageState.Sunk;
1296
-
1297
- declare namespace SpeedGroup {
1298
- export type A = "A";
1299
- export type B1 = "B1";
1300
- export type B2 = "B2";
1301
- export type C = "C";
1302
- }
1303
-
1304
- export type SpeedGroup =
1305
- | SpeedGroup.A
1306
- | SpeedGroup.B1
1307
- | SpeedGroup.B2
1308
- | SpeedGroup.C;
1309
-
1310
1339
  /**
1311
1340
  */
1312
1341
  export class AirSquadron {