@xmobitea/gn-typescript-client 2.6.13 → 2.6.14

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 (286) hide show
  1. package/AGENTS.md +37 -0
  2. package/README.MD +420 -1
  3. package/dist/gearn.js.client.js +25056 -1056
  4. package/dist/gearn.js.client.min.js +1 -1
  5. package/dist/index.d.ts +30 -0
  6. package/dist/index.js +24236 -212
  7. package/dist/runtime/GNNetwork.d.ts +687 -3
  8. package/dist/runtime/GNNetworkAuthenticateApi.d.ts +327 -0
  9. package/dist/runtime/GNNetworkCharacterPlayerApi.d.ts +1026 -0
  10. package/dist/runtime/GNNetworkCloudScriptApi.d.ts +141 -0
  11. package/dist/runtime/GNNetworkContentApi.d.ts +243 -0
  12. package/dist/runtime/GNNetworkDashboardApi.d.ts +221 -0
  13. package/dist/runtime/GNNetworkGamePlayerApi.d.ts +1033 -0
  14. package/dist/runtime/GNNetworkGroupApi.d.ts +783 -0
  15. package/dist/runtime/GNNetworkInventoryApi.d.ts +673 -0
  16. package/dist/runtime/GNNetworkMasterPlayerApi.d.ts +1614 -6
  17. package/dist/runtime/GNNetworkMultiplayerApi.d.ts +234 -0
  18. package/dist/runtime/GNNetworkStoreInventoryApi.d.ts +309 -0
  19. package/dist/runtime/common/Action0.d.ts +30 -0
  20. package/dist/runtime/common/Action1.d.ts +32 -0
  21. package/dist/runtime/common/Action2.d.ts +21 -0
  22. package/dist/runtime/common/Action3.d.ts +16 -0
  23. package/dist/runtime/common/Action4.d.ts +17 -0
  24. package/dist/runtime/common/GNData.d.ts +368 -0
  25. package/dist/runtime/config/GNServerSettings.d.ts +442 -12
  26. package/dist/runtime/constant/Commands.d.ts +80 -0
  27. package/dist/runtime/constant/EventCode.d.ts +48 -0
  28. package/dist/runtime/constant/OperationCode.d.ts +74 -1
  29. package/dist/runtime/constant/ReturnCode.d.ts +72 -0
  30. package/dist/runtime/constant/enumType/ExecuteResponseStatus.d.ts +31 -0
  31. package/dist/runtime/constant/enumType/FriendStatus.d.ts +39 -0
  32. package/dist/runtime/constant/enumType/GoogleLoginType.d.ts +23 -0
  33. package/dist/runtime/constant/enumType/GroupStatus.d.ts +32 -0
  34. package/dist/runtime/constant/enumType/InvalidMemberType.d.ts +75 -0
  35. package/dist/runtime/constant/enumType/ItemType.d.ts +23 -0
  36. package/dist/runtime/constant/enumType/MatchStatus.d.ts +30 -0
  37. package/dist/runtime/constant/enumType/MatchmakingMemberStatus.d.ts +24 -0
  38. package/dist/runtime/constant/enumType/MatchmakingTicketStatus.d.ts +34 -0
  39. package/dist/runtime/constant/enumType/OwnerType.d.ts +40 -0
  40. package/dist/runtime/constant/enumType/PermissionDataItem.d.ts +22 -0
  41. package/dist/runtime/constant/enumType/PushPlatformType.d.ts +18 -0
  42. package/dist/runtime/constant/enumType/RequestRole.d.ts +32 -0
  43. package/dist/runtime/constant/enumType/RequestType.d.ts +70 -0
  44. package/dist/runtime/constant/enumType/StoreItemType.d.ts +21 -0
  45. package/dist/runtime/constant/enumType/StoreReceiveType.d.ts +30 -0
  46. package/dist/runtime/constant/errorCode/ErrorCode.d.ts +190 -8
  47. package/dist/runtime/constant/parameterCode/ParameterCode.d.ts +35 -5
  48. package/dist/runtime/entity/DataMember.d.ts +338 -0
  49. package/dist/runtime/entity/GNMetadata.d.ts +101 -0
  50. package/dist/runtime/entity/InvalidMember.d.ts +28 -0
  51. package/dist/runtime/entity/OperationEvent.d.ts +49 -0
  52. package/dist/runtime/entity/OperationRequest.d.ts +108 -0
  53. package/dist/runtime/entity/OperationResponse.d.ts +110 -0
  54. package/dist/runtime/entity/models/AuthenticateModels.d.ts +115 -0
  55. package/dist/runtime/entity/models/AuthenticateRequestModels.d.ts +131 -0
  56. package/dist/runtime/entity/models/AuthenticateResponseModels.d.ts +131 -0
  57. package/dist/runtime/entity/models/CharacterPlayerModels.d.ts +625 -1
  58. package/dist/runtime/entity/models/CharacterPlayerRequestModels.d.ts +972 -0
  59. package/dist/runtime/entity/models/CharacterPlayerResponseModels.d.ts +332 -0
  60. package/dist/runtime/entity/models/CloudScriptModels.d.ts +109 -0
  61. package/dist/runtime/entity/models/CloudScriptRequestModels.d.ts +107 -0
  62. package/dist/runtime/entity/models/CloudScriptResponseModels.d.ts +46 -0
  63. package/dist/runtime/entity/models/ContentModels.d.ts +124 -0
  64. package/dist/runtime/entity/models/ContentRequestModels.d.ts +152 -0
  65. package/dist/runtime/entity/models/ContentResponseModels.d.ts +58 -0
  66. package/dist/runtime/entity/models/DashboardModels.d.ts +371 -8
  67. package/dist/runtime/entity/models/DashboardRequestModels.d.ts +172 -0
  68. package/dist/runtime/entity/models/DashboardResponseModels.d.ts +170 -0
  69. package/dist/runtime/entity/models/GamePlayerModels.d.ts +644 -1
  70. package/dist/runtime/entity/models/GamePlayerRequestModels.d.ts +959 -0
  71. package/dist/runtime/entity/models/GamePlayerResponseModels.d.ts +333 -1
  72. package/dist/runtime/entity/models/GenericModels.d.ts +94 -0
  73. package/dist/runtime/entity/models/GroupModels.d.ts +484 -2
  74. package/dist/runtime/entity/models/GroupRequestModels.d.ts +737 -0
  75. package/dist/runtime/entity/models/GroupResponseModels.d.ts +254 -0
  76. package/dist/runtime/entity/models/InventoryModels.d.ts +415 -0
  77. package/dist/runtime/entity/models/InventoryRequestModels.d.ts +629 -0
  78. package/dist/runtime/entity/models/InventoryResponseModels.d.ts +218 -0
  79. package/dist/runtime/entity/models/MasterPlayerModels.d.ts +1065 -3
  80. package/dist/runtime/entity/models/MasterPlayerRequestModels.d.ts +1560 -6
  81. package/dist/runtime/entity/models/MasterPlayerResponseModels.d.ts +532 -1
  82. package/dist/runtime/entity/models/MultiplayerModels.d.ts +199 -0
  83. package/dist/runtime/entity/models/MultiplayerRequestModels.d.ts +196 -0
  84. package/dist/runtime/entity/models/MultiplayerResponseModels.d.ts +74 -0
  85. package/dist/runtime/entity/models/StoreInventoryModels.d.ts +262 -0
  86. package/dist/runtime/entity/models/StoreInventoryRequestModels.d.ts +268 -0
  87. package/dist/runtime/entity/models/StoreInventoryResponseModels.d.ts +98 -0
  88. package/dist/runtime/entity/request/CustomOperationRequest.d.ts +99 -0
  89. package/dist/runtime/entity/response/CustomOperationResponse.d.ts +118 -0
  90. package/dist/runtime/entity/response/GetAuthInfoResponse.d.ts +53 -0
  91. package/dist/runtime/entity/response/HealthCheckResponse.d.ts +56 -0
  92. package/dist/runtime/entity/response/UploadFileResponse.d.ts +19 -0
  93. package/dist/runtime/helper/CodeHelper.d.ts +122 -0
  94. package/dist/runtime/helper/ConverterService.d.ts +74 -0
  95. package/dist/runtime/helper/EnumUtility.d.ts +63 -0
  96. package/dist/runtime/helper/GNSupport.d.ts +64 -4
  97. package/dist/runtime/helper/GNUtils.d.ts +54 -0
  98. package/dist/runtime/helper/MessagePackConverterService.d.ts +48 -0
  99. package/dist/runtime/helper/OperationHelper.d.ts +51 -0
  100. package/dist/runtime/helper/StorageService.d.ts +48 -8
  101. package/dist/runtime/logger/GNDebug.d.ts +117 -0
  102. package/dist/runtime/networking/AuthenticateStatus.d.ts +64 -0
  103. package/dist/runtime/networking/IPeer.d.ts +83 -0
  104. package/dist/runtime/networking/NetworkingPeer.d.ts +256 -1
  105. package/dist/runtime/networking/OperationPending.d.ts +112 -0
  106. package/dist/runtime/networking/PeerBase.d.ts +231 -0
  107. package/dist/runtime/networking/handler/IServerEventHandler.d.ts +84 -0
  108. package/dist/runtime/networking/handler/OnCharacterPlayerFriendUpdateEventHandler.d.ts +69 -0
  109. package/dist/runtime/networking/handler/OnCharacterPlayerGroupUpdateEventHandler.d.ts +49 -0
  110. package/dist/runtime/networking/handler/OnGamePlayerFriendUpdateEventHandler.d.ts +50 -0
  111. package/dist/runtime/networking/handler/OnGamePlayerGroupUpdateEventHandler.d.ts +41 -0
  112. package/dist/runtime/networking/handler/OnGroupMemberUpdateEventHandler.d.ts +47 -0
  113. package/dist/runtime/networking/handler/OnGroupMessageUpdateEventHandler.d.ts +46 -0
  114. package/dist/runtime/networking/http/HttpPeer.d.ts +173 -0
  115. package/dist/runtime/networking/http/NetworkingHttpPeerBase.d.ts +87 -0
  116. package/dist/runtime/networking/http/NetworkingPeerAxiosRequest.d.ts +113 -0
  117. package/dist/runtime/networking/socket/NetworkingPeerSocketIOClient.d.ts +145 -0
  118. package/dist/runtime/networking/socket/NetworkingSocketPeerBase.d.ts +198 -0
  119. package/dist/runtime/networking/socket/SocketPeer.d.ts +155 -0
  120. package/dist/runtime/typescript/ServiceUpdate.d.ts +46 -0
  121. package/docs/AI_CHEATSHEET.md +211 -0
  122. package/docs/COOKBOOK.md +912 -0
  123. package/docs/RULES.md +307 -0
  124. package/docs/ai-manifest.json +725 -0
  125. package/docs/guides/AUTHENTICATE.md +246 -0
  126. package/docs/guides/CHARACTER_PLAYER.md +439 -0
  127. package/docs/guides/CLOUDSCRIPT.md +335 -0
  128. package/docs/guides/COCOS_CREATOR_INTEGRATION.md +150 -0
  129. package/docs/guides/CONTENT.md +291 -0
  130. package/docs/guides/DASHBOARD.md +262 -0
  131. package/docs/guides/GAME_PLAYER.md +473 -0
  132. package/docs/guides/GROUP.md +412 -0
  133. package/docs/guides/INVENTORY.md +375 -0
  134. package/docs/guides/MASTER_PLAYER.md +458 -0
  135. package/docs/guides/MULTIPLAYER.md +303 -0
  136. package/docs/guides/STORE_INVENTORY.md +313 -0
  137. package/docs/llms-full.txt +43 -0
  138. package/docs/reference/API_AUTHENTICATE.md +75 -0
  139. package/docs/reference/API_CHARACTER_PLAYER.md +226 -0
  140. package/docs/reference/API_CLOUDSCRIPT.md +82 -0
  141. package/docs/reference/API_CONTENT.md +88 -0
  142. package/docs/reference/API_DASHBOARD.md +82 -0
  143. package/docs/reference/API_GAME_PLAYER.md +223 -0
  144. package/docs/reference/API_GROUP.md +187 -0
  145. package/docs/reference/API_INDEX.md +57 -0
  146. package/docs/reference/API_INVENTORY.md +169 -0
  147. package/docs/reference/API_MASTER_PLAYER.md +323 -0
  148. package/docs/reference/API_MULTIPLAYER.md +97 -0
  149. package/docs/reference/API_STORE_INVENTORY.md +109 -0
  150. package/docs/reference/CONFIG.md +107 -0
  151. package/docs/reference/DTO_INDEX.md +2543 -0
  152. package/docs/reference/ENUMS.md +433 -0
  153. package/docs/reference/ERROR_HANDLING.md +159 -0
  154. package/docs/reference/EVENTS.md +188 -0
  155. package/docs/reference/PERMISSION_RULES.md +55 -0
  156. package/docs/reference/dto/AUTHENTICATE.md +619 -0
  157. package/docs/reference/dto/CHARACTER_PLAYER.md +3686 -0
  158. package/docs/reference/dto/CLOUDSCRIPT.md +400 -0
  159. package/docs/reference/dto/CONTENT.md +548 -0
  160. package/docs/reference/dto/DASHBOARD.md +1980 -0
  161. package/docs/reference/dto/GAME_PLAYER.md +3631 -0
  162. package/docs/reference/dto/GENERIC.md +151 -0
  163. package/docs/reference/dto/GROUP.md +2842 -0
  164. package/docs/reference/dto/INVENTORY.md +2385 -0
  165. package/docs/reference/dto/MASTER_PLAYER.md +6024 -0
  166. package/docs/reference/dto/MULTIPLAYER.md +850 -0
  167. package/docs/reference/dto/STORE_INVENTORY.md +1262 -0
  168. package/llms.txt +47 -0
  169. package/package.json +12 -3
  170. package/GNServerSettings.debug.json +0 -21
  171. package/docs/COCOS_CREATOR_INTEGRATION.md +0 -116
  172. package/examples/cocos-creator/GearNExample.ts.txt +0 -176
  173. package/srcSwift/Package.swift +0 -32
  174. package/srcSwift/Sources/GearN/runtime/GNNetwork.swift +0 -530
  175. package/srcSwift/Sources/GearN/runtime/GNNetworkAuthenticateApi.swift +0 -178
  176. package/srcSwift/Sources/GearN/runtime/GNNetworkCharacterPlayerApi.swift +0 -1162
  177. package/srcSwift/Sources/GearN/runtime/GNNetworkCloudScriptApi.swift +0 -154
  178. package/srcSwift/Sources/GearN/runtime/GNNetworkContentApi.swift +0 -208
  179. package/srcSwift/Sources/GearN/runtime/GNNetworkDashboardApi.swift +0 -240
  180. package/srcSwift/Sources/GearN/runtime/GNNetworkGamePlayerApi.swift +0 -1369
  181. package/srcSwift/Sources/GearN/runtime/GNNetworkGroupApi.swift +0 -1100
  182. package/srcSwift/Sources/GearN/runtime/GNNetworkInventoryApi.swift +0 -937
  183. package/srcSwift/Sources/GearN/runtime/GNNetworkMasterPlayerApi.swift +0 -2323
  184. package/srcSwift/Sources/GearN/runtime/GNNetworkMultiplayerApi.swift +0 -298
  185. package/srcSwift/Sources/GearN/runtime/GNNetworkStoreInventoryApi.swift +0 -397
  186. package/srcSwift/Sources/GearN/runtime/common/Action0.swift +0 -3
  187. package/srcSwift/Sources/GearN/runtime/common/Action1.swift +0 -3
  188. package/srcSwift/Sources/GearN/runtime/common/Action2.swift +0 -3
  189. package/srcSwift/Sources/GearN/runtime/common/Action3.swift +0 -3
  190. package/srcSwift/Sources/GearN/runtime/common/Action4.swift +0 -3
  191. package/srcSwift/Sources/GearN/runtime/common/GNArray.swift +0 -204
  192. package/srcSwift/Sources/GearN/runtime/common/GNData.swift +0 -108
  193. package/srcSwift/Sources/GearN/runtime/common/GNHashtable.swift +0 -200
  194. package/srcSwift/Sources/GearN/runtime/config/GNServerSettings.swift +0 -95
  195. package/srcSwift/Sources/GearN/runtime/constant/Commands.swift +0 -28
  196. package/srcSwift/Sources/GearN/runtime/constant/EventCode.swift +0 -10
  197. package/srcSwift/Sources/GearN/runtime/constant/OperationCode.swift +0 -252
  198. package/srcSwift/Sources/GearN/runtime/constant/ReturnCode.swift +0 -19
  199. package/srcSwift/Sources/GearN/runtime/constant/enumType/ExecuteResponseStatus.swift +0 -9
  200. package/srcSwift/Sources/GearN/runtime/constant/enumType/FriendStatus.swift +0 -8
  201. package/srcSwift/Sources/GearN/runtime/constant/enumType/GoogleLoginType.swift +0 -6
  202. package/srcSwift/Sources/GearN/runtime/constant/enumType/GroupStatus.swift +0 -8
  203. package/srcSwift/Sources/GearN/runtime/constant/enumType/InvalidMemberType.swift +0 -19
  204. package/srcSwift/Sources/GearN/runtime/constant/enumType/ItemType.swift +0 -6
  205. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingMemberStatus.swift +0 -7
  206. package/srcSwift/Sources/GearN/runtime/constant/enumType/MatchmakingTicketStatus.swift +0 -9
  207. package/srcSwift/Sources/GearN/runtime/constant/enumType/OwnerType.swift +0 -10
  208. package/srcSwift/Sources/GearN/runtime/constant/enumType/PermissionDataItem.swift +0 -6
  209. package/srcSwift/Sources/GearN/runtime/constant/enumType/PushPlatformType.swift +0 -6
  210. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestRole.swift +0 -7
  211. package/srcSwift/Sources/GearN/runtime/constant/enumType/RequestType.swift +0 -16
  212. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreItemType.swift +0 -6
  213. package/srcSwift/Sources/GearN/runtime/constant/enumType/StoreReceiveType.swift +0 -9
  214. package/srcSwift/Sources/GearN/runtime/constant/errorCode/ErrorCode.swift +0 -58
  215. package/srcSwift/Sources/GearN/runtime/constant/parameterCode/ParameterCode.swift +0 -672
  216. package/srcSwift/Sources/GearN/runtime/entity/DataMember.swift +0 -196
  217. package/srcSwift/Sources/GearN/runtime/entity/GNMetadata.swift +0 -9
  218. package/srcSwift/Sources/GearN/runtime/entity/InvalidMember.swift +0 -11
  219. package/srcSwift/Sources/GearN/runtime/entity/OperationEvent.swift +0 -38
  220. package/srcSwift/Sources/GearN/runtime/entity/OperationHelper.swift +0 -28
  221. package/srcSwift/Sources/GearN/runtime/entity/OperationRequest.swift +0 -62
  222. package/srcSwift/Sources/GearN/runtime/entity/OperationResponse.swift +0 -98
  223. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateModels.swift +0 -351
  224. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateRequestModels.swift +0 -81
  225. package/srcSwift/Sources/GearN/runtime/entity/models/AuthenticateResponseModels.swift +0 -108
  226. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerModels.swift +0 -1045
  227. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerRequestModels.swift +0 -821
  228. package/srcSwift/Sources/GearN/runtime/entity/models/CharacterPlayerResponseModels.swift +0 -588
  229. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptModels.swift +0 -187
  230. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptRequestModels.swift +0 -84
  231. package/srcSwift/Sources/GearN/runtime/entity/models/CloudScriptResponseModels.swift +0 -59
  232. package/srcSwift/Sources/GearN/runtime/entity/models/ContentModels.swift +0 -195
  233. package/srcSwift/Sources/GearN/runtime/entity/models/ContentRequestModels.swift +0 -116
  234. package/srcSwift/Sources/GearN/runtime/entity/models/ContentResponseModels.swift +0 -81
  235. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardModels.swift +0 -426
  236. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardRequestModels.swift +0 -160
  237. package/srcSwift/Sources/GearN/runtime/entity/models/DashboardResponseModels.swift +0 -82
  238. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerModels.swift +0 -1334
  239. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerRequestModels.swift +0 -643
  240. package/srcSwift/Sources/GearN/runtime/entity/models/GamePlayerResponseModels.swift +0 -213
  241. package/srcSwift/Sources/GearN/runtime/entity/models/GenericModels.swift +0 -171
  242. package/srcSwift/Sources/GearN/runtime/entity/models/GroupModels.swift +0 -850
  243. package/srcSwift/Sources/GearN/runtime/entity/models/GroupRequestModels.swift +0 -485
  244. package/srcSwift/Sources/GearN/runtime/entity/models/GroupResponseModels.swift +0 -165
  245. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryModels.swift +0 -679
  246. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryRequestModels.swift +0 -413
  247. package/srcSwift/Sources/GearN/runtime/entity/models/InventoryResponseModels.swift +0 -141
  248. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerModels.swift +0 -378
  249. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerRequestModels.swift +0 -147
  250. package/srcSwift/Sources/GearN/runtime/entity/models/MasterPlayerResponseModels.swift +0 -318
  251. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerModels.swift +0 -319
  252. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerRequestModels.swift +0 -125
  253. package/srcSwift/Sources/GearN/runtime/entity/models/MultiplayerResponseModels.swift +0 -45
  254. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryModels.swift +0 -633
  255. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryRequestModels.swift +0 -173
  256. package/srcSwift/Sources/GearN/runtime/entity/models/StoreInventoryResponseModels.swift +0 -61
  257. package/srcSwift/Sources/GearN/runtime/entity/request/CustomOperationRequest.swift +0 -42
  258. package/srcSwift/Sources/GearN/runtime/entity/response/CustomOperationResponse.swift +0 -49
  259. package/srcSwift/Sources/GearN/runtime/entity/response/GetAuthInfoResponse.swift +0 -43
  260. package/srcSwift/Sources/GearN/runtime/entity/response/HealthCheckResponse.swift +0 -86
  261. package/srcSwift/Sources/GearN/runtime/entity/response/UploadFileResponse.swift +0 -15
  262. package/srcSwift/Sources/GearN/runtime/helper/CodeHelper.swift +0 -107
  263. package/srcSwift/Sources/GearN/runtime/helper/ConverterService.swift +0 -98
  264. package/srcSwift/Sources/GearN/runtime/helper/EnumUtility.swift +0 -34
  265. package/srcSwift/Sources/GearN/runtime/helper/GNSupport.swift +0 -41
  266. package/srcSwift/Sources/GearN/runtime/helper/GNUtils.swift +0 -66
  267. package/srcSwift/Sources/GearN/runtime/helper/MessagePackConverterService.swift +0 -21
  268. package/srcSwift/Sources/GearN/runtime/helper/StorageService.swift +0 -29
  269. package/srcSwift/Sources/GearN/runtime/logger/GNDebug.swift +0 -33
  270. package/srcSwift/Sources/GearN/runtime/networking/AuthenticateStatus.swift +0 -24
  271. package/srcSwift/Sources/GearN/runtime/networking/IPeer.swift +0 -8
  272. package/srcSwift/Sources/GearN/runtime/networking/NetworkingPeer.swift +0 -368
  273. package/srcSwift/Sources/GearN/runtime/networking/OperationPending.swift +0 -81
  274. package/srcSwift/Sources/GearN/runtime/networking/PeerBase.swift +0 -228
  275. package/srcSwift/Sources/GearN/runtime/networking/handler/IServerEventHandler.swift +0 -20
  276. package/srcSwift/Sources/GearN/runtime/networking/http/HttpPeer.swift +0 -226
  277. package/srcSwift/Sources/GearN/runtime/networking/http/HttpTypes.swift +0 -24
  278. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingHttpPeerBase.swift +0 -13
  279. package/srcSwift/Sources/GearN/runtime/networking/http/NetworkingPeerUrlSession.swift +0 -125
  280. package/srcSwift/Sources/GearN/runtime/networking/request/NetRequest.swift +0 -19
  281. package/srcSwift/Sources/GearN/runtime/networking/response/NetResponse.swift +0 -13
  282. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingPeerSocketIOClient.swift +0 -244
  283. package/srcSwift/Sources/GearN/runtime/networking/socket/NetworkingSocketPeerBase.swift +0 -59
  284. package/srcSwift/Sources/GearN/runtime/networking/socket/SocketPeer.swift +0 -136
  285. package/tsconfig-build.cocos.json +0 -31
  286. package/webpack.config.cocos.mjs +0 -78
