bc-stubs 96.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (312) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -0
  3. package/bc/Assets/Female3DCG/Female3DCG.d.ts +41 -0
  4. package/bc/Assets/Female3DCG/Female3DCGExtended.d.ts +29 -0
  5. package/bc/Backgrounds/Backgrounds.d.ts +37 -0
  6. package/bc/Female3DCG_Types.d.ts +875 -0
  7. package/bc/Screens/Character/Appearance/Appearance.d.ts +392 -0
  8. package/bc/Screens/Character/BackgroundSelection/BackgroundSelection.d.ts +98 -0
  9. package/bc/Screens/Character/Cheat/Cheat.d.ts +54 -0
  10. package/bc/Screens/Character/Creation/Creation.d.ts +40 -0
  11. package/bc/Screens/Character/Disclaimer/Disclaimer.d.ts +21 -0
  12. package/bc/Screens/Character/FriendList/FriendList.d.ts +102 -0
  13. package/bc/Screens/Character/InformationSheet/InformationSheet.d.ts +46 -0
  14. package/bc/Screens/Character/ItemColor/ItemColor.d.ts +232 -0
  15. package/bc/Screens/Character/Login/Login.d.ts +194 -0
  16. package/bc/Screens/Character/OnlineProfile/OnlineProfile.d.ts +27 -0
  17. package/bc/Screens/Character/PasswordReset/PasswordReset.d.ts +28 -0
  18. package/bc/Screens/Character/Preference/Preference.d.ts +658 -0
  19. package/bc/Screens/Character/Relog/Relog.d.ts +36 -0
  20. package/bc/Screens/Character/Title/Title.d.ts +68 -0
  21. package/bc/Screens/Character/Wardrobe/Wardrobe.d.ts +93 -0
  22. package/bc/Screens/Cutscene/NPCCollaring/NPCCollaring.d.ts +26 -0
  23. package/bc/Screens/Cutscene/NPCSlaveAuction/NPCSlaveAuction.d.ts +27 -0
  24. package/bc/Screens/Cutscene/NPCWedding/NPCWedding.d.ts +35 -0
  25. package/bc/Screens/Cutscene/PlayerCollaring/PlayerCollaring.d.ts +26 -0
  26. package/bc/Screens/Cutscene/PlayerMistress/PlayerMistress.d.ts +24 -0
  27. package/bc/Screens/Cutscene/SarahIntro/SarahIntro.d.ts +22 -0
  28. package/bc/Screens/Inventory/Cloth/CheerleaderTop/CheerleaderTop.d.ts +33 -0
  29. package/bc/Screens/Inventory/Cloth/FrilledShirt/FrilledShirt.d.ts +10 -0
  30. package/bc/Screens/Inventory/ClothAccessory/Bib/Bib.d.ts +2 -0
  31. package/bc/Screens/Inventory/EyeShadow/EyeShadow.d.ts +60 -0
  32. package/bc/Screens/Inventory/Futuristic/Futuristic.d.ts +60 -0
  33. package/bc/Screens/Inventory/ItemArms/FullLatexSuit/FullLatexSuit.d.ts +6 -0
  34. package/bc/Screens/Inventory/ItemArms/HempRope/HempRope.d.ts +2 -0
  35. package/bc/Screens/Inventory/ItemArms/NylonRope/NylonRope.d.ts +2 -0
  36. package/bc/Screens/Inventory/ItemArms/PrisonLockdownSuit/PrisonLockdownSuit.d.ts +4 -0
  37. package/bc/Screens/Inventory/ItemArms/TransportJacket/TransportJacket.d.ts +10 -0
  38. package/bc/Screens/Inventory/ItemBreast/ForbiddenChastityBra/ForbiddenChastityBra.d.ts +32 -0
  39. package/bc/Screens/Inventory/ItemBreast/FuturisticBra/FuturisticBra.d.ts +24 -0
  40. package/bc/Screens/Inventory/ItemButt/AnalBeads2/AnalBeads2.d.ts +2 -0
  41. package/bc/Screens/Inventory/ItemButt/InflVibeButtPlug/InflVibeButtPlug.d.ts +2 -0
  42. package/bc/Screens/Inventory/ItemDevices/DollBox/DollBox.d.ts +2 -0
  43. package/bc/Screens/Inventory/ItemDevices/FuckMachine/FuckMachine.d.ts +16 -0
  44. package/bc/Screens/Inventory/ItemDevices/FuturisticCrate/FuturisticCrate.d.ts +8 -0
  45. package/bc/Screens/Inventory/ItemDevices/KabeshiriWall/KabeshiriWall.d.ts +13 -0
  46. package/bc/Screens/Inventory/ItemDevices/Kennel/Kennel.d.ts +18 -0
  47. package/bc/Screens/Inventory/ItemDevices/LuckyWheel/LuckyWheel.d.ts +48 -0
  48. package/bc/Screens/Inventory/ItemDevices/PetBowl/PetBowl.d.ts +6 -0
  49. package/bc/Screens/Inventory/ItemDevices/VacBedDeluxe/VacBedDeluxe.d.ts +2 -0
  50. package/bc/Screens/Inventory/ItemDevices/WheelFortune/WheelFortune.d.ts +10 -0
  51. package/bc/Screens/Inventory/ItemDevices/WoodenBox/WoodenBox.d.ts +13 -0
  52. package/bc/Screens/Inventory/ItemFeet/HempRope/HempRope.d.ts +2 -0
  53. package/bc/Screens/Inventory/ItemFeet/NylonRope/NylonRope.d.ts +2 -0
  54. package/bc/Screens/Inventory/ItemHandhelds/PortalTablet/PortalTablet.d.ts +10 -0
  55. package/bc/Screens/Inventory/ItemHead/DroneMask/DroneMask.d.ts +2 -0
  56. package/bc/Screens/Inventory/ItemHood/CanvasHood/CanvasHood.d.ts +6 -0
  57. package/bc/Screens/Inventory/ItemMisc/CombinationPadlock/CombinationPadlock.d.ts +16 -0
  58. package/bc/Screens/Inventory/ItemMisc/ExclusivePadlock/ExclusivePadlock.d.ts +6 -0
  59. package/bc/Screens/Inventory/ItemMisc/FamilyPadlock/FamilyPadlock.d.ts +6 -0
  60. package/bc/Screens/Inventory/ItemMisc/HighSecurityPadlock/HighSecurityPadlock.d.ts +15 -0
  61. package/bc/Screens/Inventory/ItemMisc/IntricatePadlock/IntricatePadlock.d.ts +6 -0
  62. package/bc/Screens/Inventory/ItemMisc/LoversPadlock/LoversPadlock.d.ts +6 -0
  63. package/bc/Screens/Inventory/ItemMisc/LoversTimerPadlock/LoversTimerPadlock.d.ts +17 -0
  64. package/bc/Screens/Inventory/ItemMisc/MetalPadlock/MetalPadlock.d.ts +6 -0
  65. package/bc/Screens/Inventory/ItemMisc/MistressPadlock/MistressPadlock.d.ts +6 -0
  66. package/bc/Screens/Inventory/ItemMisc/MistressTimerPadlock/MistressTimerPadlock.d.ts +13 -0
  67. package/bc/Screens/Inventory/ItemMisc/OwnerPadlock/OwnerPadlock.d.ts +6 -0
  68. package/bc/Screens/Inventory/ItemMisc/OwnerTimerPadlock/OwnerTimerPadlock.d.ts +22 -0
  69. package/bc/Screens/Inventory/ItemMisc/PandoraPadlock/PandoraPadlock.d.ts +6 -0
  70. package/bc/Screens/Inventory/ItemMisc/PasswordPadlock/PasswordPadlock.d.ts +17 -0
  71. package/bc/Screens/Inventory/ItemMisc/PortalLinkPadlock/PortalLinkPadlock.d.ts +6 -0
  72. package/bc/Screens/Inventory/ItemMisc/SafewordPadlock/SafewordPadlock.d.ts +12 -0
  73. package/bc/Screens/Inventory/ItemMisc/TimerPadlock/TimerPadlock.d.ts +13 -0
  74. package/bc/Screens/Inventory/ItemMisc/TimerPasswordPadlock/TimerPasswordPadlock.d.ts +13 -0
  75. package/bc/Screens/Inventory/ItemMisc/WoodenSign/WoodenSign.d.ts +2 -0
  76. package/bc/Screens/Inventory/ItemMouth/FuturisticPanelGag/FuturisticPanelGag.d.ts +49 -0
  77. package/bc/Screens/Inventory/ItemNeck/AutoShockCollar/AutoShockCollar.d.ts +4 -0
  78. package/bc/Screens/Inventory/ItemNeck/FuturisticCollar/FuturisticCollar.d.ts +59 -0
  79. package/bc/Screens/Inventory/ItemNeck/PetSuitShockCollar/PetSuitShockCollar.d.ts +4 -0
  80. package/bc/Screens/Inventory/ItemNeck/ShockCollar/ShockCollar.d.ts +4 -0
  81. package/bc/Screens/Inventory/ItemNeck/SlaveCollar/SlaveCollar.d.ts +25 -0
  82. package/bc/Screens/Inventory/ItemNeckAccessories/CollarAutoShockUnit/CollarAutoShockUnit.d.ts +15 -0
  83. package/bc/Screens/Inventory/ItemNeckAccessories/CollarNameTag/CollarNameTag.d.ts +8 -0
  84. package/bc/Screens/Inventory/ItemNeckAccessories/CollarShockUnit/CollarShockUnit.d.ts +17 -0
  85. package/bc/Screens/Inventory/ItemNeckAccessories/CustomCollarTag/CustomCollarTag.d.ts +2 -0
  86. package/bc/Screens/Inventory/ItemNeckAccessories/ElectronicTag/ElectronicTag.d.ts +2 -0
  87. package/bc/Screens/Inventory/ItemNeckRestraints/CollarLeash/CollarLeash.d.ts +4 -0
  88. package/bc/Screens/Inventory/ItemNeckRestraints/PetPost/PetPost.d.ts +2 -0
  89. package/bc/Screens/Inventory/ItemNipples/LactationPump/LactationPump.d.ts +2 -0
  90. package/bc/Screens/Inventory/ItemPelvis/ForbiddenChastityBelt/ForbiddenChastityBelt.d.ts +32 -0
  91. package/bc/Screens/Inventory/ItemPelvis/FuturisticChastityBelt/FuturisticChastityBelt.d.ts +28 -0
  92. package/bc/Screens/Inventory/ItemPelvis/FuturisticTrainingBelt/FuturisticTrainingBelt.d.ts +103 -0
  93. package/bc/Screens/Inventory/ItemPelvis/LoveChastityBelt/LoveChastityBelt.d.ts +8 -0
  94. package/bc/Screens/Inventory/ItemPelvis/ObedienceBelt/ObedienceBelt.d.ts +29 -0
  95. package/bc/Screens/Inventory/ItemPelvis/PortalPanties/PortalPanties.d.ts +10 -0
  96. package/bc/Screens/Inventory/ItemPelvis/SciFiPleasurePanties/SciFiPleasurePanties.d.ts +6 -0
  97. package/bc/Screens/Inventory/ItemTorso/FuturisticHarness/FuturisticHarness.d.ts +8 -0
  98. package/bc/Screens/Inventory/ItemVulva/ClitAndDildoVibratorbelt/ClitAndDildoVibratorbelt.d.ts +4 -0
  99. package/bc/Screens/Inventory/ItemVulva/FuturisticVibrator/FuturisticVibrator.d.ts +65 -0
  100. package/bc/Screens/Inventory/ItemVulva/LoversVibrator/LoversVibrator.d.ts +2 -0
  101. package/bc/Screens/Inventory/Wings/SteampunkWings/SteampunkWings.d.ts +16 -0
  102. package/bc/Screens/MiniGame/Chess/BondageChess.d.ts +30 -0
  103. package/bc/Screens/MiniGame/Chess/chess.d.ts +7 -0
  104. package/bc/Screens/MiniGame/ChestLockpick/ChestLockpick.d.ts +27 -0
  105. package/bc/Screens/MiniGame/ClubCard/ClubCard.d.ts +373 -0
  106. package/bc/Screens/MiniGame/ClubCardBuilder/ClubCardBuilder.d.ts +66 -0
  107. package/bc/Screens/MiniGame/DojoStruggle/DojoStruggle.d.ts +25 -0
  108. package/bc/Screens/MiniGame/GetUp/GetUp.d.ts +31 -0
  109. package/bc/Screens/MiniGame/HorseWalk/HorseWalk.d.ts +85 -0
  110. package/bc/Screens/MiniGame/Kidnap/Kidnap.d.ts +165 -0
  111. package/bc/Screens/MiniGame/KinkyDungeon/KDAutoStruggle.d.ts +99 -0
  112. package/bc/Screens/MiniGame/KinkyDungeon/KDClasses.d.ts +11 -0
  113. package/bc/Screens/MiniGame/KinkyDungeon/KDDelayedActions.d.ts +17 -0
  114. package/bc/Screens/MiniGame/KinkyDungeon/KDFixForBC.d.ts +11 -0
  115. package/bc/Screens/MiniGame/KinkyDungeon/KDModUtils.d.ts +93 -0
  116. package/bc/Screens/MiniGame/KinkyDungeon/KDParticles.d.ts +37 -0
  117. package/bc/Screens/MiniGame/KinkyDungeon/KDTypeDefs.d.ts +2161 -0
  118. package/bc/Screens/MiniGame/KinkyDungeon/KDWardrobe.d.ts +84 -0
  119. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeon.d.ts +653 -0
  120. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonAlt.d.ts +481 -0
  121. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBones.d.ts +16 -0
  122. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBoss.d.ts +119 -0
  123. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBuffs.d.ts +33 -0
  124. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonBuffsList.d.ts +865 -0
  125. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonConsumables.d.ts +36 -0
  126. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonConsumablesList.d.ts +66 -0
  127. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonCurse.d.ts +44 -0
  128. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogue.d.ts +171 -0
  129. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogueList.d.ts +45 -0
  130. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDialogueTriggers.d.ts +48 -0
  131. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDraw.d.ts +738 -0
  132. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDress.d.ts +62 -0
  133. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonDressList.d.ts +33 -0
  134. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditor.d.ts +1124 -0
  135. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditorGen.d.ts +113 -0
  136. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEditorTiles.d.ts +4 -0
  137. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEffectTiles.d.ts +6 -0
  138. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemies.d.ts +544 -0
  139. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemiesList.d.ts +22 -0
  140. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEnemyEventList.d.ts +18 -0
  141. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonErrors.d.ts +59 -0
  142. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonEvents.d.ts +151 -0
  143. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFactions.d.ts +53 -0
  144. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFactionsList.d.ts +650 -0
  145. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFight.d.ts +453 -0
  146. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonFurniture.d.ts +28 -0
  147. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonGame.d.ts +429 -0
  148. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonHUD.d.ts +134 -0
  149. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonInput.d.ts +23 -0
  150. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonInventory.d.ts +178 -0
  151. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonItem.d.ts +33 -0
  152. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonJail.d.ts +142 -0
  153. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonJailList.d.ts +105 -0
  154. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLoot.d.ts +66 -0
  155. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLootList.d.ts +866 -0
  156. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonLore.d.ts +37 -0
  157. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagic.d.ts +113 -0
  158. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagicCode.d.ts +23 -0
  159. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMagicList.d.ts +62 -0
  160. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMapMods.d.ts +5 -0
  161. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMistress.d.ts +10 -0
  162. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMultiplayer.d.ts +26 -0
  163. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonMusic.d.ts +28 -0
  164. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonObject.d.ts +42 -0
  165. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonParams.d.ts +4 -0
  166. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPathfinding.d.ts +36 -0
  167. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPerks.d.ts +147 -0
  168. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPersonality.d.ts +83 -0
  169. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonPlayerEffects.d.ts +35 -0
  170. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonQuest.d.ts +10 -0
  171. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonReputation.d.ts +229 -0
  172. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonRestraints.d.ts +766 -0
  173. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonRestraintsList.d.ts +55 -0
  174. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonSetpiece.d.ts +91 -0
  175. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonShrine.d.ts +89 -0
  176. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonSpawns.d.ts +49 -0
  177. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonStats.d.ts +282 -0
  178. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTests.d.ts +5 -0
  179. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTiles.d.ts +160 -0
  180. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTilesList.d.ts +72 -0
  181. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonTraps.d.ts +34 -0
  182. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonVibe.d.ts +98 -0
  183. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonVision.d.ts +24 -0
  184. package/bc/Screens/MiniGame/KinkyDungeon/KinkyDungeonWeaponList.d.ts +5 -0
  185. package/bc/Screens/MiniGame/MagicBattle/MagicBattle.d.ts +73 -0
  186. package/bc/Screens/MiniGame/MagicPuzzle/MagicPuzzle.d.ts +75 -0
  187. package/bc/Screens/MiniGame/MaidCleaning/MaidCleaning.d.ts +51 -0
  188. package/bc/Screens/MiniGame/MaidDrinks/MaidDrinks.d.ts +82 -0
  189. package/bc/Screens/MiniGame/PlayerAuction/PlayerAuction.d.ts +36 -0
  190. package/bc/Screens/MiniGame/PuppyWalker/PuppyWalker.d.ts +39 -0
  191. package/bc/Screens/MiniGame/RhythmGame/RhythmGame.d.ts +76 -0
  192. package/bc/Screens/MiniGame/SlaveAuction/SlaveAuction.d.ts +39 -0
  193. package/bc/Screens/MiniGame/Tennis/Tennis.d.ts +52 -0
  194. package/bc/Screens/MiniGame/Therapy/Therapy.d.ts +39 -0
  195. package/bc/Screens/MiniGame/WheelFortune/WheelFortune.d.ts +105 -0
  196. package/bc/Screens/Online/AdvancedRule/AdvancedRule.d.ts +32 -0
  197. package/bc/Screens/Online/ChatAdmin/ChatAdmin.d.ts +59 -0
  198. package/bc/Screens/Online/ChatBlockItem/ChatBlockItem.d.ts +30 -0
  199. package/bc/Screens/Online/ChatCreate/ChatCreate.d.ts +66 -0
  200. package/bc/Screens/Online/ChatRoom/ChatRoom.d.ts +1342 -0
  201. package/bc/Screens/Online/ChatRoom/Commands.d.ts +66 -0
  202. package/bc/Screens/Online/ChatSearch/ChatSearch.d.ts +241 -0
  203. package/bc/Screens/Online/ChatSelect/ChatSelect.d.ts +33 -0
  204. package/bc/Screens/Online/ForbiddenWords/ForbiddenWords.d.ts +33 -0
  205. package/bc/Screens/Online/Game/OnlineGame.d.ts +69 -0
  206. package/bc/Screens/Online/GameClubCard/GameClubCard.d.ts +131 -0
  207. package/bc/Screens/Online/GameLARP/GameLARP.d.ts +279 -0
  208. package/bc/Screens/Online/GameMagicBattle/GameMagicBattle.d.ts +159 -0
  209. package/bc/Screens/Online/WheelFortuneCustomize/WheelFortuneCustomize.d.ts +24 -0
  210. package/bc/Screens/Room/Arcade/Arcade.d.ts +94 -0
  211. package/bc/Screens/Room/AsylumBedroom/AsylumBedroom.d.ts +16 -0
  212. package/bc/Screens/Room/AsylumEntrance/AsylumEntrance.d.ts +265 -0
  213. package/bc/Screens/Room/AsylumGGTS/AsylumGGTS.d.ts +330 -0
  214. package/bc/Screens/Room/AsylumMeeting/AsylumMeeting.d.ts +110 -0
  215. package/bc/Screens/Room/AsylumTherapy/AsylumTherapy.d.ts +117 -0
  216. package/bc/Screens/Room/Cafe/Cafe.d.ts +144 -0
  217. package/bc/Screens/Room/Cell/Cell.d.ts +32 -0
  218. package/bc/Screens/Room/ClubCardLounge/ClubCardLounge.d.ts +28 -0
  219. package/bc/Screens/Room/CollegeCafeteria/CollegeCafeteria.d.ts +57 -0
  220. package/bc/Screens/Room/CollegeChess/CollegeChess.d.ts +75 -0
  221. package/bc/Screens/Room/CollegeDetention/CollegeDetention.d.ts +98 -0
  222. package/bc/Screens/Room/CollegeEntrance/CollegeEntrance.d.ts +54 -0
  223. package/bc/Screens/Room/CollegeTeacher/CollegeTeacher.d.ts +71 -0
  224. package/bc/Screens/Room/CollegeTennis/CollegeTennis.d.ts +47 -0
  225. package/bc/Screens/Room/CollegeTheater/CollegeTheater.d.ts +100 -0
  226. package/bc/Screens/Room/Crafting/Crafting.d.ts +213 -0
  227. package/bc/Screens/Room/DailyJob/DailyJob.d.ts +111 -0
  228. package/bc/Screens/Room/Empty/Empty.d.ts +84 -0
  229. package/bc/Screens/Room/Gambling/Gambling.d.ts +269 -0
  230. package/bc/Screens/Room/Infiltration/Infiltration.d.ts +223 -0
  231. package/bc/Screens/Room/InfiltrationPerks/InfiltrationPerks.d.ts +42 -0
  232. package/bc/Screens/Room/Introduction/Introduction.d.ts +195 -0
  233. package/bc/Screens/Room/KidnapLeague/KidnapLeague.d.ts +253 -0
  234. package/bc/Screens/Room/LARP/LARP.d.ts +39 -0
  235. package/bc/Screens/Room/Magic/Magic.d.ts +199 -0
  236. package/bc/Screens/Room/MagicSchoolEscape/MagicSchoolEscape.d.ts +36 -0
  237. package/bc/Screens/Room/MagicSchoolLaboratory/MagicSchoolLaboratory.d.ts +170 -0
  238. package/bc/Screens/Room/MaidQuarters/MaidQuarters.d.ts +305 -0
  239. package/bc/Screens/Room/MainHall/MainHall.d.ts +255 -0
  240. package/bc/Screens/Room/Management/Management.d.ts +544 -0
  241. package/bc/Screens/Room/MovieStudio/MovieStudio.d.ts +178 -0
  242. package/bc/Screens/Room/Nursery/Nursery.d.ts +85 -0
  243. package/bc/Screens/Room/Pandora/Pandora.d.ts +348 -0
  244. package/bc/Screens/Room/PandoraPrison/PandoraPrison.d.ts +180 -0
  245. package/bc/Screens/Room/Photographic/Photographic.d.ts +53 -0
  246. package/bc/Screens/Room/Platform/Platform.d.ts +1730 -0
  247. package/bc/Screens/Room/PlatformDialog/PlatformDialog.d.ts +3966 -0
  248. package/bc/Screens/Room/PlatformIntro/PlatformIntro.d.ts +21 -0
  249. package/bc/Screens/Room/PlatformProfile/PlatformProfile.d.ts +62 -0
  250. package/bc/Screens/Room/Poker/Poker.d.ts +141 -0
  251. package/bc/Screens/Room/Poker/PokerHandValue.d.ts +65 -0
  252. package/bc/Screens/Room/Prison/Prison.d.ts +118 -0
  253. package/bc/Screens/Room/Private/Private.d.ts +781 -0
  254. package/bc/Screens/Room/PrivateBed/PrivateBed.d.ts +78 -0
  255. package/bc/Screens/Room/PrivateRansom/PrivateRansom.d.ts +28 -0
  256. package/bc/Screens/Room/Sarah/Sarah.d.ts +162 -0
  257. package/bc/Screens/Room/Shibari/Shibari.d.ts +162 -0
  258. package/bc/Screens/Room/Shop/Shop.d.ts +162 -0
  259. package/bc/Screens/Room/SlaveMarket/SlaveMarket.d.ts +90 -0
  260. package/bc/Screens/Room/Stable/Stable.d.ts +236 -0
  261. package/bc/Scripts/Activity.d.ts +270 -0
  262. package/bc/Scripts/AfkTimer.d.ts +43 -0
  263. package/bc/Scripts/Animation.d.ts +81 -0
  264. package/bc/Scripts/Asset.d.ts +216 -0
  265. package/bc/Scripts/Audio.d.ts +105 -0
  266. package/bc/Scripts/Character.d.ts +495 -0
  267. package/bc/Scripts/CharacterName.d.ts +1 -0
  268. package/bc/Scripts/ColorPicker.d.ts +155 -0
  269. package/bc/Scripts/Common.d.ts +499 -0
  270. package/bc/Scripts/CommonDraw.d.ts +34 -0
  271. package/bc/Scripts/ControllerSupport.d.ts +107 -0
  272. package/bc/Scripts/Dialog.d.ts +970 -0
  273. package/bc/Scripts/DictionaryBuilder.d.ts +210 -0
  274. package/bc/Scripts/Drawing.d.ts +581 -0
  275. package/bc/Scripts/Drawing3D.d.ts +21 -0
  276. package/bc/Scripts/DynamicDraw.d.ts +310 -0
  277. package/bc/Scripts/Element.d.ts +154 -0
  278. package/bc/Scripts/ExtendedItem.d.ts +339 -0
  279. package/bc/Scripts/GLDraw.d.ts +223 -0
  280. package/bc/Scripts/Game.d.ts +61 -0
  281. package/bc/Scripts/GameLog.d.ts +87 -0
  282. package/bc/Scripts/Graph.d.ts +46 -0
  283. package/bc/Scripts/Import.d.ts +7 -0
  284. package/bc/Scripts/Inventory.d.ts +509 -0
  285. package/bc/Scripts/MiniGame.d.ts +30 -0
  286. package/bc/Scripts/ModularItem.d.ts +286 -0
  287. package/bc/Scripts/Mouse.d.ts +34 -0
  288. package/bc/Scripts/NPC.d.ts +105 -0
  289. package/bc/Scripts/Notification.d.ts +120 -0
  290. package/bc/Scripts/PortalLink.d.ts +159 -0
  291. package/bc/Scripts/Property.d.ts +98 -0
  292. package/bc/Scripts/Reputation.d.ts +36 -0
  293. package/bc/Scripts/Server.d.ts +239 -0
  294. package/bc/Scripts/Skill.d.ts +107 -0
  295. package/bc/Scripts/Speech.d.ts +145 -0
  296. package/bc/Scripts/Struggle.d.ts +357 -0
  297. package/bc/Scripts/Testing.d.ts +30 -0
  298. package/bc/Scripts/Text.d.ts +92 -0
  299. package/bc/Scripts/TextItem.d.ts +65 -0
  300. package/bc/Scripts/TightenLoosenItem.d.ts +31 -0
  301. package/bc/Scripts/Timer.d.ts +62 -0
  302. package/bc/Scripts/Translation.d.ts +101 -0
  303. package/bc/Scripts/TypedItem.d.ts +242 -0
  304. package/bc/Scripts/Validation.d.ts +324 -0
  305. package/bc/Scripts/VariableHeight.d.ts +108 -0
  306. package/bc/Scripts/VibratorMode.d.ts +209 -0
  307. package/bc/Scripts/lib/LZString.d.ts +12 -0
  308. package/bc/Scripts/lib/three/FBXLoader.d.ts +0 -0
  309. package/bc/Scripts/lib/three/GLTFLoader.d.ts +0 -0
  310. package/bc/Scripts/lib/webgl/resources/m4.d.ts +0 -0
  311. package/bc/Typedef.d.ts +3933 -0
  312. package/package.json +19 -0
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Registers a typed extended item. This automatically creates the item's load, draw and click functions. It will also
3
+ * generate the asset's AllowType array.
4
+ * @param {Asset} asset - The asset being registered
5
+ * @param {TextItemConfig} config - The item's typed item configuration
6
+ * @param {null | ExtendedItemOption} parentOption
7
+ * @param {boolean} createCallbacks - Whether the archetype-specific callbacks should be created or not
8
+ * @returns {TextItemData} - The generated extended item data for the asset
9
+ */
10
+ declare function TextItemRegister(asset: Asset, config: TextItemConfig, parentOption?: null | ExtendedItemOption, createCallbacks?: boolean): TextItemData;
11
+ /**
12
+ * Parse the passed text item draw data as passed via the extended item config
13
+ * @param {readonly TextItemNames[]} fieldNames
14
+ * @param {ExtendedItemConfigDrawData<{}> | undefined} drawData - The to-be parsed draw data
15
+ * @return {ExtendedItemDrawData<ElementMetaData.Text>} - The parsed draw data
16
+ */
17
+ declare function TextItemGetDrawData(fieldNames: readonly TextItemNames[], drawData: ExtendedItemConfigDrawData<{}> | undefined): ExtendedItemDrawData<ElementMetaData.Text>;
18
+ /**
19
+ * Generates an asset's typed item data
20
+ * @param {Asset} asset - The asset to generate modular item data for
21
+ * @param {TextItemConfig} config - The item's extended item configuration
22
+ * @param {null | ExtendedItemOption} parentOption - The parent extended item option of the super screens (if any)
23
+ * @returns {TextItemData} - The generated typed item data for the asset
24
+ */
25
+ declare function TextItemCreateTextItemData(asset: Asset, { MaxLength, Font, DialogPrefix, ChatTags, Dictionary, ScriptHooks, BaselineProperty, EventListeners, DrawData, PushOnPublish, }: TextItemConfig, parentOption?: null | ExtendedItemOption): TextItemData;
26
+ /**
27
+ * @param {TextItemData} data - The extended item data
28
+ * @param {Item} item - The item in question
29
+ * @returns {{ newOption: TextItemOption, previousOption: TextItemOption }}
30
+ */
31
+ declare function TextItemConstructOptions(data: TextItemData, item: Item): {
32
+ newOption: TextItemOption;
33
+ previousOption: TextItemOption;
34
+ };
35
+ /**
36
+ * Revert all text item properties back to their previous state prior to opening the extended item menu
37
+ * @param {TextItemData} data - The extended item data
38
+ * @param {Item} item - The item in question
39
+ */
40
+ declare function TextItemPropertyRevert({ textNames }: TextItemData, item: Item): void;
41
+ /**
42
+ * A lookup for the text item configurations for each registered text item
43
+ * @const
44
+ * @type {Record<string, TextItemData>}
45
+ * @see {@link TextItemData}
46
+ */
47
+ declare const TextItemDataLookup: Record<string, TextItemData>;
48
+ declare namespace TextItem {
49
+ function Init({ asset, font, baselineProperty, maxLength }: TextItemData, C: Character, item: Item, refresh?: boolean): boolean;
50
+ function Load(data: TextItemData): void;
51
+ function Draw({ asset, drawData, textNames }: TextItemData): void;
52
+ function Click({ functionPrefix, drawData }: TextItemData): void;
53
+ function Exit(data: TextItemData, publishAction?: boolean): void;
54
+ function PublishAction(data: TextItemData, C: Character, item: Item, newOption: TextItemOption, previousOption: TextItemOption): void;
55
+ }
56
+ /**
57
+ * Throttled callback for handling text changes.
58
+ * @type {TextItemEventListener}
59
+ */
60
+ declare const TextItemChange: TextItemEventListener;
61
+ /**
62
+ * Throttled callback for handling text changes that do not require a canvas.
63
+ * @type {TextItemEventListener}
64
+ */
65
+ declare const TextItemChangeNoCanvas: TextItemEventListener;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Loads the item properties
3
+ * @returns {void} Nothing
4
+ */
5
+ declare function TightenLoosenItemLoad(): void;
6
+ /**
7
+ * Draws the extended tighten / loosen menu
8
+ * @returns {void} Nothing
9
+ */
10
+ declare function TightenLoosenItemDraw(): void;
11
+ /**
12
+ * Sets a facial expression for the character being tightneded/loosened
13
+ * @param {Character} C - The character affected
14
+ * @param {"" | ExpressionNameMap["Blush"]} Blush - The blush style
15
+ * @param {"" | ExpressionNameMap["Eyes"]} Eyes - The eyes style
16
+ * @param {"" | ExpressionNameMap["Eyebrows"]} Eyebrows - The eyebrows style
17
+ * @returns {void} Nothing
18
+ */
19
+ declare function TightenLoosenFacialExpression(C: Character, Blush: "" | ExpressionNameMap["Blush"], Eyes: "" | ExpressionNameMap["Eyes"], Eyebrows: "" | ExpressionNameMap["Eyebrows"]): void;
20
+ /**
21
+ * Handles clicks on the tighten / loosen menu
22
+ * @returns {void} Nothing
23
+ */
24
+ declare function TightenLoosenItemClick(): void;
25
+ /**
26
+ * Exit function for sub menu
27
+ * @returns {void} - Nothing
28
+ */
29
+ declare function TightenLoosenItemExit(): void;
30
+ declare var TightenLoosenItemMaximumDifficulty: number;
31
+ declare var TightenLoosenItemMinimumDifficulty: number;
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Returns the current time from the local computer clock
3
+ * @returns {number} - Returns the number of milliseconds
4
+ */
5
+ declare function TimerGetTime(): number;
6
+ /**
7
+ * Returns a string of the time remaining on a given timer
8
+ * @param {number} T - Time to convert to a string in ms
9
+ * @returns {string} - The time string in the DD:HH:MM:SS format (Days and hours not displayed if it contains none)
10
+ */
11
+ declare function TimerToString(T: number): string;
12
+ /**
13
+ * Returns a string of the time remaining on a given timer (Hours and minutes only)
14
+ * @param {Date} T - Time to convert to a string in ms
15
+ * @returns {string} - The time string in the HH:MM format
16
+ */
17
+ declare function TimerHourToString(T: Date): string;
18
+ /**
19
+ * Check if we must remove items from characters. (Expressions, items being removed, locks, etc.)
20
+ * @returns {void} - Nothing
21
+ */
22
+ declare function TimerInventoryRemove(): void;
23
+ /**
24
+ * Sets a remove timer in seconds for a specific item part / body part
25
+ * @param {Character} C - Character for which we are removing an item
26
+ * @param {AssetGroupName} AssetGroup - Group targeted by the removal
27
+ * @param {number} Timer - Seconds it takes to remove the item
28
+ * @returns {void} - Nothing
29
+ */
30
+ declare function TimerInventoryRemoveSet(C: Character, AssetGroup: AssetGroupName, Timer: number): void;
31
+ /**
32
+ * Sets a remove timer in seconds for expressions, adds to Expression Queue.
33
+ * @param {Character} C - Character for which we are changing expression.
34
+ * @param {ExpressionGroupName} ExpressionGroup - Group targeted by the removal.
35
+ * @param {number} Timer - Seconds it takes to change the expression.
36
+ * @param {ExpressionName} Expression - Expression to queue. Defaults to null if not specified.
37
+ * @returns {void} - Nothing
38
+ */
39
+ declare function TimerExpressionQueuePush(C: Character, ExpressionGroup: ExpressionGroupName, Timer: number, Expression?: ExpressionName): void;
40
+ /**
41
+ * Random trigger for the NPC owner in a private room. If possible, when triggered it will beep the player anywhere in the club, the player has 2 minutes to get back to her
42
+ * @returns {void} - Nothing
43
+ */
44
+ declare function TimerPrivateOwnerBeep(): void;
45
+ /**
46
+ * Main timer process
47
+ * @returns {void} - Nothing
48
+ */
49
+ declare function TimerProcess(): void;
50
+ /**
51
+ * Returns a string of the time remaining on a given timer (Hours, minutes, seconds)
52
+ * @param {number} s - Time to convert to a string in ms
53
+ * @returns {string} - The time string in the HH:MM:SS format
54
+ */
55
+ declare function TimermsToTime(s: number): string;
56
+ declare var CurrentTime: number;
57
+ declare var TimerRunInterval: number;
58
+ declare var TimerLastTime: number;
59
+ declare var TimerLastCycleCall: number;
60
+ declare var TimerLastArousalProgress: number;
61
+ declare var TimerLastArousalProgressCount: number;
62
+ declare var TimerLastArousalDecay: number;
@@ -0,0 +1,101 @@
1
+ /**
2
+ * Checks whether we're running a translation
3
+ */
4
+ declare function TranslationEnabled(): boolean;
5
+ /**
6
+ * Checks if a file can be translated in the selected language
7
+ * @param {string} FullPath - Full path of the file to check for a corresponding translation file
8
+ * @returns {boolean} - Returns TRUE if a translation is available for the given file
9
+ */
10
+ declare function TranslationAvailable(FullPath: string): boolean;
11
+ /**
12
+ * Parse a TXT translation file and returns it as an array
13
+ * @param {string} str - Content of the translation text file
14
+ * @returns {string[]} - Array of strings with each line divided. For each translated line, the english string precedes the translated one in the array.
15
+ */
16
+ declare function TranslationParseTXT(str: string): string[];
17
+ /**
18
+ * Translates a string to another language from the array, the translation is always the one right after the english line
19
+ * @param {string} S - The original english string to translate
20
+ * @param {readonly string[]} T - The active translation dictionary
21
+ * @returns {string} - The translated string
22
+ */
23
+ declare function TranslationString(S: string, T: readonly string[]): string;
24
+ /**
25
+ * Translates a character dialog from the specified array
26
+ * @param {Character} C - The character for which we need to translate the dialog array.
27
+ * @param {readonly string[]} T - The active translation dictionary
28
+ * @returns {void} - Nothing
29
+ */
30
+ declare function TranslationDialogArray(C: Character, T: readonly string[]): void;
31
+ /**
32
+ * Translates a set of tags. Rerenders the login message when on the login page.
33
+ * @param {readonly { Tag: string, Value: string }[]} S - Array of current tag-value pairs
34
+ * @param {readonly string[]} T - The active translation dictionary
35
+ * @returns {void} - Nothing
36
+ */
37
+ declare function TranslationTextArray(S: readonly {
38
+ Tag: string;
39
+ Value: string;
40
+ }[], T: readonly string[]): void;
41
+ /**
42
+ * Loads a character dialog translation and caches it
43
+ * @param {Character} C - The character for which we want to translate the dialog
44
+ * @returns {void} - Nothing
45
+ */
46
+ declare function TranslationLoadDialog(C: Character, cb: any): void;
47
+ /**
48
+ * Translate a character dialog if the file is in the dictionary
49
+ * @param {Character} C
50
+ */
51
+ declare function TranslationTranslateDialog(C: Character): void;
52
+ /**
53
+ * Translate an array of tags in the current selected language
54
+ * @param {readonly {Tag: string, Value: string}[]} Text - Array of current tag-value pairs
55
+ * @returns {void} - Nothing
56
+ */
57
+ declare function TranslationText(Text: readonly {
58
+ Tag: string;
59
+ Value: string;
60
+ }[]): void;
61
+ /**
62
+ * Translates the asset group and asset descriptions based on the given dictionary
63
+ * @param {string[]} T - The active translation dictionary
64
+ * @returns {void} - Nothing
65
+ */
66
+ declare function TranslationAssetProcess(T: string[]): void;
67
+ /**
68
+ * Translates the description of the assets and groups of an asset family
69
+ * @param {IAssetFamily} Family - Name of the asset family to translate
70
+ * @returns {void} - Nothing
71
+ */
72
+ declare function TranslationAsset(Family: IAssetFamily): void;
73
+ /**
74
+ * Returns the translated language name for the given code.
75
+ * @param {string} code - The language code to get the human-readable name of.
76
+ * @param {boolean} [english] - Get the english name of it.
77
+ */
78
+ declare function TranslationGetLanguageName(code: string, english?: boolean): string;
79
+ /**
80
+ * Changes the current language and save the new selected language to local storage
81
+ * @returns {void} - Nothing
82
+ */
83
+ declare function TranslationNextLanguage(): void;
84
+ /**
85
+ * Loads the previous translation language from local storage if it exists
86
+ * @returns {void} - Nothing
87
+ */
88
+ declare function TranslationLoad(): void;
89
+ declare var TranslationLanguage: string;
90
+ /** @type {Record<string, string[]>} */
91
+ declare var TranslationCache: Record<string, string[]>;
92
+ /**
93
+ * Dictionary for all supported languages and their files
94
+ * @constant
95
+ */
96
+ declare var TranslationDictionary: {
97
+ LanguageCode: string;
98
+ LanguageName: string;
99
+ EnglishName: string;
100
+ Files: string[];
101
+ }[];
@@ -0,0 +1,242 @@
1
+ /**
2
+ * Registers a typed extended item. This automatically creates the item's load, draw and click functions. It will also
3
+ * generate the asset's AllowType array.
4
+ * @param {Asset} asset - The asset being registered
5
+ * @param {TypedItemConfig} config - The item's typed item configuration
6
+ * @returns {TypedItemData} - The generated extended item data for the asset
7
+ */
8
+ declare function TypedItemRegister(asset: Asset, config: TypedItemConfig): TypedItemData;
9
+ /**
10
+ * Parse and pre-process the passed item options.
11
+ * @param {Asset} asset - The item options asset
12
+ * @param {readonly TypedItemOptionConfig[]} protoOptions - The unparsed extended item options
13
+ * @param {boolean} [changeWhenLocked] - See {@link TypedItemConfig.ChangeWhenLocked}
14
+ * @returns {TypedItemOption[]} The newly generated extended item options
15
+ */
16
+ declare function TypedItemBuildOptions(protoOptions: readonly TypedItemOptionConfig[], asset: Asset, changeWhenLocked?: boolean): TypedItemOption[];
17
+ /**
18
+ * Parse the passed typed item draw data as passed via the extended item config
19
+ * @param {Asset} asset - The asset in question
20
+ * @param {ExtendedItemConfigDrawData<Partial<ElementMetaData.Typed>> | undefined} drawData - The to-be parsed draw data
21
+ * @param {readonly { Name: string }[]} options - The list of extended item options
22
+ * @param {Partial<ElementMetaData.Typed>} overrideMetaData
23
+ * @return {ExtendedItemDrawData<ElementMetaData.Typed>} - The parsed draw data
24
+ */
25
+ declare function TypedItemGetDrawData(asset: Asset, drawData: ExtendedItemConfigDrawData<Partial<ElementMetaData.Typed>> | undefined, options: readonly {
26
+ Name: string;
27
+ }[], overrideMetaData?: Partial<ElementMetaData.Typed>): ExtendedItemDrawData<ElementMetaData.Typed>;
28
+ /**
29
+ * Generates an asset's typed item data
30
+ * @param {Asset} asset - The asset to generate modular item data for
31
+ * @param {TypedItemConfig} config - The item's extended item configuration
32
+ * @returns {TypedItemData} - The generated typed item data for the asset
33
+ */
34
+ declare function TypedItemCreateTypedItemData(asset: Asset, { Options, DialogPrefix, ChatTags, Dictionary, ChatSetting, DrawImages, ChangeWhenLocked, ScriptHooks, DrawData, BaselineProperty, }: TypedItemConfig): TypedItemData;
35
+ /**
36
+ *
37
+ * @param {TypedItemData} data
38
+ * @param {Character} C
39
+ * @param {Item} item
40
+ * @param {TypedItemOption} newOption
41
+ * @param {TypedItemOption} previousOption
42
+ */
43
+ declare function TypedItemPublishAction(data: TypedItemData, C: Character, item: Item, newOption: TypedItemOption, previousOption: TypedItemOption): void;
44
+ /**
45
+ * Generates an asset's AllowType property based on its typed item data.
46
+ * @param {TypedItemData} data - The typed item's data
47
+ * @returns {void} - Nothing
48
+ */
49
+ declare function TypedItemGenerateAllowType({ asset, options }: TypedItemData): void;
50
+ /**
51
+ * Generates an asset's AllowEffect property based on its typed item data.
52
+ * @param {TypedItemData} data - The typed item's data
53
+ * @returns {void} - Nothing
54
+ */
55
+ declare function TypedItemGenerateAllowEffect({ asset, options }: TypedItemData): void;
56
+ /**
57
+ * Generates an asset's AllowBlock property based on its typed item data.
58
+ * @param {TypedItemData} data - The typed item's data
59
+ * @returns {void} - Nothing
60
+ */
61
+ declare function TypedItemGenerateAllowBlock({ asset, options }: TypedItemData): void;
62
+ /**
63
+ * Generates an asset's AllowHide & AllowHideItem properties based on its typed item data.
64
+ * @param {TypedItemData} data - The typed item's data
65
+ * @returns {void} - Nothing
66
+ */
67
+ declare function TypedItemGenerateAllowHide({ asset, options }: TypedItemData): void;
68
+ /**
69
+ * Generates an asset's AllowTint property based on its typed item data.
70
+ * @param {TypedItemData} data - The typed item's data
71
+ * @returns {void} - Nothing
72
+ */
73
+ declare function TypedItemGenerateAllowTint({ asset, options }: TypedItemData): void;
74
+ /**
75
+ * Generates an asset's AllowLockType property based on its typed item data.
76
+ * @param {TypedItemData} data - The typed item's data
77
+ * @returns {void} - Nothing
78
+ */
79
+ declare function TypedItemGenerateAllowLockType({ asset, options }: TypedItemData): void;
80
+ /**
81
+ * Sets the AllowLock and AllowLockType properties on an asset based on an AllowLockType array and the total number of
82
+ * possible types.
83
+ * @param {Asset} asset - The asset to set properties on
84
+ * @param {readonly string[]} allowLockType - The AllowLockType array indicating which of the asset's types permit locks
85
+ * @param {number} typeCount - The total number of types available on the asset
86
+ * @returns {void} - Nothing
87
+ */
88
+ declare function TypedItemSetAllowLockType(asset: Asset, allowLockType: readonly string[], typeCount: number): void;
89
+ /**
90
+ * Returns the options configuration array for a typed item
91
+ * @param {AssetGroupName} groupName - The name of the asset group
92
+ * @param {string} assetName - The name of the asset
93
+ * @returns {TypedItemOption[]|null} - The options array for the item, or null if no typed item data was found
94
+ */
95
+ declare function TypedItemGetOptions(groupName: AssetGroupName, assetName: string): TypedItemOption[] | null;
96
+ /**
97
+ * Returns a list of typed item option names available for the given asset, or an empty array if the asset is not typed
98
+ * @param {AssetGroupName} groupName - The name of the asset group
99
+ * @param {string} assetName - The name of the asset
100
+ * @returns {string[]} - The option names available for the asset, or an empty array if the asset is not typed or no
101
+ * typed item data was found
102
+ */
103
+ declare function TypedItemGetOptionNames(groupName: AssetGroupName, assetName: string): string[];
104
+ /**
105
+ * Returns the named option configuration object for a typed item
106
+ * @param {AssetGroupName} groupName - The name of the asset group
107
+ * @param {string} assetName - The name of the asset
108
+ * @param {string} optionName - The name of the option
109
+ * @returns {TypedItemOption|null} - The named option configuration object, or null if none was found
110
+ */
111
+ declare function TypedItemGetOption(groupName: AssetGroupName, assetName: string, optionName: string): TypedItemOption | null;
112
+ /**
113
+ * Validates a selected option. A typed item may provide a custom validation function. Returning a non-empty string from
114
+ * the validation function indicates that the new option is not compatible with the character's current state (generally
115
+ * due to prerequisites or other requirements).
116
+ * @template {ExtendedItemOption} T
117
+ * @param {null | ExtendedItemData<T>} data
118
+ * @param {Character} C - The character on whom the item is equipped
119
+ * @param {Item} item - The item whose options are being validated
120
+ * @param {T} option - The new option
121
+ * @param {T} previousOption - The previously applied option
122
+ * @param {boolean} [permitExisting] - Determines whether the validation should allow the new option and previous option
123
+ * to be identical. Defaults to false.
124
+ * @returns {string|undefined} - undefined or an empty string if the validation passes. Otherwise, returns a string
125
+ * message informing the player of the requirements that are not met.
126
+ */
127
+ declare function TypedItemValidateOption<T extends ExtendedItemOption>(data: ExtendedItemData<T>, C: Character, item: Item, option: T, previousOption: T, permitExisting?: boolean): string | undefined;
128
+ /**
129
+ * Sets a typed item's type and properties to the option whose name matches the provided option name parameter.
130
+ * @param {Character} C - The character on whom the item is equipped
131
+ * @param {Item | AssetGroupName} itemOrGroupName - The item whose type to set, or the group name for the item
132
+ * @param {string} optionName - The name of the option to set
133
+ * @param {boolean} [push] - Whether or not appearance updates should be persisted (only applies if the character is the
134
+ * player) - defaults to false.
135
+ * @param {null | Character} [C_Source] - The character setting the new item option. If `null`, assume that it is _not_ the player character.
136
+ * @param {null | [archetype: "typed" | "vibrating", screen: string]} [subscreen]
137
+ * @returns {string|undefined} - undefined or an empty string if the type was set correctly. Otherwise, returns a string
138
+ * informing the player of the requirements that are not met.
139
+ */
140
+ declare function TypedItemSetOptionByName(C: Character, itemOrGroupName: Item | AssetGroupName, optionName: string, push?: boolean, C_Source?: null | Character, subscreen?: null | [archetype: "typed" | "vibrating", screen: string]): string | undefined;
141
+ /**
142
+ * Finds the currently set option on the given typed item
143
+ * @template {TypedItemOption | VibratingItemOption} T
144
+ * @param {Item} item - The equipped item
145
+ * @param {readonly T[]} options - The list of available options for the item
146
+ * @param {"Type" | "Mode"} typeField - The name of the item property field containing the item's type (or equivalent thereof)
147
+ * @returns {T} - The option which is currently applied to the item, or the first item in the options
148
+ * array if no type is set.
149
+ */
150
+ declare function TypedItemFindPreviousOption<T extends TypedItemOption | VibratingItemOption>(item: Item, options: readonly T[], typeField?: "Type" | "Mode"): T;
151
+ /**
152
+ * Sets a typed item's type to a random option, respecting prerequisites and option validation.
153
+ * @param {Character} C - The character on whom the item is equipped
154
+ * @param {Item | AssetGroupName} itemOrGroupName - The item whose type to set, or the group name for the item
155
+ * @param {boolean} [push] - Whether or not appearance updates should be persisted (only applies if the character is the
156
+ * player) - defaults to false.
157
+ * @param {null | Character} [C_Source] - The character setting the new item option. If `null`, assume that it is _not_ the player character.
158
+ * @returns {string|undefined} - undefined or an empty string if the type was set correctly. Otherwise, returns a string
159
+ * informing the player of the requirements that are not met.
160
+ */
161
+ declare function TypedItemSetRandomOption(C: Character, itemOrGroupName: Item | AssetGroupName, push?: boolean, C_Source?: null | Character): string | undefined;
162
+ /**
163
+ * Initialize the typed item properties
164
+ * @param {TypedItemData} Data - The item's extended item data
165
+ * @param {Item} Item - The item in question
166
+ * @param {Character} C - The character that has the item equiped
167
+ * @param {boolean} Refresh - Whether the character and relevant item should be refreshed and pushed to the server
168
+ * @returns {boolean} Whether properties were initialized or not
169
+ */
170
+ declare function TypedItemInit(Data: TypedItemData, C: Character, Item: Item, Refresh?: boolean): boolean;
171
+ /**
172
+ * Draws the extended item type selection screen
173
+ * @param {TypedItemData | VibratingItemData} data - An Array of type definitions for each allowed extended type. The first item
174
+ * in the array should be the default option.
175
+ * @returns {void} Nothing
176
+ */
177
+ declare function TypedItemDraw({ functionPrefix, options, parentOption, dialogPrefix, drawData, archetype }: TypedItemData | VibratingItemData): void;
178
+ /**
179
+ * Handles clicks on the extended item type selection screen
180
+ * @param {TypedItemData | VibratingItemData} data
181
+ * @returns {void} Nothing
182
+ */
183
+ declare function TypedItemClick(data: TypedItemData | VibratingItemData): void;
184
+ /**
185
+ * Handler function called when an option on the type selection screen is clicked
186
+ * @template {TypedItemOption | VibratingItemOption} T
187
+ * @param {ExtendedItemData<T> & { options: T[] }} data
188
+ * @param {Character} C - The character wearing the item
189
+ * @param {T} Option - The selected type definition
190
+ * @returns {void} Nothing
191
+ */
192
+ declare function TypedItemHandleOptionClick<T extends TypedItemOption | VibratingItemOption>(data: ExtendedItemData<T> & {
193
+ options: T[];
194
+ }, C: Character, Option: T): void;
195
+ /**
196
+ * Handler function for setting the type of an typed item
197
+ * @template {TypedItemOption | VibratingItemOption} T
198
+ * @param {ExtendedItemData<T> & { options: T[] }} data
199
+ * @param {Character} C - The character wearing the item
200
+ * @param {T} newOption - The selected type definition
201
+ * @returns {void} Nothing
202
+ */
203
+ declare function TypedItemSetType<T extends TypedItemOption | VibratingItemOption>(data: ExtendedItemData<T> & {
204
+ options: T[];
205
+ }, C: Character, newOption: T): void;
206
+ /**
207
+ * TypedItem.js
208
+ * ------------
209
+ * This file contains utilities related to typed extended items (items that allow switching between a selection of
210
+ * different states). It is generally not necessary to call functions in this file directly - these are called from
211
+ * Asset.js when an item is first registered.
212
+ *
213
+ * All dialogue for typed items should be added to `Dialog_Player.csv`. To implement a typed item, you need the
214
+ * following dialogue entries (these dialogue keys can also be configured through the item's configuration if custom
215
+ * dialogue keys are needed):
216
+ * * "<GroupName><AssetName>Select" - This is the text that will be displayed at the top of the extended item screen
217
+ * (usually a prompt for the player to select a type)
218
+ * * For each type:
219
+ * * "<GroupName><AssetName><TypeName>" - This is the display name for the given type
220
+ * * If the item's chat setting is configured to `TO_ONLY`, you will need a chatroom message for each type, which will
221
+ * be sent when that type is selected. It should have the format "<GroupName><AssetName>Set<TypeName>" (e.g.
222
+ * "ItemArmsLatexBoxtieLeotardSetPolished" - "SourceCharacter polishes the latex of DestinationCharacter leotard
223
+ * until it's shiny")
224
+ * * If the item's chat setting is configured to `FROM_TO`, you will need a chatroom message for each possible type
225
+ * pairing, which will be sent when the item's type changes from the first type to the second type. It should have
226
+ * the format "<GroupName><AssetName>Set<Type1>To<Type2>".
227
+ */
228
+ /**
229
+ * A lookup for the typed item configurations for each registered typed item
230
+ * @const
231
+ * @type {Record<string, TypedItemData>}
232
+ * @see {@link TypedItemData}
233
+ */
234
+ declare const TypedItemDataLookup: Record<string, TypedItemData>;
235
+ /**
236
+ * An enum encapsulating the possible chatroom message settings for typed items
237
+ * - TO_ONLY - The item has one chatroom message per type (indicating that the type has been selected)
238
+ * - FROM_TO - The item has a chatroom message for from/to type pairing
239
+ * - SILENT - The item doesn't publish an action when a type is selected.
240
+ * @type {Record<"TO_ONLY"|"FROM_TO"|"SILENT", TypedItemChatSetting>}
241
+ */
242
+ declare const TypedItemChatSetting: Record<"TO_ONLY" | "FROM_TO" | "SILENT", TypedItemChatSetting>;