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,324 @@
1
+ /**
2
+ * Creates the appearance update parameters used to validate an appearance diff, based on the provided target character
3
+ * and the source character's member number.
4
+ * @param {Character} C - The target character (to whom the appearance update is being applied)
5
+ * @param {number} sourceMemberNumber - The member number of the source player (the person that sent the update)
6
+ * @returns {AppearanceUpdateParameters} - Appearance update parameters used based on the relationship between the
7
+ * target and source characters
8
+ */
9
+ declare function ValidationCreateDiffParams(C: Character, sourceMemberNumber: number): AppearanceUpdateParameters;
10
+ /**
11
+ * Resolves an appearance diff based on the previous item, new item, and the appearance update parameters provided.
12
+ * Returns an {@link ItemDiffResolution} object containing the final appearance item and a valid flag indicating
13
+ * whether or not the new item had to be modified/rolled back.
14
+ * @param {AssetGroupName} groupName - The name of the group for the appearance diff
15
+ * @param {Item|null} previousItem - The previous item that the target character had equipped (or null if none)
16
+ * @param {Item|null} newItem - The new item to equip (may be identical to the previous item, or null if removing)
17
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
18
+ * @returns {ItemDiffResolution} - The diff resolution - a wrapper object containing the final item and a flag
19
+ * indicating whether or not the change was valid.
20
+ */
21
+ declare function ValidationResolveAppearanceDiff(groupName: AssetGroupName, previousItem: Item | null, newItem: Item | null, params: AppearanceUpdateParameters): ItemDiffResolution;
22
+ /**
23
+ * Check whether newArray is different from oldArray.
24
+ * @template T
25
+ * @param {T[]} oldArray
26
+ * @param {T[]} newArray
27
+ * @returns {boolean}
28
+ */
29
+ declare function ValidationHasArrayPropertyBeenModified<T>(oldArray: T[], newArray: T[]): boolean;
30
+ /**
31
+ * Resolves an appearance diff for the ItemScript group. This group has special rules and permissions which don't
32
+ * necessarily apply to or behave like other groups.
33
+ * @param {Item|null} previousItem - The previous item in the group
34
+ * @param {Item|null} newItem - The new item in the group
35
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
36
+ * @return {ItemDiffResolution} - The diff resolution
37
+ */
38
+ declare function ValidationResolveScriptDiff(previousItem: Item | null, newItem: Item | null, { C, permissions, sourceMemberNumber }: AppearanceUpdateParameters): ItemDiffResolution;
39
+ /**
40
+ * Resolves an appearance diff where an item is being added (i.e. there was no previous item in the asset group). Add
41
+ * diffs are handled as the composite of two operations: item addition, followed by property modification. First we
42
+ * check whether the base item can be added, and then we check that any added properties are permitted.
43
+ * @param {Item} newItem - The new item to equip
44
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
45
+ * @returns {ItemDiffResolution} - The diff resolution - a wrapper object containing the final item and a flag
46
+ * indicating whether or not the change was valid.
47
+ */
48
+ declare function ValidationResolveAddDiff(newItem: Item, params: AppearanceUpdateParameters): ItemDiffResolution;
49
+ /**
50
+ * Resolves an appearance diff where an item is being removed (i.e. there was previously an item in the asset group, but
51
+ * it is being removed)
52
+ * @param {Item} previousItem - The previous item to remove
53
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
54
+ * @param {boolean} [isSwap] - Whether or not the removal is part of an item swap operation. This will allow certain
55
+ * items which cannot normally be removed (e.g. items with `AllowNone: false`) to be removed
56
+ * @returns {ItemDiffResolution} - The diff resolution - a wrapper object containing the final item and a flag
57
+ * indicating whether or not the change was valid.
58
+ */
59
+ declare function ValidationResolveRemoveDiff(previousItem: Item, params: AppearanceUpdateParameters, isSwap?: boolean): ItemDiffResolution;
60
+ /**
61
+ * Resolves an appearance diff where an item is being swapped (i.e. there was an item previously in the asset group, but
62
+ * the new item uses a different asset to the previous item). Swap diffs are handled as the composite of three
63
+ * operations: item removal, item addition, and then property modification. First we check whether the previous item
64
+ * can be removed, then whether the new item can be added, and finally we check that any added properties are permitted.
65
+ * @param {Item} previousItem - The previous item to remove
66
+ * @param {Item} newItem - The new item to add
67
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
68
+ * @returns {ItemDiffResolution} - The diff resolution - a wrapper object containing the final item and a flag
69
+ * indicating whether or not the change was valid.
70
+ */
71
+ declare function ValidationResolveSwapDiff(previousItem: Item, newItem: Item, params: AppearanceUpdateParameters): ItemDiffResolution;
72
+ /**
73
+ * Resolves an appearance diff where an item is being modified (i.e. there was an item previously in the asset group,
74
+ * and the new item uses the same asset as the previous item). The function primarily validates modifications to locked
75
+ * items
76
+ * @param {Item} previousItem - The previous item to remove
77
+ * @param {Item} newItem - The new item to add
78
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
79
+ * @returns {ItemDiffResolution} - The diff resolution - a wrapper object containing the final item and a flag
80
+ * indicating whether or not the change was valid.
81
+ */
82
+ declare function ValidationResolveModifyDiff(previousItem: Item, newItem: Item, params: AppearanceUpdateParameters): ItemDiffResolution;
83
+ /**
84
+ * Resolves modifications to an item's lock properties and returns a boolean to indicate whether or not the
85
+ * modifications were valid.
86
+ * @param {Item} previousItem - The previous item to remove
87
+ * @param {Item} newItem - The new item to add
88
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
89
+ * @param {boolean} itemBlocked - Whether or not the item is blocked or limited for the source player
90
+ * @returns {boolean} - true if the lock modifications (if any) were valid, false otherwise
91
+ */
92
+ declare function ValidationResolveLockModification(previousItem: Item, newItem: Item, params: AppearanceUpdateParameters, itemBlocked: boolean): boolean;
93
+ /**
94
+ * Determines whether or not a lock was modified on an item from its previous and new property values
95
+ * @param {ItemProperties} previousProperty - The previous item property
96
+ * @param {ItemProperties} newProperty - The new item property
97
+ * @returns {boolean} - true if the item's lock was modified (added/removed/swapped/modified), false otherwise
98
+ */
99
+ declare function ValidationLockWasModified(previousProperty: ItemProperties, newProperty: ItemProperties): boolean;
100
+ /**
101
+ * Returns a commonly used warning message indicating that an invalid change to an item was made, along with the target
102
+ * and source characters' member numbers.
103
+ * @param {Item} item - The item being modified
104
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
105
+ * @returns {string} - The warning message
106
+ */
107
+ declare function ValidationItemWarningMessage(item: Item, { C, sourceMemberNumber }: AppearanceUpdateParameters): string;
108
+ /**
109
+ * Determines whether or not a lock can be modified based on the lock object and the provided appearance update
110
+ * parameters.
111
+ * @param {Item} lock - The lock object that is being checked, as returned by {@link InventoryGetLock}
112
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
113
+ * @param {boolean} [remove] - Whether the lock change is a removal
114
+ * @returns {boolean} - TRUE if the lock can be modified, FALSE otherwise
115
+ */
116
+ declare function ValidationIsLockChangePermitted(lock: Item, { C, fromOwner, fromLover, fromFamily }: AppearanceUpdateParameters, remove?: boolean): boolean;
117
+ /**
118
+ * Copies an item's lock-related properties from one Property object to another based on whether or not the source
119
+ * character has permissions to modify the lock. Rolls back any invalid changes to their previous values.
120
+ * @param {object} sourceProperty - The original Property object on the item
121
+ * @param {object} targetProperty - The Property object on the modified item
122
+ * @param {boolean} hasLockPermissions - Whether or not the source character of the appearance change has permission to
123
+ * modify the lock (as determined by {@link ValidationIsLockChangePermitted})
124
+ * @returns {boolean} - TRUE if the target Property object was modified as a result of copying (indicating that there
125
+ * were invalid changes to the lock), FALSE otherwise
126
+ */
127
+ declare function ValidationRollbackInvalidLockProperties(sourceProperty: object, targetProperty: object, hasLockPermissions: boolean): boolean;
128
+ /**
129
+ * Clones all lock properties from one Property object to another.
130
+ * @param {ItemProperties} sourceProperty - The property object to clone properties from
131
+ * @param {ItemProperties} targetProperty - The property object to clone properties to
132
+ * @returns {void} - Nothing
133
+ */
134
+ declare function ValidationCloneLock(sourceProperty: ItemProperties, targetProperty: ItemProperties): void;
135
+ /**
136
+ * Copies the value of a single property key from a source Property object to a target Property object.
137
+ * @param {ItemProperties} sourceProperty - The original Property object on the item
138
+ * @param {ItemProperties} targetProperty - The Property object on the modified item
139
+ * @param {string} key - The property key whose value to copy
140
+ * @returns {boolean} - TRUE if the target Property object was modified as a result of copying (indicating that there
141
+ * were invalid changes to the property), FALSE otherwise
142
+ */
143
+ declare function ValidationCopyProperty(sourceProperty: ItemProperties, targetProperty: ItemProperties, key: string): boolean;
144
+ /**
145
+ * Determines whether an item can be added to the target character, based on the provided appearance update parameters.
146
+ * Note that the item's properties are not taken into account at this stage - this merely checks whether the basic item
147
+ * can be added.
148
+ * @param {Item} newItem - The new item to add
149
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
150
+ * @returns {boolean} - TRUE if the new item can be equipped based on the appearance update parameters, FALSE otherwise
151
+ */
152
+ declare function ValidationCanAddItem(newItem: Item, params: AppearanceUpdateParameters): boolean;
153
+ /**
154
+ * Determines whether the character described by the `sourceMemberNumber` parameter is permitted to add a given asset to
155
+ * the target character `C`, based on the asset's group name, asset name and type (if applicable). This only checks
156
+ * against the target character's limited and blocked item lists, not their global item permissions.
157
+ * @param {Character} C - The target character
158
+ * @param {number} sourceMemberNumber - The member number of the source character
159
+ * @param {AssetGroupName} groupName - The name of the asset group for the intended item
160
+ * @param {string} assetName - The asset name of the intended item
161
+ * @param {string|null} [type] - The type of the intended item
162
+ * @returns {boolean} - TRUE if the character with the provided source member number is _not_ allowed to equip the
163
+ * described asset on the target character, FALSE otherwise.
164
+ */
165
+ declare function ValidationIsItemBlockedOrLimited(C: Character, sourceMemberNumber: number, groupName: AssetGroupName, assetName: string, type?: string | null): boolean;
166
+ /**
167
+ * Determines whether an item can be removed from the target character, based on the provided appearance update
168
+ * parameters.
169
+ * @param {Item} previousItem - The item to remove
170
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
171
+ * @param {boolean} isSwap - Whether or not the removal is part of a swap, which allows temporary removal of items with
172
+ * `AllowNone: false`.
173
+ * @returns {boolean} - TRUE if the item can be removed based on the appearance update parameters, FALSE otherwise
174
+ */
175
+ declare function ValidationCanRemoveItem(previousItem: Item, params: AppearanceUpdateParameters, isSwap: boolean): boolean;
176
+ /**
177
+ * Determines whether an item can be added or removed from the target character, based on the provided appearance update
178
+ * parameters.
179
+ * @param {Item} item - The item to add or remove
180
+ * @param {AppearanceUpdateParameters} params - The appearance update parameters that apply to the diff
181
+ * @return {boolean} - TRUE if the item can be added or removed based on the appearance update parameters, FALSE
182
+ * otherwise
183
+ */
184
+ declare function ValidationCanAddOrRemoveItem(item: Item, { C, fromOwner, fromLover, fromFamily }: AppearanceUpdateParameters): boolean;
185
+ /**
186
+ * Sanitizes the properties on an appearance item to ensure that no invalid properties are present. This removes invalid
187
+ * locks, strips invalid values, and ensures property values are within the constraints defined by an item.
188
+ * @param {Character} C - The character on whom the item is equipped
189
+ * @param {Item} item - The appearance item to sanitize
190
+ * @returns {boolean} - TRUE if the item was modified as part of the sanitization process (indicating that invalid
191
+ * properties were present), FALSE otherwise
192
+ */
193
+ declare function ValidationSanitizeProperties(C: Character, item: Item): boolean;
194
+ /**
195
+ * Sanitizes the `Effect` array on an item's Property object, if present. This ensures that it is a valid array of
196
+ * strings, and that each item in the array is present in the asset's `AllowEffect` array.
197
+ * @param {Character} C - The character on whom the item is equipped
198
+ * @param {Item} item - The item whose `Effect` property should be sanitized
199
+ * @returns {boolean} - TRUE if the item's `Effect` property was modified as part of the sanitization process
200
+ * (indicating it was not a valid string array, or that invalid effects were present), FALSE otherwise
201
+ */
202
+ declare function ValidationSanitizeEffects(C: Character, item: Item): boolean;
203
+ /**
204
+ * Sanitizes an item's lock properties, if present. This ensures that any lock on the item is valid, and removes or
205
+ * corrects invalid properties.
206
+ * @param {Character} C - The character on whom the item is equipped
207
+ * @param {Item} item - The item whose lock properties should be sanitized
208
+ * @returns {boolean} - TRUE if the item's properties were modified as part of the sanitization process (indicating the
209
+ * lock was not valid), FALSE otherwise
210
+ */
211
+ declare function ValidationSanitizeLock(C: Character, item: Item): boolean;
212
+ /**
213
+ * Sanitizes an array on an item's Property object, if present. This ensures that it is a valid array of
214
+ * strings, and that each item in the array is present in the either the asset's corresponding property array or the
215
+ * "allow" array for that item.
216
+ * @param {Character} C - The character on whom the item is equipped
217
+ * @param {Item} item - The item whose property should be sanitized
218
+ * @param {keyof ItemProperties & keyof Asset} propertyName - The name of the property
219
+ * @param {keyof Asset} allowPropertyName - The name of the property corresponding to the list of allowed property
220
+ * values on the asset
221
+ * @returns {boolean} - TRUE if the item's property was modified as part of the sanitization process
222
+ * (indicating it was not a valid string array, or that invalid entries were present), FALSE otherwise
223
+ */
224
+ declare function ValidationSanitizeAllowedPropertyArray(C: Character, item: Item, propertyName: keyof ItemProperties & keyof Asset, allowPropertyName: keyof Asset): boolean;
225
+ /**
226
+ * Sanitizes the `SetPose` array on an item's Property object, if present. This ensures that it is a valid array of
227
+ * strings, and that each item in the array is present in the list of poses available in the game.
228
+ * @param {Character} C - The character on whom the item is equipped
229
+ * @param {Item} item - The item whose `SetPose` property should be sanitized
230
+ * @returns {boolean} - TRUE if the item's `SetPose` property was modified as part of the sanitization process
231
+ * (indicating it was not a valid string array, or that invalid entries were present), FALSE otherwise
232
+ */
233
+ declare function ValidationSanitizeSetPose(C: Character, item: Item): boolean;
234
+ /**
235
+ * Sanitizes a property on an object to ensure that it is a valid string array or null/undefined. If the property is not
236
+ * a valid array and is not null, it will be deleted from the object. If it is a valid array, any non-string entries
237
+ * will be removed.
238
+ * @param {ItemProperties} property - The object whose property should be sanitized
239
+ * @param {string} key - The key indicating which property on the object should be sanitized
240
+ * @returns {boolean} - TRUE if the object's property was modified as part of the sanitization process (indicating that
241
+ * the property was not a valid array, or that it contained a non-string entry), FALSE otherwise
242
+ */
243
+ declare function ValidationSanitizeStringArray(property: ItemProperties, key: string): boolean;
244
+ /**
245
+ * Completely removes a lock from an item's Property object. This removes all lock-related properties, and the "Lock"
246
+ * effect from the property object.
247
+ * @param {ItemProperties} property - The Property object to remove the lock from
248
+ * @param {boolean} verbose - Whether or not to print console warnings when properties are deleted. Defaults to true.
249
+ * @returns {boolean} - TRUE if the Property object was modified as a result of the lock deletion (indicating that at
250
+ * least one lock-related property was present), FALSE otherwise
251
+ */
252
+ declare function ValidationDeleteLock(property: ItemProperties, verbose?: boolean): boolean;
253
+ /**
254
+ * Fixes any cyclic blocks in the provided appearance array. The given diff map is used to determine the order in which
255
+ * items should be rolled back or removed if block cycles are found (a block cycle being a series of items that block
256
+ * each other in a cyclic fashion).
257
+ * @param {Item[]} appearance - The appearance to sanitize
258
+ * @param {AppearanceDiffMap} diffMap - The appearance diff map which indicates the items that were changed as part of
259
+ * the appearance update that triggered this validation
260
+ * @returns {AppearanceValidationWrapper} - A wrapper containing the final appearance, with any block cycles removed,
261
+ * plus a valid flag indicating whether or not the appearance had to be modified.
262
+ */
263
+ declare function ValidationResolveCyclicBlocks(appearance: Item[], diffMap: AppearanceDiffMap): AppearanceValidationWrapper;
264
+ /**
265
+ * Finds any block cycles in the given appearance array. Block cycles are groups of items that block each other in a
266
+ * cyclic fashion. Block cycles are represented as an array of group names that comprise the cycle. For example:
267
+ * ["ItemArms", "ItemDevices", "ItemArms"]
268
+ * This indicates that the item in the ItemArms group blocks the item in the ItemDevices group, and vice versa. This
269
+ * function returns an array of such block cycles, or an empty array if none were found.
270
+ * Be advised that cyclic block checking is relatively expensive, so should only be run when needed - don't run it every
271
+ * frame!
272
+ * @param {Item[]} appearance - The appearance array to check
273
+ * @returns {string[][]} - A list of block cycles, each cycle being represented as an array of group names.
274
+ */
275
+ declare function ValidationFindBlockCycles(appearance: Item[]): string[][];
276
+ /**
277
+ * Finds the groups, from a provided list of groups, that are blocked by a given item.
278
+ * @param {Item} item - The item to check
279
+ * @param {readonly AssetGroupName[]} groupNames - A list of group names that should be used to filter the final block list
280
+ * @returns {AssetGroupName[]} - A subset of the provided group names representing the groups that are blocked by the given
281
+ * item.
282
+ */
283
+ declare function ValidationGetBlockedGroups(item: Item, groupNames: readonly AssetGroupName[]): AssetGroupName[];
284
+ /**
285
+ * Finds the groups from the provided appearance array that block a given item due to prerequisites. In this situation,
286
+ * an item is considered to be blocking if the target item can't be added with it, but can without it.
287
+ * @param {Item} item - The item to check
288
+ * @param {Item[]} appearance - The appearance array to check
289
+ * @returns {AssetGroupName[]} - A list of group names corresponding to items from the appearance array that block the given
290
+ * item due to prerequisites
291
+ */
292
+ declare function ValidationGetPrerequisiteBlockingGroups(item: Item, appearance: Item[]): AssetGroupName[];
293
+ /**
294
+ * Checks whether a character permits the given permission level to modify the given item property. For example,
295
+ * passing `Player` in as the character, `"Block"` in as the property and `ScriptPermissionLevel.FRIENDS` in as the
296
+ * permission level will check whether the player's friends are permitted to freely modify `"Block"` properties on the
297
+ * player's worn items without strict validation.
298
+ * @param {Character} character - The character to check
299
+ * @param {ScriptPermissionProperty} property - The name of the property to check
300
+ * @param {ScriptPermissionLevel} permissionLevel - The permission level to check
301
+ * @returns {boolean} TRUE if the character permits modifications to the provided property
302
+ */
303
+ declare function ValidationHasScriptPermission(character: Character, property: ScriptPermissionProperty, permissionLevel: ScriptPermissionLevel): boolean;
304
+ /**
305
+ * Checks whether a character permits any of the given permission levels to modify the given item property.
306
+ * @param {Character} character - The character to check
307
+ * @param {ScriptPermissionProperty} property - The name of the property to check
308
+ * @param {readonly ScriptPermissionLevel[]} permissionLevels - The permission levels to check
309
+ * @returns {boolean} TRUE if the character permits modifications to the provided property
310
+ */
311
+ declare function ValidationHasSomeScriptPermission(character: Character, property: ScriptPermissionProperty, permissionLevels: readonly ScriptPermissionLevel[]): boolean;
312
+ declare const ValidationCombinationNumberRegex: RegExp;
313
+ declare const ValidationPasswordRegex: RegExp;
314
+ declare const ValidationDefaultCombinationNumber: "0000";
315
+ declare const ValidationDefaultPassword: "UNLOCK";
316
+ declare const ValidationRemoveTimerToleranceMs: 5000;
317
+ declare const ValidationNonModifiableLockProperties: string[];
318
+ declare const ValidationRestrictedLockProperties: string[];
319
+ declare const ValidationTimerLockProperties: string[];
320
+ declare const ValidationAllLockProperties: string[];
321
+ declare const ValidationModifiableProperties: string[];
322
+ declare const ValidationScriptableProperties: string[];
323
+ /** @type {Partial<Record<keyof ItemProperties, ScriptPermissionProperty>>} */
324
+ declare const ValidationPropertyPermissions: Partial<Record<keyof ItemProperties, ScriptPermissionProperty>>;
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Registers a variable height extended item. This automatically creates the item's load, draw and click functions.
3
+ * @param {Asset} asset - The asset being registered
4
+ * @param {VariableHeightConfig} config - The variable height configuration
5
+ * @param {null | ExtendedItemOption} parentOption - The extended item option of the super screen that this archetype was initialized from (if any)
6
+ * @returns {VariableHeightData} - The generated extended item data for the asset
7
+ */
8
+ declare function VariableHeightRegister(asset: Asset, config: VariableHeightConfig, parentOption?: null | ExtendedItemOption): VariableHeightData;
9
+ /**
10
+ * Parse the passed variable height draw data as passed via the extended item config
11
+ * @param {VariableHeightConfigDrawData} drawData - The to-be parsed draw data
12
+ * @return {ExtendedItemDrawData<ElementMetaData.VariableHeight>} - The parsed draw data
13
+ */
14
+ declare function VariableHeightGetDrawData(drawData: VariableHeightConfigDrawData): ExtendedItemDrawData<ElementMetaData.VariableHeight>;
15
+ /**
16
+ * Generates an asset's variable height data
17
+ * @param {Asset} asset - The asset to generate modular item data for
18
+ * @param {VariableHeightConfig} config - The variable height configuration
19
+ * @param {null | ExtendedItemOption} parentOption
20
+ * @returns {VariableHeightData} - The generated variable height data for the asset
21
+ */
22
+ declare function VariableHeightCreateData(asset: Asset, { MaxHeight, MinHeight, DialogPrefix, ChatTags, Dictionary, GetHeightFunction, SetHeightFunction, ScriptHooks, BaselineProperty, DrawData, }: VariableHeightConfig, parentOption?: null | ExtendedItemOption): VariableHeightData;
23
+ /**
24
+ * @param {VariableHeightData} data - The variable height data for the asset
25
+ */
26
+ declare function VariableHeightLoad(data: VariableHeightData): void;
27
+ /**
28
+ * @param {VariableHeightData} data - The variable height data for the asset
29
+ * @returns {void} - Nothing
30
+ */
31
+ declare function VariableHeightDraw(data: VariableHeightData): void;
32
+ /**
33
+ * @param {VariableHeightData} data - The variable height data for the asset
34
+ * @returns {void} - Nothing
35
+ */
36
+ declare function VariableHeightClick(data: VariableHeightData): void;
37
+ /**
38
+ * Exit handler for the item's extended item screen. Updates the character and removes UI components.
39
+ * @returns {void} - Nothing
40
+ */
41
+ declare function VariableHeightExit(): void;
42
+ /**
43
+ * Publishes a custom action to the chat for the height change
44
+ * @param {VariableHeightData} data
45
+ * @param {Character} C
46
+ * @param {Item} item
47
+ * @param {VariableHeightOption} newOption
48
+ * @param {VariableHeightOption} previousOption
49
+ */
50
+ declare function VariableHeightPublishAction(data: VariableHeightData, C: Character, item: Item, newOption: VariableHeightOption, previousOption: VariableHeightOption): void;
51
+ /**
52
+ * Retrieve the current height position override if set, accounting for inversion
53
+ * @param {ItemProperties} property - Property of the item determining the variable height
54
+ * @returns {number | null} - The height value between 0 and 1, null if missing or invalid
55
+ */
56
+ declare function VariableHeightGetOverrideHeight(property: ItemProperties): number | null;
57
+ /**
58
+ * Reposition the character vertically when upside-down, accounting for height ratio and inversion
59
+ * @param {ItemProperties} property - Property of the item determining the variable height
60
+ * @param {number} height - The 0 to 1 height setting to use
61
+ * @param {number} maxHeight - The maximum number of the item's height range
62
+ * @param {number} minHeight - The minimum number of the item's height range
63
+ * @returns {void} - Nothing
64
+ */
65
+ declare function VariableHeightSetOverrideHeight(property: ItemProperties, height: number, maxHeight: number, minHeight: number): void;
66
+ /**
67
+ * Initialize the variable height item properties
68
+ * @param {VariableHeightData} Data
69
+ * @param {Item} Item - The item in question
70
+ * @param {Character} C - The character that has the item equiped
71
+ * @param {boolean} Refresh - Whether the character and relevant item should be refreshed and pushed to the server
72
+ * @returns {boolean} Whether properties were initialized or not
73
+ */
74
+ declare function VariableHeightInit(Data: VariableHeightData, C: Character, Item: Item, Refresh: boolean): boolean;
75
+ /**
76
+ * Dynamically construct the next and previous extended item option for the passed item
77
+ * @param {VariableHeightData} data - The extended item data
78
+ * @param {Item} item - The item in question
79
+ * @returns {{ newOption: VariableHeightOption, previousOption: VariableHeightOption }}
80
+ */
81
+ declare function VariableHeightConstructOptions(data: VariableHeightData, item: Item): {
82
+ newOption: VariableHeightOption;
83
+ previousOption: VariableHeightOption;
84
+ };
85
+ /**
86
+ * Revert all item properties back to their previous state prior to opening the extended item menu
87
+ * @param {Character} C - The character in question
88
+ * @param {Item} item - The item in question
89
+ */
90
+ declare function VariableHeightPropertyRevert(C: Character, item: Item): void;
91
+ /**
92
+ * The name of vertical slider element
93
+ * @const {string}
94
+ */
95
+ declare const VariableHeightSliderId: "VariableHeightSlider";
96
+ /**
97
+ * The name of the numerical percentage input element
98
+ * @const {string}
99
+ */
100
+ declare const VariableHeightNumerId: "VariableHeightNumber";
101
+ /**
102
+ * A lookup for the variable height configurations for each registered variable height item
103
+ * @const
104
+ * @type {Record<string, VariableHeightData>}
105
+ */
106
+ declare const VariableHeightDataLookup: Record<string, VariableHeightData>;
107
+ /** @type {(height: number, maxHeight: number, minHeight: number, setHeight: VariableHeightSetHeightCallback, fromElementId: string) => void} */
108
+ declare function VariableHeightChange(height: number, maxHeight: number, minHeight: number, setHeight: VariableHeightSetHeightCallback, fromElementId: string): void;
@@ -0,0 +1,209 @@
1
+ /**
2
+ * Registers a vibrator item. This automatically creates the item's load, draw, click and scriptDraw functions.
3
+ * @param {Asset} asset - The asset being registered
4
+ * @param {VibratingItemConfig} config - The item's vibrator item configuration
5
+ * @param {null | ExtendedItemOption} parentOption - The extended item option of the super screen that this archetype was initialized from (if any)
6
+ * @returns {VibratingItemData} - The generated extended item data for the asset
7
+ */
8
+ declare function VibratorModeRegister(asset: Asset, config: VibratingItemConfig, parentOption?: null | ExtendedItemOption): VibratingItemData;
9
+ /**
10
+ * Sets an extended item's type and properties to the option provided.
11
+ * @param {VibratingItemData} data - The extended item data
12
+ * @param {Character} C - The character on whom the item is equipped
13
+ * @param {Item} item - The item whose type to set
14
+ * @param {VibratingItemOption} newOption - The to-be applied extended item option
15
+ * @param {VibratingItemOption} previousOption - The previously applied extended item option
16
+ * @param {boolean} [push] - Whether or not appearance updates should be persisted (only applies if the character is the
17
+ * player) - defaults to false.
18
+ */
19
+ declare function VibratorModeSetOption(data: VibratingItemData, C: Character, item: Item, newOption: VibratingItemOption, previousOption: VibratingItemOption, push?: boolean): void;
20
+ /**
21
+ * Parse the passed typed item draw data as passed via the extended item config
22
+ * @param {readonly VibratorModeSet[]} modeSet - The vibrator mode sets for the item
23
+ * @param {ExtendedItemConfigDrawData<{ drawImage?: false }> | undefined} drawData - The to-be parsed draw data
24
+ * @param {number} y - The y-coordinate at which to start drawing the controls
25
+ * @return {ExtendedItemDrawData<ElementMetaData.Vibrating>} - The parsed draw data
26
+ */
27
+ declare function VibratorModeGetDrawData(modeSet: readonly VibratorModeSet[], drawData: ExtendedItemConfigDrawData<{
28
+ drawImage?: false;
29
+ }> | undefined, y?: number): ExtendedItemDrawData<ElementMetaData.Vibrating>;
30
+ /**
31
+ * Generates an asset's vibrating item data
32
+ * @param {Asset} asset - The asset to generate vibrating item data for
33
+ * @param {VibratingItemConfig} config - The item's extended item configuration
34
+ * @returns {VibratingItemData} - The generated vibrating item data for the asset
35
+ */
36
+ declare function VibratorModeCreateData(asset: Asset, { Options, ScriptHooks, BaselineProperty, Dictionary, DialogPrefix, DrawData, ChatTags }: VibratingItemConfig, parentOption?: any): VibratingItemData;
37
+ /**
38
+ * Gather all extended item options for a given list of modes.
39
+ * @param {VibratingItemData} data - The extended item data
40
+ * @param {readonly VibratorModeSet[]} modeSet - The vibrator mods
41
+ * @returns {VibratingItemOption[]} - The generated vibrating item options
42
+ */
43
+ declare function VibratorModeGetOptions(data: VibratingItemData, modeSet: readonly VibratorModeSet[]): VibratingItemOption[];
44
+ /**
45
+ * Loads the vibrating item's extended item menu.
46
+ * @param {VibratingItemData} data
47
+ */
48
+ declare function VibratorModeLoad({ dialogPrefix: { header } }: VibratingItemData): void;
49
+ /**
50
+ * @param {VibratingItemData} data
51
+ * @param {Character} C - The character on whom the item is equipped
52
+ * @param {Item} item - The item whose options are being validated
53
+ * @param {VibratingItemOption} newOption - The new option
54
+ * @param {VibratingItemOption} previousOption - The previously applied option
55
+ * @returns {string|undefined} - undefined or an empty string if the validation passes. Otherwise, returns a string
56
+ * message informing the player of the requirements that are not met.
57
+ */
58
+ declare function VibratorModeValidate(data: VibratingItemData, C: Character, item: Item, newOption: VibratingItemOption, previousOption: VibratingItemOption): string | undefined;
59
+ /**
60
+ * Publish a vibrator action and exit the dialog of applicable
61
+ * @param {VibratingItemData} data
62
+ * @param {Character} C - The character wearing the item
63
+ * @param {Item} item - The item in question
64
+ * @param {VibratingItemOption} newOption - The newly selected option
65
+ * @param {VibratingItemOption} previousOption - The currently selected option
66
+ */
67
+ declare function VibratorModePublishAction(data: VibratingItemData, C: Character, item: Item, newOption: VibratingItemOption, previousOption: VibratingItemOption): void;
68
+ /**
69
+ * Sets asset properties common to all vibrating items
70
+ * @param {VibratingItemData} data - The vibrating item data for the asset
71
+ * @returns {void} - Nothing
72
+ */
73
+ declare function VibratorModeSetAssetProperties(data: VibratingItemData): void;
74
+ /**
75
+ * Sets the AllowEffect property for a vibrating item
76
+ * @param {VibratingItemData} data - The vibrating item data for the asset
77
+ * @returns {void} - Nothing
78
+ */
79
+ declare function VibratorModeSetAllowEffect({ asset, modeSet }: VibratingItemData): void;
80
+ /**
81
+ * @typedef {{ Mode?: VibratorMode, ChangeTime?: number, LastChange?: number }} VibratorModePersistentData
82
+ */
83
+ /**
84
+ * Common dynamic script draw function for vibrators. This function is called every frame. TO make use of dynamic script draw on vibrators,
85
+ * ensure your item has a `Assets<AssetGroup><AssetName>ScriptDraw` function defined that calls this function, and that your asset
86
+ * definition in Female3DCG.js has `DynamicScriptDraw: true` set. See the Heart Piercings for examples.
87
+ * @param {VibratingItemData} data
88
+ * @param {DynamicScriptCallbackData<VibratorModePersistentData>} drawData
89
+ */
90
+ declare function VibratorModeScriptDraw(data: VibratingItemData, drawData: DynamicScriptCallbackData<VibratorModePersistentData>): void;
91
+ /**
92
+ * Vibrator update function for vibrator state machine modes
93
+ * @param {VibratingItemData} data - The vibrating item data
94
+ * @param {Character} C - The character that the item is equipped on
95
+ * @param {Item} item - The item that is being updated
96
+ * @param {VibratorModePersistentData} persistentData - Persistent animation data for the item
97
+ * @param {readonly VibratorModeState[]} transitionsFromDefault - The possible vibrator states that may be transitioned to from
98
+ * the default state
99
+ * @returns {void} - Nothing
100
+ */
101
+ declare function VibratorModeUpdateStateBased(data: VibratingItemData, C: Character, item: Item, persistentData: VibratorModePersistentData, transitionsFromDefault: readonly VibratorModeState[]): void;
102
+ /**
103
+ * Publishes a chatroom message for an automatic change in vibrator intensity. Does nothing if the vibrator's intensity
104
+ * did not change.
105
+ * @param {VibratingItemData} data
106
+ * @param {Character} C - The character that the vibrator is equipped on
107
+ * @param {Item} item - The vibrator item
108
+ * @param {number} oldIntensity - The previous intensity of the vibrator
109
+ * @param {number} newIntensity - The new intensity of the vibrator
110
+ * @returns {void} - Nothing
111
+ */
112
+ declare function VibratorModePublish(data: VibratingItemData, C: Character, item: Item, oldIntensity: number, newIntensity: number): void;
113
+ /**
114
+ * Initialize the vibrating item properties
115
+ * @param {VibratingItemData} data
116
+ * @param {Item} Item - The item in question
117
+ * @param {Character} C - The character that has the item equiped
118
+ * @param {boolean} Refresh - Whether the character and relevant item should be refreshed and pushed to the server
119
+ * @returns {boolean} Whether properties were initialized or not
120
+ */
121
+ declare function VibratorModeInit(data: VibratingItemData, C: Character, Item: Item, Refresh?: boolean): boolean;
122
+ /**
123
+ * An alias for {@link TypedItemSetOptionByName}.
124
+ * @type {typeof TypedItemSetOptionByName}
125
+ */
126
+ declare function VibratorModeSetOptionByName(C: Character, itemOrGroupName: AssetGroupName | Item, optionName: string, push?: boolean, C_Source?: Character, subscreen?: [archetype: "typed" | "vibrating", screen: string]): string;
127
+ /**
128
+ * Return the (standard) vibrator mode one would get by incrementing/decrementing the passed mode.
129
+ * @param {VibratorMode} mode - The current vibrator mode
130
+ * @param {boolean} decrement - Whether the mode should be decremented rather than incremented
131
+ * @returns {VibratorMode} The new vibrator mode
132
+ */
133
+ declare function VibratorModeIntensityIncrement(mode: VibratorMode, decrement?: boolean): VibratorMode;
134
+ /**
135
+ * An enum for the possible vibrator modes
136
+ * @readonly
137
+ * @type {{OFF: "Off", LOW: "Low", MEDIUM: "Medium", HIGH: "High", MAXIMUM: "Maximum", RANDOM: "Random", ESCALATE: "Escalate", TEASE: "Tease", DENY: "Deny", EDGE: "Edge"}}
138
+ */
139
+ declare var VibratorMode: {
140
+ OFF: "Off";
141
+ LOW: "Low";
142
+ MEDIUM: "Medium";
143
+ HIGH: "High";
144
+ MAXIMUM: "Maximum";
145
+ RANDOM: "Random";
146
+ ESCALATE: "Escalate";
147
+ TEASE: "Tease";
148
+ DENY: "Deny";
149
+ EDGE: "Edge";
150
+ };
151
+ /**
152
+ * An enum for the possible vibrator states when a vibrator is in a state machine mode
153
+ * @type {{DEFAULT: "Default", DENY: "Deny", ORGASM: "Orgasm", REST: "Rest"}}
154
+ */
155
+ declare var VibratorModeState: {
156
+ DEFAULT: "Default";
157
+ DENY: "Deny";
158
+ ORGASM: "Orgasm";
159
+ REST: "Rest";
160
+ };
161
+ /**
162
+ * An enum for the vibrator configuration sets that a vibrator can have
163
+ * @type {{STANDARD: "Standard", ADVANCED: "Advanced"}}
164
+ */
165
+ declare var VibratorModeSet: {
166
+ STANDARD: "Standard";
167
+ ADVANCED: "Advanced";
168
+ };
169
+ /**
170
+ * A record of the various available vibrator sets of vibrator modes
171
+ * @type {{
172
+ * Standard: VibratingItemOptionConfig[],
173
+ * Advanced: VibratingItemOptionConfig[],
174
+ * }}
175
+ * @constant
176
+ */
177
+ declare var VibratorModeOptions: {
178
+ Standard: VibratingItemOptionConfig[];
179
+ Advanced: VibratingItemOptionConfig[];
180
+ };
181
+ /**
182
+ * An alias for the vibrators OFF mode. See {@link VibratorModeOptions}.
183
+ */
184
+ declare const VibratorModeOff: VibratingItemOptionConfig;
185
+ /** A list with all advanced vibrator mode-names. */
186
+ declare const VibratorModesAdvanced: VibratorMode[];
187
+ /**
188
+ * A lookup for the vibrator configurations for each registered vibrator item
189
+ * @const
190
+ * @type {Record<string, VibratingItemData>}
191
+ */
192
+ declare const VibratorModeDataLookup: Record<string, VibratingItemData>;
193
+ /**
194
+ * Namespace with helper functions for {@link VibratorModeScriptDraw}
195
+ * @type {Partial<Record<VibratorMode, (data: VibratingItemData, C: Character, item: Item, persistentData: VibratorModePersistentData) => void>>}
196
+ * @namespace
197
+ */
198
+ declare const VibratorModeUpdate: Partial<Record<VibratorMode, (data: VibratingItemData, C: Character, item: Item, persistentData: VibratorModePersistentData) => void>>;
199
+ declare namespace VibratorModeStateUpdate {
200
+ function Default(C: Character, arousal: number, timeSinceLastChange: number, oldIntensity: VibratorIntensity, transitionsFromDefault: readonly VibratorModeState[]): StateAndIntensity;
201
+ function Deny(C: Character, arousal: number, timeSinceLastChange: number, oldIntensity: VibratorIntensity): StateAndIntensity;
202
+ function Orgasm(C: Character, arousal: number, timeSinceLastChange: number, oldIntensity: VibratorIntensity): StateAndIntensity;
203
+ function Rest(C: Character, arousal: number, timeSinceLastChange: number, oldIntensity: VibratorIntensity): StateAndIntensity;
204
+ }
205
+ type VibratorModePersistentData = {
206
+ Mode?: VibratorMode;
207
+ ChangeTime?: number;
208
+ LastChange?: number;
209
+ };
@@ -0,0 +1,12 @@
1
+ export function compressToBase64(input: any): string;
2
+ export function decompressFromBase64(input: any): string;
3
+ export function compressToUTF16(input: any): string;
4
+ export function decompressFromUTF16(compressed: any): string;
5
+ export function compressToUint8Array(uncompressed: any): Uint8Array;
6
+ export function decompressFromUint8Array(compressed: any): string;
7
+ export function compressToEncodedURIComponent(input: any): string;
8
+ export function decompressFromEncodedURIComponent(input: any): string;
9
+ export function compress(uncompressed: any): string;
10
+ export function _compress(uncompressed: any, bitsPerChar: any, getCharFromInt: any): string;
11
+ export function decompress(compressed: any): string;
12
+ export function _decompress(length: any, resetValue: any, getNextValue: any): string;
File without changes