@@ -4,9 +4,92 @@ import { RequestType } from "./../constant/enumType/RequestType";
4
4
  import { Action1 } from "./../common/Action1";
5
5
  import { OperationRequest } from "./../entity/OperationRequest";
6
6
  import { OperationResponse } from "./../entity/OperationResponse";
7
+ /**
8
+ * Common transport contract implemented by both the HTTP peer
9
+ * ({@link HttpPeer}) and the socket peer ({@link SocketPeer}).
10
+ *
11
+ * The contract is intentionally minimal: a peer must support
12
+ * (a) one-time initialisation, (b) enqueueing an outgoing request,
13
+ * (c) reporting whether it is currently enabled by configuration, and
14
+ * (d) being serviced from a fixed-rate driver loop. Everything beyond
15
+ * that — request/response correlation, timeout sweeping, ping
16
+ * tracking, transport-specific framing — lives in
17
+ * {@link PeerBase} or in the concrete subclasses.
18
+ *
19
+ * Why an interface instead of a single base class: {@link NetworkingPeer}
20
+ * holds two peer instances side by side (one HTTP, one socket) and
21
+ * needs to dispatch generic operations to whichever one matches the
22
+ * caller's choice. The shared type makes that dispatch well-typed
23
+ * without forcing the two transports to share the rest of their
24
+ * implementations.
25
+ */
7
26
  export interface IPeer {
27
+ /**
28
+ * One-shot initialisation hook.
29
+ *
30
+ * Implementations allocate their internal queues, configure the
31
+ * send rate from {@link GNServerSettings.getSendRate}, then call
32
+ * the abstract `initGNSocketObject()` step in {@link PeerBase}
33
+ * which lets each transport build its own low-level client
34
+ * (Axios for HTTP, socket.io for the socket peer).
35
+ *
36
+ * Idempotency is the implementation's responsibility — the SDK
37
+ * calls this exactly once per peer in
38
+ * {@link NetworkingPeer.initPeer}.
39
+ */
8
40
  initPeer(): void;
41
+ /**
42
+ * Enqueues an outgoing operation request.
43
+ *
44
+ * The peer wraps the call in an {@link OperationPending} entry,
45
+ * pushes it into its FIFO queue, and assigns a fresh `requestId`
46
+ * when the existing value is not the `-1` fire-and-forget sentinel.
47
+ * The actual send happens later, during the next `service()` tick
48
+ * that the local rate limiter allows.
49
+ *
50
+ * @param requestType Logical request category. Embedded in
51
+ * the wire payload so the backend
52
+ * picks the right handler.
53
+ * @param role `Client`, `Server` or `Admin`.
54
+ * Selects the permission set the
55
+ * backend evaluates against the auth
56
+ * token.
57
+ * @param operationRequest Pre-built request to enqueue.
58
+ * @param onOperationResponse Optional callback. Pass `null` for
59
+ * fire-and-forget; the peer still
60
+ * tracks timeouts but discards the
61
+ * decoded response.
62
+ * @param authToken Auth token for this request. The
63
+ * caller normally lets
64
+ * {@link NetworkingPeer.sendViaSocket}
65
+ * / `sendViaHttp` fill the value from
66
+ * the cached
67
+ * {@link AuthenticateStatus} when the
68
+ * override is `null`.
69
+ * @param secretKey Game-specific shared secret.
70
+ * @param customTags Optional bag of routing / telemetry
71
+ * tags merged into the outbound
72
+ * payload.
73
+ * @param gameId Game identifier sent in the
74
+ * `Game-Id` header / equivalent
75
+ * socket frame.
76
+ */
9
77
  enqueue(requestType: RequestType, role: RequestRole, operationRequest: OperationRequest, onOperationResponse: Action1<OperationResponse>, authToken: string, secretKey: string, customTags: GNHashtable, gameId: string): void;
78
+ /**
79
+ * Returns whether the transport is enabled by configuration.
80
+ *
81
+ * Reflects the `useHttp` / `useSocket` switch on
82
+ * {@link GNServerSettings}. When `false`, every `enqueue` call is
83
+ * dropped with an error log.
84
+ */
10
85
  isUsing(): boolean;
86
+ /**
87
+ * Drives one tick of the peer's internal work loop.
88
+ *
89
+ * Each call sweeps the in-flight set for timed-out operations
90
+ * (every `0.1s`), then sends at most one queued request when the
91
+ * rate-limit timer permits. Invoked by {@link ServiceUpdate} on a
92
+ * fixed interval.
93
+ */
11
94
  service(): void;
12
95
  }
@@ -11,39 +11,294 @@ import { RequestRole } from "./../constant/enumType/RequestRole";
11
11
  import { GetAuthInfoResponse } from "./../entity/response/GetAuthInfoResponse";
12
12
  import { UploadFileResponse } from "./../entity/response/UploadFileResponse";
13
13
  import { HealthCheckResponse } from "./../entity/response/HealthCheckResponse";
14
+ /**
15
+ * Owns one HTTP peer and one socket peer side by side, plus the
16
+ * shared {@link AuthenticateStatus} cache and the local server clock
17
+ * estimate.
18
+ *
19
+ * Sits between the {@link GNNetwork} static facade (which exposes the
20
+ * public API surface) and the concrete transports
21
+ * ({@link HttpPeer}, {@link SocketPeer}). Most methods on this class
22
+ * are thin dispatchers that pick the right transport, fill missing
23
+ * authentication / configuration values from the cached state, and
24
+ * forward the call.
25
+ *
26
+ * Lifecycle:
27
+ * - Instantiated once in {@link GNNetwork.initGNSocketObject}.
28
+ * - {@link initPeer} allocates both transports.
29
+ * - The static {@link ServiceUpdate} loop keeps calling
30
+ * {@link service} on a fixed interval so the queues drain and the
31
+ * timeout sweep runs.
32
+ * - There is no `dispose()` — the instance lives for the lifetime of
33
+ * the JS realm.
34
+ */
14
35
  export declare class NetworkingPeer {
36
+ /** Sub-URI of the timestamp endpoint (`GET /ts`). */
15
37
  static readonly SYNC_TS: string;
38
+ /** Sub-URI of the auth-info endpoint (`GET /getAuthInfo?authToken=...`). */
16
39
  static readonly GET_AUTH_INFO: string;
40
+ /** Sub-URI of the health-check endpoint. */
17
41
  static readonly HEALTH_CHECK: string;
42
+ /** Sub-URI of the multipart upload endpoint. */
18
43
  static readonly UPLOAD_FILE: string;
44
+ /**
45
+ * Sub-URI of the download endpoint. Used by
46
+ * {@link GNNetwork.getDownloadFileUrl} to compose the absolute
47
+ * URL for a previously issued download token.
48
+ */
19
49
  static readonly DOWNLOAD_FILE: string;
50
+ /** Sub-URI of the JSON HTTP API entry point. */
20
51
  static readonly API_JSON: string;
52
+ /** Sub-URI of the MessagePack HTTP API entry point. */
21
53
  static readonly API_MSG_PACK: string;
54
+ /** Realtime / push transport ({@link SocketPeer}). */
22
55
  private socketPeer;
56
+ /** Request-response transport ({@link HttpPeer}). */
23
57
  private httpPeer;
58
+ /**
59
+ * Shared cache of auth token + user id. Populated during
60
+ * {@link initPeer} (created blank — the persisted values are
61
+ * loaded by {@link GNNetwork.init}) and updated automatically by
62
+ * {@link PeerBase.onResponseHandler} on every successful
63
+ * response.
64
+ */
24
65
  authenticateStatus: AuthenticateStatus;
25
- gameId: string;
66
+ /**
67
+ * Returns the unweighted average of the active transports'
68
+ * sliding-window pings (in milliseconds).
69
+ *
70
+ * Skips transports that report `isUsing() === false`. Returns
71
+ * `-1` when neither transport is active.
72
+ */
26
73
  getPing(): number;
74
+ /**
75
+ * Returns the underlying socket.io session id assigned at connect
76
+ * time. Empty / `null` when the socket is not connected.
77
+ */
27
78
  getClientId(): string;
79
+ /**
80
+ * Most recent server timestamp captured from a response, in
81
+ * milliseconds since epoch.
82
+ */
28
83
  private lastCurrentServerMilliseconds;
84
+ /**
85
+ * Local `Date.now()` reading at the moment
86
+ * {@link lastCurrentServerMilliseconds} was captured. Used to
87
+ * extrapolate the current server time without a fresh round trip.
88
+ */
29
89
  private lastGetCurrentMilliseconds;
90
+ /**
91
+ * Records a fresh server timestamp + local timestamp pair so
92
+ * {@link getServerTimestamp} can extrapolate the current server
93
+ * time without contacting the server again.
94
+ *
95
+ * Called automatically by {@link PeerBase.onResponseHandler} when
96
+ * a successful response carries `ParameterCode.Ts`, plus by
97
+ * {@link initPeer} as a sane default. Manual callers can use
98
+ * {@link syncTs} to refresh the estimate explicitly.
99
+ *
100
+ * @param currentServerMilliseconds Server-side `Date.now()`-style
101
+ * value in milliseconds since
102
+ * epoch.
103
+ */
30
104
  setServerTimeMilliseconds(currentServerMilliseconds: number): void;
105
+ /**
106
+ * Returns the SDK's best estimate of the current server clock,
107
+ * computed as `lastCurrentServerMilliseconds + (Date.now() -
108
+ * lastGetCurrentMilliseconds)`.
109
+ *
110
+ * The estimate ignores clock drift and request latency so it can
111
+ * be off by tens of milliseconds; treat it as a coarse "server
112
+ * now" rather than a precise timestamp source.
113
+ */
31
114
  getServerTimestamp(): number;
115
+ /**
116
+ * One-time bootstrap.
117
+ *
118
+ * Steps:
119
+ * 1. Seed the server-time estimate with `Date.now()` so
120
+ * {@link getServerTimestamp} returns a sane value before any
121
+ * response has been observed.
122
+ * 2. Validate the global {@link GNServerSettings} singleton
123
+ * (failing loudly when the SDK is used out of order).
124
+ * 3. Allocate the empty {@link AuthenticateStatus} cache. The
125
+ * persisted values are loaded later by {@link GNNetwork.init}
126
+ * after this method returns.
127
+ * 4. Build and initialise both the HTTP and socket peers.
128
+ *
129
+ * @throws Error when the global server settings have not been
130
+ * configured yet.
131
+ */
32
132
  initPeer(): void;
133
+ /**
134
+ * Drives one tick on both transports.
135
+ *
136
+ * Each tick lets every peer drain at most one queued request and
137
+ * sweep its in-flight set for timeouts. Called repeatedly by
138
+ * {@link ServiceUpdate}.
139
+ */
33
140
  service(): void;
141
+ /**
142
+ * Queues an operation request on the socket transport.
143
+ *
144
+ * Substitutes missing authentication data with the cached values
145
+ * (auth token from {@link AuthenticateStatus}, secret key + game
146
+ * id from {@link GNServerSettings}) so caller code can pass
147
+ * `null` for any override it does not need.
148
+ *
149
+ * @param requestType Logical request category.
150
+ * @param role Permission scope.
151
+ * @param request Pre-built request to enqueue.
152
+ * @param onResponse Optional response callback.
153
+ * @param authToken Optional one-shot auth token override.
154
+ * Pass `null` to use the cached token.
155
+ * @param secretKey Optional one-shot secret key override.
156
+ * Pass `null` to use the configured key.
157
+ * @param customTags Optional routing tags.
158
+ */
34
159
  sendViaSocket(requestType: RequestType, role: RequestRole, request: OperationRequest, onResponse?: Action1<OperationResponse>, authToken?: string, secretKey?: string, customTags?: GNHashtable): void;
160
+ /**
161
+ * Queues an operation request on the HTTP transport.
162
+ *
163
+ * Substitutes missing authentication data the same way
164
+ * {@link sendViaSocket} does. The only behavioural difference is
165
+ * the choice of transport.
166
+ */
35
167
  sendViaHttp(requestType: RequestType, role: RequestRole, request: OperationRequest, onResponse?: Action1<OperationResponse>, authToken?: string, secretKey?: string, customTags?: GNHashtable): void;
168
+ /**
169
+ * Pushes the cached auth token to the socket channel.
170
+ *
171
+ * The socket.io session has no implicit cookie / header carrier,
172
+ * so the backend needs an explicit auth frame to associate the
173
+ * socket with a user. Most callers do not need this — the SDK
174
+ * fires it from its own connect handler when an auth token is
175
+ * present.
176
+ */
36
177
  sendRequestAuthSocket(): void;
178
+ /**
179
+ * Opens the socket transport.
180
+ *
181
+ * Triggers the underlying socket.io client to dial the configured
182
+ * URL using the SSL / port settings active at the time of the
183
+ * call.
184
+ *
185
+ * @param _onSocketConnect Optional callback invoked once the
186
+ * socket finishes its connect handshake.
187
+ */
37
188
  connectSocket(_onSocketConnect: Action0): void;
189
+ /**
190
+ * Closes the socket transport.
191
+ *
192
+ * @param _onSocketDisconnect Optional callback invoked once the
193
+ * socket reports `disconnect`.
194
+ */
38
195
  disconnectSocket(_onSocketDisconnect: Action0): void;
196
+ /**
197
+ * Replaces the raw event observer that receives every incoming
198
+ * server event.
199
+ *
200
+ * Single-slot — calling this method again overwrites the previous
201
+ * handler. For non-destructive subscriptions register a typed
202
+ * {@link IServerEventHandler} via
203
+ * {@link subscriberServerEventHandler}.
204
+ */
39
205
  setOnEventHandler(_onEventHandler: Action1<OperationEvent>): void;
206
+ /**
207
+ * Adds a callback to the multi-subscriber socket-connect channel.
208
+ *
209
+ * Use a stable function reference so the matching
210
+ * {@link removeOnConnectHandler} can find and remove it later.
211
+ */
40
212
  setOnConnectHandler(_onConnectHandler: Action0): void;
213
+ /**
214
+ * Adds a callback to the multi-subscriber socket-disconnect channel.
215
+ */
41
216
  setOnDisconnectHandler(_onDisconnectHandler: Action0): void;
217
+ /**
218
+ * Removes a previously registered socket-connect callback. No-op
219
+ * when the function reference is not currently subscribed.
220
+ */
42
221
  removeOnConnectHandler(_onConnectHandler: Action0): void;
222
+ /**
223
+ * Removes a previously registered socket-disconnect callback.
224
+ * No-op when the function reference is not currently subscribed.
225
+ */
43
226
  removeOnDisconnectHandler(_onDisconnectHandler: Action0): void;
227
+ /**
228
+ * Registers an additional typed {@link IServerEventHandler}
229
+ * instance.
230
+ *
231
+ * Multiple handlers may register against the same event code;
232
+ * they are dispatched in registration order whenever the matching
233
+ * event arrives over the socket.
234
+ */
44
235
  subscriberServerEventHandler(serverEventHandler: IServerEventHandler): void;
236
+ /**
237
+ * Calls the timestamp endpoint over HTTP to refresh the local
238
+ * server-clock estimate.
239
+ *
240
+ * The endpoint returns a JSON object with a `ts` key (server
241
+ * milliseconds since epoch). On success, the helper invokes
242
+ * {@link setServerTimeMilliseconds} with the parsed value before
243
+ * the callback fires; on failure it falls back to `Date.now()`
244
+ * silently so the callback always sees a non-null value.
245
+ *
246
+ * @param onResponse Optional callback receiving the new server
247
+ * timestamp in milliseconds since epoch.
248
+ */
45
249
  syncTs(onResponse?: Action1<number>): void;
250
+ /**
251
+ * Inspects the player record bound to an arbitrary auth token
252
+ * without affecting the cached session.
253
+ *
254
+ * Routes through HTTP. The endpoint either returns
255
+ * `{ data: { ..., otherDatas } }` on success or `{ error: "..." }`
256
+ * on failure; this helper unwraps the JSON envelope and re-shapes
257
+ * `data.otherDatas` into a {@link GNHashtable} so the caller can
258
+ * use the typed accessors.
259
+ *
260
+ * @param authToken Auth token to inspect. Sent as a query
261
+ * parameter, **not** as the active SDK
262
+ * authorisation, so the cached session is
263
+ * unaffected.
264
+ * @param onResponse Callback receiving the typed
265
+ * {@link GetAuthInfoResponse}. Always invoked
266
+ * with either `error` or `data` populated.
267
+ */
46
268
  getAuthInfo(authToken: string, onResponse: Action1<GetAuthInfoResponse>): void;
269
+ /**
270
+ * Calls the health-check endpoint over HTTP.
271
+ *
272
+ * Endpoint behaviour mirrors {@link getAuthInfo}: returns
273
+ * `{ data: ... }` on success or `{ error: "..." }` on failure.
274
+ * Useful for warm-up probes / readiness dashboards. The endpoint
275
+ * does not require an auth token.
276
+ *
277
+ * @param onResponse Callback receiving the typed
278
+ * {@link HealthCheckResponse}.
279
+ */
47
280
  healthCheck(onResponse: Action1<HealthCheckResponse>): void;
281
+ /**
282
+ * Uploads a file through the authenticated multipart endpoint.
283
+ *
284
+ * Expected flow:
285
+ * 1. Reserve a slot via
286
+ * `GNNetwork.content.createNewFileUploadInfo(...)`. The
287
+ * backend returns a `fileId`.
288
+ * 2. Call this method with the binary payload. The SDK uses the
289
+ * cached auth token automatically — no override is accepted
290
+ * here.
291
+ * 3. Inspect `response.error` to verify the upload was committed.
292
+ *
293
+ * @param fileId Identifier returned by step 1.
294
+ * @param content Binary payload, framed as a `Blob` /
295
+ * `multipart/form-data` part by the underlying
296
+ * Axios call.
297
+ * @param filename Display filename written into the multipart
298
+ * envelope.
299
+ * @param mimetype Content-Type for the file part.
300
+ * @param onResponse Callback receiving the typed
301
+ * {@link UploadFileResponse}. Always invoked.
302
+ */
48
303
  uploadFile(fileId: string, content: Uint8Array, filename: string, mimetype: string, onResponse: Action1<UploadFileResponse>): void;
49
304
  }
@@ -4,6 +4,33 @@ import { RequestType } from "./../constant/enumType/RequestType";
4
4
  import { Action1 } from "./../common/Action1";
5
5
  import { OperationRequest } from "./../entity/OperationRequest";
6
6
  import { OperationResponse } from "./../entity/OperationResponse";
7
+ /**
8
+ * Per-request bookkeeping entry tracked by {@link PeerBase}.
9
+ *
10
+ * Lifecycle:
11
+ * 1. Constructed inside {@link PeerBase.enqueue} when caller code
12
+ * issues a request. The constructor seeds an absolute timeout
13
+ * deadline using the SDK-wide
14
+ * {@link OperationRequest.defaultTimeOut} fallback, plus copies
15
+ * every per-request override (auth token, secret key, custom tags,
16
+ * game id) into private fields so the queue can be drained without
17
+ * another lookup against the shared {@link AuthenticateStatus}.
18
+ * 2. Pushed into the FIFO queue. While waiting it is only inspected by
19
+ * `service()` for queue ordering.
20
+ * 3. Sent via {@link PeerBase.send}, which calls {@link onSend} to
21
+ * record the wall-clock send time and recompute the timeout
22
+ * deadline using the request-specific timeout. The entry then moves
23
+ * into the in-flight map keyed by `requestId` (when a callback is
24
+ * registered).
25
+ * 4. Resolved by {@link PeerBase.onResponseHandler}, which calls
26
+ * {@link onRecv} so {@link getExecuteTimerInMs} can return the
27
+ * measured round-trip in milliseconds.
28
+ *
29
+ * Timeout semantics: `timeout` is an absolute `Date.now()`-style epoch
30
+ * milliseconds value. The 0.1s timeout sweep inside `service()` checks
31
+ * every in-flight pending entry against the current time and synthesises
32
+ * a `ReturnCode.OperationTimeout` response when it has elapsed.
33
+ */
7
34
  export declare class OperationPending {
8
35
  private operationRequest;
9
36
  private requestType;
@@ -16,17 +43,102 @@ export declare class OperationPending {
16
43
  private timeout;
17
44
  private firstSend;
18
45
  private secondsSend;
46
+ /**
47
+ * Captures every bit of state needed to send and later correlate
48
+ * the request without revisiting the shared SDK state.
49
+ *
50
+ * @param requestType Logical request category.
51
+ * @param role Permission scope evaluated by the
52
+ * backend.
53
+ * @param operationRequest Pre-built request (operation code,
54
+ * parameters, request id, timeout
55
+ * override).
56
+ * @param onOperationResponse Optional callback. `null` makes this
57
+ * a fire-and-forget entry; the timeout
58
+ * sweep still fires but nobody is
59
+ * notified of the timeout response.
60
+ * @param authToken Auth token to send with this request.
61
+ * @param secretKey Game-specific shared secret.
62
+ * @param customTags Routing / telemetry tags merged into
63
+ * the outbound payload.
64
+ * @param gameId Game identifier for the `Game-Id`
65
+ * header.
66
+ */
19
67
  constructor(requestType: RequestType, role: RequestRole, operationRequest: OperationRequest, onOperationResponse: Action1<OperationResponse>, authToken: string, secretKey: string, customTags: GNHashtable, gameId: string);
68
+ /**
69
+ * Returns the logical request category recorded at enqueue time.
70
+ */
20
71
  getRequestType(): RequestType;
72
+ /**
73
+ * Returns the permission role recorded at enqueue time.
74
+ */
21
75
  getRole(): RequestRole;
76
+ /**
77
+ * Returns the auth token captured at enqueue time.
78
+ *
79
+ * The token is copied verbatim into the entry — later mutations
80
+ * to {@link AuthenticateStatus} do not affect already-queued
81
+ * pending operations.
82
+ */
22
83
  getAuthToken(): string;
84
+ /**
85
+ * Returns the secret key captured at enqueue time.
86
+ */
23
87
  getSecretKey(): string;
88
+ /**
89
+ * Returns the game id captured at enqueue time.
90
+ */
24
91
  getGameId(): string;
92
+ /**
93
+ * Returns the custom tags captured at enqueue time, or `null` when
94
+ * none were supplied.
95
+ */
25
96
  getCustomTags(): GNHashtable;
97
+ /**
98
+ * Marks the operation as just sent and recomputes the absolute
99
+ * timeout deadline using the request-specific timeout.
100
+ *
101
+ * Called from {@link PeerBase.send} immediately before the actual
102
+ * transport-specific dispatch. The deadline value is later read by
103
+ * {@link isTimeout} during the periodic timeout sweep.
104
+ */
26
105
  onSend(): void;
106
+ /**
107
+ * Marks the operation as resolved so the round-trip duration can
108
+ * be measured.
109
+ *
110
+ * Called from {@link PeerBase.onResponseHandler} when a matching
111
+ * response arrives. The captured timestamp is paired with
112
+ * {@link firstSend} by {@link getExecuteTimerInMs}.
113
+ */
27
114
  onRecv(): void;
115
+ /**
116
+ * Returns the round-trip duration in milliseconds.
117
+ *
118
+ * Defined as `secondsSend - firstSend`. The peer feeds half of
119
+ * this value into {@link PeerBase.addPing} as the per-request
120
+ * one-way latency measurement.
121
+ *
122
+ * @returns Duration in milliseconds, or a negative / zero value
123
+ * when {@link onRecv} has not fired yet.
124
+ */
28
125
  getExecuteTimerInMs(): number;
126
+ /**
127
+ * Returns whether the absolute timeout deadline has elapsed.
128
+ *
129
+ * The peer's `service()` sweeps with this method every 0.1s and
130
+ * synthesises a `ReturnCode.OperationTimeout` response when it
131
+ * returns `true`.
132
+ */
29
133
  isTimeout(): boolean;
134
+ /**
135
+ * Returns the underlying {@link OperationRequest} captured at
136
+ * construction time.
137
+ */
30
138
  getOperationRequest(): OperationRequest;
139
+ /**
140
+ * Returns the response callback captured at construction time, or
141
+ * `null` for a fire-and-forget entry.
142
+ */
31
143
  getCallback(): Action1<OperationResponse>;
32
144
  }