@ughuuu/gamend 1.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 (349) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +862 -0
  3. package/dist/ApiClient.js +703 -0
  4. package/dist/api/AchievementsApi.js +224 -0
  5. package/dist/api/AdminAchievementsApi.js +356 -0
  6. package/dist/api/AdminAnalyticsApi.js +237 -0
  7. package/dist/api/AdminChatApi.js +770 -0
  8. package/dist/api/AdminEconomyApi.js +327 -0
  9. package/dist/api/AdminGroupsApi.js +193 -0
  10. package/dist/api/AdminKVApi.js +305 -0
  11. package/dist/api/AdminLeaderboardsApi.js +490 -0
  12. package/dist/api/AdminLobbiesApi.js +190 -0
  13. package/dist/api/AdminMatchmakingApi.js +165 -0
  14. package/dist/api/AdminNotificationsApi.js +179 -0
  15. package/dist/api/AdminPushApi.js +179 -0
  16. package/dist/api/AdminQuestsApi.js +512 -0
  17. package/dist/api/AdminReadyChecksApi.js +169 -0
  18. package/dist/api/AdminRetentionApi.js +110 -0
  19. package/dist/api/AdminSessionsApi.js +165 -0
  20. package/dist/api/AdminStorageApi.js +212 -0
  21. package/dist/api/AdminTournamentsApi.js +468 -0
  22. package/dist/api/AdminUsersApi.js +130 -0
  23. package/dist/api/AuthenticationApi.js +556 -0
  24. package/dist/api/ChatApi.js +779 -0
  25. package/dist/api/ClientLogsApi.js +119 -0
  26. package/dist/api/EconomyApi.js +153 -0
  27. package/dist/api/FriendsApi.js +528 -0
  28. package/dist/api/GroupsApi.js +1105 -0
  29. package/dist/api/HealthApi.js +78 -0
  30. package/dist/api/HooksApi.js +114 -0
  31. package/dist/api/KVApi.js +95 -0
  32. package/dist/api/LeaderboardsApi.js +342 -0
  33. package/dist/api/LobbiesApi.js +495 -0
  34. package/dist/api/MatchmakingApi.js +187 -0
  35. package/dist/api/NotificationsApi.js +169 -0
  36. package/dist/api/PartiesApi.js +605 -0
  37. package/dist/api/PaymentsApi.js +377 -0
  38. package/dist/api/PushApi.js +166 -0
  39. package/dist/api/QuestsApi.js +270 -0
  40. package/dist/api/ReadyChecksApi.js +258 -0
  41. package/dist/api/SignalingApi.js +78 -0
  42. package/dist/api/StatsApi.js +78 -0
  43. package/dist/api/TimeApi.js +78 -0
  44. package/dist/api/TournamentsApi.js +394 -0
  45. package/dist/api/UsersApi.js +423 -0
  46. package/dist/gamend_proto.js +444 -0
  47. package/dist/gamend_realtime.pb.js +3145 -0
  48. package/dist/index.js +2090 -0
  49. package/dist/model/AcceptPartyInvite200Response.js +168 -0
  50. package/dist/model/AcceptPartyInvite200ResponseMembersInner.js +150 -0
  51. package/dist/model/AcceptPartyInviteRequest.js +113 -0
  52. package/dist/model/AdminCancelMatchmakingTicket200Response.js +91 -0
  53. package/dist/model/AdminCancelReadyCheck200Response.js +91 -0
  54. package/dist/model/AdminCancelReadyCheck200ResponseData.js +223 -0
  55. package/dist/model/AdminConsumeItem400Response.js +89 -0
  56. package/dist/model/AdminCreateAchievementRequest.js +182 -0
  57. package/dist/model/AdminCreateChatFilterWordRequest.js +194 -0
  58. package/dist/model/AdminCreateChatMute200Response.js +91 -0
  59. package/dist/model/AdminCreateChatMuteRequest.js +189 -0
  60. package/dist/model/AdminCreateKvEntry200Response.js +91 -0
  61. package/dist/model/AdminCreateKvEntryRequest.js +146 -0
  62. package/dist/model/AdminCreateLeaderboard200Response.js +91 -0
  63. package/dist/model/AdminCreateLeaderboard200ResponseData.js +248 -0
  64. package/dist/model/AdminCreateLeaderboardRequest.js +244 -0
  65. package/dist/model/AdminCreateNotification400Response.js +89 -0
  66. package/dist/model/AdminCreateNotificationRequest.js +165 -0
  67. package/dist/model/AdminCreateQuestRequest.js +350 -0
  68. package/dist/model/AdminCreateQuestRequestObjectivesInner.js +128 -0
  69. package/dist/model/AdminCreateQuestRequestRewardsInner.js +152 -0
  70. package/dist/model/AdminDeleteChatConversation200Response.js +91 -0
  71. package/dist/model/AdminDeleteChatConversation200ResponseData.js +85 -0
  72. package/dist/model/AdminDeleteChatFilterWordsByLang200Response.js +93 -0
  73. package/dist/model/AdminDrawTournament200Response.js +91 -0
  74. package/dist/model/AdminDrawTournament200ResponseData.js +310 -0
  75. package/dist/model/AdminEndLeaderboard200Response.js +91 -0
  76. package/dist/model/AdminEndLeaderboard200ResponseData.js +231 -0
  77. package/dist/model/AdminGetAnalyticsCounts200Response.js +143 -0
  78. package/dist/model/AdminGetAnalyticsCounts200ResponseTotalsInner.js +97 -0
  79. package/dist/model/AdminGetAnalyticsDaily200Response.js +119 -0
  80. package/dist/model/AdminGetAnalyticsDaily200ResponseSeriesInner.js +128 -0
  81. package/dist/model/AdminGetAnalyticsEconomy200Response.js +150 -0
  82. package/dist/model/AdminGetAnalyticsEconomy200ResponseFlowInner.js +133 -0
  83. package/dist/model/AdminGetAnalyticsEconomy200ResponseTotalsInner.js +133 -0
  84. package/dist/model/AdminGetAnalyticsSummary200Response.js +179 -0
  85. package/dist/model/AdminGrantAchievementRequest.js +126 -0
  86. package/dist/model/AdminGrantItemRequest.js +136 -0
  87. package/dist/model/AdminImportChatFilterWords200Response.js +93 -0
  88. package/dist/model/AdminImportChatFilterWordsRequest.js +150 -0
  89. package/dist/model/AdminIncrementAchievementRequest.js +134 -0
  90. package/dist/model/AdminListAchievements200Response.js +118 -0
  91. package/dist/model/AdminListAchievements200ResponseDataInner.js +185 -0
  92. package/dist/model/AdminListChatFilterWords200Response.js +136 -0
  93. package/dist/model/AdminListChatMessages200Response.js +124 -0
  94. package/dist/model/AdminListChatMessages200ResponseDataInner.js +213 -0
  95. package/dist/model/AdminListChatMutes200Response.js +124 -0
  96. package/dist/model/AdminListChatMutes200ResponseDataInner.js +226 -0
  97. package/dist/model/AdminListChatReports200Response.js +124 -0
  98. package/dist/model/AdminListGroups200Response.js +124 -0
  99. package/dist/model/AdminListKvEntries200Response.js +124 -0
  100. package/dist/model/AdminListKvEntries200ResponseDataInner.js +147 -0
  101. package/dist/model/AdminListLobbies200Response.js +124 -0
  102. package/dist/model/AdminListLobbies200ResponseDataInner.js +191 -0
  103. package/dist/model/AdminListMatchmakingTickets200Response.js +124 -0
  104. package/dist/model/AdminListMatchmakingTickets200ResponseDataInner.js +196 -0
  105. package/dist/model/AdminListNotifications200Response.js +124 -0
  106. package/dist/model/AdminListNotifications200ResponseDataInner.js +173 -0
  107. package/dist/model/AdminListNotifications200ResponseMeta.js +125 -0
  108. package/dist/model/AdminListPushTokens200Response.js +118 -0
  109. package/dist/model/AdminListPushTokens200ResponseDataInner.js +226 -0
  110. package/dist/model/AdminListQuestProgress200Response.js +118 -0
  111. package/dist/model/AdminListQuestProgress200ResponseDataInner.js +208 -0
  112. package/dist/model/AdminListQuests200Response.js +118 -0
  113. package/dist/model/AdminListQuests200ResponseDataInner.js +339 -0
  114. package/dist/model/AdminListReadyChecks200Response.js +124 -0
  115. package/dist/model/AdminListSessions200Response.js +124 -0
  116. package/dist/model/AdminListSessions200ResponseDataInner.js +141 -0
  117. package/dist/model/AdminListStorageObjects200Response.js +132 -0
  118. package/dist/model/AdminListStorageObjects200ResponseDataInner.js +105 -0
  119. package/dist/model/AdminListStorageObjects200ResponseUsage.js +93 -0
  120. package/dist/model/AdminMatchmakingStats200Response.js +91 -0
  121. package/dist/model/AdminMatchmakingStats200ResponseData.js +113 -0
  122. package/dist/model/AdminResetQuestRequest.js +127 -0
  123. package/dist/model/AdminResolveChatReport200Response.js +91 -0
  124. package/dist/model/AdminResolveChatReport200ResponseData.js +274 -0
  125. package/dist/model/AdminResolveChatReportRequest.js +153 -0
  126. package/dist/model/AdminResolveTournamentMatchRequest.js +90 -0
  127. package/dist/model/AdminRevokeAchievementRequest.js +126 -0
  128. package/dist/model/AdminRunRetention200Response.js +104 -0
  129. package/dist/model/AdminSendPushRequest.js +190 -0
  130. package/dist/model/AdminSetQuestIconRequest.js +112 -0
  131. package/dist/model/AdminSpendCurrencyRequest.js +160 -0
  132. package/dist/model/AdminSubmitLeaderboardScore200Response.js +91 -0
  133. package/dist/model/AdminSubmitLeaderboardScore200ResponseData.js +141 -0
  134. package/dist/model/AdminSubmitLeaderboardScoreRequest.js +142 -0
  135. package/dist/model/AdminTestChatPhrase200Response.js +91 -0
  136. package/dist/model/AdminTestChatPhrase200ResponseData.js +187 -0
  137. package/dist/model/AdminTestChatPhrase200ResponseDataHitsInner.js +113 -0
  138. package/dist/model/AdminTestChatPhraseRequest.js +112 -0
  139. package/dist/model/AdminTournamentIconUploadUrlRequest.js +112 -0
  140. package/dist/model/AdminUpdateAchievementRequest.js +145 -0
  141. package/dist/model/AdminUpdateChatFilterWord200Response.js +91 -0
  142. package/dist/model/AdminUpdateChatFilterWord200ResponseData.js +195 -0
  143. package/dist/model/AdminUpdateChatFilterWordRequest.js +166 -0
  144. package/dist/model/AdminUpdateGroup200Response.js +199 -0
  145. package/dist/model/AdminUpdateGroupRequest.js +138 -0
  146. package/dist/model/AdminUpdateKvEntryRequest.js +129 -0
  147. package/dist/model/AdminUpdateLeaderboardRecord200Response.js +91 -0
  148. package/dist/model/AdminUpdateLeaderboardRecord200ResponseData.js +165 -0
  149. package/dist/model/AdminUpdateLeaderboardRecordRequest.js +93 -0
  150. package/dist/model/AdminUpdateLeaderboardRequest.js +137 -0
  151. package/dist/model/AdminUpdateLobby200Response.js +91 -0
  152. package/dist/model/AdminUpdateLobbyRequest.js +142 -0
  153. package/dist/model/AdminUpdateTournamentRequest.js +266 -0
  154. package/dist/model/AdminUpdateUser200Response.js +91 -0
  155. package/dist/model/AdminUpdateUser200ResponseData.js +193 -0
  156. package/dist/model/AdminUpdateUserRequest.js +113 -0
  157. package/dist/model/AdminUpsertKv200Response.js +91 -0
  158. package/dist/model/AdminUpsertKv200ResponseData.js +159 -0
  159. package/dist/model/AdminUpsertKvRequest.js +154 -0
  160. package/dist/model/ApproveJoinRequest200Response.js +205 -0
  161. package/dist/model/CallHook200Response.js +88 -0
  162. package/dist/model/CallHookRequest.js +140 -0
  163. package/dist/model/CancelGroupInvite200Response.js +89 -0
  164. package/dist/model/CancelJoinRequest200Response.js +181 -0
  165. package/dist/model/CancelPartyInviteRequest.js +113 -0
  166. package/dist/model/ChatUnreadCount200Response.js +91 -0
  167. package/dist/model/ChatUnreadCount200ResponseData.js +85 -0
  168. package/dist/model/ClaimQuest200Response.js +91 -0
  169. package/dist/model/ClaimQuest200ResponseData.js +124 -0
  170. package/dist/model/ClientLogBatch.js +148 -0
  171. package/dist/model/ClientLogEntry.js +217 -0
  172. package/dist/model/ClientLogPolicy.js +193 -0
  173. package/dist/model/ClientLogResult.js +146 -0
  174. package/dist/model/ClientLogSession.js +256 -0
  175. package/dist/model/CreateCurrentUserAvatarUploadUrlRequest.js +124 -0
  176. package/dist/model/CreateFriendRequestRequest.js +113 -0
  177. package/dist/model/CreateGroupRequest.js +203 -0
  178. package/dist/model/CreateLobby401Response.js +89 -0
  179. package/dist/model/CreateLobbyRequest.js +155 -0
  180. package/dist/model/CreatePartyRequest.js +98 -0
  181. package/dist/model/DeclineGroupInvite200Response.js +89 -0
  182. package/dist/model/DeclinePartyInviteRequest.js +113 -0
  183. package/dist/model/DeleteNotifications200Response.js +91 -0
  184. package/dist/model/DeleteNotifications200ResponseData.js +86 -0
  185. package/dist/model/DeleteNotificationsRequest.js +113 -0
  186. package/dist/model/DeletePushToken200Response.js +210 -0
  187. package/dist/model/DemoteGroupMemberRequest.js +113 -0
  188. package/dist/model/DeviceLoginRequest.js +113 -0
  189. package/dist/model/ErrorResponse.js +114 -0
  190. package/dist/model/GameServerWebApiV1TournamentControllerIndex200Response.js +110 -0
  191. package/dist/model/GameServerWebApiV1TournamentControllerIndex200ResponseDataInner.js +258 -0
  192. package/dist/model/GameServerWebApiV1TournamentControllerMyMatch200Response.js +173 -0
  193. package/dist/model/GetCurrentUser200Response.js +214 -0
  194. package/dist/model/GetCurrentUser200ResponseLinkedProviders.js +126 -0
  195. package/dist/model/GetCurrentUserInventory200Response.js +87 -0
  196. package/dist/model/GetKv200Response.js +93 -0
  197. package/dist/model/GetLobby200Response.js +133 -0
  198. package/dist/model/GetMyReadyCheck200Response.js +105 -0
  199. package/dist/model/GetMyReadyCheck200ResponseLobby.js +257 -0
  200. package/dist/model/GetMyReadyCheck200ResponseParty.js +257 -0
  201. package/dist/model/GetMyRecord200Response.js +91 -0
  202. package/dist/model/GetMyRecord200ResponseData.js +151 -0
  203. package/dist/model/GetServerTime200Response.js +86 -0
  204. package/dist/model/GetStats200Response.js +91 -0
  205. package/dist/model/GetStats200ResponseData.js +151 -0
  206. package/dist/model/HealthResponse.js +129 -0
  207. package/dist/model/InviteToGroup200Response.js +90 -0
  208. package/dist/model/InviteToGroupRequest.js +113 -0
  209. package/dist/model/InviteToPartyRequest.js +113 -0
  210. package/dist/model/JoinLobby200Response.js +89 -0
  211. package/dist/model/JoinLobbyRequest.js +90 -0
  212. package/dist/model/JoinPartyByCodeRequest.js +113 -0
  213. package/dist/model/KickGroupMemberRequest.js +113 -0
  214. package/dist/model/KickPartyMemberRequest.js +113 -0
  215. package/dist/model/KickUser200Response.js +89 -0
  216. package/dist/model/KickUserRequest.js +109 -0
  217. package/dist/model/LeaveLobby200Response.js +89 -0
  218. package/dist/model/LinkDeviceRequest.js +112 -0
  219. package/dist/model/ListAuthProviders200Response.js +122 -0
  220. package/dist/model/ListBlacklistedUsers200Response.js +118 -0
  221. package/dist/model/ListBlacklistedUsers200ResponseDataInner.js +113 -0
  222. package/dist/model/ListBlockedFriends200Response.js +124 -0
  223. package/dist/model/ListBlockedFriends200ResponseDataInner.js +103 -0
  224. package/dist/model/ListBlockedFriends200ResponseDataInnerRequester.js +113 -0
  225. package/dist/model/ListChatMessages200Response.js +118 -0
  226. package/dist/model/ListChatMessages200ResponseDataInner.js +208 -0
  227. package/dist/model/ListCurrentUserLedger200Response.js +118 -0
  228. package/dist/model/ListCurrentUserLedger200ResponseDataInner.js +145 -0
  229. package/dist/model/ListFriendRequests200Response.js +105 -0
  230. package/dist/model/ListFriendRequests200ResponseData.js +139 -0
  231. package/dist/model/ListFriendRequests200ResponseDataIncomingInner.js +140 -0
  232. package/dist/model/ListFriendRequests200ResponseDataIncomingInnerRequester.js +142 -0
  233. package/dist/model/ListFriendRequests200ResponseIncomingInner.js +140 -0
  234. package/dist/model/ListFriendRequests200ResponseIncomingInnerRequester.js +142 -0
  235. package/dist/model/ListFriendRequests200ResponseMeta.js +104 -0
  236. package/dist/model/ListFriends200Response.js +124 -0
  237. package/dist/model/ListFriends200ResponseDataInner.js +164 -0
  238. package/dist/model/ListFriends200ResponseMeta.js +125 -0
  239. package/dist/model/ListGroupInvitations200Response.js +124 -0
  240. package/dist/model/ListGroupInvitations200ResponseDataInner.js +183 -0
  241. package/dist/model/ListGroupMembers200Response.js +124 -0
  242. package/dist/model/ListGroupMembers200ResponseDataInner.js +180 -0
  243. package/dist/model/ListGroupMutes200Response.js +124 -0
  244. package/dist/model/ListGroupMutes200ResponseDataInner.js +193 -0
  245. package/dist/model/ListGroupMutes200ResponseMeta.js +109 -0
  246. package/dist/model/ListJoinRequests200Response.js +124 -0
  247. package/dist/model/ListLeaderboardRecords200Response.js +124 -0
  248. package/dist/model/ListLeaderboardRecords200ResponseDataInner.js +134 -0
  249. package/dist/model/ListLeaderboardRecords200ResponseMeta.js +125 -0
  250. package/dist/model/ListLeaderboards200Response.js +124 -0
  251. package/dist/model/ListLeaderboards200ResponseDataInner.js +247 -0
  252. package/dist/model/ListLobbies200Response.js +124 -0
  253. package/dist/model/ListLobbies200ResponseDataInner.js +192 -0
  254. package/dist/model/ListLobbies200ResponseInner.js +153 -0
  255. package/dist/model/ListLobbies200ResponseMeta.js +125 -0
  256. package/dist/model/ListMyGroups200Response.js +124 -0
  257. package/dist/model/ListMyGroups200ResponseDataInner.js +243 -0
  258. package/dist/model/ListNotifications200Response.js +124 -0
  259. package/dist/model/ListNotifications200ResponseDataInner.js +186 -0
  260. package/dist/model/ListPartyInvitations200ResponseInner.js +171 -0
  261. package/dist/model/ListPushTokens200Response.js +118 -0
  262. package/dist/model/ListRecordsAroundUser200Response.js +110 -0
  263. package/dist/model/ListSentInvitations200Response.js +124 -0
  264. package/dist/model/ListSentInvitations200ResponseDataInner.js +181 -0
  265. package/dist/model/ListTournaments200Response.js +110 -0
  266. package/dist/model/ListTournaments200ResponseDataInner.js +271 -0
  267. package/dist/model/LobbyStats200Response.js +91 -0
  268. package/dist/model/LobbyStats200ResponseData.js +104 -0
  269. package/dist/model/Login200Response.js +91 -0
  270. package/dist/model/Login200ResponseData.js +150 -0
  271. package/dist/model/Login200ResponseDataUser.js +97 -0
  272. package/dist/model/LoginRequest.js +128 -0
  273. package/dist/model/MarkChatReadRequest.js +169 -0
  274. package/dist/model/MatchmakingCancel200Response.js +85 -0
  275. package/dist/model/MatchmakingJoin201Response.js +91 -0
  276. package/dist/model/MatchmakingJoin201ResponseData.js +186 -0
  277. package/dist/model/MatchmakingJoinRequest.js +101 -0
  278. package/dist/model/MatchmakingMyTicket200Response.js +91 -0
  279. package/dist/model/MatchmakingMyTicket200ResponseData.js +186 -0
  280. package/dist/model/MatchmakingStats200Response.js +91 -0
  281. package/dist/model/MatchmakingStats200ResponseData.js +118 -0
  282. package/dist/model/MatchmakingStats200ResponseDataQueuesInner.js +93 -0
  283. package/dist/model/MuteGroupMemberRequest.js +135 -0
  284. package/dist/model/MyAchievements200Response.js +124 -0
  285. package/dist/model/MyAchievements200ResponseDataInner.js +196 -0
  286. package/dist/model/OAuthSessionData.js +153 -0
  287. package/dist/model/OAuthSessionDataDetails.js +128 -0
  288. package/dist/model/OAuthSessionStatus.js +173 -0
  289. package/dist/model/OauthApiCallback200Response.js +91 -0
  290. package/dist/model/OauthApiCallbackRequest.js +90 -0
  291. package/dist/model/OauthCallbackApiAppleIosRequest.js +113 -0
  292. package/dist/model/OauthGoogleIdTokenRequest.js +113 -0
  293. package/dist/model/OauthRequest200Response.js +103 -0
  294. package/dist/model/OauthSessionStatus404Response.js +126 -0
  295. package/dist/model/OpenLobbyReadyCheck201Response.js +256 -0
  296. package/dist/model/OpenLobbyReadyCheckRequest.js +95 -0
  297. package/dist/model/PartyCreateLobbyRequest.js +139 -0
  298. package/dist/model/PartyJoinLobbyRequest.js +90 -0
  299. package/dist/model/PartyStats200Response.js +91 -0
  300. package/dist/model/PartyStats200ResponseData.js +93 -0
  301. package/dist/model/PaymentsEntitlements401Response.js +89 -0
  302. package/dist/model/PaymentsSteamCheckoutRequest.js +169 -0
  303. package/dist/model/PaymentsSteamFinalizeRequest.js +112 -0
  304. package/dist/model/PaymentsStripeCheckoutRequest.js +133 -0
  305. package/dist/model/PromoteGroupMemberRequest.js +113 -0
  306. package/dist/model/QuestStats200Response.js +91 -0
  307. package/dist/model/QuestStats200ResponseData.js +101 -0
  308. package/dist/model/QuickJoinRequest.js +108 -0
  309. package/dist/model/RefreshToken200Response.js +91 -0
  310. package/dist/model/RefreshToken200ResponseData.js +151 -0
  311. package/dist/model/RefreshTokenRequest.js +113 -0
  312. package/dist/model/RegisterPushTokenRequest.js +199 -0
  313. package/dist/model/RemoveFriendship401Response.js +89 -0
  314. package/dist/model/ReportChatMessageRequest.js +90 -0
  315. package/dist/model/ResolveLeaderboardSlugs200Response.js +89 -0
  316. package/dist/model/ResolveLeaderboardSlugs200ResponseDataValue.js +264 -0
  317. package/dist/model/ResolveLeaderboardSlugsRequest.js +113 -0
  318. package/dist/model/RespondReadyCheckRequest.js +140 -0
  319. package/dist/model/SearchUsers200Response.js +124 -0
  320. package/dist/model/SearchUsers200ResponseDataInner.js +168 -0
  321. package/dist/model/SendChatMessageRequest.js +180 -0
  322. package/dist/model/SendNotificationRequest.js +163 -0
  323. package/dist/model/SetLobbyStateRequest.js +126 -0
  324. package/dist/model/ShowParty200Response.js +160 -0
  325. package/dist/model/ShowParty200ResponseMembersInner.js +137 -0
  326. package/dist/model/SignalingStats200Response.js +91 -0
  327. package/dist/model/SignalingStats200ResponseData.js +101 -0
  328. package/dist/model/TournamentMyMatch200Response.js +173 -0
  329. package/dist/model/UnmuteLobbyMemberRequest.js +113 -0
  330. package/dist/model/UpdateChatMessageRequest.js +99 -0
  331. package/dist/model/UpdateCurrentUserDisplayName400Response.js +97 -0
  332. package/dist/model/UpdateCurrentUserDisplayNameRequest.js +112 -0
  333. package/dist/model/UpdateCurrentUserPassword400Response.js +97 -0
  334. package/dist/model/UpdateCurrentUserPasswordRequest.js +125 -0
  335. package/dist/model/UpdateCurrentUserUsernameRequest.js +112 -0
  336. package/dist/model/UpdateGroupRequest.js +173 -0
  337. package/dist/model/UpdateLobbyRequest.js +161 -0
  338. package/dist/model/UpdatePartyRequest.js +95 -0
  339. package/dist/model/UserQuests200Response.js +124 -0
  340. package/dist/model/UserQuests200ResponseDataInner.js +401 -0
  341. package/dist/model/UserQuests200ResponseDataInnerObjectivesInner.js +108 -0
  342. package/dist/model/UserQuests200ResponseDataInnerProgress.js +159 -0
  343. package/dist/model/UserQuests200ResponseDataInnerRewardsInner.js +130 -0
  344. package/dist/model/UserQuests200ResponseMeta.js +125 -0
  345. package/dist/model/UserStats200Response.js +91 -0
  346. package/dist/model/UserStats200ResponseData.js +117 -0
  347. package/dist/realtime.js +370 -0
  348. package/dist/webrtc.js +541 -0
  349. package/package.json +51 -0
@@ -0,0 +1,3145 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.gamend=exports["default"]=void 0;var _minimal=_interopRequireDefault(require("protobufjs/minimal.js"));function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e};}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o;}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o;},_typeof(o);}/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-mixed-operators, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars, default-case, jsdoc/require-param*/// Common aliases
2
+ var $Reader=_minimal["default"].Reader,$Writer=_minimal["default"].Writer,$util=_minimal["default"].util;var $Object=$util.global.Object,$undefined=$util.global.undefined,$Error=$util.global.Error,$TypeError=$util.global.TypeError,$Boolean=$util.global.Boolean,$String=$util.global.String,$parseInt=$util.global.parseInt,$Array=$util.global.Array,$BigInt=$util.global.BigInt,$Number=$util.global.Number;// Exported root namespace
3
+ var $root=exports["default"]=_minimal["default"].roots["default"]||(_minimal["default"].roots["default"]={});var gamend=exports.gamend=$root.gamend=function(){/**
4
+ * Namespace gamend.
5
+ * @exports gamend
6
+ * @namespace
7
+ */var gamend={};gamend.realtime=function(){/**
8
+ * Namespace realtime.
9
+ * @memberof gamend
10
+ * @namespace
11
+ */var realtime={};realtime.v1=function(){/**
12
+ * Namespace v1.
13
+ * @memberof gamend.realtime
14
+ * @namespace
15
+ */var v1={};v1.LinkedProviders=function(){/**
16
+ * Properties of a LinkedProviders.
17
+ * @typedef {Object} gamend.realtime.v1.LinkedProviders.$Properties
18
+ * @property {boolean|null} [google] LinkedProviders google
19
+ * @property {boolean|null} [facebook] LinkedProviders facebook
20
+ * @property {boolean|null} [discord] LinkedProviders discord
21
+ * @property {boolean|null} [apple] LinkedProviders apple
22
+ * @property {boolean|null} [steam] LinkedProviders steam
23
+ * @property {boolean|null} [device] LinkedProviders device
24
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
25
+ *//**
26
+ * Properties of a LinkedProviders.
27
+ * @memberof gamend.realtime.v1
28
+ * @interface ILinkedProviders
29
+ * @augments gamend.realtime.v1.LinkedProviders.$Properties
30
+ * @deprecated Use gamend.realtime.v1.LinkedProviders.$Properties instead.
31
+ *//**
32
+ * Shape of a LinkedProviders.
33
+ * @typedef {gamend.realtime.v1.LinkedProviders.$Properties} gamend.realtime.v1.LinkedProviders.$Shape
34
+ *//**
35
+ * Constructs a new LinkedProviders.
36
+ * @memberof gamend.realtime.v1
37
+ * @classdesc Represents a LinkedProviders.
38
+ * @constructor
39
+ * @param {gamend.realtime.v1.LinkedProviders.$Properties=} [properties] Properties to set
40
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
41
+ */var LinkedProviders=function LinkedProviders(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
42
+ * LinkedProviders google.
43
+ * @member {boolean} google
44
+ * @memberof gamend.realtime.v1.LinkedProviders
45
+ * @instance
46
+ */LinkedProviders.prototype.google=false;/**
47
+ * LinkedProviders facebook.
48
+ * @member {boolean} facebook
49
+ * @memberof gamend.realtime.v1.LinkedProviders
50
+ * @instance
51
+ */LinkedProviders.prototype.facebook=false;/**
52
+ * LinkedProviders discord.
53
+ * @member {boolean} discord
54
+ * @memberof gamend.realtime.v1.LinkedProviders
55
+ * @instance
56
+ */LinkedProviders.prototype.discord=false;/**
57
+ * LinkedProviders apple.
58
+ * @member {boolean} apple
59
+ * @memberof gamend.realtime.v1.LinkedProviders
60
+ * @instance
61
+ */LinkedProviders.prototype.apple=false;/**
62
+ * LinkedProviders steam.
63
+ * @member {boolean} steam
64
+ * @memberof gamend.realtime.v1.LinkedProviders
65
+ * @instance
66
+ */LinkedProviders.prototype.steam=false;/**
67
+ * LinkedProviders device.
68
+ * @member {boolean} device
69
+ * @memberof gamend.realtime.v1.LinkedProviders
70
+ * @instance
71
+ */LinkedProviders.prototype.device=false;/**
72
+ * Encodes the specified LinkedProviders message. Does not implicitly {@link gamend.realtime.v1.LinkedProviders.verify|verify} messages.
73
+ * @function encode
74
+ * @memberof gamend.realtime.v1.LinkedProviders
75
+ * @static
76
+ * @param {gamend.realtime.v1.LinkedProviders.$Properties} message LinkedProviders message or plain object to encode
77
+ * @param {$protobuf.Writer} [writer] Writer to encode to
78
+ * @returns {$protobuf.Writer} Writer
79
+ */LinkedProviders.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.google!=null&&$Object.hasOwnProperty.call(message,"google")&&message.google!==false)writer.uint32(/* id 1, wireType 0 =*/8).bool(message.google);if(message.facebook!=null&&$Object.hasOwnProperty.call(message,"facebook")&&message.facebook!==false)writer.uint32(/* id 2, wireType 0 =*/16).bool(message.facebook);if(message.discord!=null&&$Object.hasOwnProperty.call(message,"discord")&&message.discord!==false)writer.uint32(/* id 3, wireType 0 =*/24).bool(message.discord);if(message.apple!=null&&$Object.hasOwnProperty.call(message,"apple")&&message.apple!==false)writer.uint32(/* id 4, wireType 0 =*/32).bool(message.apple);if(message.steam!=null&&$Object.hasOwnProperty.call(message,"steam")&&message.steam!==false)writer.uint32(/* id 5, wireType 0 =*/40).bool(message.steam);if(message.device!=null&&$Object.hasOwnProperty.call(message,"device")&&message.device!==false)writer.uint32(/* id 6, wireType 0 =*/48).bool(message.device);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
80
+ * Decodes a LinkedProviders message from the specified reader or buffer.
81
+ * @function decode
82
+ * @memberof gamend.realtime.v1.LinkedProviders
83
+ * @static
84
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
85
+ * @param {number} [length] Message length if known beforehand
86
+ * @returns {gamend.realtime.v1.LinkedProviders & gamend.realtime.v1.LinkedProviders.$Shape} LinkedProviders
87
+ * @throws {Error} If the payload is not a reader or valid buffer
88
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
89
+ */LinkedProviders.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.LinkedProviders(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==0)break;if(value=reader.bool())message.google=value;else delete message.google;continue;}case 2:{if(wireType!==0)break;if(value=reader.bool())message.facebook=value;else delete message.facebook;continue;}case 3:{if(wireType!==0)break;if(value=reader.bool())message.discord=value;else delete message.discord;continue;}case 4:{if(wireType!==0)break;if(value=reader.bool())message.apple=value;else delete message.apple;continue;}case 5:{if(wireType!==0)break;if(value=reader.bool())message.steam=value;else delete message.steam;continue;}case 6:{if(wireType!==0)break;if(value=reader.bool())message.device=value;else delete message.device;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
90
+ * Creates a LinkedProviders message from a plain object. Also converts values to their respective internal types.
91
+ * @function fromObject
92
+ * @memberof gamend.realtime.v1.LinkedProviders
93
+ * @static
94
+ * @param {Object.<string,*>} object Plain object
95
+ * @returns {gamend.realtime.v1.LinkedProviders} LinkedProviders
96
+ */LinkedProviders.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.LinkedProviders)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.LinkedProviders: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.LinkedProviders();if(object.google!=null)if(object.google)message.google=$Boolean(object.google);if(object.facebook!=null)if(object.facebook)message.facebook=$Boolean(object.facebook);if(object.discord!=null)if(object.discord)message.discord=$Boolean(object.discord);if(object.apple!=null)if(object.apple)message.apple=$Boolean(object.apple);if(object.steam!=null)if(object.steam)message.steam=$Boolean(object.steam);if(object.device!=null)if(object.device)message.device=$Boolean(object.device);return message;};/**
97
+ * Creates a plain object from a LinkedProviders message. Also converts values to other types if specified.
98
+ * @function toObject
99
+ * @memberof gamend.realtime.v1.LinkedProviders
100
+ * @static
101
+ * @param {gamend.realtime.v1.LinkedProviders} message LinkedProviders
102
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
103
+ * @returns {Object.<string,*>} Plain object
104
+ */LinkedProviders.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.google=false;object.facebook=false;object.discord=false;object.apple=false;object.steam=false;object.device=false;}if(message.google!=null&&$Object.hasOwnProperty.call(message,"google"))object.google=message.google;if(message.facebook!=null&&$Object.hasOwnProperty.call(message,"facebook"))object.facebook=message.facebook;if(message.discord!=null&&$Object.hasOwnProperty.call(message,"discord"))object.discord=message.discord;if(message.apple!=null&&$Object.hasOwnProperty.call(message,"apple"))object.apple=message.apple;if(message.steam!=null&&$Object.hasOwnProperty.call(message,"steam"))object.steam=message.steam;if(message.device!=null&&$Object.hasOwnProperty.call(message,"device"))object.device=message.device;return object;};/**
105
+ * Converts this LinkedProviders to JSON.
106
+ * @function toJSON
107
+ * @memberof gamend.realtime.v1.LinkedProviders
108
+ * @instance
109
+ * @returns {Object.<string,*>} JSON object
110
+ */LinkedProviders.prototype.toJSON=function(){return LinkedProviders.toObject(this,_minimal["default"].util.toJSONOptions);};/**
111
+ * Gets the type url for LinkedProviders
112
+ * @function getTypeUrl
113
+ * @memberof gamend.realtime.v1.LinkedProviders
114
+ * @static
115
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
116
+ * @returns {string} The type url
117
+ */LinkedProviders.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.LinkedProviders";};return LinkedProviders;}();v1.User=function(){/**
118
+ * Properties of a User.
119
+ * @typedef {Object} gamend.realtime.v1.User.$Properties
120
+ * @property {string|null} [id] User id
121
+ * @property {string|null} [email] User email
122
+ * @property {string|null} [profile_url] User profile_url
123
+ * @property {Uint8Array|null} [metadata_json] User metadata_json
124
+ * @property {string|null} [display_name] User display_name
125
+ * @property {string|null} [lobby_id] User lobby_id
126
+ * @property {string|null} [party_id] User party_id
127
+ * @property {boolean|null} [is_online] User is_online
128
+ * @property {number|Long|null} [last_seen_at_ms] User last_seen_at_ms
129
+ * @property {gamend.realtime.v1.LinkedProviders.$Properties|null} [linked_providers] User linked_providers
130
+ * @property {boolean|null} [has_password] User has_password
131
+ * @property {Uint8Array|null} [metadata_pb] User metadata_pb
132
+ * @property {string|null} [username] User username
133
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
134
+ *//**
135
+ * Properties of a User.
136
+ * @memberof gamend.realtime.v1
137
+ * @interface IUser
138
+ * @augments gamend.realtime.v1.User.$Properties
139
+ * @deprecated Use gamend.realtime.v1.User.$Properties instead.
140
+ *//**
141
+ * Shape of a User.
142
+ * @typedef {gamend.realtime.v1.User.$Properties} gamend.realtime.v1.User.$Shape
143
+ *//**
144
+ * Constructs a new User.
145
+ * @memberof gamend.realtime.v1
146
+ * @classdesc Represents a User.
147
+ * @constructor
148
+ * @param {gamend.realtime.v1.User.$Properties=} [properties] Properties to set
149
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
150
+ */var User=function User(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
151
+ * User id.
152
+ * @member {string|null|undefined} id
153
+ * @memberof gamend.realtime.v1.User
154
+ * @instance
155
+ */User.prototype.id=null;/**
156
+ * User email.
157
+ * @member {string|null|undefined} email
158
+ * @memberof gamend.realtime.v1.User
159
+ * @instance
160
+ */User.prototype.email=null;/**
161
+ * User profile_url.
162
+ * @member {string|null|undefined} profile_url
163
+ * @memberof gamend.realtime.v1.User
164
+ * @instance
165
+ */User.prototype.profile_url=null;/**
166
+ * User metadata_json.
167
+ * @member {Uint8Array|null|undefined} metadata_json
168
+ * @memberof gamend.realtime.v1.User
169
+ * @instance
170
+ */User.prototype.metadata_json=null;/**
171
+ * User display_name.
172
+ * @member {string|null|undefined} display_name
173
+ * @memberof gamend.realtime.v1.User
174
+ * @instance
175
+ */User.prototype.display_name=null;/**
176
+ * User lobby_id.
177
+ * @member {string|null|undefined} lobby_id
178
+ * @memberof gamend.realtime.v1.User
179
+ * @instance
180
+ */User.prototype.lobby_id=null;/**
181
+ * User party_id.
182
+ * @member {string|null|undefined} party_id
183
+ * @memberof gamend.realtime.v1.User
184
+ * @instance
185
+ */User.prototype.party_id=null;/**
186
+ * User is_online.
187
+ * @member {boolean|null|undefined} is_online
188
+ * @memberof gamend.realtime.v1.User
189
+ * @instance
190
+ */User.prototype.is_online=null;/**
191
+ * User last_seen_at_ms.
192
+ * @member {number|Long|null|undefined} last_seen_at_ms
193
+ * @memberof gamend.realtime.v1.User
194
+ * @instance
195
+ */User.prototype.last_seen_at_ms=null;/**
196
+ * User linked_providers.
197
+ * @member {gamend.realtime.v1.LinkedProviders.$Properties|null|undefined} linked_providers
198
+ * @memberof gamend.realtime.v1.User
199
+ * @instance
200
+ */User.prototype.linked_providers=null;/**
201
+ * User has_password.
202
+ * @member {boolean|null|undefined} has_password
203
+ * @memberof gamend.realtime.v1.User
204
+ * @instance
205
+ */User.prototype.has_password=null;/**
206
+ * User metadata_pb.
207
+ * @member {Uint8Array|null|undefined} metadata_pb
208
+ * @memberof gamend.realtime.v1.User
209
+ * @instance
210
+ */User.prototype.metadata_pb=null;/**
211
+ * User username.
212
+ * @member {string|null|undefined} username
213
+ * @memberof gamend.realtime.v1.User
214
+ * @instance
215
+ */User.prototype.username=null;// OneOf field names bound to virtual getters and setters
216
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
217
+ $Object.defineProperty(User.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
218
+ $Object.defineProperty(User.prototype,"_email",{get:$util.oneOfGetter($oneOfFields=["email"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
219
+ $Object.defineProperty(User.prototype,"_profile_url",{get:$util.oneOfGetter($oneOfFields=["profile_url"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
220
+ $Object.defineProperty(User.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
221
+ $Object.defineProperty(User.prototype,"_display_name",{get:$util.oneOfGetter($oneOfFields=["display_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
222
+ $Object.defineProperty(User.prototype,"_lobby_id",{get:$util.oneOfGetter($oneOfFields=["lobby_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
223
+ $Object.defineProperty(User.prototype,"_party_id",{get:$util.oneOfGetter($oneOfFields=["party_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
224
+ $Object.defineProperty(User.prototype,"_is_online",{get:$util.oneOfGetter($oneOfFields=["is_online"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
225
+ $Object.defineProperty(User.prototype,"_last_seen_at_ms",{get:$util.oneOfGetter($oneOfFields=["last_seen_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
226
+ $Object.defineProperty(User.prototype,"_linked_providers",{get:$util.oneOfGetter($oneOfFields=["linked_providers"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
227
+ $Object.defineProperty(User.prototype,"_has_password",{get:$util.oneOfGetter($oneOfFields=["has_password"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
228
+ $Object.defineProperty(User.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
229
+ $Object.defineProperty(User.prototype,"_username",{get:$util.oneOfGetter($oneOfFields=["username"]),set:$util.oneOfSetter($oneOfFields)});/**
230
+ * Encodes the specified User message. Does not implicitly {@link gamend.realtime.v1.User.verify|verify} messages.
231
+ * @function encode
232
+ * @memberof gamend.realtime.v1.User
233
+ * @static
234
+ * @param {gamend.realtime.v1.User.$Properties} message User message or plain object to encode
235
+ * @param {$protobuf.Writer} [writer] Writer to encode to
236
+ * @returns {$protobuf.Writer} Writer
237
+ */User.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.email!=null&&$Object.hasOwnProperty.call(message,"email"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.email);if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.profile_url);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.metadata_json);if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))writer.uint32(/* id 5, wireType 2 =*/42).string(message.display_name);if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))writer.uint32(/* id 6, wireType 2 =*/50).string(message.lobby_id);if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id"))writer.uint32(/* id 7, wireType 2 =*/58).string(message.party_id);if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))writer.uint32(/* id 8, wireType 0 =*/64).bool(message.is_online);if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))writer.uint32(/* id 9, wireType 0 =*/72).int64(message.last_seen_at_ms);if(message.linked_providers!=null&&$Object.hasOwnProperty.call(message,"linked_providers"))$root.gamend.realtime.v1.LinkedProviders.encode(message.linked_providers,writer.uint32(/* id 10, wireType 2 =*/82).fork(),_depth+1).ldelim();if(message.has_password!=null&&$Object.hasOwnProperty.call(message,"has_password"))writer.uint32(/* id 11, wireType 0 =*/88).bool(message.has_password);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 12, wireType 2 =*/98).bytes(message.metadata_pb);if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))writer.uint32(/* id 13, wireType 2 =*/106).string(message.username);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
238
+ * Decodes a User message from the specified reader or buffer.
239
+ * @function decode
240
+ * @memberof gamend.realtime.v1.User
241
+ * @static
242
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
243
+ * @param {number} [length] Message length if known beforehand
244
+ * @returns {gamend.realtime.v1.User & gamend.realtime.v1.User.$Shape} User
245
+ * @throws {Error} If the payload is not a reader or valid buffer
246
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
247
+ */User.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.User();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 2:{if(wireType!==2)break;message.email=reader.stringVerify();message._email="email";continue;}case 3:{if(wireType!==2)break;message.profile_url=reader.stringVerify();message._profile_url="profile_url";continue;}case 4:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 5:{if(wireType!==2)break;message.display_name=reader.stringVerify();message._display_name="display_name";continue;}case 6:{if(wireType!==2)break;message.lobby_id=reader.stringVerify();message._lobby_id="lobby_id";continue;}case 7:{if(wireType!==2)break;message.party_id=reader.stringVerify();message._party_id="party_id";continue;}case 8:{if(wireType!==0)break;message.is_online=reader.bool();message._is_online="is_online";continue;}case 9:{if(wireType!==0)break;message.last_seen_at_ms=reader.int64();message._last_seen_at_ms="last_seen_at_ms";continue;}case 10:{if(wireType!==2)break;message.linked_providers=$root.gamend.realtime.v1.LinkedProviders.decode(reader,reader.uint32(),$undefined,_depth+1,message.linked_providers);message._linked_providers="linked_providers";continue;}case 11:{if(wireType!==0)break;message.has_password=reader.bool();message._has_password="has_password";continue;}case 12:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}case 13:{if(wireType!==2)break;message.username=reader.stringVerify();message._username="username";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
248
+ * Creates a User message from a plain object. Also converts values to their respective internal types.
249
+ * @function fromObject
250
+ * @memberof gamend.realtime.v1.User
251
+ * @static
252
+ * @param {Object.<string,*>} object Plain object
253
+ * @returns {gamend.realtime.v1.User} User
254
+ */User.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.User)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.User: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.User();if(object.id!=null)message.id=$String(object.id);if(object.email!=null)message.email=$String(object.email);if(object.profile_url!=null)message.profile_url=$String(object.profile_url);if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.display_name!=null)message.display_name=$String(object.display_name);if(object.lobby_id!=null)message.lobby_id=$String(object.lobby_id);if(object.party_id!=null)message.party_id=$String(object.party_id);if(object.is_online!=null)message.is_online=$Boolean(object.is_online);if(object.last_seen_at_ms!=null)if($util.Long)message.last_seen_at_ms=$util.Long.fromValue(object.last_seen_at_ms,false);else if(typeof object.last_seen_at_ms==="string")message.last_seen_at_ms=$parseInt(object.last_seen_at_ms,10);else if(typeof object.last_seen_at_ms==="number")message.last_seen_at_ms=object.last_seen_at_ms;else if(_typeof(object.last_seen_at_ms)==="object")message.last_seen_at_ms=new $util.LongBits(object.last_seen_at_ms.low>>>0,object.last_seen_at_ms.high>>>0).toNumber();if(object.linked_providers!=null){if(!$util.isObject(object.linked_providers))throw $TypeError(".gamend.realtime.v1.User.linked_providers: object expected");message.linked_providers=$root.gamend.realtime.v1.LinkedProviders.fromObject(object.linked_providers,_depth+1);}if(object.has_password!=null)message.has_password=$Boolean(object.has_password);if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;if(object.username!=null)message.username=$String(object.username);return message;};/**
255
+ * Creates a plain object from a User message. Also converts values to other types if specified.
256
+ * @function toObject
257
+ * @memberof gamend.realtime.v1.User
258
+ * @static
259
+ * @param {gamend.realtime.v1.User} message User
260
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
261
+ * @returns {Object.<string,*>} Plain object
262
+ */User.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.email!=null&&$Object.hasOwnProperty.call(message,"email"))object.email=message.email;if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))object.profile_url=message.profile_url;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))object.display_name=message.display_name;if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))object.lobby_id=message.lobby_id;if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id"))object.party_id=message.party_id;if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))object.is_online=message.is_online;if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.last_seen_at_ms=typeof message.last_seen_at_ms==="number"?$BigInt(message.last_seen_at_ms):$util.Long.fromBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0,false).toBigInt();else if(typeof message.last_seen_at_ms==="number")object.last_seen_at_ms=options.longs===$String?$String(message.last_seen_at_ms):message.last_seen_at_ms;else object.last_seen_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.last_seen_at_ms):options.longs===$Number?new $util.LongBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0).toNumber():message.last_seen_at_ms;if(message.linked_providers!=null&&$Object.hasOwnProperty.call(message,"linked_providers"))object.linked_providers=$root.gamend.realtime.v1.LinkedProviders.toObject(message.linked_providers,options,_depth+1);if(message.has_password!=null&&$Object.hasOwnProperty.call(message,"has_password"))object.has_password=message.has_password;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))object.username=message.username;return object;};/**
263
+ * Converts this User to JSON.
264
+ * @function toJSON
265
+ * @memberof gamend.realtime.v1.User
266
+ * @instance
267
+ * @returns {Object.<string,*>} JSON object
268
+ */User.prototype.toJSON=function(){return User.toObject(this,_minimal["default"].util.toJSONOptions);};/**
269
+ * Gets the type url for User
270
+ * @function getTypeUrl
271
+ * @memberof gamend.realtime.v1.User
272
+ * @static
273
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
274
+ * @returns {string} The type url
275
+ */User.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.User";};return User;}();v1.FriendUpdate=function(){/**
276
+ * Properties of a FriendUpdate.
277
+ * @typedef {Object} gamend.realtime.v1.FriendUpdate.$Properties
278
+ * @property {Object.<string,gamend.realtime.v1.User.$Properties>|null} [friends] FriendUpdate friends
279
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
280
+ *//**
281
+ * Properties of a FriendUpdate.
282
+ * @memberof gamend.realtime.v1
283
+ * @interface IFriendUpdate
284
+ * @augments gamend.realtime.v1.FriendUpdate.$Properties
285
+ * @deprecated Use gamend.realtime.v1.FriendUpdate.$Properties instead.
286
+ *//**
287
+ * Shape of a FriendUpdate.
288
+ * @typedef {gamend.realtime.v1.FriendUpdate.$Properties} gamend.realtime.v1.FriendUpdate.$Shape
289
+ *//**
290
+ * Constructs a new FriendUpdate.
291
+ * @memberof gamend.realtime.v1
292
+ * @classdesc Represents a FriendUpdate.
293
+ * @constructor
294
+ * @param {gamend.realtime.v1.FriendUpdate.$Properties=} [properties] Properties to set
295
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
296
+ */var FriendUpdate=function FriendUpdate(properties){this.friends={};if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
297
+ * FriendUpdate friends.
298
+ * @member {Object.<string,gamend.realtime.v1.User.$Properties>} friends
299
+ * @memberof gamend.realtime.v1.FriendUpdate
300
+ * @instance
301
+ */FriendUpdate.prototype.friends=$util.emptyObject;/**
302
+ * Encodes the specified FriendUpdate message. Does not implicitly {@link gamend.realtime.v1.FriendUpdate.verify|verify} messages.
303
+ * @function encode
304
+ * @memberof gamend.realtime.v1.FriendUpdate
305
+ * @static
306
+ * @param {gamend.realtime.v1.FriendUpdate.$Properties} message FriendUpdate message or plain object to encode
307
+ * @param {$protobuf.Writer} [writer] Writer to encode to
308
+ * @returns {$protobuf.Writer} Writer
309
+ */FriendUpdate.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.friends!=null&&$Object.hasOwnProperty.call(message,"friends"))for(var keys=$Object.keys(message.friends),i=0;i<keys.length;++i){writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);$root.gamend.realtime.v1.User.encode(message.friends[keys[i]],writer.uint32(/* id 2, wireType 2 =*/18).fork(),_depth+1).ldelim().ldelim();}if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i=0;_i<message.$unknowns.length;++_i)writer.raw(message.$unknowns[_i]);return writer;};/**
310
+ * Decodes a FriendUpdate message from the specified reader or buffer.
311
+ * @function decode
312
+ * @memberof gamend.realtime.v1.FriendUpdate
313
+ * @static
314
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
315
+ * @param {number} [length] Message length if known beforehand
316
+ * @returns {gamend.realtime.v1.FriendUpdate & gamend.realtime.v1.FriendUpdate.$Shape} FriendUpdate
317
+ * @throws {Error} If the payload is not a reader or valid buffer
318
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
319
+ */FriendUpdate.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.FriendUpdate(),key,value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if(message.friends===$util.emptyObject)message.friends={};var end2=reader.uint32()+reader.pos;key="";value=null;while(reader.pos<end2){var tag2=reader.tag();wireType=tag2&7;switch(tag2>>>=3){case 1:if(wireType!==2)break;key=reader.stringVerify();continue;case 2:if(wireType!==2)break;value=$root.gamend.realtime.v1.User.decode(reader,reader.uint32(),$undefined,_depth+1,value);continue;}reader.skipType(wireType,_depth,tag2);}if(key==="__proto__")$util.makeProp(message.friends,key);message.friends[key]=value||new $root.gamend.realtime.v1.User();continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
320
+ * Creates a FriendUpdate message from a plain object. Also converts values to their respective internal types.
321
+ * @function fromObject
322
+ * @memberof gamend.realtime.v1.FriendUpdate
323
+ * @static
324
+ * @param {Object.<string,*>} object Plain object
325
+ * @returns {gamend.realtime.v1.FriendUpdate} FriendUpdate
326
+ */FriendUpdate.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.FriendUpdate)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.FriendUpdate: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.FriendUpdate();if(object.friends){if(!$util.isObject(object.friends))throw $TypeError(".gamend.realtime.v1.FriendUpdate.friends: object expected");message.friends={};for(var keys=$Object.keys(object.friends),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.friends,keys[i]);if(!$util.isObject(object.friends[keys[i]]))throw $TypeError(".gamend.realtime.v1.FriendUpdate.friends: object expected");message.friends[keys[i]]=$root.gamend.realtime.v1.User.fromObject(object.friends[keys[i]],_depth+1);}}return message;};/**
327
+ * Creates a plain object from a FriendUpdate message. Also converts values to other types if specified.
328
+ * @function toObject
329
+ * @memberof gamend.realtime.v1.FriendUpdate
330
+ * @static
331
+ * @param {gamend.realtime.v1.FriendUpdate} message FriendUpdate
332
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
333
+ * @returns {Object.<string,*>} Plain object
334
+ */FriendUpdate.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.objects||options.defaults)object.friends={};var keys2;if(message.friends&&(keys2=$Object.keys(message.friends)).length){object.friends={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.friends,keys2[j]);object.friends[keys2[j]]=$root.gamend.realtime.v1.User.toObject(message.friends[keys2[j]],options,_depth+1);}}return object;};/**
335
+ * Converts this FriendUpdate to JSON.
336
+ * @function toJSON
337
+ * @memberof gamend.realtime.v1.FriendUpdate
338
+ * @instance
339
+ * @returns {Object.<string,*>} JSON object
340
+ */FriendUpdate.prototype.toJSON=function(){return FriendUpdate.toObject(this,_minimal["default"].util.toJSONOptions);};/**
341
+ * Gets the type url for FriendUpdate
342
+ * @function getTypeUrl
343
+ * @memberof gamend.realtime.v1.FriendUpdate
344
+ * @static
345
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
346
+ * @returns {string} The type url
347
+ */FriendUpdate.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.FriendUpdate";};return FriendUpdate;}();v1.UserBrief=function(){/**
348
+ * Properties of a UserBrief.
349
+ * @typedef {Object} gamend.realtime.v1.UserBrief.$Properties
350
+ * @property {string|null} [id] UserBrief id
351
+ * @property {string|null} [display_name] UserBrief display_name
352
+ * @property {string|null} [profile_url] UserBrief profile_url
353
+ * @property {Uint8Array|null} [metadata_json] UserBrief metadata_json
354
+ * @property {boolean|null} [is_online] UserBrief is_online
355
+ * @property {boolean|null} [is_activated] UserBrief is_activated
356
+ * @property {number|Long|null} [last_seen_at_ms] UserBrief last_seen_at_ms
357
+ * @property {Uint8Array|null} [metadata_pb] UserBrief metadata_pb
358
+ * @property {string|null} [username] UserBrief username
359
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
360
+ *//**
361
+ * Properties of a UserBrief.
362
+ * @memberof gamend.realtime.v1
363
+ * @interface IUserBrief
364
+ * @augments gamend.realtime.v1.UserBrief.$Properties
365
+ * @deprecated Use gamend.realtime.v1.UserBrief.$Properties instead.
366
+ *//**
367
+ * Shape of a UserBrief.
368
+ * @typedef {gamend.realtime.v1.UserBrief.$Properties} gamend.realtime.v1.UserBrief.$Shape
369
+ *//**
370
+ * Constructs a new UserBrief.
371
+ * @memberof gamend.realtime.v1
372
+ * @classdesc Represents a UserBrief.
373
+ * @constructor
374
+ * @param {gamend.realtime.v1.UserBrief.$Properties=} [properties] Properties to set
375
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
376
+ */var UserBrief=function UserBrief(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
377
+ * UserBrief id.
378
+ * @member {string|null|undefined} id
379
+ * @memberof gamend.realtime.v1.UserBrief
380
+ * @instance
381
+ */UserBrief.prototype.id=null;/**
382
+ * UserBrief display_name.
383
+ * @member {string|null|undefined} display_name
384
+ * @memberof gamend.realtime.v1.UserBrief
385
+ * @instance
386
+ */UserBrief.prototype.display_name=null;/**
387
+ * UserBrief profile_url.
388
+ * @member {string|null|undefined} profile_url
389
+ * @memberof gamend.realtime.v1.UserBrief
390
+ * @instance
391
+ */UserBrief.prototype.profile_url=null;/**
392
+ * UserBrief metadata_json.
393
+ * @member {Uint8Array|null|undefined} metadata_json
394
+ * @memberof gamend.realtime.v1.UserBrief
395
+ * @instance
396
+ */UserBrief.prototype.metadata_json=null;/**
397
+ * UserBrief is_online.
398
+ * @member {boolean|null|undefined} is_online
399
+ * @memberof gamend.realtime.v1.UserBrief
400
+ * @instance
401
+ */UserBrief.prototype.is_online=null;/**
402
+ * UserBrief is_activated.
403
+ * @member {boolean|null|undefined} is_activated
404
+ * @memberof gamend.realtime.v1.UserBrief
405
+ * @instance
406
+ */UserBrief.prototype.is_activated=null;/**
407
+ * UserBrief last_seen_at_ms.
408
+ * @member {number|Long|null|undefined} last_seen_at_ms
409
+ * @memberof gamend.realtime.v1.UserBrief
410
+ * @instance
411
+ */UserBrief.prototype.last_seen_at_ms=null;/**
412
+ * UserBrief metadata_pb.
413
+ * @member {Uint8Array|null|undefined} metadata_pb
414
+ * @memberof gamend.realtime.v1.UserBrief
415
+ * @instance
416
+ */UserBrief.prototype.metadata_pb=null;/**
417
+ * UserBrief username.
418
+ * @member {string|null|undefined} username
419
+ * @memberof gamend.realtime.v1.UserBrief
420
+ * @instance
421
+ */UserBrief.prototype.username=null;// OneOf field names bound to virtual getters and setters
422
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
423
+ $Object.defineProperty(UserBrief.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
424
+ $Object.defineProperty(UserBrief.prototype,"_display_name",{get:$util.oneOfGetter($oneOfFields=["display_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
425
+ $Object.defineProperty(UserBrief.prototype,"_profile_url",{get:$util.oneOfGetter($oneOfFields=["profile_url"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
426
+ $Object.defineProperty(UserBrief.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
427
+ $Object.defineProperty(UserBrief.prototype,"_is_online",{get:$util.oneOfGetter($oneOfFields=["is_online"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
428
+ $Object.defineProperty(UserBrief.prototype,"_is_activated",{get:$util.oneOfGetter($oneOfFields=["is_activated"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
429
+ $Object.defineProperty(UserBrief.prototype,"_last_seen_at_ms",{get:$util.oneOfGetter($oneOfFields=["last_seen_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
430
+ $Object.defineProperty(UserBrief.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
431
+ $Object.defineProperty(UserBrief.prototype,"_username",{get:$util.oneOfGetter($oneOfFields=["username"]),set:$util.oneOfSetter($oneOfFields)});/**
432
+ * Encodes the specified UserBrief message. Does not implicitly {@link gamend.realtime.v1.UserBrief.verify|verify} messages.
433
+ * @function encode
434
+ * @memberof gamend.realtime.v1.UserBrief
435
+ * @static
436
+ * @param {gamend.realtime.v1.UserBrief.$Properties} message UserBrief message or plain object to encode
437
+ * @param {$protobuf.Writer} [writer] Writer to encode to
438
+ * @returns {$protobuf.Writer} Writer
439
+ */UserBrief.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.display_name);if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.profile_url);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.metadata_json);if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))writer.uint32(/* id 5, wireType 0 =*/40).bool(message.is_online);if(message.is_activated!=null&&$Object.hasOwnProperty.call(message,"is_activated"))writer.uint32(/* id 6, wireType 0 =*/48).bool(message.is_activated);if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))writer.uint32(/* id 7, wireType 0 =*/56).int64(message.last_seen_at_ms);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 8, wireType 2 =*/66).bytes(message.metadata_pb);if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))writer.uint32(/* id 9, wireType 2 =*/74).string(message.username);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
440
+ * Decodes a UserBrief message from the specified reader or buffer.
441
+ * @function decode
442
+ * @memberof gamend.realtime.v1.UserBrief
443
+ * @static
444
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
445
+ * @param {number} [length] Message length if known beforehand
446
+ * @returns {gamend.realtime.v1.UserBrief & gamend.realtime.v1.UserBrief.$Shape} UserBrief
447
+ * @throws {Error} If the payload is not a reader or valid buffer
448
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
449
+ */UserBrief.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.UserBrief();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 2:{if(wireType!==2)break;message.display_name=reader.stringVerify();message._display_name="display_name";continue;}case 3:{if(wireType!==2)break;message.profile_url=reader.stringVerify();message._profile_url="profile_url";continue;}case 4:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 5:{if(wireType!==0)break;message.is_online=reader.bool();message._is_online="is_online";continue;}case 6:{if(wireType!==0)break;message.is_activated=reader.bool();message._is_activated="is_activated";continue;}case 7:{if(wireType!==0)break;message.last_seen_at_ms=reader.int64();message._last_seen_at_ms="last_seen_at_ms";continue;}case 8:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}case 9:{if(wireType!==2)break;message.username=reader.stringVerify();message._username="username";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
450
+ * Creates a UserBrief message from a plain object. Also converts values to their respective internal types.
451
+ * @function fromObject
452
+ * @memberof gamend.realtime.v1.UserBrief
453
+ * @static
454
+ * @param {Object.<string,*>} object Plain object
455
+ * @returns {gamend.realtime.v1.UserBrief} UserBrief
456
+ */UserBrief.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.UserBrief)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.UserBrief: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.UserBrief();if(object.id!=null)message.id=$String(object.id);if(object.display_name!=null)message.display_name=$String(object.display_name);if(object.profile_url!=null)message.profile_url=$String(object.profile_url);if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.is_online!=null)message.is_online=$Boolean(object.is_online);if(object.is_activated!=null)message.is_activated=$Boolean(object.is_activated);if(object.last_seen_at_ms!=null)if($util.Long)message.last_seen_at_ms=$util.Long.fromValue(object.last_seen_at_ms,false);else if(typeof object.last_seen_at_ms==="string")message.last_seen_at_ms=$parseInt(object.last_seen_at_ms,10);else if(typeof object.last_seen_at_ms==="number")message.last_seen_at_ms=object.last_seen_at_ms;else if(_typeof(object.last_seen_at_ms)==="object")message.last_seen_at_ms=new $util.LongBits(object.last_seen_at_ms.low>>>0,object.last_seen_at_ms.high>>>0).toNumber();if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;if(object.username!=null)message.username=$String(object.username);return message;};/**
457
+ * Creates a plain object from a UserBrief message. Also converts values to other types if specified.
458
+ * @function toObject
459
+ * @memberof gamend.realtime.v1.UserBrief
460
+ * @static
461
+ * @param {gamend.realtime.v1.UserBrief} message UserBrief
462
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
463
+ * @returns {Object.<string,*>} Plain object
464
+ */UserBrief.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))object.display_name=message.display_name;if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))object.profile_url=message.profile_url;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))object.is_online=message.is_online;if(message.is_activated!=null&&$Object.hasOwnProperty.call(message,"is_activated"))object.is_activated=message.is_activated;if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.last_seen_at_ms=typeof message.last_seen_at_ms==="number"?$BigInt(message.last_seen_at_ms):$util.Long.fromBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0,false).toBigInt();else if(typeof message.last_seen_at_ms==="number")object.last_seen_at_ms=options.longs===$String?$String(message.last_seen_at_ms):message.last_seen_at_ms;else object.last_seen_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.last_seen_at_ms):options.longs===$Number?new $util.LongBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0).toNumber():message.last_seen_at_ms;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))object.username=message.username;return object;};/**
465
+ * Converts this UserBrief to JSON.
466
+ * @function toJSON
467
+ * @memberof gamend.realtime.v1.UserBrief
468
+ * @instance
469
+ * @returns {Object.<string,*>} JSON object
470
+ */UserBrief.prototype.toJSON=function(){return UserBrief.toObject(this,_minimal["default"].util.toJSONOptions);};/**
471
+ * Gets the type url for UserBrief
472
+ * @function getTypeUrl
473
+ * @memberof gamend.realtime.v1.UserBrief
474
+ * @static
475
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
476
+ * @returns {string} The type url
477
+ */UserBrief.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.UserBrief";};return UserBrief;}();v1.Notification=function(){/**
478
+ * Properties of a Notification.
479
+ * @typedef {Object} gamend.realtime.v1.Notification.$Properties
480
+ * @property {string|null} [id] Notification id
481
+ * @property {string|null} [sender_id] Notification sender_id
482
+ * @property {string|null} [sender_name] Notification sender_name
483
+ * @property {string|null} [recipient_id] Notification recipient_id
484
+ * @property {string|null} [title] Notification title
485
+ * @property {string|null} [content] Notification content
486
+ * @property {Uint8Array|null} [metadata_json] Notification metadata_json
487
+ * @property {number|Long|null} [inserted_at_ms] Notification inserted_at_ms
488
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
489
+ *//**
490
+ * Properties of a Notification.
491
+ * @memberof gamend.realtime.v1
492
+ * @interface INotification
493
+ * @augments gamend.realtime.v1.Notification.$Properties
494
+ * @deprecated Use gamend.realtime.v1.Notification.$Properties instead.
495
+ *//**
496
+ * Shape of a Notification.
497
+ * @typedef {gamend.realtime.v1.Notification.$Properties} gamend.realtime.v1.Notification.$Shape
498
+ *//**
499
+ * Constructs a new Notification.
500
+ * @memberof gamend.realtime.v1
501
+ * @classdesc Represents a Notification.
502
+ * @constructor
503
+ * @param {gamend.realtime.v1.Notification.$Properties=} [properties] Properties to set
504
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
505
+ */var Notification=function Notification(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
506
+ * Notification id.
507
+ * @member {string} id
508
+ * @memberof gamend.realtime.v1.Notification
509
+ * @instance
510
+ */Notification.prototype.id="";/**
511
+ * Notification sender_id.
512
+ * @member {string} sender_id
513
+ * @memberof gamend.realtime.v1.Notification
514
+ * @instance
515
+ */Notification.prototype.sender_id="";/**
516
+ * Notification sender_name.
517
+ * @member {string} sender_name
518
+ * @memberof gamend.realtime.v1.Notification
519
+ * @instance
520
+ */Notification.prototype.sender_name="";/**
521
+ * Notification recipient_id.
522
+ * @member {string} recipient_id
523
+ * @memberof gamend.realtime.v1.Notification
524
+ * @instance
525
+ */Notification.prototype.recipient_id="";/**
526
+ * Notification title.
527
+ * @member {string} title
528
+ * @memberof gamend.realtime.v1.Notification
529
+ * @instance
530
+ */Notification.prototype.title="";/**
531
+ * Notification content.
532
+ * @member {string} content
533
+ * @memberof gamend.realtime.v1.Notification
534
+ * @instance
535
+ */Notification.prototype.content="";/**
536
+ * Notification metadata_json.
537
+ * @member {Uint8Array} metadata_json
538
+ * @memberof gamend.realtime.v1.Notification
539
+ * @instance
540
+ */Notification.prototype.metadata_json=$util.newBuffer([]);/**
541
+ * Notification inserted_at_ms.
542
+ * @member {number|Long} inserted_at_ms
543
+ * @memberof gamend.realtime.v1.Notification
544
+ * @instance
545
+ */Notification.prototype.inserted_at_ms=$util.Long?$util.Long.fromBits(0,0,false):0;/**
546
+ * Encodes the specified Notification message. Does not implicitly {@link gamend.realtime.v1.Notification.verify|verify} messages.
547
+ * @function encode
548
+ * @memberof gamend.realtime.v1.Notification
549
+ * @static
550
+ * @param {gamend.realtime.v1.Notification.$Properties} message Notification message or plain object to encode
551
+ * @param {$protobuf.Writer} [writer] Writer to encode to
552
+ * @returns {$protobuf.Writer} Writer
553
+ */Notification.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.sender_id!=null&&$Object.hasOwnProperty.call(message,"sender_id")&&message.sender_id!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.sender_id);if(message.sender_name!=null&&$Object.hasOwnProperty.call(message,"sender_name")&&message.sender_name!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.sender_name);if(message.recipient_id!=null&&$Object.hasOwnProperty.call(message,"recipient_id")&&message.recipient_id!=="")writer.uint32(/* id 4, wireType 2 =*/34).string(message.recipient_id);if(message.title!=null&&$Object.hasOwnProperty.call(message,"title")&&message.title!=="")writer.uint32(/* id 5, wireType 2 =*/42).string(message.title);if(message.content!=null&&$Object.hasOwnProperty.call(message,"content")&&message.content!=="")writer.uint32(/* id 6, wireType 2 =*/50).string(message.content);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json")&&message.metadata_json.length)writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.metadata_json);if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms")&&(_typeof(message.inserted_at_ms)==="object"?message.inserted_at_ms.low||message.inserted_at_ms.high:message.inserted_at_ms!==0))writer.uint32(/* id 8, wireType 0 =*/64).int64(message.inserted_at_ms);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
554
+ * Decodes a Notification message from the specified reader or buffer.
555
+ * @function decode
556
+ * @memberof gamend.realtime.v1.Notification
557
+ * @static
558
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
559
+ * @param {number} [length] Message length if known beforehand
560
+ * @returns {gamend.realtime.v1.Notification & gamend.realtime.v1.Notification.$Shape} Notification
561
+ * @throws {Error} If the payload is not a reader or valid buffer
562
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
563
+ */Notification.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.Notification(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.sender_id=value;else delete message.sender_id;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.sender_name=value;else delete message.sender_name;continue;}case 4:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.recipient_id=value;else delete message.recipient_id;continue;}case 5:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.title=value;else delete message.title;continue;}case 6:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.content=value;else delete message.content;continue;}case 7:{if(wireType!==2)break;if((value=reader.bytes()).length)message.metadata_json=value;else delete message.metadata_json;continue;}case 8:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.inserted_at_ms=value;else delete message.inserted_at_ms;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
564
+ * Creates a Notification message from a plain object. Also converts values to their respective internal types.
565
+ * @function fromObject
566
+ * @memberof gamend.realtime.v1.Notification
567
+ * @static
568
+ * @param {Object.<string,*>} object Plain object
569
+ * @returns {gamend.realtime.v1.Notification} Notification
570
+ */Notification.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.Notification)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.Notification: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.Notification();if(object.id!=null)if(typeof object.id!=="string"||object.id.length)message.id=$String(object.id);if(object.sender_id!=null)if(typeof object.sender_id!=="string"||object.sender_id.length)message.sender_id=$String(object.sender_id);if(object.sender_name!=null)if(typeof object.sender_name!=="string"||object.sender_name.length)message.sender_name=$String(object.sender_name);if(object.recipient_id!=null)if(typeof object.recipient_id!=="string"||object.recipient_id.length)message.recipient_id=$String(object.recipient_id);if(object.title!=null)if(typeof object.title!=="string"||object.title.length)message.title=$String(object.title);if(object.content!=null)if(typeof object.content!=="string"||object.content.length)message.content=$String(object.content);if(object.metadata_json!=null)if(object.metadata_json.length)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.inserted_at_ms!=null)if(_typeof(object.inserted_at_ms)==="object"?object.inserted_at_ms.low||object.inserted_at_ms.high:$Number(object.inserted_at_ms)!==0)if($util.Long)message.inserted_at_ms=$util.Long.fromValue(object.inserted_at_ms,false);else if(typeof object.inserted_at_ms==="string")message.inserted_at_ms=$parseInt(object.inserted_at_ms,10);else if(typeof object.inserted_at_ms==="number")message.inserted_at_ms=object.inserted_at_ms;else if(_typeof(object.inserted_at_ms)==="object")message.inserted_at_ms=new $util.LongBits(object.inserted_at_ms.low>>>0,object.inserted_at_ms.high>>>0).toNumber();return message;};/**
571
+ * Creates a plain object from a Notification message. Also converts values to other types if specified.
572
+ * @function toObject
573
+ * @memberof gamend.realtime.v1.Notification
574
+ * @static
575
+ * @param {gamend.realtime.v1.Notification} message Notification
576
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
577
+ * @returns {Object.<string,*>} Plain object
578
+ */Notification.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.id="";object.sender_id="";object.sender_name="";object.recipient_id="";object.title="";object.content="";if(options.bytes===$String)object.metadata_json="";else{object.metadata_json=[];if(options.bytes!==$Array)object.metadata_json=$util.newBuffer(object.metadata_json);}if($util.Long){var _long=new $util.Long(0,0,false);object.inserted_at_ms=options.longs===$String?_long.toString():options.longs===$Number?_long.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long.toBigInt():_long;}else object.inserted_at_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.sender_id!=null&&$Object.hasOwnProperty.call(message,"sender_id"))object.sender_id=message.sender_id;if(message.sender_name!=null&&$Object.hasOwnProperty.call(message,"sender_name"))object.sender_name=message.sender_name;if(message.recipient_id!=null&&$Object.hasOwnProperty.call(message,"recipient_id"))object.recipient_id=message.recipient_id;if(message.title!=null&&$Object.hasOwnProperty.call(message,"title"))object.title=message.title;if(message.content!=null&&$Object.hasOwnProperty.call(message,"content"))object.content=message.content;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.inserted_at_ms=typeof message.inserted_at_ms==="number"?$BigInt(message.inserted_at_ms):$util.Long.fromBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0,false).toBigInt();else if(typeof message.inserted_at_ms==="number")object.inserted_at_ms=options.longs===$String?$String(message.inserted_at_ms):message.inserted_at_ms;else object.inserted_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.inserted_at_ms):options.longs===$Number?new $util.LongBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0).toNumber():message.inserted_at_ms;return object;};/**
579
+ * Converts this Notification to JSON.
580
+ * @function toJSON
581
+ * @memberof gamend.realtime.v1.Notification
582
+ * @instance
583
+ * @returns {Object.<string,*>} JSON object
584
+ */Notification.prototype.toJSON=function(){return Notification.toObject(this,_minimal["default"].util.toJSONOptions);};/**
585
+ * Gets the type url for Notification
586
+ * @function getTypeUrl
587
+ * @memberof gamend.realtime.v1.Notification
588
+ * @static
589
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
590
+ * @returns {string} The type url
591
+ */Notification.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.Notification";};return Notification;}();v1.ChatMessage=function(){/**
592
+ * Properties of a ChatMessage.
593
+ * @typedef {Object} gamend.realtime.v1.ChatMessage.$Properties
594
+ * @property {string|null} [id] ChatMessage id
595
+ * @property {string|null} [content] ChatMessage content
596
+ * @property {Uint8Array|null} [metadata_json] ChatMessage metadata_json
597
+ * @property {string|null} [sender_id] ChatMessage sender_id
598
+ * @property {string|null} [sender_name] ChatMessage sender_name
599
+ * @property {string|null} [chat_type] ChatMessage chat_type
600
+ * @property {string|null} [chat_ref_id] ChatMessage chat_ref_id
601
+ * @property {number|Long|null} [inserted_at_ms] ChatMessage inserted_at_ms
602
+ * @property {number|Long|null} [updated_at_ms] ChatMessage updated_at_ms
603
+ * @property {string|null} [sender_email] ChatMessage sender_email
604
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
605
+ *//**
606
+ * Properties of a ChatMessage.
607
+ * @memberof gamend.realtime.v1
608
+ * @interface IChatMessage
609
+ * @augments gamend.realtime.v1.ChatMessage.$Properties
610
+ * @deprecated Use gamend.realtime.v1.ChatMessage.$Properties instead.
611
+ *//**
612
+ * Shape of a ChatMessage.
613
+ * @typedef {gamend.realtime.v1.ChatMessage.$Properties} gamend.realtime.v1.ChatMessage.$Shape
614
+ *//**
615
+ * Constructs a new ChatMessage.
616
+ * @memberof gamend.realtime.v1
617
+ * @classdesc Represents a ChatMessage.
618
+ * @constructor
619
+ * @param {gamend.realtime.v1.ChatMessage.$Properties=} [properties] Properties to set
620
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
621
+ */var ChatMessage=function ChatMessage(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
622
+ * ChatMessage id.
623
+ * @member {string} id
624
+ * @memberof gamend.realtime.v1.ChatMessage
625
+ * @instance
626
+ */ChatMessage.prototype.id="";/**
627
+ * ChatMessage content.
628
+ * @member {string} content
629
+ * @memberof gamend.realtime.v1.ChatMessage
630
+ * @instance
631
+ */ChatMessage.prototype.content="";/**
632
+ * ChatMessage metadata_json.
633
+ * @member {Uint8Array} metadata_json
634
+ * @memberof gamend.realtime.v1.ChatMessage
635
+ * @instance
636
+ */ChatMessage.prototype.metadata_json=$util.newBuffer([]);/**
637
+ * ChatMessage sender_id.
638
+ * @member {string} sender_id
639
+ * @memberof gamend.realtime.v1.ChatMessage
640
+ * @instance
641
+ */ChatMessage.prototype.sender_id="";/**
642
+ * ChatMessage sender_name.
643
+ * @member {string} sender_name
644
+ * @memberof gamend.realtime.v1.ChatMessage
645
+ * @instance
646
+ */ChatMessage.prototype.sender_name="";/**
647
+ * ChatMessage chat_type.
648
+ * @member {string} chat_type
649
+ * @memberof gamend.realtime.v1.ChatMessage
650
+ * @instance
651
+ */ChatMessage.prototype.chat_type="";/**
652
+ * ChatMessage chat_ref_id.
653
+ * @member {string} chat_ref_id
654
+ * @memberof gamend.realtime.v1.ChatMessage
655
+ * @instance
656
+ */ChatMessage.prototype.chat_ref_id="";/**
657
+ * ChatMessage inserted_at_ms.
658
+ * @member {number|Long} inserted_at_ms
659
+ * @memberof gamend.realtime.v1.ChatMessage
660
+ * @instance
661
+ */ChatMessage.prototype.inserted_at_ms=$util.Long?$util.Long.fromBits(0,0,false):0;/**
662
+ * ChatMessage updated_at_ms.
663
+ * @member {number|Long|null|undefined} updated_at_ms
664
+ * @memberof gamend.realtime.v1.ChatMessage
665
+ * @instance
666
+ */ChatMessage.prototype.updated_at_ms=null;/**
667
+ * ChatMessage sender_email.
668
+ * @member {string|null|undefined} sender_email
669
+ * @memberof gamend.realtime.v1.ChatMessage
670
+ * @instance
671
+ */ChatMessage.prototype.sender_email=null;// OneOf field names bound to virtual getters and setters
672
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
673
+ $Object.defineProperty(ChatMessage.prototype,"_updated_at_ms",{get:$util.oneOfGetter($oneOfFields=["updated_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
674
+ $Object.defineProperty(ChatMessage.prototype,"_sender_email",{get:$util.oneOfGetter($oneOfFields=["sender_email"]),set:$util.oneOfSetter($oneOfFields)});/**
675
+ * Encodes the specified ChatMessage message. Does not implicitly {@link gamend.realtime.v1.ChatMessage.verify|verify} messages.
676
+ * @function encode
677
+ * @memberof gamend.realtime.v1.ChatMessage
678
+ * @static
679
+ * @param {gamend.realtime.v1.ChatMessage.$Properties} message ChatMessage message or plain object to encode
680
+ * @param {$protobuf.Writer} [writer] Writer to encode to
681
+ * @returns {$protobuf.Writer} Writer
682
+ */ChatMessage.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.content!=null&&$Object.hasOwnProperty.call(message,"content")&&message.content!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.content);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json")&&message.metadata_json.length)writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.metadata_json);if(message.sender_id!=null&&$Object.hasOwnProperty.call(message,"sender_id")&&message.sender_id!=="")writer.uint32(/* id 4, wireType 2 =*/34).string(message.sender_id);if(message.sender_name!=null&&$Object.hasOwnProperty.call(message,"sender_name")&&message.sender_name!=="")writer.uint32(/* id 5, wireType 2 =*/42).string(message.sender_name);if(message.chat_type!=null&&$Object.hasOwnProperty.call(message,"chat_type")&&message.chat_type!=="")writer.uint32(/* id 6, wireType 2 =*/50).string(message.chat_type);if(message.chat_ref_id!=null&&$Object.hasOwnProperty.call(message,"chat_ref_id")&&message.chat_ref_id!=="")writer.uint32(/* id 7, wireType 2 =*/58).string(message.chat_ref_id);if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms")&&(_typeof(message.inserted_at_ms)==="object"?message.inserted_at_ms.low||message.inserted_at_ms.high:message.inserted_at_ms!==0))writer.uint32(/* id 8, wireType 0 =*/64).int64(message.inserted_at_ms);if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))writer.uint32(/* id 9, wireType 0 =*/72).int64(message.updated_at_ms);if(message.sender_email!=null&&$Object.hasOwnProperty.call(message,"sender_email"))writer.uint32(/* id 10, wireType 2 =*/82).string(message.sender_email);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
683
+ * Decodes a ChatMessage message from the specified reader or buffer.
684
+ * @function decode
685
+ * @memberof gamend.realtime.v1.ChatMessage
686
+ * @static
687
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
688
+ * @param {number} [length] Message length if known beforehand
689
+ * @returns {gamend.realtime.v1.ChatMessage & gamend.realtime.v1.ChatMessage.$Shape} ChatMessage
690
+ * @throws {Error} If the payload is not a reader or valid buffer
691
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
692
+ */ChatMessage.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.ChatMessage(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.content=value;else delete message.content;continue;}case 3:{if(wireType!==2)break;if((value=reader.bytes()).length)message.metadata_json=value;else delete message.metadata_json;continue;}case 4:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.sender_id=value;else delete message.sender_id;continue;}case 5:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.sender_name=value;else delete message.sender_name;continue;}case 6:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.chat_type=value;else delete message.chat_type;continue;}case 7:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.chat_ref_id=value;else delete message.chat_ref_id;continue;}case 8:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.inserted_at_ms=value;else delete message.inserted_at_ms;continue;}case 9:{if(wireType!==0)break;message.updated_at_ms=reader.int64();message._updated_at_ms="updated_at_ms";continue;}case 10:{if(wireType!==2)break;message.sender_email=reader.stringVerify();message._sender_email="sender_email";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
693
+ * Creates a ChatMessage message from a plain object. Also converts values to their respective internal types.
694
+ * @function fromObject
695
+ * @memberof gamend.realtime.v1.ChatMessage
696
+ * @static
697
+ * @param {Object.<string,*>} object Plain object
698
+ * @returns {gamend.realtime.v1.ChatMessage} ChatMessage
699
+ */ChatMessage.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.ChatMessage)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.ChatMessage: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.ChatMessage();if(object.id!=null)if(typeof object.id!=="string"||object.id.length)message.id=$String(object.id);if(object.content!=null)if(typeof object.content!=="string"||object.content.length)message.content=$String(object.content);if(object.metadata_json!=null)if(object.metadata_json.length)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.sender_id!=null)if(typeof object.sender_id!=="string"||object.sender_id.length)message.sender_id=$String(object.sender_id);if(object.sender_name!=null)if(typeof object.sender_name!=="string"||object.sender_name.length)message.sender_name=$String(object.sender_name);if(object.chat_type!=null)if(typeof object.chat_type!=="string"||object.chat_type.length)message.chat_type=$String(object.chat_type);if(object.chat_ref_id!=null)if(typeof object.chat_ref_id!=="string"||object.chat_ref_id.length)message.chat_ref_id=$String(object.chat_ref_id);if(object.inserted_at_ms!=null)if(_typeof(object.inserted_at_ms)==="object"?object.inserted_at_ms.low||object.inserted_at_ms.high:$Number(object.inserted_at_ms)!==0)if($util.Long)message.inserted_at_ms=$util.Long.fromValue(object.inserted_at_ms,false);else if(typeof object.inserted_at_ms==="string")message.inserted_at_ms=$parseInt(object.inserted_at_ms,10);else if(typeof object.inserted_at_ms==="number")message.inserted_at_ms=object.inserted_at_ms;else if(_typeof(object.inserted_at_ms)==="object")message.inserted_at_ms=new $util.LongBits(object.inserted_at_ms.low>>>0,object.inserted_at_ms.high>>>0).toNumber();if(object.updated_at_ms!=null)if($util.Long)message.updated_at_ms=$util.Long.fromValue(object.updated_at_ms,false);else if(typeof object.updated_at_ms==="string")message.updated_at_ms=$parseInt(object.updated_at_ms,10);else if(typeof object.updated_at_ms==="number")message.updated_at_ms=object.updated_at_ms;else if(_typeof(object.updated_at_ms)==="object")message.updated_at_ms=new $util.LongBits(object.updated_at_ms.low>>>0,object.updated_at_ms.high>>>0).toNumber();if(object.sender_email!=null)message.sender_email=$String(object.sender_email);return message;};/**
700
+ * Creates a plain object from a ChatMessage message. Also converts values to other types if specified.
701
+ * @function toObject
702
+ * @memberof gamend.realtime.v1.ChatMessage
703
+ * @static
704
+ * @param {gamend.realtime.v1.ChatMessage} message ChatMessage
705
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
706
+ * @returns {Object.<string,*>} Plain object
707
+ */ChatMessage.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.id="";object.content="";if(options.bytes===$String)object.metadata_json="";else{object.metadata_json=[];if(options.bytes!==$Array)object.metadata_json=$util.newBuffer(object.metadata_json);}object.sender_id="";object.sender_name="";object.chat_type="";object.chat_ref_id="";if($util.Long){var _long2=new $util.Long(0,0,false);object.inserted_at_ms=options.longs===$String?_long2.toString():options.longs===$Number?_long2.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long2.toBigInt():_long2;}else object.inserted_at_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.content!=null&&$Object.hasOwnProperty.call(message,"content"))object.content=message.content;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.sender_id!=null&&$Object.hasOwnProperty.call(message,"sender_id"))object.sender_id=message.sender_id;if(message.sender_name!=null&&$Object.hasOwnProperty.call(message,"sender_name"))object.sender_name=message.sender_name;if(message.chat_type!=null&&$Object.hasOwnProperty.call(message,"chat_type"))object.chat_type=message.chat_type;if(message.chat_ref_id!=null&&$Object.hasOwnProperty.call(message,"chat_ref_id"))object.chat_ref_id=message.chat_ref_id;if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.inserted_at_ms=typeof message.inserted_at_ms==="number"?$BigInt(message.inserted_at_ms):$util.Long.fromBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0,false).toBigInt();else if(typeof message.inserted_at_ms==="number")object.inserted_at_ms=options.longs===$String?$String(message.inserted_at_ms):message.inserted_at_ms;else object.inserted_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.inserted_at_ms):options.longs===$Number?new $util.LongBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0).toNumber():message.inserted_at_ms;if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.updated_at_ms=typeof message.updated_at_ms==="number"?$BigInt(message.updated_at_ms):$util.Long.fromBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0,false).toBigInt();else if(typeof message.updated_at_ms==="number")object.updated_at_ms=options.longs===$String?$String(message.updated_at_ms):message.updated_at_ms;else object.updated_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.updated_at_ms):options.longs===$Number?new $util.LongBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0).toNumber():message.updated_at_ms;if(message.sender_email!=null&&$Object.hasOwnProperty.call(message,"sender_email"))object.sender_email=message.sender_email;return object;};/**
708
+ * Converts this ChatMessage to JSON.
709
+ * @function toJSON
710
+ * @memberof gamend.realtime.v1.ChatMessage
711
+ * @instance
712
+ * @returns {Object.<string,*>} JSON object
713
+ */ChatMessage.prototype.toJSON=function(){return ChatMessage.toObject(this,_minimal["default"].util.toJSONOptions);};/**
714
+ * Gets the type url for ChatMessage
715
+ * @function getTypeUrl
716
+ * @memberof gamend.realtime.v1.ChatMessage
717
+ * @static
718
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
719
+ * @returns {string} The type url
720
+ */ChatMessage.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.ChatMessage";};return ChatMessage;}();v1.QuestProgress=function(){/**
721
+ * Properties of a QuestProgress.
722
+ * @typedef {Object} gamend.realtime.v1.QuestProgress.$Properties
723
+ * @property {string|null} [id] QuestProgress id
724
+ * @property {string|null} [user_id] QuestProgress user_id
725
+ * @property {string|null} [quest_key] QuestProgress quest_key
726
+ * @property {string|null} [period_key] QuestProgress period_key
727
+ * @property {Object.<string,number|Long>|null} [objective_progress] QuestProgress objective_progress
728
+ * @property {string|null} [status] QuestProgress status
729
+ * @property {number|Long|null} [completed_at_ms] QuestProgress completed_at_ms
730
+ * @property {number|Long|null} [claimed_at_ms] QuestProgress claimed_at_ms
731
+ * @property {Uint8Array|null} [metadata_json] QuestProgress metadata_json
732
+ * @property {number|Long|null} [inserted_at_ms] QuestProgress inserted_at_ms
733
+ * @property {number|Long|null} [updated_at_ms] QuestProgress updated_at_ms
734
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
735
+ *//**
736
+ * Properties of a QuestProgress.
737
+ * @memberof gamend.realtime.v1
738
+ * @interface IQuestProgress
739
+ * @augments gamend.realtime.v1.QuestProgress.$Properties
740
+ * @deprecated Use gamend.realtime.v1.QuestProgress.$Properties instead.
741
+ *//**
742
+ * Shape of a QuestProgress.
743
+ * @typedef {gamend.realtime.v1.QuestProgress.$Properties} gamend.realtime.v1.QuestProgress.$Shape
744
+ *//**
745
+ * Constructs a new QuestProgress.
746
+ * @memberof gamend.realtime.v1
747
+ * @classdesc Represents a QuestProgress.
748
+ * @constructor
749
+ * @param {gamend.realtime.v1.QuestProgress.$Properties=} [properties] Properties to set
750
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
751
+ */var QuestProgress=function QuestProgress(properties){this.objective_progress={};if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
752
+ * QuestProgress id.
753
+ * @member {string} id
754
+ * @memberof gamend.realtime.v1.QuestProgress
755
+ * @instance
756
+ */QuestProgress.prototype.id="";/**
757
+ * QuestProgress user_id.
758
+ * @member {string} user_id
759
+ * @memberof gamend.realtime.v1.QuestProgress
760
+ * @instance
761
+ */QuestProgress.prototype.user_id="";/**
762
+ * QuestProgress quest_key.
763
+ * @member {string} quest_key
764
+ * @memberof gamend.realtime.v1.QuestProgress
765
+ * @instance
766
+ */QuestProgress.prototype.quest_key="";/**
767
+ * QuestProgress period_key.
768
+ * @member {string} period_key
769
+ * @memberof gamend.realtime.v1.QuestProgress
770
+ * @instance
771
+ */QuestProgress.prototype.period_key="";/**
772
+ * QuestProgress objective_progress.
773
+ * @member {Object.<string,number|Long>} objective_progress
774
+ * @memberof gamend.realtime.v1.QuestProgress
775
+ * @instance
776
+ */QuestProgress.prototype.objective_progress=$util.emptyObject;/**
777
+ * QuestProgress status.
778
+ * @member {string} status
779
+ * @memberof gamend.realtime.v1.QuestProgress
780
+ * @instance
781
+ */QuestProgress.prototype.status="";/**
782
+ * QuestProgress completed_at_ms.
783
+ * @member {number|Long|null|undefined} completed_at_ms
784
+ * @memberof gamend.realtime.v1.QuestProgress
785
+ * @instance
786
+ */QuestProgress.prototype.completed_at_ms=null;/**
787
+ * QuestProgress claimed_at_ms.
788
+ * @member {number|Long|null|undefined} claimed_at_ms
789
+ * @memberof gamend.realtime.v1.QuestProgress
790
+ * @instance
791
+ */QuestProgress.prototype.claimed_at_ms=null;/**
792
+ * QuestProgress metadata_json.
793
+ * @member {Uint8Array} metadata_json
794
+ * @memberof gamend.realtime.v1.QuestProgress
795
+ * @instance
796
+ */QuestProgress.prototype.metadata_json=$util.newBuffer([]);/**
797
+ * QuestProgress inserted_at_ms.
798
+ * @member {number|Long} inserted_at_ms
799
+ * @memberof gamend.realtime.v1.QuestProgress
800
+ * @instance
801
+ */QuestProgress.prototype.inserted_at_ms=$util.Long?$util.Long.fromBits(0,0,false):0;/**
802
+ * QuestProgress updated_at_ms.
803
+ * @member {number|Long} updated_at_ms
804
+ * @memberof gamend.realtime.v1.QuestProgress
805
+ * @instance
806
+ */QuestProgress.prototype.updated_at_ms=$util.Long?$util.Long.fromBits(0,0,false):0;// OneOf field names bound to virtual getters and setters
807
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
808
+ $Object.defineProperty(QuestProgress.prototype,"_completed_at_ms",{get:$util.oneOfGetter($oneOfFields=["completed_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
809
+ $Object.defineProperty(QuestProgress.prototype,"_claimed_at_ms",{get:$util.oneOfGetter($oneOfFields=["claimed_at_ms"]),set:$util.oneOfSetter($oneOfFields)});/**
810
+ * Encodes the specified QuestProgress message. Does not implicitly {@link gamend.realtime.v1.QuestProgress.verify|verify} messages.
811
+ * @function encode
812
+ * @memberof gamend.realtime.v1.QuestProgress
813
+ * @static
814
+ * @param {gamend.realtime.v1.QuestProgress.$Properties} message QuestProgress message or plain object to encode
815
+ * @param {$protobuf.Writer} [writer] Writer to encode to
816
+ * @returns {$protobuf.Writer} Writer
817
+ */QuestProgress.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id")&&message.user_id!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.user_id);if(message.quest_key!=null&&$Object.hasOwnProperty.call(message,"quest_key")&&message.quest_key!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.quest_key);if(message.period_key!=null&&$Object.hasOwnProperty.call(message,"period_key")&&message.period_key!=="")writer.uint32(/* id 4, wireType 2 =*/34).string(message.period_key);if(message.objective_progress!=null&&$Object.hasOwnProperty.call(message,"objective_progress"))for(var keys=$Object.keys(message.objective_progress),i=0;i<keys.length;++i)writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 0 =*/16).int64(message.objective_progress[keys[i]]).ldelim();if(message.status!=null&&$Object.hasOwnProperty.call(message,"status")&&message.status!=="")writer.uint32(/* id 6, wireType 2 =*/50).string(message.status);if(message.completed_at_ms!=null&&$Object.hasOwnProperty.call(message,"completed_at_ms"))writer.uint32(/* id 7, wireType 0 =*/56).int64(message.completed_at_ms);if(message.claimed_at_ms!=null&&$Object.hasOwnProperty.call(message,"claimed_at_ms"))writer.uint32(/* id 8, wireType 0 =*/64).int64(message.claimed_at_ms);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json")&&message.metadata_json.length)writer.uint32(/* id 9, wireType 2 =*/74).bytes(message.metadata_json);if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms")&&(_typeof(message.inserted_at_ms)==="object"?message.inserted_at_ms.low||message.inserted_at_ms.high:message.inserted_at_ms!==0))writer.uint32(/* id 10, wireType 0 =*/80).int64(message.inserted_at_ms);if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms")&&(_typeof(message.updated_at_ms)==="object"?message.updated_at_ms.low||message.updated_at_ms.high:message.updated_at_ms!==0))writer.uint32(/* id 11, wireType 0 =*/88).int64(message.updated_at_ms);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i2=0;_i2<message.$unknowns.length;++_i2)writer.raw(message.$unknowns[_i2]);return writer;};/**
818
+ * Decodes a QuestProgress message from the specified reader or buffer.
819
+ * @function decode
820
+ * @memberof gamend.realtime.v1.QuestProgress
821
+ * @static
822
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
823
+ * @param {number} [length] Message length if known beforehand
824
+ * @returns {gamend.realtime.v1.QuestProgress & gamend.realtime.v1.QuestProgress.$Shape} QuestProgress
825
+ * @throws {Error} If the payload is not a reader or valid buffer
826
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
827
+ */QuestProgress.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.QuestProgress(),key,value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.user_id=value;else delete message.user_id;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.quest_key=value;else delete message.quest_key;continue;}case 4:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.period_key=value;else delete message.period_key;continue;}case 5:{if(wireType!==2)break;if(message.objective_progress===$util.emptyObject)message.objective_progress={};var end2=reader.uint32()+reader.pos;key="";value=$util.Long?$util.Long.fromNumber(0,false):0;while(reader.pos<end2){var tag2=reader.tag();wireType=tag2&7;switch(tag2>>>=3){case 1:if(wireType!==2)break;key=reader.stringVerify();continue;case 2:if(wireType!==0)break;value=reader.int64();continue;}reader.skipType(wireType,_depth,tag2);}if(key==="__proto__")$util.makeProp(message.objective_progress,key);message.objective_progress[key]=value;continue;}case 6:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.status=value;else delete message.status;continue;}case 7:{if(wireType!==0)break;message.completed_at_ms=reader.int64();message._completed_at_ms="completed_at_ms";continue;}case 8:{if(wireType!==0)break;message.claimed_at_ms=reader.int64();message._claimed_at_ms="claimed_at_ms";continue;}case 9:{if(wireType!==2)break;if((value=reader.bytes()).length)message.metadata_json=value;else delete message.metadata_json;continue;}case 10:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.inserted_at_ms=value;else delete message.inserted_at_ms;continue;}case 11:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.updated_at_ms=value;else delete message.updated_at_ms;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
828
+ * Creates a QuestProgress message from a plain object. Also converts values to their respective internal types.
829
+ * @function fromObject
830
+ * @memberof gamend.realtime.v1.QuestProgress
831
+ * @static
832
+ * @param {Object.<string,*>} object Plain object
833
+ * @returns {gamend.realtime.v1.QuestProgress} QuestProgress
834
+ */QuestProgress.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.QuestProgress)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.QuestProgress: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.QuestProgress();if(object.id!=null)if(typeof object.id!=="string"||object.id.length)message.id=$String(object.id);if(object.user_id!=null)if(typeof object.user_id!=="string"||object.user_id.length)message.user_id=$String(object.user_id);if(object.quest_key!=null)if(typeof object.quest_key!=="string"||object.quest_key.length)message.quest_key=$String(object.quest_key);if(object.period_key!=null)if(typeof object.period_key!=="string"||object.period_key.length)message.period_key=$String(object.period_key);if(object.objective_progress){if(!$util.isObject(object.objective_progress))throw $TypeError(".gamend.realtime.v1.QuestProgress.objective_progress: object expected");message.objective_progress={};for(var keys=$Object.keys(object.objective_progress),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.objective_progress,keys[i]);if($util.Long)message.objective_progress[keys[i]]=$util.Long.fromValue(object.objective_progress[keys[i]],false);else if(typeof object.objective_progress[keys[i]]==="string")message.objective_progress[keys[i]]=$parseInt(object.objective_progress[keys[i]],10);else if(typeof object.objective_progress[keys[i]]==="number")message.objective_progress[keys[i]]=object.objective_progress[keys[i]];else if(_typeof(object.objective_progress[keys[i]])==="object")message.objective_progress[keys[i]]=new $util.LongBits(object.objective_progress[keys[i]].low>>>0,object.objective_progress[keys[i]].high>>>0).toNumber();}}if(object.status!=null)if(typeof object.status!=="string"||object.status.length)message.status=$String(object.status);if(object.completed_at_ms!=null)if($util.Long)message.completed_at_ms=$util.Long.fromValue(object.completed_at_ms,false);else if(typeof object.completed_at_ms==="string")message.completed_at_ms=$parseInt(object.completed_at_ms,10);else if(typeof object.completed_at_ms==="number")message.completed_at_ms=object.completed_at_ms;else if(_typeof(object.completed_at_ms)==="object")message.completed_at_ms=new $util.LongBits(object.completed_at_ms.low>>>0,object.completed_at_ms.high>>>0).toNumber();if(object.claimed_at_ms!=null)if($util.Long)message.claimed_at_ms=$util.Long.fromValue(object.claimed_at_ms,false);else if(typeof object.claimed_at_ms==="string")message.claimed_at_ms=$parseInt(object.claimed_at_ms,10);else if(typeof object.claimed_at_ms==="number")message.claimed_at_ms=object.claimed_at_ms;else if(_typeof(object.claimed_at_ms)==="object")message.claimed_at_ms=new $util.LongBits(object.claimed_at_ms.low>>>0,object.claimed_at_ms.high>>>0).toNumber();if(object.metadata_json!=null)if(object.metadata_json.length)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.inserted_at_ms!=null)if(_typeof(object.inserted_at_ms)==="object"?object.inserted_at_ms.low||object.inserted_at_ms.high:$Number(object.inserted_at_ms)!==0)if($util.Long)message.inserted_at_ms=$util.Long.fromValue(object.inserted_at_ms,false);else if(typeof object.inserted_at_ms==="string")message.inserted_at_ms=$parseInt(object.inserted_at_ms,10);else if(typeof object.inserted_at_ms==="number")message.inserted_at_ms=object.inserted_at_ms;else if(_typeof(object.inserted_at_ms)==="object")message.inserted_at_ms=new $util.LongBits(object.inserted_at_ms.low>>>0,object.inserted_at_ms.high>>>0).toNumber();if(object.updated_at_ms!=null)if(_typeof(object.updated_at_ms)==="object"?object.updated_at_ms.low||object.updated_at_ms.high:$Number(object.updated_at_ms)!==0)if($util.Long)message.updated_at_ms=$util.Long.fromValue(object.updated_at_ms,false);else if(typeof object.updated_at_ms==="string")message.updated_at_ms=$parseInt(object.updated_at_ms,10);else if(typeof object.updated_at_ms==="number")message.updated_at_ms=object.updated_at_ms;else if(_typeof(object.updated_at_ms)==="object")message.updated_at_ms=new $util.LongBits(object.updated_at_ms.low>>>0,object.updated_at_ms.high>>>0).toNumber();return message;};/**
835
+ * Creates a plain object from a QuestProgress message. Also converts values to other types if specified.
836
+ * @function toObject
837
+ * @memberof gamend.realtime.v1.QuestProgress
838
+ * @static
839
+ * @param {gamend.realtime.v1.QuestProgress} message QuestProgress
840
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
841
+ * @returns {Object.<string,*>} Plain object
842
+ */QuestProgress.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.objects||options.defaults)object.objective_progress={};if(options.defaults){object.id="";object.user_id="";object.quest_key="";object.period_key="";object.status="";if(options.bytes===$String)object.metadata_json="";else{object.metadata_json=[];if(options.bytes!==$Array)object.metadata_json=$util.newBuffer(object.metadata_json);}if($util.Long){var _long3=new $util.Long(0,0,false);object.inserted_at_ms=options.longs===$String?_long3.toString():options.longs===$Number?_long3.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long3.toBigInt():_long3;}else object.inserted_at_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;if($util.Long){var _long4=new $util.Long(0,0,false);object.updated_at_ms=options.longs===$String?_long4.toString():options.longs===$Number?_long4.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long4.toBigInt():_long4;}else object.updated_at_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))object.user_id=message.user_id;if(message.quest_key!=null&&$Object.hasOwnProperty.call(message,"quest_key"))object.quest_key=message.quest_key;if(message.period_key!=null&&$Object.hasOwnProperty.call(message,"period_key"))object.period_key=message.period_key;var keys2;if(message.objective_progress&&(keys2=$Object.keys(message.objective_progress)).length){object.objective_progress={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.objective_progress,keys2[j]);if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.objective_progress[keys2[j]]=typeof message.objective_progress[keys2[j]]==="number"?$BigInt(message.objective_progress[keys2[j]]):$util.Long.fromBits(message.objective_progress[keys2[j]].low>>>0,message.objective_progress[keys2[j]].high>>>0,false).toBigInt();else if(typeof message.objective_progress[keys2[j]]==="number")object.objective_progress[keys2[j]]=options.longs===$String?$String(message.objective_progress[keys2[j]]):message.objective_progress[keys2[j]];else object.objective_progress[keys2[j]]=options.longs===$String?$util.Long.prototype.toString.call(message.objective_progress[keys2[j]]):options.longs===$Number?new $util.LongBits(message.objective_progress[keys2[j]].low>>>0,message.objective_progress[keys2[j]].high>>>0).toNumber():message.objective_progress[keys2[j]];}}if(message.status!=null&&$Object.hasOwnProperty.call(message,"status"))object.status=message.status;if(message.completed_at_ms!=null&&$Object.hasOwnProperty.call(message,"completed_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.completed_at_ms=typeof message.completed_at_ms==="number"?$BigInt(message.completed_at_ms):$util.Long.fromBits(message.completed_at_ms.low>>>0,message.completed_at_ms.high>>>0,false).toBigInt();else if(typeof message.completed_at_ms==="number")object.completed_at_ms=options.longs===$String?$String(message.completed_at_ms):message.completed_at_ms;else object.completed_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.completed_at_ms):options.longs===$Number?new $util.LongBits(message.completed_at_ms.low>>>0,message.completed_at_ms.high>>>0).toNumber():message.completed_at_ms;if(message.claimed_at_ms!=null&&$Object.hasOwnProperty.call(message,"claimed_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.claimed_at_ms=typeof message.claimed_at_ms==="number"?$BigInt(message.claimed_at_ms):$util.Long.fromBits(message.claimed_at_ms.low>>>0,message.claimed_at_ms.high>>>0,false).toBigInt();else if(typeof message.claimed_at_ms==="number")object.claimed_at_ms=options.longs===$String?$String(message.claimed_at_ms):message.claimed_at_ms;else object.claimed_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.claimed_at_ms):options.longs===$Number?new $util.LongBits(message.claimed_at_ms.low>>>0,message.claimed_at_ms.high>>>0).toNumber():message.claimed_at_ms;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.inserted_at_ms=typeof message.inserted_at_ms==="number"?$BigInt(message.inserted_at_ms):$util.Long.fromBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0,false).toBigInt();else if(typeof message.inserted_at_ms==="number")object.inserted_at_ms=options.longs===$String?$String(message.inserted_at_ms):message.inserted_at_ms;else object.inserted_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.inserted_at_ms):options.longs===$Number?new $util.LongBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0).toNumber():message.inserted_at_ms;if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.updated_at_ms=typeof message.updated_at_ms==="number"?$BigInt(message.updated_at_ms):$util.Long.fromBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0,false).toBigInt();else if(typeof message.updated_at_ms==="number")object.updated_at_ms=options.longs===$String?$String(message.updated_at_ms):message.updated_at_ms;else object.updated_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.updated_at_ms):options.longs===$Number?new $util.LongBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0).toNumber():message.updated_at_ms;return object;};/**
843
+ * Converts this QuestProgress to JSON.
844
+ * @function toJSON
845
+ * @memberof gamend.realtime.v1.QuestProgress
846
+ * @instance
847
+ * @returns {Object.<string,*>} JSON object
848
+ */QuestProgress.prototype.toJSON=function(){return QuestProgress.toObject(this,_minimal["default"].util.toJSONOptions);};/**
849
+ * Gets the type url for QuestProgress
850
+ * @function getTypeUrl
851
+ * @memberof gamend.realtime.v1.QuestProgress
852
+ * @static
853
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
854
+ * @returns {string} The type url
855
+ */QuestProgress.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.QuestProgress";};return QuestProgress;}();v1.Lobby=function(){/**
856
+ * Properties of a Lobby.
857
+ * @typedef {Object} gamend.realtime.v1.Lobby.$Properties
858
+ * @property {string|null} [id] Lobby id
859
+ * @property {string|null} [title] Lobby title
860
+ * @property {string|null} [host_id] Lobby host_id
861
+ * @property {string|null} [host_name] Lobby host_name
862
+ * @property {boolean|null} [hostless] Lobby hostless
863
+ * @property {number|null} [max_users] Lobby max_users
864
+ * @property {boolean|null} [is_hidden] Lobby is_hidden
865
+ * @property {boolean|null} [is_locked] Lobby is_locked
866
+ * @property {Uint8Array|null} [metadata_json] Lobby metadata_json
867
+ * @property {boolean|null} [is_passworded] Lobby is_passworded
868
+ * @property {number|null} [slowdown] Lobby slowdown
869
+ * @property {number|null} [spectator_count] Lobby spectator_count
870
+ * @property {Array.<gamend.realtime.v1.UserBrief.$Properties>|null} [members] Lobby members
871
+ * @property {boolean|null} [has_members] Lobby has_members
872
+ * @property {Uint8Array|null} [metadata_pb] Lobby metadata_pb
873
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
874
+ *//**
875
+ * Properties of a Lobby.
876
+ * @memberof gamend.realtime.v1
877
+ * @interface ILobby
878
+ * @augments gamend.realtime.v1.Lobby.$Properties
879
+ * @deprecated Use gamend.realtime.v1.Lobby.$Properties instead.
880
+ *//**
881
+ * Shape of a Lobby.
882
+ * @typedef {gamend.realtime.v1.Lobby.$Properties} gamend.realtime.v1.Lobby.$Shape
883
+ *//**
884
+ * Constructs a new Lobby.
885
+ * @memberof gamend.realtime.v1
886
+ * @classdesc Represents a Lobby.
887
+ * @constructor
888
+ * @param {gamend.realtime.v1.Lobby.$Properties=} [properties] Properties to set
889
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
890
+ */var Lobby=function Lobby(properties){this.members=[];if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
891
+ * Lobby id.
892
+ * @member {string|null|undefined} id
893
+ * @memberof gamend.realtime.v1.Lobby
894
+ * @instance
895
+ */Lobby.prototype.id=null;/**
896
+ * Lobby title.
897
+ * @member {string|null|undefined} title
898
+ * @memberof gamend.realtime.v1.Lobby
899
+ * @instance
900
+ */Lobby.prototype.title=null;/**
901
+ * Lobby host_id.
902
+ * @member {string|null|undefined} host_id
903
+ * @memberof gamend.realtime.v1.Lobby
904
+ * @instance
905
+ */Lobby.prototype.host_id=null;/**
906
+ * Lobby host_name.
907
+ * @member {string|null|undefined} host_name
908
+ * @memberof gamend.realtime.v1.Lobby
909
+ * @instance
910
+ */Lobby.prototype.host_name=null;/**
911
+ * Lobby hostless.
912
+ * @member {boolean|null|undefined} hostless
913
+ * @memberof gamend.realtime.v1.Lobby
914
+ * @instance
915
+ */Lobby.prototype.hostless=null;/**
916
+ * Lobby max_users.
917
+ * @member {number|null|undefined} max_users
918
+ * @memberof gamend.realtime.v1.Lobby
919
+ * @instance
920
+ */Lobby.prototype.max_users=null;/**
921
+ * Lobby is_hidden.
922
+ * @member {boolean|null|undefined} is_hidden
923
+ * @memberof gamend.realtime.v1.Lobby
924
+ * @instance
925
+ */Lobby.prototype.is_hidden=null;/**
926
+ * Lobby is_locked.
927
+ * @member {boolean|null|undefined} is_locked
928
+ * @memberof gamend.realtime.v1.Lobby
929
+ * @instance
930
+ */Lobby.prototype.is_locked=null;/**
931
+ * Lobby metadata_json.
932
+ * @member {Uint8Array|null|undefined} metadata_json
933
+ * @memberof gamend.realtime.v1.Lobby
934
+ * @instance
935
+ */Lobby.prototype.metadata_json=null;/**
936
+ * Lobby is_passworded.
937
+ * @member {boolean|null|undefined} is_passworded
938
+ * @memberof gamend.realtime.v1.Lobby
939
+ * @instance
940
+ */Lobby.prototype.is_passworded=null;/**
941
+ * Lobby slowdown.
942
+ * @member {number|null|undefined} slowdown
943
+ * @memberof gamend.realtime.v1.Lobby
944
+ * @instance
945
+ */Lobby.prototype.slowdown=null;/**
946
+ * Lobby spectator_count.
947
+ * @member {number|null|undefined} spectator_count
948
+ * @memberof gamend.realtime.v1.Lobby
949
+ * @instance
950
+ */Lobby.prototype.spectator_count=null;/**
951
+ * Lobby members.
952
+ * @member {Array.<gamend.realtime.v1.UserBrief.$Properties>} members
953
+ * @memberof gamend.realtime.v1.Lobby
954
+ * @instance
955
+ */Lobby.prototype.members=$util.emptyArray;/**
956
+ * Lobby has_members.
957
+ * @member {boolean|null|undefined} has_members
958
+ * @memberof gamend.realtime.v1.Lobby
959
+ * @instance
960
+ */Lobby.prototype.has_members=null;/**
961
+ * Lobby metadata_pb.
962
+ * @member {Uint8Array|null|undefined} metadata_pb
963
+ * @memberof gamend.realtime.v1.Lobby
964
+ * @instance
965
+ */Lobby.prototype.metadata_pb=null;// OneOf field names bound to virtual getters and setters
966
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
967
+ $Object.defineProperty(Lobby.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
968
+ $Object.defineProperty(Lobby.prototype,"_title",{get:$util.oneOfGetter($oneOfFields=["title"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
969
+ $Object.defineProperty(Lobby.prototype,"_host_id",{get:$util.oneOfGetter($oneOfFields=["host_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
970
+ $Object.defineProperty(Lobby.prototype,"_host_name",{get:$util.oneOfGetter($oneOfFields=["host_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
971
+ $Object.defineProperty(Lobby.prototype,"_hostless",{get:$util.oneOfGetter($oneOfFields=["hostless"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
972
+ $Object.defineProperty(Lobby.prototype,"_max_users",{get:$util.oneOfGetter($oneOfFields=["max_users"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
973
+ $Object.defineProperty(Lobby.prototype,"_is_hidden",{get:$util.oneOfGetter($oneOfFields=["is_hidden"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
974
+ $Object.defineProperty(Lobby.prototype,"_is_locked",{get:$util.oneOfGetter($oneOfFields=["is_locked"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
975
+ $Object.defineProperty(Lobby.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
976
+ $Object.defineProperty(Lobby.prototype,"_is_passworded",{get:$util.oneOfGetter($oneOfFields=["is_passworded"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
977
+ $Object.defineProperty(Lobby.prototype,"_slowdown",{get:$util.oneOfGetter($oneOfFields=["slowdown"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
978
+ $Object.defineProperty(Lobby.prototype,"_spectator_count",{get:$util.oneOfGetter($oneOfFields=["spectator_count"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
979
+ $Object.defineProperty(Lobby.prototype,"_has_members",{get:$util.oneOfGetter($oneOfFields=["has_members"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
980
+ $Object.defineProperty(Lobby.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});/**
981
+ * Encodes the specified Lobby message. Does not implicitly {@link gamend.realtime.v1.Lobby.verify|verify} messages.
982
+ * @function encode
983
+ * @memberof gamend.realtime.v1.Lobby
984
+ * @static
985
+ * @param {gamend.realtime.v1.Lobby.$Properties} message Lobby message or plain object to encode
986
+ * @param {$protobuf.Writer} [writer] Writer to encode to
987
+ * @returns {$protobuf.Writer} Writer
988
+ */Lobby.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.title!=null&&$Object.hasOwnProperty.call(message,"title"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.title);if(message.host_id!=null&&$Object.hasOwnProperty.call(message,"host_id"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.host_id);if(message.host_name!=null&&$Object.hasOwnProperty.call(message,"host_name"))writer.uint32(/* id 4, wireType 2 =*/34).string(message.host_name);if(message.hostless!=null&&$Object.hasOwnProperty.call(message,"hostless"))writer.uint32(/* id 5, wireType 0 =*/40).bool(message.hostless);if(message.max_users!=null&&$Object.hasOwnProperty.call(message,"max_users"))writer.uint32(/* id 6, wireType 0 =*/48).int32(message.max_users);if(message.is_hidden!=null&&$Object.hasOwnProperty.call(message,"is_hidden"))writer.uint32(/* id 7, wireType 0 =*/56).bool(message.is_hidden);if(message.is_locked!=null&&$Object.hasOwnProperty.call(message,"is_locked"))writer.uint32(/* id 8, wireType 0 =*/64).bool(message.is_locked);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 9, wireType 2 =*/74).bytes(message.metadata_json);if(message.is_passworded!=null&&$Object.hasOwnProperty.call(message,"is_passworded"))writer.uint32(/* id 10, wireType 0 =*/80).bool(message.is_passworded);if(message.slowdown!=null&&$Object.hasOwnProperty.call(message,"slowdown"))writer.uint32(/* id 11, wireType 0 =*/88).int32(message.slowdown);if(message.spectator_count!=null&&$Object.hasOwnProperty.call(message,"spectator_count"))writer.uint32(/* id 12, wireType 0 =*/96).int32(message.spectator_count);if(message.members!=null&&message.members.length)for(var i=0;i<message.members.length;++i)$root.gamend.realtime.v1.UserBrief.encode(message.members[i],writer.uint32(/* id 13, wireType 2 =*/106).fork(),_depth+1).ldelim();if(message.has_members!=null&&$Object.hasOwnProperty.call(message,"has_members"))writer.uint32(/* id 14, wireType 0 =*/112).bool(message.has_members);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 15, wireType 2 =*/122).bytes(message.metadata_pb);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i3=0;_i3<message.$unknowns.length;++_i3)writer.raw(message.$unknowns[_i3]);return writer;};/**
989
+ * Decodes a Lobby message from the specified reader or buffer.
990
+ * @function decode
991
+ * @memberof gamend.realtime.v1.Lobby
992
+ * @static
993
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
994
+ * @param {number} [length] Message length if known beforehand
995
+ * @returns {gamend.realtime.v1.Lobby & gamend.realtime.v1.Lobby.$Shape} Lobby
996
+ * @throws {Error} If the payload is not a reader or valid buffer
997
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
998
+ */Lobby.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.Lobby();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 2:{if(wireType!==2)break;message.title=reader.stringVerify();message._title="title";continue;}case 3:{if(wireType!==2)break;message.host_id=reader.stringVerify();message._host_id="host_id";continue;}case 4:{if(wireType!==2)break;message.host_name=reader.stringVerify();message._host_name="host_name";continue;}case 5:{if(wireType!==0)break;message.hostless=reader.bool();message._hostless="hostless";continue;}case 6:{if(wireType!==0)break;message.max_users=reader.int32();message._max_users="max_users";continue;}case 7:{if(wireType!==0)break;message.is_hidden=reader.bool();message._is_hidden="is_hidden";continue;}case 8:{if(wireType!==0)break;message.is_locked=reader.bool();message._is_locked="is_locked";continue;}case 9:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 10:{if(wireType!==0)break;message.is_passworded=reader.bool();message._is_passworded="is_passworded";continue;}case 11:{if(wireType!==0)break;message.slowdown=reader.int32();message._slowdown="slowdown";continue;}case 12:{if(wireType!==0)break;message.spectator_count=reader.int32();message._spectator_count="spectator_count";continue;}case 13:{if(wireType!==2)break;if(!(message.members&&message.members.length))message.members=[];message.members.push($root.gamend.realtime.v1.UserBrief.decode(reader,reader.uint32(),$undefined,_depth+1));continue;}case 14:{if(wireType!==0)break;message.has_members=reader.bool();message._has_members="has_members";continue;}case 15:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
999
+ * Creates a Lobby message from a plain object. Also converts values to their respective internal types.
1000
+ * @function fromObject
1001
+ * @memberof gamend.realtime.v1.Lobby
1002
+ * @static
1003
+ * @param {Object.<string,*>} object Plain object
1004
+ * @returns {gamend.realtime.v1.Lobby} Lobby
1005
+ */Lobby.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.Lobby)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.Lobby: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.Lobby();if(object.id!=null)message.id=$String(object.id);if(object.title!=null)message.title=$String(object.title);if(object.host_id!=null)message.host_id=$String(object.host_id);if(object.host_name!=null)message.host_name=$String(object.host_name);if(object.hostless!=null)message.hostless=$Boolean(object.hostless);if(object.max_users!=null)message.max_users=object.max_users|0;if(object.is_hidden!=null)message.is_hidden=$Boolean(object.is_hidden);if(object.is_locked!=null)message.is_locked=$Boolean(object.is_locked);if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.is_passworded!=null)message.is_passworded=$Boolean(object.is_passworded);if(object.slowdown!=null)message.slowdown=object.slowdown|0;if(object.spectator_count!=null)message.spectator_count=object.spectator_count|0;if(object.members){if(!$Array.isArray(object.members))throw $TypeError(".gamend.realtime.v1.Lobby.members: array expected");message.members=$Array(object.members.length);for(var i=0;i<object.members.length;++i){if(!$util.isObject(object.members[i]))throw $TypeError(".gamend.realtime.v1.Lobby.members: object expected");message.members[i]=$root.gamend.realtime.v1.UserBrief.fromObject(object.members[i],_depth+1);}}if(object.has_members!=null)message.has_members=$Boolean(object.has_members);if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;return message;};/**
1006
+ * Creates a plain object from a Lobby message. Also converts values to other types if specified.
1007
+ * @function toObject
1008
+ * @memberof gamend.realtime.v1.Lobby
1009
+ * @static
1010
+ * @param {gamend.realtime.v1.Lobby} message Lobby
1011
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1012
+ * @returns {Object.<string,*>} Plain object
1013
+ */Lobby.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.arrays||options.defaults)object.members=[];if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.title!=null&&$Object.hasOwnProperty.call(message,"title"))object.title=message.title;if(message.host_id!=null&&$Object.hasOwnProperty.call(message,"host_id"))object.host_id=message.host_id;if(message.host_name!=null&&$Object.hasOwnProperty.call(message,"host_name"))object.host_name=message.host_name;if(message.hostless!=null&&$Object.hasOwnProperty.call(message,"hostless"))object.hostless=message.hostless;if(message.max_users!=null&&$Object.hasOwnProperty.call(message,"max_users"))object.max_users=message.max_users;if(message.is_hidden!=null&&$Object.hasOwnProperty.call(message,"is_hidden"))object.is_hidden=message.is_hidden;if(message.is_locked!=null&&$Object.hasOwnProperty.call(message,"is_locked"))object.is_locked=message.is_locked;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.is_passworded!=null&&$Object.hasOwnProperty.call(message,"is_passworded"))object.is_passworded=message.is_passworded;if(message.slowdown!=null&&$Object.hasOwnProperty.call(message,"slowdown"))object.slowdown=message.slowdown;if(message.spectator_count!=null&&$Object.hasOwnProperty.call(message,"spectator_count"))object.spectator_count=message.spectator_count;if(message.members&&message.members.length){object.members=$Array(message.members.length);for(var j=0;j<message.members.length;++j)object.members[j]=$root.gamend.realtime.v1.UserBrief.toObject(message.members[j],options,_depth+1);}if(message.has_members!=null&&$Object.hasOwnProperty.call(message,"has_members"))object.has_members=message.has_members;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;return object;};/**
1014
+ * Converts this Lobby to JSON.
1015
+ * @function toJSON
1016
+ * @memberof gamend.realtime.v1.Lobby
1017
+ * @instance
1018
+ * @returns {Object.<string,*>} JSON object
1019
+ */Lobby.prototype.toJSON=function(){return Lobby.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1020
+ * Gets the type url for Lobby
1021
+ * @function getTypeUrl
1022
+ * @memberof gamend.realtime.v1.Lobby
1023
+ * @static
1024
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1025
+ * @returns {string} The type url
1026
+ */Lobby.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.Lobby";};return Lobby;}();v1.Group=function(){/**
1027
+ * Properties of a Group.
1028
+ * @typedef {Object} gamend.realtime.v1.Group.$Properties
1029
+ * @property {string|null} [id] Group id
1030
+ * @property {string|null} [title] Group title
1031
+ * @property {string|null} [description] Group description
1032
+ * @property {string|null} [type] Group type
1033
+ * @property {number|null} [max_members] Group max_members
1034
+ * @property {string|null} [creator_id] Group creator_id
1035
+ * @property {string|null} [creator_name] Group creator_name
1036
+ * @property {Uint8Array|null} [metadata_json] Group metadata_json
1037
+ * @property {number|null} [member_count] Group member_count
1038
+ * @property {number|null} [slowdown] Group slowdown
1039
+ * @property {number|Long|null} [inserted_at_ms] Group inserted_at_ms
1040
+ * @property {number|Long|null} [updated_at_ms] Group updated_at_ms
1041
+ * @property {Uint8Array|null} [metadata_pb] Group metadata_pb
1042
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1043
+ *//**
1044
+ * Properties of a Group.
1045
+ * @memberof gamend.realtime.v1
1046
+ * @interface IGroup
1047
+ * @augments gamend.realtime.v1.Group.$Properties
1048
+ * @deprecated Use gamend.realtime.v1.Group.$Properties instead.
1049
+ *//**
1050
+ * Shape of a Group.
1051
+ * @typedef {gamend.realtime.v1.Group.$Properties} gamend.realtime.v1.Group.$Shape
1052
+ *//**
1053
+ * Constructs a new Group.
1054
+ * @memberof gamend.realtime.v1
1055
+ * @classdesc Represents a Group.
1056
+ * @constructor
1057
+ * @param {gamend.realtime.v1.Group.$Properties=} [properties] Properties to set
1058
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1059
+ */var Group=function Group(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1060
+ * Group id.
1061
+ * @member {string|null|undefined} id
1062
+ * @memberof gamend.realtime.v1.Group
1063
+ * @instance
1064
+ */Group.prototype.id=null;/**
1065
+ * Group title.
1066
+ * @member {string|null|undefined} title
1067
+ * @memberof gamend.realtime.v1.Group
1068
+ * @instance
1069
+ */Group.prototype.title=null;/**
1070
+ * Group description.
1071
+ * @member {string|null|undefined} description
1072
+ * @memberof gamend.realtime.v1.Group
1073
+ * @instance
1074
+ */Group.prototype.description=null;/**
1075
+ * Group type.
1076
+ * @member {string|null|undefined} type
1077
+ * @memberof gamend.realtime.v1.Group
1078
+ * @instance
1079
+ */Group.prototype.type=null;/**
1080
+ * Group max_members.
1081
+ * @member {number|null|undefined} max_members
1082
+ * @memberof gamend.realtime.v1.Group
1083
+ * @instance
1084
+ */Group.prototype.max_members=null;/**
1085
+ * Group creator_id.
1086
+ * @member {string|null|undefined} creator_id
1087
+ * @memberof gamend.realtime.v1.Group
1088
+ * @instance
1089
+ */Group.prototype.creator_id=null;/**
1090
+ * Group creator_name.
1091
+ * @member {string|null|undefined} creator_name
1092
+ * @memberof gamend.realtime.v1.Group
1093
+ * @instance
1094
+ */Group.prototype.creator_name=null;/**
1095
+ * Group metadata_json.
1096
+ * @member {Uint8Array|null|undefined} metadata_json
1097
+ * @memberof gamend.realtime.v1.Group
1098
+ * @instance
1099
+ */Group.prototype.metadata_json=null;/**
1100
+ * Group member_count.
1101
+ * @member {number|null|undefined} member_count
1102
+ * @memberof gamend.realtime.v1.Group
1103
+ * @instance
1104
+ */Group.prototype.member_count=null;/**
1105
+ * Group slowdown.
1106
+ * @member {number|null|undefined} slowdown
1107
+ * @memberof gamend.realtime.v1.Group
1108
+ * @instance
1109
+ */Group.prototype.slowdown=null;/**
1110
+ * Group inserted_at_ms.
1111
+ * @member {number|Long|null|undefined} inserted_at_ms
1112
+ * @memberof gamend.realtime.v1.Group
1113
+ * @instance
1114
+ */Group.prototype.inserted_at_ms=null;/**
1115
+ * Group updated_at_ms.
1116
+ * @member {number|Long|null|undefined} updated_at_ms
1117
+ * @memberof gamend.realtime.v1.Group
1118
+ * @instance
1119
+ */Group.prototype.updated_at_ms=null;/**
1120
+ * Group metadata_pb.
1121
+ * @member {Uint8Array|null|undefined} metadata_pb
1122
+ * @memberof gamend.realtime.v1.Group
1123
+ * @instance
1124
+ */Group.prototype.metadata_pb=null;// OneOf field names bound to virtual getters and setters
1125
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
1126
+ $Object.defineProperty(Group.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1127
+ $Object.defineProperty(Group.prototype,"_title",{get:$util.oneOfGetter($oneOfFields=["title"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1128
+ $Object.defineProperty(Group.prototype,"_description",{get:$util.oneOfGetter($oneOfFields=["description"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1129
+ $Object.defineProperty(Group.prototype,"_type",{get:$util.oneOfGetter($oneOfFields=["type"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1130
+ $Object.defineProperty(Group.prototype,"_max_members",{get:$util.oneOfGetter($oneOfFields=["max_members"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1131
+ $Object.defineProperty(Group.prototype,"_creator_id",{get:$util.oneOfGetter($oneOfFields=["creator_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1132
+ $Object.defineProperty(Group.prototype,"_creator_name",{get:$util.oneOfGetter($oneOfFields=["creator_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1133
+ $Object.defineProperty(Group.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1134
+ $Object.defineProperty(Group.prototype,"_member_count",{get:$util.oneOfGetter($oneOfFields=["member_count"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1135
+ $Object.defineProperty(Group.prototype,"_slowdown",{get:$util.oneOfGetter($oneOfFields=["slowdown"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1136
+ $Object.defineProperty(Group.prototype,"_inserted_at_ms",{get:$util.oneOfGetter($oneOfFields=["inserted_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1137
+ $Object.defineProperty(Group.prototype,"_updated_at_ms",{get:$util.oneOfGetter($oneOfFields=["updated_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1138
+ $Object.defineProperty(Group.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});/**
1139
+ * Encodes the specified Group message. Does not implicitly {@link gamend.realtime.v1.Group.verify|verify} messages.
1140
+ * @function encode
1141
+ * @memberof gamend.realtime.v1.Group
1142
+ * @static
1143
+ * @param {gamend.realtime.v1.Group.$Properties} message Group message or plain object to encode
1144
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1145
+ * @returns {$protobuf.Writer} Writer
1146
+ */Group.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.title!=null&&$Object.hasOwnProperty.call(message,"title"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.title);if(message.description!=null&&$Object.hasOwnProperty.call(message,"description"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.description);if(message.type!=null&&$Object.hasOwnProperty.call(message,"type"))writer.uint32(/* id 4, wireType 2 =*/34).string(message.type);if(message.max_members!=null&&$Object.hasOwnProperty.call(message,"max_members"))writer.uint32(/* id 5, wireType 0 =*/40).int32(message.max_members);if(message.creator_id!=null&&$Object.hasOwnProperty.call(message,"creator_id"))writer.uint32(/* id 6, wireType 2 =*/50).string(message.creator_id);if(message.creator_name!=null&&$Object.hasOwnProperty.call(message,"creator_name"))writer.uint32(/* id 7, wireType 2 =*/58).string(message.creator_name);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 8, wireType 2 =*/66).bytes(message.metadata_json);if(message.member_count!=null&&$Object.hasOwnProperty.call(message,"member_count"))writer.uint32(/* id 9, wireType 0 =*/72).int32(message.member_count);if(message.slowdown!=null&&$Object.hasOwnProperty.call(message,"slowdown"))writer.uint32(/* id 10, wireType 0 =*/80).int32(message.slowdown);if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))writer.uint32(/* id 11, wireType 0 =*/88).int64(message.inserted_at_ms);if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))writer.uint32(/* id 12, wireType 0 =*/96).int64(message.updated_at_ms);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 13, wireType 2 =*/106).bytes(message.metadata_pb);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1147
+ * Decodes a Group message from the specified reader or buffer.
1148
+ * @function decode
1149
+ * @memberof gamend.realtime.v1.Group
1150
+ * @static
1151
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1152
+ * @param {number} [length] Message length if known beforehand
1153
+ * @returns {gamend.realtime.v1.Group & gamend.realtime.v1.Group.$Shape} Group
1154
+ * @throws {Error} If the payload is not a reader or valid buffer
1155
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1156
+ */Group.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.Group();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 2:{if(wireType!==2)break;message.title=reader.stringVerify();message._title="title";continue;}case 3:{if(wireType!==2)break;message.description=reader.stringVerify();message._description="description";continue;}case 4:{if(wireType!==2)break;message.type=reader.stringVerify();message._type="type";continue;}case 5:{if(wireType!==0)break;message.max_members=reader.int32();message._max_members="max_members";continue;}case 6:{if(wireType!==2)break;message.creator_id=reader.stringVerify();message._creator_id="creator_id";continue;}case 7:{if(wireType!==2)break;message.creator_name=reader.stringVerify();message._creator_name="creator_name";continue;}case 8:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 9:{if(wireType!==0)break;message.member_count=reader.int32();message._member_count="member_count";continue;}case 10:{if(wireType!==0)break;message.slowdown=reader.int32();message._slowdown="slowdown";continue;}case 11:{if(wireType!==0)break;message.inserted_at_ms=reader.int64();message._inserted_at_ms="inserted_at_ms";continue;}case 12:{if(wireType!==0)break;message.updated_at_ms=reader.int64();message._updated_at_ms="updated_at_ms";continue;}case 13:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1157
+ * Creates a Group message from a plain object. Also converts values to their respective internal types.
1158
+ * @function fromObject
1159
+ * @memberof gamend.realtime.v1.Group
1160
+ * @static
1161
+ * @param {Object.<string,*>} object Plain object
1162
+ * @returns {gamend.realtime.v1.Group} Group
1163
+ */Group.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.Group)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.Group: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.Group();if(object.id!=null)message.id=$String(object.id);if(object.title!=null)message.title=$String(object.title);if(object.description!=null)message.description=$String(object.description);if(object.type!=null)message.type=$String(object.type);if(object.max_members!=null)message.max_members=object.max_members|0;if(object.creator_id!=null)message.creator_id=$String(object.creator_id);if(object.creator_name!=null)message.creator_name=$String(object.creator_name);if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.member_count!=null)message.member_count=object.member_count|0;if(object.slowdown!=null)message.slowdown=object.slowdown|0;if(object.inserted_at_ms!=null)if($util.Long)message.inserted_at_ms=$util.Long.fromValue(object.inserted_at_ms,false);else if(typeof object.inserted_at_ms==="string")message.inserted_at_ms=$parseInt(object.inserted_at_ms,10);else if(typeof object.inserted_at_ms==="number")message.inserted_at_ms=object.inserted_at_ms;else if(_typeof(object.inserted_at_ms)==="object")message.inserted_at_ms=new $util.LongBits(object.inserted_at_ms.low>>>0,object.inserted_at_ms.high>>>0).toNumber();if(object.updated_at_ms!=null)if($util.Long)message.updated_at_ms=$util.Long.fromValue(object.updated_at_ms,false);else if(typeof object.updated_at_ms==="string")message.updated_at_ms=$parseInt(object.updated_at_ms,10);else if(typeof object.updated_at_ms==="number")message.updated_at_ms=object.updated_at_ms;else if(_typeof(object.updated_at_ms)==="object")message.updated_at_ms=new $util.LongBits(object.updated_at_ms.low>>>0,object.updated_at_ms.high>>>0).toNumber();if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;return message;};/**
1164
+ * Creates a plain object from a Group message. Also converts values to other types if specified.
1165
+ * @function toObject
1166
+ * @memberof gamend.realtime.v1.Group
1167
+ * @static
1168
+ * @param {gamend.realtime.v1.Group} message Group
1169
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1170
+ * @returns {Object.<string,*>} Plain object
1171
+ */Group.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.title!=null&&$Object.hasOwnProperty.call(message,"title"))object.title=message.title;if(message.description!=null&&$Object.hasOwnProperty.call(message,"description"))object.description=message.description;if(message.type!=null&&$Object.hasOwnProperty.call(message,"type"))object.type=message.type;if(message.max_members!=null&&$Object.hasOwnProperty.call(message,"max_members"))object.max_members=message.max_members;if(message.creator_id!=null&&$Object.hasOwnProperty.call(message,"creator_id"))object.creator_id=message.creator_id;if(message.creator_name!=null&&$Object.hasOwnProperty.call(message,"creator_name"))object.creator_name=message.creator_name;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.member_count!=null&&$Object.hasOwnProperty.call(message,"member_count"))object.member_count=message.member_count;if(message.slowdown!=null&&$Object.hasOwnProperty.call(message,"slowdown"))object.slowdown=message.slowdown;if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.inserted_at_ms=typeof message.inserted_at_ms==="number"?$BigInt(message.inserted_at_ms):$util.Long.fromBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0,false).toBigInt();else if(typeof message.inserted_at_ms==="number")object.inserted_at_ms=options.longs===$String?$String(message.inserted_at_ms):message.inserted_at_ms;else object.inserted_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.inserted_at_ms):options.longs===$Number?new $util.LongBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0).toNumber():message.inserted_at_ms;if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.updated_at_ms=typeof message.updated_at_ms==="number"?$BigInt(message.updated_at_ms):$util.Long.fromBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0,false).toBigInt();else if(typeof message.updated_at_ms==="number")object.updated_at_ms=options.longs===$String?$String(message.updated_at_ms):message.updated_at_ms;else object.updated_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.updated_at_ms):options.longs===$Number?new $util.LongBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0).toNumber():message.updated_at_ms;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;return object;};/**
1172
+ * Converts this Group to JSON.
1173
+ * @function toJSON
1174
+ * @memberof gamend.realtime.v1.Group
1175
+ * @instance
1176
+ * @returns {Object.<string,*>} JSON object
1177
+ */Group.prototype.toJSON=function(){return Group.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1178
+ * Gets the type url for Group
1179
+ * @function getTypeUrl
1180
+ * @memberof gamend.realtime.v1.Group
1181
+ * @static
1182
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1183
+ * @returns {string} The type url
1184
+ */Group.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.Group";};return Group;}();v1.Party=function(){/**
1185
+ * Properties of a Party.
1186
+ * @typedef {Object} gamend.realtime.v1.Party.$Properties
1187
+ * @property {string|null} [id] Party id
1188
+ * @property {string|null} [leader_id] Party leader_id
1189
+ * @property {string|null} [leader_name] Party leader_name
1190
+ * @property {number|null} [max_size] Party max_size
1191
+ * @property {Uint8Array|null} [metadata_json] Party metadata_json
1192
+ * @property {Array.<gamend.realtime.v1.UserBrief.$Properties>|null} [members] Party members
1193
+ * @property {boolean|null} [has_members] Party has_members
1194
+ * @property {number|Long|null} [inserted_at_ms] Party inserted_at_ms
1195
+ * @property {number|Long|null} [updated_at_ms] Party updated_at_ms
1196
+ * @property {Uint8Array|null} [metadata_pb] Party metadata_pb
1197
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1198
+ *//**
1199
+ * Properties of a Party.
1200
+ * @memberof gamend.realtime.v1
1201
+ * @interface IParty
1202
+ * @augments gamend.realtime.v1.Party.$Properties
1203
+ * @deprecated Use gamend.realtime.v1.Party.$Properties instead.
1204
+ *//**
1205
+ * Shape of a Party.
1206
+ * @typedef {gamend.realtime.v1.Party.$Properties} gamend.realtime.v1.Party.$Shape
1207
+ *//**
1208
+ * Constructs a new Party.
1209
+ * @memberof gamend.realtime.v1
1210
+ * @classdesc Represents a Party.
1211
+ * @constructor
1212
+ * @param {gamend.realtime.v1.Party.$Properties=} [properties] Properties to set
1213
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1214
+ */var Party=function Party(properties){this.members=[];if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1215
+ * Party id.
1216
+ * @member {string|null|undefined} id
1217
+ * @memberof gamend.realtime.v1.Party
1218
+ * @instance
1219
+ */Party.prototype.id=null;/**
1220
+ * Party leader_id.
1221
+ * @member {string|null|undefined} leader_id
1222
+ * @memberof gamend.realtime.v1.Party
1223
+ * @instance
1224
+ */Party.prototype.leader_id=null;/**
1225
+ * Party leader_name.
1226
+ * @member {string|null|undefined} leader_name
1227
+ * @memberof gamend.realtime.v1.Party
1228
+ * @instance
1229
+ */Party.prototype.leader_name=null;/**
1230
+ * Party max_size.
1231
+ * @member {number|null|undefined} max_size
1232
+ * @memberof gamend.realtime.v1.Party
1233
+ * @instance
1234
+ */Party.prototype.max_size=null;/**
1235
+ * Party metadata_json.
1236
+ * @member {Uint8Array|null|undefined} metadata_json
1237
+ * @memberof gamend.realtime.v1.Party
1238
+ * @instance
1239
+ */Party.prototype.metadata_json=null;/**
1240
+ * Party members.
1241
+ * @member {Array.<gamend.realtime.v1.UserBrief.$Properties>} members
1242
+ * @memberof gamend.realtime.v1.Party
1243
+ * @instance
1244
+ */Party.prototype.members=$util.emptyArray;/**
1245
+ * Party has_members.
1246
+ * @member {boolean|null|undefined} has_members
1247
+ * @memberof gamend.realtime.v1.Party
1248
+ * @instance
1249
+ */Party.prototype.has_members=null;/**
1250
+ * Party inserted_at_ms.
1251
+ * @member {number|Long|null|undefined} inserted_at_ms
1252
+ * @memberof gamend.realtime.v1.Party
1253
+ * @instance
1254
+ */Party.prototype.inserted_at_ms=null;/**
1255
+ * Party updated_at_ms.
1256
+ * @member {number|Long|null|undefined} updated_at_ms
1257
+ * @memberof gamend.realtime.v1.Party
1258
+ * @instance
1259
+ */Party.prototype.updated_at_ms=null;/**
1260
+ * Party metadata_pb.
1261
+ * @member {Uint8Array|null|undefined} metadata_pb
1262
+ * @memberof gamend.realtime.v1.Party
1263
+ * @instance
1264
+ */Party.prototype.metadata_pb=null;// OneOf field names bound to virtual getters and setters
1265
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
1266
+ $Object.defineProperty(Party.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1267
+ $Object.defineProperty(Party.prototype,"_leader_id",{get:$util.oneOfGetter($oneOfFields=["leader_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1268
+ $Object.defineProperty(Party.prototype,"_leader_name",{get:$util.oneOfGetter($oneOfFields=["leader_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1269
+ $Object.defineProperty(Party.prototype,"_max_size",{get:$util.oneOfGetter($oneOfFields=["max_size"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1270
+ $Object.defineProperty(Party.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1271
+ $Object.defineProperty(Party.prototype,"_has_members",{get:$util.oneOfGetter($oneOfFields=["has_members"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1272
+ $Object.defineProperty(Party.prototype,"_inserted_at_ms",{get:$util.oneOfGetter($oneOfFields=["inserted_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1273
+ $Object.defineProperty(Party.prototype,"_updated_at_ms",{get:$util.oneOfGetter($oneOfFields=["updated_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1274
+ $Object.defineProperty(Party.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});/**
1275
+ * Encodes the specified Party message. Does not implicitly {@link gamend.realtime.v1.Party.verify|verify} messages.
1276
+ * @function encode
1277
+ * @memberof gamend.realtime.v1.Party
1278
+ * @static
1279
+ * @param {gamend.realtime.v1.Party.$Properties} message Party message or plain object to encode
1280
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1281
+ * @returns {$protobuf.Writer} Writer
1282
+ */Party.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.leader_id!=null&&$Object.hasOwnProperty.call(message,"leader_id"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.leader_id);if(message.leader_name!=null&&$Object.hasOwnProperty.call(message,"leader_name"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.leader_name);if(message.max_size!=null&&$Object.hasOwnProperty.call(message,"max_size"))writer.uint32(/* id 4, wireType 0 =*/32).int32(message.max_size);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.metadata_json);if(message.members!=null&&message.members.length)for(var i=0;i<message.members.length;++i)$root.gamend.realtime.v1.UserBrief.encode(message.members[i],writer.uint32(/* id 6, wireType 2 =*/50).fork(),_depth+1).ldelim();if(message.has_members!=null&&$Object.hasOwnProperty.call(message,"has_members"))writer.uint32(/* id 7, wireType 0 =*/56).bool(message.has_members);if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))writer.uint32(/* id 8, wireType 0 =*/64).int64(message.inserted_at_ms);if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))writer.uint32(/* id 9, wireType 0 =*/72).int64(message.updated_at_ms);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 10, wireType 2 =*/82).bytes(message.metadata_pb);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i4=0;_i4<message.$unknowns.length;++_i4)writer.raw(message.$unknowns[_i4]);return writer;};/**
1283
+ * Decodes a Party message from the specified reader or buffer.
1284
+ * @function decode
1285
+ * @memberof gamend.realtime.v1.Party
1286
+ * @static
1287
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1288
+ * @param {number} [length] Message length if known beforehand
1289
+ * @returns {gamend.realtime.v1.Party & gamend.realtime.v1.Party.$Shape} Party
1290
+ * @throws {Error} If the payload is not a reader or valid buffer
1291
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1292
+ */Party.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.Party();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 2:{if(wireType!==2)break;message.leader_id=reader.stringVerify();message._leader_id="leader_id";continue;}case 3:{if(wireType!==2)break;message.leader_name=reader.stringVerify();message._leader_name="leader_name";continue;}case 4:{if(wireType!==0)break;message.max_size=reader.int32();message._max_size="max_size";continue;}case 5:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 6:{if(wireType!==2)break;if(!(message.members&&message.members.length))message.members=[];message.members.push($root.gamend.realtime.v1.UserBrief.decode(reader,reader.uint32(),$undefined,_depth+1));continue;}case 7:{if(wireType!==0)break;message.has_members=reader.bool();message._has_members="has_members";continue;}case 8:{if(wireType!==0)break;message.inserted_at_ms=reader.int64();message._inserted_at_ms="inserted_at_ms";continue;}case 9:{if(wireType!==0)break;message.updated_at_ms=reader.int64();message._updated_at_ms="updated_at_ms";continue;}case 10:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1293
+ * Creates a Party message from a plain object. Also converts values to their respective internal types.
1294
+ * @function fromObject
1295
+ * @memberof gamend.realtime.v1.Party
1296
+ * @static
1297
+ * @param {Object.<string,*>} object Plain object
1298
+ * @returns {gamend.realtime.v1.Party} Party
1299
+ */Party.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.Party)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.Party: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.Party();if(object.id!=null)message.id=$String(object.id);if(object.leader_id!=null)message.leader_id=$String(object.leader_id);if(object.leader_name!=null)message.leader_name=$String(object.leader_name);if(object.max_size!=null)message.max_size=object.max_size|0;if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.members){if(!$Array.isArray(object.members))throw $TypeError(".gamend.realtime.v1.Party.members: array expected");message.members=$Array(object.members.length);for(var i=0;i<object.members.length;++i){if(!$util.isObject(object.members[i]))throw $TypeError(".gamend.realtime.v1.Party.members: object expected");message.members[i]=$root.gamend.realtime.v1.UserBrief.fromObject(object.members[i],_depth+1);}}if(object.has_members!=null)message.has_members=$Boolean(object.has_members);if(object.inserted_at_ms!=null)if($util.Long)message.inserted_at_ms=$util.Long.fromValue(object.inserted_at_ms,false);else if(typeof object.inserted_at_ms==="string")message.inserted_at_ms=$parseInt(object.inserted_at_ms,10);else if(typeof object.inserted_at_ms==="number")message.inserted_at_ms=object.inserted_at_ms;else if(_typeof(object.inserted_at_ms)==="object")message.inserted_at_ms=new $util.LongBits(object.inserted_at_ms.low>>>0,object.inserted_at_ms.high>>>0).toNumber();if(object.updated_at_ms!=null)if($util.Long)message.updated_at_ms=$util.Long.fromValue(object.updated_at_ms,false);else if(typeof object.updated_at_ms==="string")message.updated_at_ms=$parseInt(object.updated_at_ms,10);else if(typeof object.updated_at_ms==="number")message.updated_at_ms=object.updated_at_ms;else if(_typeof(object.updated_at_ms)==="object")message.updated_at_ms=new $util.LongBits(object.updated_at_ms.low>>>0,object.updated_at_ms.high>>>0).toNumber();if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;return message;};/**
1300
+ * Creates a plain object from a Party message. Also converts values to other types if specified.
1301
+ * @function toObject
1302
+ * @memberof gamend.realtime.v1.Party
1303
+ * @static
1304
+ * @param {gamend.realtime.v1.Party} message Party
1305
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1306
+ * @returns {Object.<string,*>} Plain object
1307
+ */Party.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.arrays||options.defaults)object.members=[];if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.leader_id!=null&&$Object.hasOwnProperty.call(message,"leader_id"))object.leader_id=message.leader_id;if(message.leader_name!=null&&$Object.hasOwnProperty.call(message,"leader_name"))object.leader_name=message.leader_name;if(message.max_size!=null&&$Object.hasOwnProperty.call(message,"max_size"))object.max_size=message.max_size;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.members&&message.members.length){object.members=$Array(message.members.length);for(var j=0;j<message.members.length;++j)object.members[j]=$root.gamend.realtime.v1.UserBrief.toObject(message.members[j],options,_depth+1);}if(message.has_members!=null&&$Object.hasOwnProperty.call(message,"has_members"))object.has_members=message.has_members;if(message.inserted_at_ms!=null&&$Object.hasOwnProperty.call(message,"inserted_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.inserted_at_ms=typeof message.inserted_at_ms==="number"?$BigInt(message.inserted_at_ms):$util.Long.fromBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0,false).toBigInt();else if(typeof message.inserted_at_ms==="number")object.inserted_at_ms=options.longs===$String?$String(message.inserted_at_ms):message.inserted_at_ms;else object.inserted_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.inserted_at_ms):options.longs===$Number?new $util.LongBits(message.inserted_at_ms.low>>>0,message.inserted_at_ms.high>>>0).toNumber():message.inserted_at_ms;if(message.updated_at_ms!=null&&$Object.hasOwnProperty.call(message,"updated_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.updated_at_ms=typeof message.updated_at_ms==="number"?$BigInt(message.updated_at_ms):$util.Long.fromBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0,false).toBigInt();else if(typeof message.updated_at_ms==="number")object.updated_at_ms=options.longs===$String?$String(message.updated_at_ms):message.updated_at_ms;else object.updated_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.updated_at_ms):options.longs===$Number?new $util.LongBits(message.updated_at_ms.low>>>0,message.updated_at_ms.high>>>0).toNumber():message.updated_at_ms;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;return object;};/**
1308
+ * Converts this Party to JSON.
1309
+ * @function toJSON
1310
+ * @memberof gamend.realtime.v1.Party
1311
+ * @instance
1312
+ * @returns {Object.<string,*>} JSON object
1313
+ */Party.prototype.toJSON=function(){return Party.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1314
+ * Gets the type url for Party
1315
+ * @function getTypeUrl
1316
+ * @memberof gamend.realtime.v1.Party
1317
+ * @static
1318
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1319
+ * @returns {string} The type url
1320
+ */Party.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.Party";};return Party;}();v1.MemberEvent=function(){/**
1321
+ * Properties of a MemberEvent.
1322
+ * @typedef {Object} gamend.realtime.v1.MemberEvent.$Properties
1323
+ * @property {string|null} [user_id] MemberEvent user_id
1324
+ * @property {string|null} [display_name] MemberEvent display_name
1325
+ * @property {string|null} [id] MemberEvent id
1326
+ * @property {string|null} [profile_url] MemberEvent profile_url
1327
+ * @property {Uint8Array|null} [metadata_json] MemberEvent metadata_json
1328
+ * @property {boolean|null} [is_online] MemberEvent is_online
1329
+ * @property {boolean|null} [is_activated] MemberEvent is_activated
1330
+ * @property {number|Long|null} [last_seen_at_ms] MemberEvent last_seen_at_ms
1331
+ * @property {string|null} [group_id] MemberEvent group_id
1332
+ * @property {Uint8Array|null} [metadata_pb] MemberEvent metadata_pb
1333
+ * @property {string|null} [username] MemberEvent username
1334
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1335
+ *//**
1336
+ * Properties of a MemberEvent.
1337
+ * @memberof gamend.realtime.v1
1338
+ * @interface IMemberEvent
1339
+ * @augments gamend.realtime.v1.MemberEvent.$Properties
1340
+ * @deprecated Use gamend.realtime.v1.MemberEvent.$Properties instead.
1341
+ *//**
1342
+ * Shape of a MemberEvent.
1343
+ * @typedef {gamend.realtime.v1.MemberEvent.$Properties} gamend.realtime.v1.MemberEvent.$Shape
1344
+ *//**
1345
+ * Constructs a new MemberEvent.
1346
+ * @memberof gamend.realtime.v1
1347
+ * @classdesc Represents a MemberEvent.
1348
+ * @constructor
1349
+ * @param {gamend.realtime.v1.MemberEvent.$Properties=} [properties] Properties to set
1350
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1351
+ */var MemberEvent=function MemberEvent(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1352
+ * MemberEvent user_id.
1353
+ * @member {string} user_id
1354
+ * @memberof gamend.realtime.v1.MemberEvent
1355
+ * @instance
1356
+ */MemberEvent.prototype.user_id="";/**
1357
+ * MemberEvent display_name.
1358
+ * @member {string|null|undefined} display_name
1359
+ * @memberof gamend.realtime.v1.MemberEvent
1360
+ * @instance
1361
+ */MemberEvent.prototype.display_name=null;/**
1362
+ * MemberEvent id.
1363
+ * @member {string|null|undefined} id
1364
+ * @memberof gamend.realtime.v1.MemberEvent
1365
+ * @instance
1366
+ */MemberEvent.prototype.id=null;/**
1367
+ * MemberEvent profile_url.
1368
+ * @member {string|null|undefined} profile_url
1369
+ * @memberof gamend.realtime.v1.MemberEvent
1370
+ * @instance
1371
+ */MemberEvent.prototype.profile_url=null;/**
1372
+ * MemberEvent metadata_json.
1373
+ * @member {Uint8Array|null|undefined} metadata_json
1374
+ * @memberof gamend.realtime.v1.MemberEvent
1375
+ * @instance
1376
+ */MemberEvent.prototype.metadata_json=null;/**
1377
+ * MemberEvent is_online.
1378
+ * @member {boolean|null|undefined} is_online
1379
+ * @memberof gamend.realtime.v1.MemberEvent
1380
+ * @instance
1381
+ */MemberEvent.prototype.is_online=null;/**
1382
+ * MemberEvent is_activated.
1383
+ * @member {boolean|null|undefined} is_activated
1384
+ * @memberof gamend.realtime.v1.MemberEvent
1385
+ * @instance
1386
+ */MemberEvent.prototype.is_activated=null;/**
1387
+ * MemberEvent last_seen_at_ms.
1388
+ * @member {number|Long|null|undefined} last_seen_at_ms
1389
+ * @memberof gamend.realtime.v1.MemberEvent
1390
+ * @instance
1391
+ */MemberEvent.prototype.last_seen_at_ms=null;/**
1392
+ * MemberEvent group_id.
1393
+ * @member {string|null|undefined} group_id
1394
+ * @memberof gamend.realtime.v1.MemberEvent
1395
+ * @instance
1396
+ */MemberEvent.prototype.group_id=null;/**
1397
+ * MemberEvent metadata_pb.
1398
+ * @member {Uint8Array|null|undefined} metadata_pb
1399
+ * @memberof gamend.realtime.v1.MemberEvent
1400
+ * @instance
1401
+ */MemberEvent.prototype.metadata_pb=null;/**
1402
+ * MemberEvent username.
1403
+ * @member {string|null|undefined} username
1404
+ * @memberof gamend.realtime.v1.MemberEvent
1405
+ * @instance
1406
+ */MemberEvent.prototype.username=null;// OneOf field names bound to virtual getters and setters
1407
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
1408
+ $Object.defineProperty(MemberEvent.prototype,"_display_name",{get:$util.oneOfGetter($oneOfFields=["display_name"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1409
+ $Object.defineProperty(MemberEvent.prototype,"_id",{get:$util.oneOfGetter($oneOfFields=["id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1410
+ $Object.defineProperty(MemberEvent.prototype,"_profile_url",{get:$util.oneOfGetter($oneOfFields=["profile_url"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1411
+ $Object.defineProperty(MemberEvent.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1412
+ $Object.defineProperty(MemberEvent.prototype,"_is_online",{get:$util.oneOfGetter($oneOfFields=["is_online"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1413
+ $Object.defineProperty(MemberEvent.prototype,"_is_activated",{get:$util.oneOfGetter($oneOfFields=["is_activated"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1414
+ $Object.defineProperty(MemberEvent.prototype,"_last_seen_at_ms",{get:$util.oneOfGetter($oneOfFields=["last_seen_at_ms"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1415
+ $Object.defineProperty(MemberEvent.prototype,"_group_id",{get:$util.oneOfGetter($oneOfFields=["group_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1416
+ $Object.defineProperty(MemberEvent.prototype,"_metadata_pb",{get:$util.oneOfGetter($oneOfFields=["metadata_pb"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
1417
+ $Object.defineProperty(MemberEvent.prototype,"_username",{get:$util.oneOfGetter($oneOfFields=["username"]),set:$util.oneOfSetter($oneOfFields)});/**
1418
+ * Encodes the specified MemberEvent message. Does not implicitly {@link gamend.realtime.v1.MemberEvent.verify|verify} messages.
1419
+ * @function encode
1420
+ * @memberof gamend.realtime.v1.MemberEvent
1421
+ * @static
1422
+ * @param {gamend.realtime.v1.MemberEvent.$Properties} message MemberEvent message or plain object to encode
1423
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1424
+ * @returns {$protobuf.Writer} Writer
1425
+ */MemberEvent.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id")&&message.user_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.user_id);if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.display_name);if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.id);if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))writer.uint32(/* id 4, wireType 2 =*/34).string(message.profile_url);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.metadata_json);if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))writer.uint32(/* id 6, wireType 0 =*/48).bool(message.is_online);if(message.is_activated!=null&&$Object.hasOwnProperty.call(message,"is_activated"))writer.uint32(/* id 7, wireType 0 =*/56).bool(message.is_activated);if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))writer.uint32(/* id 8, wireType 0 =*/64).int64(message.last_seen_at_ms);if(message.group_id!=null&&$Object.hasOwnProperty.call(message,"group_id"))writer.uint32(/* id 9, wireType 2 =*/74).string(message.group_id);if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))writer.uint32(/* id 10, wireType 2 =*/82).bytes(message.metadata_pb);if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))writer.uint32(/* id 11, wireType 2 =*/90).string(message.username);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1426
+ * Decodes a MemberEvent message from the specified reader or buffer.
1427
+ * @function decode
1428
+ * @memberof gamend.realtime.v1.MemberEvent
1429
+ * @static
1430
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1431
+ * @param {number} [length] Message length if known beforehand
1432
+ * @returns {gamend.realtime.v1.MemberEvent & gamend.realtime.v1.MemberEvent.$Shape} MemberEvent
1433
+ * @throws {Error} If the payload is not a reader or valid buffer
1434
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1435
+ */MemberEvent.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.MemberEvent(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.user_id=value;else delete message.user_id;continue;}case 2:{if(wireType!==2)break;message.display_name=reader.stringVerify();message._display_name="display_name";continue;}case 3:{if(wireType!==2)break;message.id=reader.stringVerify();message._id="id";continue;}case 4:{if(wireType!==2)break;message.profile_url=reader.stringVerify();message._profile_url="profile_url";continue;}case 5:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 6:{if(wireType!==0)break;message.is_online=reader.bool();message._is_online="is_online";continue;}case 7:{if(wireType!==0)break;message.is_activated=reader.bool();message._is_activated="is_activated";continue;}case 8:{if(wireType!==0)break;message.last_seen_at_ms=reader.int64();message._last_seen_at_ms="last_seen_at_ms";continue;}case 9:{if(wireType!==2)break;message.group_id=reader.stringVerify();message._group_id="group_id";continue;}case 10:{if(wireType!==2)break;message.metadata_pb=reader.bytes();message._metadata_pb="metadata_pb";continue;}case 11:{if(wireType!==2)break;message.username=reader.stringVerify();message._username="username";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1436
+ * Creates a MemberEvent message from a plain object. Also converts values to their respective internal types.
1437
+ * @function fromObject
1438
+ * @memberof gamend.realtime.v1.MemberEvent
1439
+ * @static
1440
+ * @param {Object.<string,*>} object Plain object
1441
+ * @returns {gamend.realtime.v1.MemberEvent} MemberEvent
1442
+ */MemberEvent.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.MemberEvent)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.MemberEvent: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.MemberEvent();if(object.user_id!=null)if(typeof object.user_id!=="string"||object.user_id.length)message.user_id=$String(object.user_id);if(object.display_name!=null)message.display_name=$String(object.display_name);if(object.id!=null)message.id=$String(object.id);if(object.profile_url!=null)message.profile_url=$String(object.profile_url);if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.is_online!=null)message.is_online=$Boolean(object.is_online);if(object.is_activated!=null)message.is_activated=$Boolean(object.is_activated);if(object.last_seen_at_ms!=null)if($util.Long)message.last_seen_at_ms=$util.Long.fromValue(object.last_seen_at_ms,false);else if(typeof object.last_seen_at_ms==="string")message.last_seen_at_ms=$parseInt(object.last_seen_at_ms,10);else if(typeof object.last_seen_at_ms==="number")message.last_seen_at_ms=object.last_seen_at_ms;else if(_typeof(object.last_seen_at_ms)==="object")message.last_seen_at_ms=new $util.LongBits(object.last_seen_at_ms.low>>>0,object.last_seen_at_ms.high>>>0).toNumber();if(object.group_id!=null)message.group_id=$String(object.group_id);if(object.metadata_pb!=null)if(typeof object.metadata_pb==="string")$util.base64.decode(object.metadata_pb,message.metadata_pb=$util.newBuffer($util.base64.length(object.metadata_pb)),0);else if(object.metadata_pb.length>=0)message.metadata_pb=object.metadata_pb;if(object.username!=null)message.username=$String(object.username);return message;};/**
1443
+ * Creates a plain object from a MemberEvent message. Also converts values to other types if specified.
1444
+ * @function toObject
1445
+ * @memberof gamend.realtime.v1.MemberEvent
1446
+ * @static
1447
+ * @param {gamend.realtime.v1.MemberEvent} message MemberEvent
1448
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1449
+ * @returns {Object.<string,*>} Plain object
1450
+ */MemberEvent.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.user_id="";if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))object.user_id=message.user_id;if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))object.display_name=message.display_name;if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.profile_url!=null&&$Object.hasOwnProperty.call(message,"profile_url"))object.profile_url=message.profile_url;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.is_online!=null&&$Object.hasOwnProperty.call(message,"is_online"))object.is_online=message.is_online;if(message.is_activated!=null&&$Object.hasOwnProperty.call(message,"is_activated"))object.is_activated=message.is_activated;if(message.last_seen_at_ms!=null&&$Object.hasOwnProperty.call(message,"last_seen_at_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.last_seen_at_ms=typeof message.last_seen_at_ms==="number"?$BigInt(message.last_seen_at_ms):$util.Long.fromBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0,false).toBigInt();else if(typeof message.last_seen_at_ms==="number")object.last_seen_at_ms=options.longs===$String?$String(message.last_seen_at_ms):message.last_seen_at_ms;else object.last_seen_at_ms=options.longs===$String?$util.Long.prototype.toString.call(message.last_seen_at_ms):options.longs===$Number?new $util.LongBits(message.last_seen_at_ms.low>>>0,message.last_seen_at_ms.high>>>0).toNumber():message.last_seen_at_ms;if(message.group_id!=null&&$Object.hasOwnProperty.call(message,"group_id"))object.group_id=message.group_id;if(message.metadata_pb!=null&&$Object.hasOwnProperty.call(message,"metadata_pb"))object.metadata_pb=options.bytes===$String?$util.base64.encode(message.metadata_pb,0,message.metadata_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_pb):message.metadata_pb;if(message.username!=null&&$Object.hasOwnProperty.call(message,"username"))object.username=message.username;return object;};/**
1451
+ * Converts this MemberEvent to JSON.
1452
+ * @function toJSON
1453
+ * @memberof gamend.realtime.v1.MemberEvent
1454
+ * @instance
1455
+ * @returns {Object.<string,*>} JSON object
1456
+ */MemberEvent.prototype.toJSON=function(){return MemberEvent.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1457
+ * Gets the type url for MemberEvent
1458
+ * @function getTypeUrl
1459
+ * @memberof gamend.realtime.v1.MemberEvent
1460
+ * @static
1461
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1462
+ * @returns {string} The type url
1463
+ */MemberEvent.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.MemberEvent";};return MemberEvent;}();v1.EntityId=function(){/**
1464
+ * Properties of an EntityId.
1465
+ * @typedef {Object} gamend.realtime.v1.EntityId.$Properties
1466
+ * @property {string|null} [id] EntityId id
1467
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1468
+ *//**
1469
+ * Properties of an EntityId.
1470
+ * @memberof gamend.realtime.v1
1471
+ * @interface IEntityId
1472
+ * @augments gamend.realtime.v1.EntityId.$Properties
1473
+ * @deprecated Use gamend.realtime.v1.EntityId.$Properties instead.
1474
+ *//**
1475
+ * Shape of an EntityId.
1476
+ * @typedef {gamend.realtime.v1.EntityId.$Properties} gamend.realtime.v1.EntityId.$Shape
1477
+ *//**
1478
+ * Constructs a new EntityId.
1479
+ * @memberof gamend.realtime.v1
1480
+ * @classdesc Represents an EntityId.
1481
+ * @constructor
1482
+ * @param {gamend.realtime.v1.EntityId.$Properties=} [properties] Properties to set
1483
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1484
+ */var EntityId=function EntityId(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1485
+ * EntityId id.
1486
+ * @member {string} id
1487
+ * @memberof gamend.realtime.v1.EntityId
1488
+ * @instance
1489
+ */EntityId.prototype.id="";/**
1490
+ * Encodes the specified EntityId message. Does not implicitly {@link gamend.realtime.v1.EntityId.verify|verify} messages.
1491
+ * @function encode
1492
+ * @memberof gamend.realtime.v1.EntityId
1493
+ * @static
1494
+ * @param {gamend.realtime.v1.EntityId.$Properties} message EntityId message or plain object to encode
1495
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1496
+ * @returns {$protobuf.Writer} Writer
1497
+ */EntityId.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1498
+ * Decodes an EntityId message from the specified reader or buffer.
1499
+ * @function decode
1500
+ * @memberof gamend.realtime.v1.EntityId
1501
+ * @static
1502
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1503
+ * @param {number} [length] Message length if known beforehand
1504
+ * @returns {gamend.realtime.v1.EntityId & gamend.realtime.v1.EntityId.$Shape} EntityId
1505
+ * @throws {Error} If the payload is not a reader or valid buffer
1506
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1507
+ */EntityId.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.EntityId(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.id=value;else delete message.id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1508
+ * Creates an EntityId message from a plain object. Also converts values to their respective internal types.
1509
+ * @function fromObject
1510
+ * @memberof gamend.realtime.v1.EntityId
1511
+ * @static
1512
+ * @param {Object.<string,*>} object Plain object
1513
+ * @returns {gamend.realtime.v1.EntityId} EntityId
1514
+ */EntityId.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.EntityId)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.EntityId: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.EntityId();if(object.id!=null)if(typeof object.id!=="string"||object.id.length)message.id=$String(object.id);return message;};/**
1515
+ * Creates a plain object from an EntityId message. Also converts values to other types if specified.
1516
+ * @function toObject
1517
+ * @memberof gamend.realtime.v1.EntityId
1518
+ * @static
1519
+ * @param {gamend.realtime.v1.EntityId} message EntityId
1520
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1521
+ * @returns {Object.<string,*>} Plain object
1522
+ */EntityId.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.id="";if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;return object;};/**
1523
+ * Converts this EntityId to JSON.
1524
+ * @function toJSON
1525
+ * @memberof gamend.realtime.v1.EntityId
1526
+ * @instance
1527
+ * @returns {Object.<string,*>} JSON object
1528
+ */EntityId.prototype.toJSON=function(){return EntityId.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1529
+ * Gets the type url for EntityId
1530
+ * @function getTypeUrl
1531
+ * @memberof gamend.realtime.v1.EntityId
1532
+ * @static
1533
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1534
+ * @returns {string} The type url
1535
+ */EntityId.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.EntityId";};return EntityId;}();v1.PartyRef=function(){/**
1536
+ * Properties of a PartyRef.
1537
+ * @typedef {Object} gamend.realtime.v1.PartyRef.$Properties
1538
+ * @property {string|null} [party_id] PartyRef party_id
1539
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1540
+ *//**
1541
+ * Properties of a PartyRef.
1542
+ * @memberof gamend.realtime.v1
1543
+ * @interface IPartyRef
1544
+ * @augments gamend.realtime.v1.PartyRef.$Properties
1545
+ * @deprecated Use gamend.realtime.v1.PartyRef.$Properties instead.
1546
+ *//**
1547
+ * Shape of a PartyRef.
1548
+ * @typedef {gamend.realtime.v1.PartyRef.$Properties} gamend.realtime.v1.PartyRef.$Shape
1549
+ *//**
1550
+ * Constructs a new PartyRef.
1551
+ * @memberof gamend.realtime.v1
1552
+ * @classdesc Represents a PartyRef.
1553
+ * @constructor
1554
+ * @param {gamend.realtime.v1.PartyRef.$Properties=} [properties] Properties to set
1555
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1556
+ */var PartyRef=function PartyRef(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1557
+ * PartyRef party_id.
1558
+ * @member {string} party_id
1559
+ * @memberof gamend.realtime.v1.PartyRef
1560
+ * @instance
1561
+ */PartyRef.prototype.party_id="";/**
1562
+ * Encodes the specified PartyRef message. Does not implicitly {@link gamend.realtime.v1.PartyRef.verify|verify} messages.
1563
+ * @function encode
1564
+ * @memberof gamend.realtime.v1.PartyRef
1565
+ * @static
1566
+ * @param {gamend.realtime.v1.PartyRef.$Properties} message PartyRef message or plain object to encode
1567
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1568
+ * @returns {$protobuf.Writer} Writer
1569
+ */PartyRef.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id")&&message.party_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.party_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1570
+ * Decodes a PartyRef message from the specified reader or buffer.
1571
+ * @function decode
1572
+ * @memberof gamend.realtime.v1.PartyRef
1573
+ * @static
1574
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1575
+ * @param {number} [length] Message length if known beforehand
1576
+ * @returns {gamend.realtime.v1.PartyRef & gamend.realtime.v1.PartyRef.$Shape} PartyRef
1577
+ * @throws {Error} If the payload is not a reader or valid buffer
1578
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1579
+ */PartyRef.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.PartyRef(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.party_id=value;else delete message.party_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1580
+ * Creates a PartyRef message from a plain object. Also converts values to their respective internal types.
1581
+ * @function fromObject
1582
+ * @memberof gamend.realtime.v1.PartyRef
1583
+ * @static
1584
+ * @param {Object.<string,*>} object Plain object
1585
+ * @returns {gamend.realtime.v1.PartyRef} PartyRef
1586
+ */PartyRef.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.PartyRef)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.PartyRef: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.PartyRef();if(object.party_id!=null)if(typeof object.party_id!=="string"||object.party_id.length)message.party_id=$String(object.party_id);return message;};/**
1587
+ * Creates a plain object from a PartyRef message. Also converts values to other types if specified.
1588
+ * @function toObject
1589
+ * @memberof gamend.realtime.v1.PartyRef
1590
+ * @static
1591
+ * @param {gamend.realtime.v1.PartyRef} message PartyRef
1592
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1593
+ * @returns {Object.<string,*>} Plain object
1594
+ */PartyRef.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.party_id="";if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id"))object.party_id=message.party_id;return object;};/**
1595
+ * Converts this PartyRef to JSON.
1596
+ * @function toJSON
1597
+ * @memberof gamend.realtime.v1.PartyRef
1598
+ * @instance
1599
+ * @returns {Object.<string,*>} JSON object
1600
+ */PartyRef.prototype.toJSON=function(){return PartyRef.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1601
+ * Gets the type url for PartyRef
1602
+ * @function getTypeUrl
1603
+ * @memberof gamend.realtime.v1.PartyRef
1604
+ * @static
1605
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1606
+ * @returns {string} The type url
1607
+ */PartyRef.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.PartyRef";};return PartyRef;}();v1.HostChanged=function(){/**
1608
+ * Properties of a HostChanged.
1609
+ * @typedef {Object} gamend.realtime.v1.HostChanged.$Properties
1610
+ * @property {string|null} [new_host_id] HostChanged new_host_id
1611
+ * @property {string|null} [display_name] HostChanged display_name
1612
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1613
+ *//**
1614
+ * Properties of a HostChanged.
1615
+ * @memberof gamend.realtime.v1
1616
+ * @interface IHostChanged
1617
+ * @augments gamend.realtime.v1.HostChanged.$Properties
1618
+ * @deprecated Use gamend.realtime.v1.HostChanged.$Properties instead.
1619
+ *//**
1620
+ * Shape of a HostChanged.
1621
+ * @typedef {gamend.realtime.v1.HostChanged.$Properties} gamend.realtime.v1.HostChanged.$Shape
1622
+ *//**
1623
+ * Constructs a new HostChanged.
1624
+ * @memberof gamend.realtime.v1
1625
+ * @classdesc Represents a HostChanged.
1626
+ * @constructor
1627
+ * @param {gamend.realtime.v1.HostChanged.$Properties=} [properties] Properties to set
1628
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1629
+ */var HostChanged=function HostChanged(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1630
+ * HostChanged new_host_id.
1631
+ * @member {string} new_host_id
1632
+ * @memberof gamend.realtime.v1.HostChanged
1633
+ * @instance
1634
+ */HostChanged.prototype.new_host_id="";/**
1635
+ * HostChanged display_name.
1636
+ * @member {string} display_name
1637
+ * @memberof gamend.realtime.v1.HostChanged
1638
+ * @instance
1639
+ */HostChanged.prototype.display_name="";/**
1640
+ * Encodes the specified HostChanged message. Does not implicitly {@link gamend.realtime.v1.HostChanged.verify|verify} messages.
1641
+ * @function encode
1642
+ * @memberof gamend.realtime.v1.HostChanged
1643
+ * @static
1644
+ * @param {gamend.realtime.v1.HostChanged.$Properties} message HostChanged message or plain object to encode
1645
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1646
+ * @returns {$protobuf.Writer} Writer
1647
+ */HostChanged.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.new_host_id!=null&&$Object.hasOwnProperty.call(message,"new_host_id")&&message.new_host_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.new_host_id);if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name")&&message.display_name!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.display_name);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1648
+ * Decodes a HostChanged message from the specified reader or buffer.
1649
+ * @function decode
1650
+ * @memberof gamend.realtime.v1.HostChanged
1651
+ * @static
1652
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1653
+ * @param {number} [length] Message length if known beforehand
1654
+ * @returns {gamend.realtime.v1.HostChanged & gamend.realtime.v1.HostChanged.$Shape} HostChanged
1655
+ * @throws {Error} If the payload is not a reader or valid buffer
1656
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1657
+ */HostChanged.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.HostChanged(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.new_host_id=value;else delete message.new_host_id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.display_name=value;else delete message.display_name;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1658
+ * Creates a HostChanged message from a plain object. Also converts values to their respective internal types.
1659
+ * @function fromObject
1660
+ * @memberof gamend.realtime.v1.HostChanged
1661
+ * @static
1662
+ * @param {Object.<string,*>} object Plain object
1663
+ * @returns {gamend.realtime.v1.HostChanged} HostChanged
1664
+ */HostChanged.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.HostChanged)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.HostChanged: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.HostChanged();if(object.new_host_id!=null)if(typeof object.new_host_id!=="string"||object.new_host_id.length)message.new_host_id=$String(object.new_host_id);if(object.display_name!=null)if(typeof object.display_name!=="string"||object.display_name.length)message.display_name=$String(object.display_name);return message;};/**
1665
+ * Creates a plain object from a HostChanged message. Also converts values to other types if specified.
1666
+ * @function toObject
1667
+ * @memberof gamend.realtime.v1.HostChanged
1668
+ * @static
1669
+ * @param {gamend.realtime.v1.HostChanged} message HostChanged
1670
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1671
+ * @returns {Object.<string,*>} Plain object
1672
+ */HostChanged.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.new_host_id="";object.display_name="";}if(message.new_host_id!=null&&$Object.hasOwnProperty.call(message,"new_host_id"))object.new_host_id=message.new_host_id;if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))object.display_name=message.display_name;return object;};/**
1673
+ * Converts this HostChanged to JSON.
1674
+ * @function toJSON
1675
+ * @memberof gamend.realtime.v1.HostChanged
1676
+ * @instance
1677
+ * @returns {Object.<string,*>} JSON object
1678
+ */HostChanged.prototype.toJSON=function(){return HostChanged.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1679
+ * Gets the type url for HostChanged
1680
+ * @function getTypeUrl
1681
+ * @memberof gamend.realtime.v1.HostChanged
1682
+ * @static
1683
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1684
+ * @returns {string} The type url
1685
+ */HostChanged.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.HostChanged";};return HostChanged;}();v1.GroupInviteEvent=function(){/**
1686
+ * Properties of a GroupInviteEvent.
1687
+ * @typedef {Object} gamend.realtime.v1.GroupInviteEvent.$Properties
1688
+ * @property {string|null} [group_id] GroupInviteEvent group_id
1689
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1690
+ *//**
1691
+ * Properties of a GroupInviteEvent.
1692
+ * @memberof gamend.realtime.v1
1693
+ * @interface IGroupInviteEvent
1694
+ * @augments gamend.realtime.v1.GroupInviteEvent.$Properties
1695
+ * @deprecated Use gamend.realtime.v1.GroupInviteEvent.$Properties instead.
1696
+ *//**
1697
+ * Shape of a GroupInviteEvent.
1698
+ * @typedef {gamend.realtime.v1.GroupInviteEvent.$Properties} gamend.realtime.v1.GroupInviteEvent.$Shape
1699
+ *//**
1700
+ * Constructs a new GroupInviteEvent.
1701
+ * @memberof gamend.realtime.v1
1702
+ * @classdesc Represents a GroupInviteEvent.
1703
+ * @constructor
1704
+ * @param {gamend.realtime.v1.GroupInviteEvent.$Properties=} [properties] Properties to set
1705
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1706
+ */var GroupInviteEvent=function GroupInviteEvent(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1707
+ * GroupInviteEvent group_id.
1708
+ * @member {string} group_id
1709
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1710
+ * @instance
1711
+ */GroupInviteEvent.prototype.group_id="";/**
1712
+ * Encodes the specified GroupInviteEvent message. Does not implicitly {@link gamend.realtime.v1.GroupInviteEvent.verify|verify} messages.
1713
+ * @function encode
1714
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1715
+ * @static
1716
+ * @param {gamend.realtime.v1.GroupInviteEvent.$Properties} message GroupInviteEvent message or plain object to encode
1717
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1718
+ * @returns {$protobuf.Writer} Writer
1719
+ */GroupInviteEvent.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.group_id!=null&&$Object.hasOwnProperty.call(message,"group_id")&&message.group_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.group_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1720
+ * Decodes a GroupInviteEvent message from the specified reader or buffer.
1721
+ * @function decode
1722
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1723
+ * @static
1724
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1725
+ * @param {number} [length] Message length if known beforehand
1726
+ * @returns {gamend.realtime.v1.GroupInviteEvent & gamend.realtime.v1.GroupInviteEvent.$Shape} GroupInviteEvent
1727
+ * @throws {Error} If the payload is not a reader or valid buffer
1728
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1729
+ */GroupInviteEvent.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.GroupInviteEvent(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.group_id=value;else delete message.group_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1730
+ * Creates a GroupInviteEvent message from a plain object. Also converts values to their respective internal types.
1731
+ * @function fromObject
1732
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1733
+ * @static
1734
+ * @param {Object.<string,*>} object Plain object
1735
+ * @returns {gamend.realtime.v1.GroupInviteEvent} GroupInviteEvent
1736
+ */GroupInviteEvent.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.GroupInviteEvent)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.GroupInviteEvent: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.GroupInviteEvent();if(object.group_id!=null)if(typeof object.group_id!=="string"||object.group_id.length)message.group_id=$String(object.group_id);return message;};/**
1737
+ * Creates a plain object from a GroupInviteEvent message. Also converts values to other types if specified.
1738
+ * @function toObject
1739
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1740
+ * @static
1741
+ * @param {gamend.realtime.v1.GroupInviteEvent} message GroupInviteEvent
1742
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1743
+ * @returns {Object.<string,*>} Plain object
1744
+ */GroupInviteEvent.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.group_id="";if(message.group_id!=null&&$Object.hasOwnProperty.call(message,"group_id"))object.group_id=message.group_id;return object;};/**
1745
+ * Converts this GroupInviteEvent to JSON.
1746
+ * @function toJSON
1747
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1748
+ * @instance
1749
+ * @returns {Object.<string,*>} JSON object
1750
+ */GroupInviteEvent.prototype.toJSON=function(){return GroupInviteEvent.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1751
+ * Gets the type url for GroupInviteEvent
1752
+ * @function getTypeUrl
1753
+ * @memberof gamend.realtime.v1.GroupInviteEvent
1754
+ * @static
1755
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1756
+ * @returns {string} The type url
1757
+ */GroupInviteEvent.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.GroupInviteEvent";};return GroupInviteEvent;}();v1.PartyInviteEvent=function(){/**
1758
+ * Properties of a PartyInviteEvent.
1759
+ * @typedef {Object} gamend.realtime.v1.PartyInviteEvent.$Properties
1760
+ * @property {string|null} [party_id] PartyInviteEvent party_id
1761
+ * @property {string|null} [user_id] PartyInviteEvent user_id
1762
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1763
+ *//**
1764
+ * Properties of a PartyInviteEvent.
1765
+ * @memberof gamend.realtime.v1
1766
+ * @interface IPartyInviteEvent
1767
+ * @augments gamend.realtime.v1.PartyInviteEvent.$Properties
1768
+ * @deprecated Use gamend.realtime.v1.PartyInviteEvent.$Properties instead.
1769
+ *//**
1770
+ * Shape of a PartyInviteEvent.
1771
+ * @typedef {gamend.realtime.v1.PartyInviteEvent.$Properties} gamend.realtime.v1.PartyInviteEvent.$Shape
1772
+ *//**
1773
+ * Constructs a new PartyInviteEvent.
1774
+ * @memberof gamend.realtime.v1
1775
+ * @classdesc Represents a PartyInviteEvent.
1776
+ * @constructor
1777
+ * @param {gamend.realtime.v1.PartyInviteEvent.$Properties=} [properties] Properties to set
1778
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1779
+ */var PartyInviteEvent=function PartyInviteEvent(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1780
+ * PartyInviteEvent party_id.
1781
+ * @member {string} party_id
1782
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1783
+ * @instance
1784
+ */PartyInviteEvent.prototype.party_id="";/**
1785
+ * PartyInviteEvent user_id.
1786
+ * @member {string} user_id
1787
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1788
+ * @instance
1789
+ */PartyInviteEvent.prototype.user_id="";/**
1790
+ * Encodes the specified PartyInviteEvent message. Does not implicitly {@link gamend.realtime.v1.PartyInviteEvent.verify|verify} messages.
1791
+ * @function encode
1792
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1793
+ * @static
1794
+ * @param {gamend.realtime.v1.PartyInviteEvent.$Properties} message PartyInviteEvent message or plain object to encode
1795
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1796
+ * @returns {$protobuf.Writer} Writer
1797
+ */PartyInviteEvent.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id")&&message.party_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.party_id);if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id")&&message.user_id!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.user_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1798
+ * Decodes a PartyInviteEvent message from the specified reader or buffer.
1799
+ * @function decode
1800
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1801
+ * @static
1802
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1803
+ * @param {number} [length] Message length if known beforehand
1804
+ * @returns {gamend.realtime.v1.PartyInviteEvent & gamend.realtime.v1.PartyInviteEvent.$Shape} PartyInviteEvent
1805
+ * @throws {Error} If the payload is not a reader or valid buffer
1806
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1807
+ */PartyInviteEvent.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.PartyInviteEvent(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.party_id=value;else delete message.party_id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.user_id=value;else delete message.user_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1808
+ * Creates a PartyInviteEvent message from a plain object. Also converts values to their respective internal types.
1809
+ * @function fromObject
1810
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1811
+ * @static
1812
+ * @param {Object.<string,*>} object Plain object
1813
+ * @returns {gamend.realtime.v1.PartyInviteEvent} PartyInviteEvent
1814
+ */PartyInviteEvent.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.PartyInviteEvent)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.PartyInviteEvent: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.PartyInviteEvent();if(object.party_id!=null)if(typeof object.party_id!=="string"||object.party_id.length)message.party_id=$String(object.party_id);if(object.user_id!=null)if(typeof object.user_id!=="string"||object.user_id.length)message.user_id=$String(object.user_id);return message;};/**
1815
+ * Creates a plain object from a PartyInviteEvent message. Also converts values to other types if specified.
1816
+ * @function toObject
1817
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1818
+ * @static
1819
+ * @param {gamend.realtime.v1.PartyInviteEvent} message PartyInviteEvent
1820
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1821
+ * @returns {Object.<string,*>} Plain object
1822
+ */PartyInviteEvent.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.party_id="";object.user_id="";}if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id"))object.party_id=message.party_id;if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))object.user_id=message.user_id;return object;};/**
1823
+ * Converts this PartyInviteEvent to JSON.
1824
+ * @function toJSON
1825
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1826
+ * @instance
1827
+ * @returns {Object.<string,*>} JSON object
1828
+ */PartyInviteEvent.prototype.toJSON=function(){return PartyInviteEvent.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1829
+ * Gets the type url for PartyInviteEvent
1830
+ * @function getTypeUrl
1831
+ * @memberof gamend.realtime.v1.PartyInviteEvent
1832
+ * @static
1833
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1834
+ * @returns {string} The type url
1835
+ */PartyInviteEvent.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.PartyInviteEvent";};return PartyInviteEvent;}();v1.WalletChange=function(){/**
1836
+ * Properties of a WalletChange.
1837
+ * @typedef {Object} gamend.realtime.v1.WalletChange.$Properties
1838
+ * @property {string|null} [currency] WalletChange currency
1839
+ * @property {number|Long|null} [balance] WalletChange balance
1840
+ * @property {number|Long|null} [delta] WalletChange delta
1841
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1842
+ *//**
1843
+ * Properties of a WalletChange.
1844
+ * @memberof gamend.realtime.v1
1845
+ * @interface IWalletChange
1846
+ * @augments gamend.realtime.v1.WalletChange.$Properties
1847
+ * @deprecated Use gamend.realtime.v1.WalletChange.$Properties instead.
1848
+ *//**
1849
+ * Shape of a WalletChange.
1850
+ * @typedef {gamend.realtime.v1.WalletChange.$Properties} gamend.realtime.v1.WalletChange.$Shape
1851
+ *//**
1852
+ * Constructs a new WalletChange.
1853
+ * @memberof gamend.realtime.v1
1854
+ * @classdesc Represents a WalletChange.
1855
+ * @constructor
1856
+ * @param {gamend.realtime.v1.WalletChange.$Properties=} [properties] Properties to set
1857
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1858
+ */var WalletChange=function WalletChange(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1859
+ * WalletChange currency.
1860
+ * @member {string} currency
1861
+ * @memberof gamend.realtime.v1.WalletChange
1862
+ * @instance
1863
+ */WalletChange.prototype.currency="";/**
1864
+ * WalletChange balance.
1865
+ * @member {number|Long} balance
1866
+ * @memberof gamend.realtime.v1.WalletChange
1867
+ * @instance
1868
+ */WalletChange.prototype.balance=$util.Long?$util.Long.fromBits(0,0,false):0;/**
1869
+ * WalletChange delta.
1870
+ * @member {number|Long} delta
1871
+ * @memberof gamend.realtime.v1.WalletChange
1872
+ * @instance
1873
+ */WalletChange.prototype.delta=$util.Long?$util.Long.fromBits(0,0,false):0;/**
1874
+ * Encodes the specified WalletChange message. Does not implicitly {@link gamend.realtime.v1.WalletChange.verify|verify} messages.
1875
+ * @function encode
1876
+ * @memberof gamend.realtime.v1.WalletChange
1877
+ * @static
1878
+ * @param {gamend.realtime.v1.WalletChange.$Properties} message WalletChange message or plain object to encode
1879
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1880
+ * @returns {$protobuf.Writer} Writer
1881
+ */WalletChange.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.currency!=null&&$Object.hasOwnProperty.call(message,"currency")&&message.currency!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.currency);if(message.balance!=null&&$Object.hasOwnProperty.call(message,"balance")&&(_typeof(message.balance)==="object"?message.balance.low||message.balance.high:message.balance!==0))writer.uint32(/* id 2, wireType 0 =*/16).int64(message.balance);if(message.delta!=null&&$Object.hasOwnProperty.call(message,"delta")&&(_typeof(message.delta)==="object"?message.delta.low||message.delta.high:message.delta!==0))writer.uint32(/* id 3, wireType 0 =*/24).sint64(message.delta);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1882
+ * Decodes a WalletChange message from the specified reader or buffer.
1883
+ * @function decode
1884
+ * @memberof gamend.realtime.v1.WalletChange
1885
+ * @static
1886
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1887
+ * @param {number} [length] Message length if known beforehand
1888
+ * @returns {gamend.realtime.v1.WalletChange & gamend.realtime.v1.WalletChange.$Shape} WalletChange
1889
+ * @throws {Error} If the payload is not a reader or valid buffer
1890
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1891
+ */WalletChange.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.WalletChange(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.currency=value;else delete message.currency;continue;}case 2:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.balance=value;else delete message.balance;continue;}case 3:{if(wireType!==0)break;if(_typeof(value=reader.sint64())==="object"?value.low||value.high:value!==0)message.delta=value;else delete message.delta;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1892
+ * Creates a WalletChange message from a plain object. Also converts values to their respective internal types.
1893
+ * @function fromObject
1894
+ * @memberof gamend.realtime.v1.WalletChange
1895
+ * @static
1896
+ * @param {Object.<string,*>} object Plain object
1897
+ * @returns {gamend.realtime.v1.WalletChange} WalletChange
1898
+ */WalletChange.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.WalletChange)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.WalletChange: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.WalletChange();if(object.currency!=null)if(typeof object.currency!=="string"||object.currency.length)message.currency=$String(object.currency);if(object.balance!=null)if(_typeof(object.balance)==="object"?object.balance.low||object.balance.high:$Number(object.balance)!==0)if($util.Long)message.balance=$util.Long.fromValue(object.balance,false);else if(typeof object.balance==="string")message.balance=$parseInt(object.balance,10);else if(typeof object.balance==="number")message.balance=object.balance;else if(_typeof(object.balance)==="object")message.balance=new $util.LongBits(object.balance.low>>>0,object.balance.high>>>0).toNumber();if(object.delta!=null)if(_typeof(object.delta)==="object"?object.delta.low||object.delta.high:$Number(object.delta)!==0)if($util.Long)message.delta=$util.Long.fromValue(object.delta,false);else if(typeof object.delta==="string")message.delta=$parseInt(object.delta,10);else if(typeof object.delta==="number")message.delta=object.delta;else if(_typeof(object.delta)==="object")message.delta=new $util.LongBits(object.delta.low>>>0,object.delta.high>>>0).toNumber();return message;};/**
1899
+ * Creates a plain object from a WalletChange message. Also converts values to other types if specified.
1900
+ * @function toObject
1901
+ * @memberof gamend.realtime.v1.WalletChange
1902
+ * @static
1903
+ * @param {gamend.realtime.v1.WalletChange} message WalletChange
1904
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1905
+ * @returns {Object.<string,*>} Plain object
1906
+ */WalletChange.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.currency="";if($util.Long){var _long5=new $util.Long(0,0,false);object.balance=options.longs===$String?_long5.toString():options.longs===$Number?_long5.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long5.toBigInt():_long5;}else object.balance=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;if($util.Long){var _long6=new $util.Long(0,0,false);object.delta=options.longs===$String?_long6.toString():options.longs===$Number?_long6.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long6.toBigInt():_long6;}else object.delta=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;}if(message.currency!=null&&$Object.hasOwnProperty.call(message,"currency"))object.currency=message.currency;if(message.balance!=null&&$Object.hasOwnProperty.call(message,"balance"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.balance=typeof message.balance==="number"?$BigInt(message.balance):$util.Long.fromBits(message.balance.low>>>0,message.balance.high>>>0,false).toBigInt();else if(typeof message.balance==="number")object.balance=options.longs===$String?$String(message.balance):message.balance;else object.balance=options.longs===$String?$util.Long.prototype.toString.call(message.balance):options.longs===$Number?new $util.LongBits(message.balance.low>>>0,message.balance.high>>>0).toNumber():message.balance;if(message.delta!=null&&$Object.hasOwnProperty.call(message,"delta"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.delta=typeof message.delta==="number"?$BigInt(message.delta):$util.Long.fromBits(message.delta.low>>>0,message.delta.high>>>0,false).toBigInt();else if(typeof message.delta==="number")object.delta=options.longs===$String?$String(message.delta):message.delta;else object.delta=options.longs===$String?$util.Long.prototype.toString.call(message.delta):options.longs===$Number?new $util.LongBits(message.delta.low>>>0,message.delta.high>>>0).toNumber():message.delta;return object;};/**
1907
+ * Converts this WalletChange to JSON.
1908
+ * @function toJSON
1909
+ * @memberof gamend.realtime.v1.WalletChange
1910
+ * @instance
1911
+ * @returns {Object.<string,*>} JSON object
1912
+ */WalletChange.prototype.toJSON=function(){return WalletChange.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1913
+ * Gets the type url for WalletChange
1914
+ * @function getTypeUrl
1915
+ * @memberof gamend.realtime.v1.WalletChange
1916
+ * @static
1917
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
1918
+ * @returns {string} The type url
1919
+ */WalletChange.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.WalletChange";};return WalletChange;}();v1.InventoryChange=function(){/**
1920
+ * Properties of an InventoryChange.
1921
+ * @typedef {Object} gamend.realtime.v1.InventoryChange.$Properties
1922
+ * @property {string|null} [item_code] InventoryChange item_code
1923
+ * @property {number|Long|null} [quantity] InventoryChange quantity
1924
+ * @property {number|Long|null} [delta] InventoryChange delta
1925
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1926
+ *//**
1927
+ * Properties of an InventoryChange.
1928
+ * @memberof gamend.realtime.v1
1929
+ * @interface IInventoryChange
1930
+ * @augments gamend.realtime.v1.InventoryChange.$Properties
1931
+ * @deprecated Use gamend.realtime.v1.InventoryChange.$Properties instead.
1932
+ *//**
1933
+ * Shape of an InventoryChange.
1934
+ * @typedef {gamend.realtime.v1.InventoryChange.$Properties} gamend.realtime.v1.InventoryChange.$Shape
1935
+ *//**
1936
+ * Constructs a new InventoryChange.
1937
+ * @memberof gamend.realtime.v1
1938
+ * @classdesc Represents an InventoryChange.
1939
+ * @constructor
1940
+ * @param {gamend.realtime.v1.InventoryChange.$Properties=} [properties] Properties to set
1941
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
1942
+ */var InventoryChange=function InventoryChange(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
1943
+ * InventoryChange item_code.
1944
+ * @member {string} item_code
1945
+ * @memberof gamend.realtime.v1.InventoryChange
1946
+ * @instance
1947
+ */InventoryChange.prototype.item_code="";/**
1948
+ * InventoryChange quantity.
1949
+ * @member {number|Long} quantity
1950
+ * @memberof gamend.realtime.v1.InventoryChange
1951
+ * @instance
1952
+ */InventoryChange.prototype.quantity=$util.Long?$util.Long.fromBits(0,0,false):0;/**
1953
+ * InventoryChange delta.
1954
+ * @member {number|Long} delta
1955
+ * @memberof gamend.realtime.v1.InventoryChange
1956
+ * @instance
1957
+ */InventoryChange.prototype.delta=$util.Long?$util.Long.fromBits(0,0,false):0;/**
1958
+ * Encodes the specified InventoryChange message. Does not implicitly {@link gamend.realtime.v1.InventoryChange.verify|verify} messages.
1959
+ * @function encode
1960
+ * @memberof gamend.realtime.v1.InventoryChange
1961
+ * @static
1962
+ * @param {gamend.realtime.v1.InventoryChange.$Properties} message InventoryChange message or plain object to encode
1963
+ * @param {$protobuf.Writer} [writer] Writer to encode to
1964
+ * @returns {$protobuf.Writer} Writer
1965
+ */InventoryChange.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.item_code!=null&&$Object.hasOwnProperty.call(message,"item_code")&&message.item_code!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.item_code);if(message.quantity!=null&&$Object.hasOwnProperty.call(message,"quantity")&&(_typeof(message.quantity)==="object"?message.quantity.low||message.quantity.high:message.quantity!==0))writer.uint32(/* id 2, wireType 0 =*/16).int64(message.quantity);if(message.delta!=null&&$Object.hasOwnProperty.call(message,"delta")&&(_typeof(message.delta)==="object"?message.delta.low||message.delta.high:message.delta!==0))writer.uint32(/* id 3, wireType 0 =*/24).sint64(message.delta);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
1966
+ * Decodes an InventoryChange message from the specified reader or buffer.
1967
+ * @function decode
1968
+ * @memberof gamend.realtime.v1.InventoryChange
1969
+ * @static
1970
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1971
+ * @param {number} [length] Message length if known beforehand
1972
+ * @returns {gamend.realtime.v1.InventoryChange & gamend.realtime.v1.InventoryChange.$Shape} InventoryChange
1973
+ * @throws {Error} If the payload is not a reader or valid buffer
1974
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
1975
+ */InventoryChange.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.InventoryChange(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.item_code=value;else delete message.item_code;continue;}case 2:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.quantity=value;else delete message.quantity;continue;}case 3:{if(wireType!==0)break;if(_typeof(value=reader.sint64())==="object"?value.low||value.high:value!==0)message.delta=value;else delete message.delta;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
1976
+ * Creates an InventoryChange message from a plain object. Also converts values to their respective internal types.
1977
+ * @function fromObject
1978
+ * @memberof gamend.realtime.v1.InventoryChange
1979
+ * @static
1980
+ * @param {Object.<string,*>} object Plain object
1981
+ * @returns {gamend.realtime.v1.InventoryChange} InventoryChange
1982
+ */InventoryChange.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.InventoryChange)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.InventoryChange: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.InventoryChange();if(object.item_code!=null)if(typeof object.item_code!=="string"||object.item_code.length)message.item_code=$String(object.item_code);if(object.quantity!=null)if(_typeof(object.quantity)==="object"?object.quantity.low||object.quantity.high:$Number(object.quantity)!==0)if($util.Long)message.quantity=$util.Long.fromValue(object.quantity,false);else if(typeof object.quantity==="string")message.quantity=$parseInt(object.quantity,10);else if(typeof object.quantity==="number")message.quantity=object.quantity;else if(_typeof(object.quantity)==="object")message.quantity=new $util.LongBits(object.quantity.low>>>0,object.quantity.high>>>0).toNumber();if(object.delta!=null)if(_typeof(object.delta)==="object"?object.delta.low||object.delta.high:$Number(object.delta)!==0)if($util.Long)message.delta=$util.Long.fromValue(object.delta,false);else if(typeof object.delta==="string")message.delta=$parseInt(object.delta,10);else if(typeof object.delta==="number")message.delta=object.delta;else if(_typeof(object.delta)==="object")message.delta=new $util.LongBits(object.delta.low>>>0,object.delta.high>>>0).toNumber();return message;};/**
1983
+ * Creates a plain object from an InventoryChange message. Also converts values to other types if specified.
1984
+ * @function toObject
1985
+ * @memberof gamend.realtime.v1.InventoryChange
1986
+ * @static
1987
+ * @param {gamend.realtime.v1.InventoryChange} message InventoryChange
1988
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
1989
+ * @returns {Object.<string,*>} Plain object
1990
+ */InventoryChange.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.item_code="";if($util.Long){var _long7=new $util.Long(0,0,false);object.quantity=options.longs===$String?_long7.toString():options.longs===$Number?_long7.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long7.toBigInt():_long7;}else object.quantity=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;if($util.Long){var _long8=new $util.Long(0,0,false);object.delta=options.longs===$String?_long8.toString():options.longs===$Number?_long8.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long8.toBigInt():_long8;}else object.delta=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;}if(message.item_code!=null&&$Object.hasOwnProperty.call(message,"item_code"))object.item_code=message.item_code;if(message.quantity!=null&&$Object.hasOwnProperty.call(message,"quantity"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.quantity=typeof message.quantity==="number"?$BigInt(message.quantity):$util.Long.fromBits(message.quantity.low>>>0,message.quantity.high>>>0,false).toBigInt();else if(typeof message.quantity==="number")object.quantity=options.longs===$String?$String(message.quantity):message.quantity;else object.quantity=options.longs===$String?$util.Long.prototype.toString.call(message.quantity):options.longs===$Number?new $util.LongBits(message.quantity.low>>>0,message.quantity.high>>>0).toNumber():message.quantity;if(message.delta!=null&&$Object.hasOwnProperty.call(message,"delta"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.delta=typeof message.delta==="number"?$BigInt(message.delta):$util.Long.fromBits(message.delta.low>>>0,message.delta.high>>>0,false).toBigInt();else if(typeof message.delta==="number")object.delta=options.longs===$String?$String(message.delta):message.delta;else object.delta=options.longs===$String?$util.Long.prototype.toString.call(message.delta):options.longs===$Number?new $util.LongBits(message.delta.low>>>0,message.delta.high>>>0).toNumber():message.delta;return object;};/**
1991
+ * Converts this InventoryChange to JSON.
1992
+ * @function toJSON
1993
+ * @memberof gamend.realtime.v1.InventoryChange
1994
+ * @instance
1995
+ * @returns {Object.<string,*>} JSON object
1996
+ */InventoryChange.prototype.toJSON=function(){return InventoryChange.toObject(this,_minimal["default"].util.toJSONOptions);};/**
1997
+ * Gets the type url for InventoryChange
1998
+ * @function getTypeUrl
1999
+ * @memberof gamend.realtime.v1.InventoryChange
2000
+ * @static
2001
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2002
+ * @returns {string} The type url
2003
+ */InventoryChange.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.InventoryChange";};return InventoryChange;}();v1.ChatMute=function(){/**
2004
+ * Properties of a ChatMute.
2005
+ * @typedef {Object} gamend.realtime.v1.ChatMute.$Properties
2006
+ * @property {string|null} [scope] ChatMute scope
2007
+ * @property {string|null} [scope_ref_id] ChatMute scope_ref_id
2008
+ * @property {number|Long|null} [expires_at] ChatMute expires_at
2009
+ * @property {string|null} [reason] ChatMute reason
2010
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2011
+ *//**
2012
+ * Properties of a ChatMute.
2013
+ * @memberof gamend.realtime.v1
2014
+ * @interface IChatMute
2015
+ * @augments gamend.realtime.v1.ChatMute.$Properties
2016
+ * @deprecated Use gamend.realtime.v1.ChatMute.$Properties instead.
2017
+ *//**
2018
+ * Shape of a ChatMute.
2019
+ * @typedef {gamend.realtime.v1.ChatMute.$Properties} gamend.realtime.v1.ChatMute.$Shape
2020
+ *//**
2021
+ * Constructs a new ChatMute.
2022
+ * @memberof gamend.realtime.v1
2023
+ * @classdesc Represents a ChatMute.
2024
+ * @constructor
2025
+ * @param {gamend.realtime.v1.ChatMute.$Properties=} [properties] Properties to set
2026
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2027
+ */var ChatMute=function ChatMute(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2028
+ * ChatMute scope.
2029
+ * @member {string} scope
2030
+ * @memberof gamend.realtime.v1.ChatMute
2031
+ * @instance
2032
+ */ChatMute.prototype.scope="";/**
2033
+ * ChatMute scope_ref_id.
2034
+ * @member {string} scope_ref_id
2035
+ * @memberof gamend.realtime.v1.ChatMute
2036
+ * @instance
2037
+ */ChatMute.prototype.scope_ref_id="";/**
2038
+ * ChatMute expires_at.
2039
+ * @member {number|Long} expires_at
2040
+ * @memberof gamend.realtime.v1.ChatMute
2041
+ * @instance
2042
+ */ChatMute.prototype.expires_at=$util.Long?$util.Long.fromBits(0,0,false):0;/**
2043
+ * ChatMute reason.
2044
+ * @member {string} reason
2045
+ * @memberof gamend.realtime.v1.ChatMute
2046
+ * @instance
2047
+ */ChatMute.prototype.reason="";/**
2048
+ * Encodes the specified ChatMute message. Does not implicitly {@link gamend.realtime.v1.ChatMute.verify|verify} messages.
2049
+ * @function encode
2050
+ * @memberof gamend.realtime.v1.ChatMute
2051
+ * @static
2052
+ * @param {gamend.realtime.v1.ChatMute.$Properties} message ChatMute message or plain object to encode
2053
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2054
+ * @returns {$protobuf.Writer} Writer
2055
+ */ChatMute.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.scope!=null&&$Object.hasOwnProperty.call(message,"scope")&&message.scope!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.scope);if(message.scope_ref_id!=null&&$Object.hasOwnProperty.call(message,"scope_ref_id")&&message.scope_ref_id!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.scope_ref_id);if(message.expires_at!=null&&$Object.hasOwnProperty.call(message,"expires_at")&&(_typeof(message.expires_at)==="object"?message.expires_at.low||message.expires_at.high:message.expires_at!==0))writer.uint32(/* id 3, wireType 0 =*/24).int64(message.expires_at);if(message.reason!=null&&$Object.hasOwnProperty.call(message,"reason")&&message.reason!=="")writer.uint32(/* id 4, wireType 2 =*/34).string(message.reason);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2056
+ * Decodes a ChatMute message from the specified reader or buffer.
2057
+ * @function decode
2058
+ * @memberof gamend.realtime.v1.ChatMute
2059
+ * @static
2060
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2061
+ * @param {number} [length] Message length if known beforehand
2062
+ * @returns {gamend.realtime.v1.ChatMute & gamend.realtime.v1.ChatMute.$Shape} ChatMute
2063
+ * @throws {Error} If the payload is not a reader or valid buffer
2064
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2065
+ */ChatMute.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.ChatMute(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.scope=value;else delete message.scope;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.scope_ref_id=value;else delete message.scope_ref_id;continue;}case 3:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.expires_at=value;else delete message.expires_at;continue;}case 4:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.reason=value;else delete message.reason;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2066
+ * Creates a ChatMute message from a plain object. Also converts values to their respective internal types.
2067
+ * @function fromObject
2068
+ * @memberof gamend.realtime.v1.ChatMute
2069
+ * @static
2070
+ * @param {Object.<string,*>} object Plain object
2071
+ * @returns {gamend.realtime.v1.ChatMute} ChatMute
2072
+ */ChatMute.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.ChatMute)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.ChatMute: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.ChatMute();if(object.scope!=null)if(typeof object.scope!=="string"||object.scope.length)message.scope=$String(object.scope);if(object.scope_ref_id!=null)if(typeof object.scope_ref_id!=="string"||object.scope_ref_id.length)message.scope_ref_id=$String(object.scope_ref_id);if(object.expires_at!=null)if(_typeof(object.expires_at)==="object"?object.expires_at.low||object.expires_at.high:$Number(object.expires_at)!==0)if($util.Long)message.expires_at=$util.Long.fromValue(object.expires_at,false);else if(typeof object.expires_at==="string")message.expires_at=$parseInt(object.expires_at,10);else if(typeof object.expires_at==="number")message.expires_at=object.expires_at;else if(_typeof(object.expires_at)==="object")message.expires_at=new $util.LongBits(object.expires_at.low>>>0,object.expires_at.high>>>0).toNumber();if(object.reason!=null)if(typeof object.reason!=="string"||object.reason.length)message.reason=$String(object.reason);return message;};/**
2073
+ * Creates a plain object from a ChatMute message. Also converts values to other types if specified.
2074
+ * @function toObject
2075
+ * @memberof gamend.realtime.v1.ChatMute
2076
+ * @static
2077
+ * @param {gamend.realtime.v1.ChatMute} message ChatMute
2078
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2079
+ * @returns {Object.<string,*>} Plain object
2080
+ */ChatMute.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.scope="";object.scope_ref_id="";if($util.Long){var _long9=new $util.Long(0,0,false);object.expires_at=options.longs===$String?_long9.toString():options.longs===$Number?_long9.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long9.toBigInt():_long9;}else object.expires_at=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;object.reason="";}if(message.scope!=null&&$Object.hasOwnProperty.call(message,"scope"))object.scope=message.scope;if(message.scope_ref_id!=null&&$Object.hasOwnProperty.call(message,"scope_ref_id"))object.scope_ref_id=message.scope_ref_id;if(message.expires_at!=null&&$Object.hasOwnProperty.call(message,"expires_at"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.expires_at=typeof message.expires_at==="number"?$BigInt(message.expires_at):$util.Long.fromBits(message.expires_at.low>>>0,message.expires_at.high>>>0,false).toBigInt();else if(typeof message.expires_at==="number")object.expires_at=options.longs===$String?$String(message.expires_at):message.expires_at;else object.expires_at=options.longs===$String?$util.Long.prototype.toString.call(message.expires_at):options.longs===$Number?new $util.LongBits(message.expires_at.low>>>0,message.expires_at.high>>>0).toNumber():message.expires_at;if(message.reason!=null&&$Object.hasOwnProperty.call(message,"reason"))object.reason=message.reason;return object;};/**
2081
+ * Converts this ChatMute to JSON.
2082
+ * @function toJSON
2083
+ * @memberof gamend.realtime.v1.ChatMute
2084
+ * @instance
2085
+ * @returns {Object.<string,*>} JSON object
2086
+ */ChatMute.prototype.toJSON=function(){return ChatMute.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2087
+ * Gets the type url for ChatMute
2088
+ * @function getTypeUrl
2089
+ * @memberof gamend.realtime.v1.ChatMute
2090
+ * @static
2091
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2092
+ * @returns {string} The type url
2093
+ */ChatMute.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.ChatMute";};return ChatMute;}();v1.ChatUnmute=function(){/**
2094
+ * Properties of a ChatUnmute.
2095
+ * @typedef {Object} gamend.realtime.v1.ChatUnmute.$Properties
2096
+ * @property {string|null} [scope] ChatUnmute scope
2097
+ * @property {string|null} [scope_ref_id] ChatUnmute scope_ref_id
2098
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2099
+ *//**
2100
+ * Properties of a ChatUnmute.
2101
+ * @memberof gamend.realtime.v1
2102
+ * @interface IChatUnmute
2103
+ * @augments gamend.realtime.v1.ChatUnmute.$Properties
2104
+ * @deprecated Use gamend.realtime.v1.ChatUnmute.$Properties instead.
2105
+ *//**
2106
+ * Shape of a ChatUnmute.
2107
+ * @typedef {gamend.realtime.v1.ChatUnmute.$Properties} gamend.realtime.v1.ChatUnmute.$Shape
2108
+ *//**
2109
+ * Constructs a new ChatUnmute.
2110
+ * @memberof gamend.realtime.v1
2111
+ * @classdesc Represents a ChatUnmute.
2112
+ * @constructor
2113
+ * @param {gamend.realtime.v1.ChatUnmute.$Properties=} [properties] Properties to set
2114
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2115
+ */var ChatUnmute=function ChatUnmute(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2116
+ * ChatUnmute scope.
2117
+ * @member {string} scope
2118
+ * @memberof gamend.realtime.v1.ChatUnmute
2119
+ * @instance
2120
+ */ChatUnmute.prototype.scope="";/**
2121
+ * ChatUnmute scope_ref_id.
2122
+ * @member {string} scope_ref_id
2123
+ * @memberof gamend.realtime.v1.ChatUnmute
2124
+ * @instance
2125
+ */ChatUnmute.prototype.scope_ref_id="";/**
2126
+ * Encodes the specified ChatUnmute message. Does not implicitly {@link gamend.realtime.v1.ChatUnmute.verify|verify} messages.
2127
+ * @function encode
2128
+ * @memberof gamend.realtime.v1.ChatUnmute
2129
+ * @static
2130
+ * @param {gamend.realtime.v1.ChatUnmute.$Properties} message ChatUnmute message or plain object to encode
2131
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2132
+ * @returns {$protobuf.Writer} Writer
2133
+ */ChatUnmute.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.scope!=null&&$Object.hasOwnProperty.call(message,"scope")&&message.scope!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.scope);if(message.scope_ref_id!=null&&$Object.hasOwnProperty.call(message,"scope_ref_id")&&message.scope_ref_id!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.scope_ref_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2134
+ * Decodes a ChatUnmute message from the specified reader or buffer.
2135
+ * @function decode
2136
+ * @memberof gamend.realtime.v1.ChatUnmute
2137
+ * @static
2138
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2139
+ * @param {number} [length] Message length if known beforehand
2140
+ * @returns {gamend.realtime.v1.ChatUnmute & gamend.realtime.v1.ChatUnmute.$Shape} ChatUnmute
2141
+ * @throws {Error} If the payload is not a reader or valid buffer
2142
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2143
+ */ChatUnmute.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.ChatUnmute(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.scope=value;else delete message.scope;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.scope_ref_id=value;else delete message.scope_ref_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2144
+ * Creates a ChatUnmute message from a plain object. Also converts values to their respective internal types.
2145
+ * @function fromObject
2146
+ * @memberof gamend.realtime.v1.ChatUnmute
2147
+ * @static
2148
+ * @param {Object.<string,*>} object Plain object
2149
+ * @returns {gamend.realtime.v1.ChatUnmute} ChatUnmute
2150
+ */ChatUnmute.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.ChatUnmute)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.ChatUnmute: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.ChatUnmute();if(object.scope!=null)if(typeof object.scope!=="string"||object.scope.length)message.scope=$String(object.scope);if(object.scope_ref_id!=null)if(typeof object.scope_ref_id!=="string"||object.scope_ref_id.length)message.scope_ref_id=$String(object.scope_ref_id);return message;};/**
2151
+ * Creates a plain object from a ChatUnmute message. Also converts values to other types if specified.
2152
+ * @function toObject
2153
+ * @memberof gamend.realtime.v1.ChatUnmute
2154
+ * @static
2155
+ * @param {gamend.realtime.v1.ChatUnmute} message ChatUnmute
2156
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2157
+ * @returns {Object.<string,*>} Plain object
2158
+ */ChatUnmute.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.scope="";object.scope_ref_id="";}if(message.scope!=null&&$Object.hasOwnProperty.call(message,"scope"))object.scope=message.scope;if(message.scope_ref_id!=null&&$Object.hasOwnProperty.call(message,"scope_ref_id"))object.scope_ref_id=message.scope_ref_id;return object;};/**
2159
+ * Converts this ChatUnmute to JSON.
2160
+ * @function toJSON
2161
+ * @memberof gamend.realtime.v1.ChatUnmute
2162
+ * @instance
2163
+ * @returns {Object.<string,*>} JSON object
2164
+ */ChatUnmute.prototype.toJSON=function(){return ChatUnmute.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2165
+ * Gets the type url for ChatUnmute
2166
+ * @function getTypeUrl
2167
+ * @memberof gamend.realtime.v1.ChatUnmute
2168
+ * @static
2169
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2170
+ * @returns {string} The type url
2171
+ */ChatUnmute.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.ChatUnmute";};return ChatUnmute;}();v1.TournamentEvent=function(){/**
2172
+ * Properties of a TournamentEvent.
2173
+ * @typedef {Object} gamend.realtime.v1.TournamentEvent.$Properties
2174
+ * @property {string|null} [tournament_id] TournamentEvent tournament_id
2175
+ * @property {string|null} [slug] TournamentEvent slug
2176
+ * @property {string|null} [state] TournamentEvent state
2177
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2178
+ *//**
2179
+ * Properties of a TournamentEvent.
2180
+ * @memberof gamend.realtime.v1
2181
+ * @interface ITournamentEvent
2182
+ * @augments gamend.realtime.v1.TournamentEvent.$Properties
2183
+ * @deprecated Use gamend.realtime.v1.TournamentEvent.$Properties instead.
2184
+ *//**
2185
+ * Shape of a TournamentEvent.
2186
+ * @typedef {gamend.realtime.v1.TournamentEvent.$Properties} gamend.realtime.v1.TournamentEvent.$Shape
2187
+ *//**
2188
+ * Constructs a new TournamentEvent.
2189
+ * @memberof gamend.realtime.v1
2190
+ * @classdesc Represents a TournamentEvent.
2191
+ * @constructor
2192
+ * @param {gamend.realtime.v1.TournamentEvent.$Properties=} [properties] Properties to set
2193
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2194
+ */var TournamentEvent=function TournamentEvent(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2195
+ * TournamentEvent tournament_id.
2196
+ * @member {string} tournament_id
2197
+ * @memberof gamend.realtime.v1.TournamentEvent
2198
+ * @instance
2199
+ */TournamentEvent.prototype.tournament_id="";/**
2200
+ * TournamentEvent slug.
2201
+ * @member {string} slug
2202
+ * @memberof gamend.realtime.v1.TournamentEvent
2203
+ * @instance
2204
+ */TournamentEvent.prototype.slug="";/**
2205
+ * TournamentEvent state.
2206
+ * @member {string} state
2207
+ * @memberof gamend.realtime.v1.TournamentEvent
2208
+ * @instance
2209
+ */TournamentEvent.prototype.state="";/**
2210
+ * Encodes the specified TournamentEvent message. Does not implicitly {@link gamend.realtime.v1.TournamentEvent.verify|verify} messages.
2211
+ * @function encode
2212
+ * @memberof gamend.realtime.v1.TournamentEvent
2213
+ * @static
2214
+ * @param {gamend.realtime.v1.TournamentEvent.$Properties} message TournamentEvent message or plain object to encode
2215
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2216
+ * @returns {$protobuf.Writer} Writer
2217
+ */TournamentEvent.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.tournament_id!=null&&$Object.hasOwnProperty.call(message,"tournament_id")&&message.tournament_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.tournament_id);if(message.slug!=null&&$Object.hasOwnProperty.call(message,"slug")&&message.slug!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.slug);if(message.state!=null&&$Object.hasOwnProperty.call(message,"state")&&message.state!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.state);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2218
+ * Decodes a TournamentEvent message from the specified reader or buffer.
2219
+ * @function decode
2220
+ * @memberof gamend.realtime.v1.TournamentEvent
2221
+ * @static
2222
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2223
+ * @param {number} [length] Message length if known beforehand
2224
+ * @returns {gamend.realtime.v1.TournamentEvent & gamend.realtime.v1.TournamentEvent.$Shape} TournamentEvent
2225
+ * @throws {Error} If the payload is not a reader or valid buffer
2226
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2227
+ */TournamentEvent.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.TournamentEvent(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.tournament_id=value;else delete message.tournament_id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.slug=value;else delete message.slug;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.state=value;else delete message.state;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2228
+ * Creates a TournamentEvent message from a plain object. Also converts values to their respective internal types.
2229
+ * @function fromObject
2230
+ * @memberof gamend.realtime.v1.TournamentEvent
2231
+ * @static
2232
+ * @param {Object.<string,*>} object Plain object
2233
+ * @returns {gamend.realtime.v1.TournamentEvent} TournamentEvent
2234
+ */TournamentEvent.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.TournamentEvent)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.TournamentEvent: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.TournamentEvent();if(object.tournament_id!=null)if(typeof object.tournament_id!=="string"||object.tournament_id.length)message.tournament_id=$String(object.tournament_id);if(object.slug!=null)if(typeof object.slug!=="string"||object.slug.length)message.slug=$String(object.slug);if(object.state!=null)if(typeof object.state!=="string"||object.state.length)message.state=$String(object.state);return message;};/**
2235
+ * Creates a plain object from a TournamentEvent message. Also converts values to other types if specified.
2236
+ * @function toObject
2237
+ * @memberof gamend.realtime.v1.TournamentEvent
2238
+ * @static
2239
+ * @param {gamend.realtime.v1.TournamentEvent} message TournamentEvent
2240
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2241
+ * @returns {Object.<string,*>} Plain object
2242
+ */TournamentEvent.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.tournament_id="";object.slug="";object.state="";}if(message.tournament_id!=null&&$Object.hasOwnProperty.call(message,"tournament_id"))object.tournament_id=message.tournament_id;if(message.slug!=null&&$Object.hasOwnProperty.call(message,"slug"))object.slug=message.slug;if(message.state!=null&&$Object.hasOwnProperty.call(message,"state"))object.state=message.state;return object;};/**
2243
+ * Converts this TournamentEvent to JSON.
2244
+ * @function toJSON
2245
+ * @memberof gamend.realtime.v1.TournamentEvent
2246
+ * @instance
2247
+ * @returns {Object.<string,*>} JSON object
2248
+ */TournamentEvent.prototype.toJSON=function(){return TournamentEvent.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2249
+ * Gets the type url for TournamentEvent
2250
+ * @function getTypeUrl
2251
+ * @memberof gamend.realtime.v1.TournamentEvent
2252
+ * @static
2253
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2254
+ * @returns {string} The type url
2255
+ */TournamentEvent.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.TournamentEvent";};return TournamentEvent;}();v1.TournamentMatchEvent=function(){/**
2256
+ * Properties of a TournamentMatchEvent.
2257
+ * @typedef {Object} gamend.realtime.v1.TournamentMatchEvent.$Properties
2258
+ * @property {string|null} [tournament_id] TournamentMatchEvent tournament_id
2259
+ * @property {string|null} [slug] TournamentMatchEvent slug
2260
+ * @property {string|null} [match_id] TournamentMatchEvent match_id
2261
+ * @property {number|null} [round] TournamentMatchEvent round
2262
+ * @property {number|Long|null} [deadline_ms] TournamentMatchEvent deadline_ms
2263
+ * @property {string|null} [winner_entry_id] TournamentMatchEvent winner_entry_id
2264
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2265
+ *//**
2266
+ * Properties of a TournamentMatchEvent.
2267
+ * @memberof gamend.realtime.v1
2268
+ * @interface ITournamentMatchEvent
2269
+ * @augments gamend.realtime.v1.TournamentMatchEvent.$Properties
2270
+ * @deprecated Use gamend.realtime.v1.TournamentMatchEvent.$Properties instead.
2271
+ *//**
2272
+ * Shape of a TournamentMatchEvent.
2273
+ * @typedef {gamend.realtime.v1.TournamentMatchEvent.$Properties} gamend.realtime.v1.TournamentMatchEvent.$Shape
2274
+ *//**
2275
+ * Constructs a new TournamentMatchEvent.
2276
+ * @memberof gamend.realtime.v1
2277
+ * @classdesc Represents a TournamentMatchEvent.
2278
+ * @constructor
2279
+ * @param {gamend.realtime.v1.TournamentMatchEvent.$Properties=} [properties] Properties to set
2280
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2281
+ */var TournamentMatchEvent=function TournamentMatchEvent(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2282
+ * TournamentMatchEvent tournament_id.
2283
+ * @member {string} tournament_id
2284
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2285
+ * @instance
2286
+ */TournamentMatchEvent.prototype.tournament_id="";/**
2287
+ * TournamentMatchEvent slug.
2288
+ * @member {string} slug
2289
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2290
+ * @instance
2291
+ */TournamentMatchEvent.prototype.slug="";/**
2292
+ * TournamentMatchEvent match_id.
2293
+ * @member {string} match_id
2294
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2295
+ * @instance
2296
+ */TournamentMatchEvent.prototype.match_id="";/**
2297
+ * TournamentMatchEvent round.
2298
+ * @member {number} round
2299
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2300
+ * @instance
2301
+ */TournamentMatchEvent.prototype.round=0;/**
2302
+ * TournamentMatchEvent deadline_ms.
2303
+ * @member {number|Long} deadline_ms
2304
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2305
+ * @instance
2306
+ */TournamentMatchEvent.prototype.deadline_ms=$util.Long?$util.Long.fromBits(0,0,false):0;/**
2307
+ * TournamentMatchEvent winner_entry_id.
2308
+ * @member {string} winner_entry_id
2309
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2310
+ * @instance
2311
+ */TournamentMatchEvent.prototype.winner_entry_id="";/**
2312
+ * Encodes the specified TournamentMatchEvent message. Does not implicitly {@link gamend.realtime.v1.TournamentMatchEvent.verify|verify} messages.
2313
+ * @function encode
2314
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2315
+ * @static
2316
+ * @param {gamend.realtime.v1.TournamentMatchEvent.$Properties} message TournamentMatchEvent message or plain object to encode
2317
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2318
+ * @returns {$protobuf.Writer} Writer
2319
+ */TournamentMatchEvent.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.tournament_id!=null&&$Object.hasOwnProperty.call(message,"tournament_id")&&message.tournament_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.tournament_id);if(message.slug!=null&&$Object.hasOwnProperty.call(message,"slug")&&message.slug!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.slug);if(message.match_id!=null&&$Object.hasOwnProperty.call(message,"match_id")&&message.match_id!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.match_id);if(message.round!=null&&$Object.hasOwnProperty.call(message,"round")&&message.round!==0)writer.uint32(/* id 4, wireType 0 =*/32).int32(message.round);if(message.deadline_ms!=null&&$Object.hasOwnProperty.call(message,"deadline_ms")&&(_typeof(message.deadline_ms)==="object"?message.deadline_ms.low||message.deadline_ms.high:message.deadline_ms!==0))writer.uint32(/* id 5, wireType 0 =*/40).int64(message.deadline_ms);if(message.winner_entry_id!=null&&$Object.hasOwnProperty.call(message,"winner_entry_id")&&message.winner_entry_id!=="")writer.uint32(/* id 6, wireType 2 =*/50).string(message.winner_entry_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2320
+ * Decodes a TournamentMatchEvent message from the specified reader or buffer.
2321
+ * @function decode
2322
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2323
+ * @static
2324
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2325
+ * @param {number} [length] Message length if known beforehand
2326
+ * @returns {gamend.realtime.v1.TournamentMatchEvent & gamend.realtime.v1.TournamentMatchEvent.$Shape} TournamentMatchEvent
2327
+ * @throws {Error} If the payload is not a reader or valid buffer
2328
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2329
+ */TournamentMatchEvent.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.TournamentMatchEvent(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.tournament_id=value;else delete message.tournament_id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.slug=value;else delete message.slug;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.match_id=value;else delete message.match_id;continue;}case 4:{if(wireType!==0)break;if(value=reader.int32())message.round=value;else delete message.round;continue;}case 5:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.deadline_ms=value;else delete message.deadline_ms;continue;}case 6:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.winner_entry_id=value;else delete message.winner_entry_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2330
+ * Creates a TournamentMatchEvent message from a plain object. Also converts values to their respective internal types.
2331
+ * @function fromObject
2332
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2333
+ * @static
2334
+ * @param {Object.<string,*>} object Plain object
2335
+ * @returns {gamend.realtime.v1.TournamentMatchEvent} TournamentMatchEvent
2336
+ */TournamentMatchEvent.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.TournamentMatchEvent)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.TournamentMatchEvent: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.TournamentMatchEvent();if(object.tournament_id!=null)if(typeof object.tournament_id!=="string"||object.tournament_id.length)message.tournament_id=$String(object.tournament_id);if(object.slug!=null)if(typeof object.slug!=="string"||object.slug.length)message.slug=$String(object.slug);if(object.match_id!=null)if(typeof object.match_id!=="string"||object.match_id.length)message.match_id=$String(object.match_id);if(object.round!=null)if($Number(object.round)!==0)message.round=object.round|0;if(object.deadline_ms!=null)if(_typeof(object.deadline_ms)==="object"?object.deadline_ms.low||object.deadline_ms.high:$Number(object.deadline_ms)!==0)if($util.Long)message.deadline_ms=$util.Long.fromValue(object.deadline_ms,false);else if(typeof object.deadline_ms==="string")message.deadline_ms=$parseInt(object.deadline_ms,10);else if(typeof object.deadline_ms==="number")message.deadline_ms=object.deadline_ms;else if(_typeof(object.deadline_ms)==="object")message.deadline_ms=new $util.LongBits(object.deadline_ms.low>>>0,object.deadline_ms.high>>>0).toNumber();if(object.winner_entry_id!=null)if(typeof object.winner_entry_id!=="string"||object.winner_entry_id.length)message.winner_entry_id=$String(object.winner_entry_id);return message;};/**
2337
+ * Creates a plain object from a TournamentMatchEvent message. Also converts values to other types if specified.
2338
+ * @function toObject
2339
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2340
+ * @static
2341
+ * @param {gamend.realtime.v1.TournamentMatchEvent} message TournamentMatchEvent
2342
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2343
+ * @returns {Object.<string,*>} Plain object
2344
+ */TournamentMatchEvent.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.tournament_id="";object.slug="";object.match_id="";object.round=0;if($util.Long){var _long0=new $util.Long(0,0,false);object.deadline_ms=options.longs===$String?_long0.toString():options.longs===$Number?_long0.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long0.toBigInt():_long0;}else object.deadline_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;object.winner_entry_id="";}if(message.tournament_id!=null&&$Object.hasOwnProperty.call(message,"tournament_id"))object.tournament_id=message.tournament_id;if(message.slug!=null&&$Object.hasOwnProperty.call(message,"slug"))object.slug=message.slug;if(message.match_id!=null&&$Object.hasOwnProperty.call(message,"match_id"))object.match_id=message.match_id;if(message.round!=null&&$Object.hasOwnProperty.call(message,"round"))object.round=message.round;if(message.deadline_ms!=null&&$Object.hasOwnProperty.call(message,"deadline_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.deadline_ms=typeof message.deadline_ms==="number"?$BigInt(message.deadline_ms):$util.Long.fromBits(message.deadline_ms.low>>>0,message.deadline_ms.high>>>0,false).toBigInt();else if(typeof message.deadline_ms==="number")object.deadline_ms=options.longs===$String?$String(message.deadline_ms):message.deadline_ms;else object.deadline_ms=options.longs===$String?$util.Long.prototype.toString.call(message.deadline_ms):options.longs===$Number?new $util.LongBits(message.deadline_ms.low>>>0,message.deadline_ms.high>>>0).toNumber():message.deadline_ms;if(message.winner_entry_id!=null&&$Object.hasOwnProperty.call(message,"winner_entry_id"))object.winner_entry_id=message.winner_entry_id;return object;};/**
2345
+ * Converts this TournamentMatchEvent to JSON.
2346
+ * @function toJSON
2347
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2348
+ * @instance
2349
+ * @returns {Object.<string,*>} JSON object
2350
+ */TournamentMatchEvent.prototype.toJSON=function(){return TournamentMatchEvent.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2351
+ * Gets the type url for TournamentMatchEvent
2352
+ * @function getTypeUrl
2353
+ * @memberof gamend.realtime.v1.TournamentMatchEvent
2354
+ * @static
2355
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2356
+ * @returns {string} The type url
2357
+ */TournamentMatchEvent.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.TournamentMatchEvent";};return TournamentMatchEvent;}();v1.MatchmakingFound=function(){/**
2358
+ * Properties of a MatchmakingFound.
2359
+ * @typedef {Object} gamend.realtime.v1.MatchmakingFound.$Properties
2360
+ * @property {string|null} [lobby_id] MatchmakingFound lobby_id
2361
+ * @property {Object.<string,string>|null} [match_params] MatchmakingFound match_params
2362
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2363
+ *//**
2364
+ * Properties of a MatchmakingFound.
2365
+ * @memberof gamend.realtime.v1
2366
+ * @interface IMatchmakingFound
2367
+ * @augments gamend.realtime.v1.MatchmakingFound.$Properties
2368
+ * @deprecated Use gamend.realtime.v1.MatchmakingFound.$Properties instead.
2369
+ *//**
2370
+ * Shape of a MatchmakingFound.
2371
+ * @typedef {gamend.realtime.v1.MatchmakingFound.$Properties} gamend.realtime.v1.MatchmakingFound.$Shape
2372
+ *//**
2373
+ * Constructs a new MatchmakingFound.
2374
+ * @memberof gamend.realtime.v1
2375
+ * @classdesc Represents a MatchmakingFound.
2376
+ * @constructor
2377
+ * @param {gamend.realtime.v1.MatchmakingFound.$Properties=} [properties] Properties to set
2378
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2379
+ */var MatchmakingFound=function MatchmakingFound(properties){this.match_params={};if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2380
+ * MatchmakingFound lobby_id.
2381
+ * @member {string} lobby_id
2382
+ * @memberof gamend.realtime.v1.MatchmakingFound
2383
+ * @instance
2384
+ */MatchmakingFound.prototype.lobby_id="";/**
2385
+ * MatchmakingFound match_params.
2386
+ * @member {Object.<string,string>} match_params
2387
+ * @memberof gamend.realtime.v1.MatchmakingFound
2388
+ * @instance
2389
+ */MatchmakingFound.prototype.match_params=$util.emptyObject;/**
2390
+ * Encodes the specified MatchmakingFound message. Does not implicitly {@link gamend.realtime.v1.MatchmakingFound.verify|verify} messages.
2391
+ * @function encode
2392
+ * @memberof gamend.realtime.v1.MatchmakingFound
2393
+ * @static
2394
+ * @param {gamend.realtime.v1.MatchmakingFound.$Properties} message MatchmakingFound message or plain object to encode
2395
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2396
+ * @returns {$protobuf.Writer} Writer
2397
+ */MatchmakingFound.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id")&&message.lobby_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.lobby_id);if(message.match_params!=null&&$Object.hasOwnProperty.call(message,"match_params"))for(var keys=$Object.keys(message.match_params),i=0;i<keys.length;++i)writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.match_params[keys[i]]).ldelim();if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i5=0;_i5<message.$unknowns.length;++_i5)writer.raw(message.$unknowns[_i5]);return writer;};/**
2398
+ * Decodes a MatchmakingFound message from the specified reader or buffer.
2399
+ * @function decode
2400
+ * @memberof gamend.realtime.v1.MatchmakingFound
2401
+ * @static
2402
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2403
+ * @param {number} [length] Message length if known beforehand
2404
+ * @returns {gamend.realtime.v1.MatchmakingFound & gamend.realtime.v1.MatchmakingFound.$Shape} MatchmakingFound
2405
+ * @throws {Error} If the payload is not a reader or valid buffer
2406
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2407
+ */MatchmakingFound.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.MatchmakingFound(),key,value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.lobby_id=value;else delete message.lobby_id;continue;}case 2:{if(wireType!==2)break;if(message.match_params===$util.emptyObject)message.match_params={};var end2=reader.uint32()+reader.pos;key="";value="";while(reader.pos<end2){var tag2=reader.tag();wireType=tag2&7;switch(tag2>>>=3){case 1:if(wireType!==2)break;key=reader.stringVerify();continue;case 2:if(wireType!==2)break;value=reader.stringVerify();continue;}reader.skipType(wireType,_depth,tag2);}if(key==="__proto__")$util.makeProp(message.match_params,key);message.match_params[key]=value;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2408
+ * Creates a MatchmakingFound message from a plain object. Also converts values to their respective internal types.
2409
+ * @function fromObject
2410
+ * @memberof gamend.realtime.v1.MatchmakingFound
2411
+ * @static
2412
+ * @param {Object.<string,*>} object Plain object
2413
+ * @returns {gamend.realtime.v1.MatchmakingFound} MatchmakingFound
2414
+ */MatchmakingFound.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.MatchmakingFound)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.MatchmakingFound: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.MatchmakingFound();if(object.lobby_id!=null)if(typeof object.lobby_id!=="string"||object.lobby_id.length)message.lobby_id=$String(object.lobby_id);if(object.match_params){if(!$util.isObject(object.match_params))throw $TypeError(".gamend.realtime.v1.MatchmakingFound.match_params: object expected");message.match_params={};for(var keys=$Object.keys(object.match_params),i=0;i<keys.length;++i){if(keys[i]==="__proto__")$util.makeProp(message.match_params,keys[i]);message.match_params[keys[i]]=$String(object.match_params[keys[i]]);}}return message;};/**
2415
+ * Creates a plain object from a MatchmakingFound message. Also converts values to other types if specified.
2416
+ * @function toObject
2417
+ * @memberof gamend.realtime.v1.MatchmakingFound
2418
+ * @static
2419
+ * @param {gamend.realtime.v1.MatchmakingFound} message MatchmakingFound
2420
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2421
+ * @returns {Object.<string,*>} Plain object
2422
+ */MatchmakingFound.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.objects||options.defaults)object.match_params={};if(options.defaults)object.lobby_id="";if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))object.lobby_id=message.lobby_id;var keys2;if(message.match_params&&(keys2=$Object.keys(message.match_params)).length){object.match_params={};for(var j=0;j<keys2.length;++j){if(keys2[j]==="__proto__")$util.makeProp(object.match_params,keys2[j]);object.match_params[keys2[j]]=message.match_params[keys2[j]];}}return object;};/**
2423
+ * Converts this MatchmakingFound to JSON.
2424
+ * @function toJSON
2425
+ * @memberof gamend.realtime.v1.MatchmakingFound
2426
+ * @instance
2427
+ * @returns {Object.<string,*>} JSON object
2428
+ */MatchmakingFound.prototype.toJSON=function(){return MatchmakingFound.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2429
+ * Gets the type url for MatchmakingFound
2430
+ * @function getTypeUrl
2431
+ * @memberof gamend.realtime.v1.MatchmakingFound
2432
+ * @static
2433
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2434
+ * @returns {string} The type url
2435
+ */MatchmakingFound.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.MatchmakingFound";};return MatchmakingFound;}();v1.ReadyCheckParticipant=function(){/**
2436
+ * Properties of a ReadyCheckParticipant.
2437
+ * @typedef {Object} gamend.realtime.v1.ReadyCheckParticipant.$Properties
2438
+ * @property {string|null} [user_id] ReadyCheckParticipant user_id
2439
+ * @property {string|null} [display_name] ReadyCheckParticipant display_name
2440
+ * @property {string|null} [state] ReadyCheckParticipant state
2441
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2442
+ *//**
2443
+ * Properties of a ReadyCheckParticipant.
2444
+ * @memberof gamend.realtime.v1
2445
+ * @interface IReadyCheckParticipant
2446
+ * @augments gamend.realtime.v1.ReadyCheckParticipant.$Properties
2447
+ * @deprecated Use gamend.realtime.v1.ReadyCheckParticipant.$Properties instead.
2448
+ *//**
2449
+ * Shape of a ReadyCheckParticipant.
2450
+ * @typedef {gamend.realtime.v1.ReadyCheckParticipant.$Properties} gamend.realtime.v1.ReadyCheckParticipant.$Shape
2451
+ *//**
2452
+ * Constructs a new ReadyCheckParticipant.
2453
+ * @memberof gamend.realtime.v1
2454
+ * @classdesc Represents a ReadyCheckParticipant.
2455
+ * @constructor
2456
+ * @param {gamend.realtime.v1.ReadyCheckParticipant.$Properties=} [properties] Properties to set
2457
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2458
+ */var ReadyCheckParticipant=function ReadyCheckParticipant(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2459
+ * ReadyCheckParticipant user_id.
2460
+ * @member {string} user_id
2461
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2462
+ * @instance
2463
+ */ReadyCheckParticipant.prototype.user_id="";/**
2464
+ * ReadyCheckParticipant display_name.
2465
+ * @member {string} display_name
2466
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2467
+ * @instance
2468
+ */ReadyCheckParticipant.prototype.display_name="";/**
2469
+ * ReadyCheckParticipant state.
2470
+ * @member {string} state
2471
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2472
+ * @instance
2473
+ */ReadyCheckParticipant.prototype.state="";/**
2474
+ * Encodes the specified ReadyCheckParticipant message. Does not implicitly {@link gamend.realtime.v1.ReadyCheckParticipant.verify|verify} messages.
2475
+ * @function encode
2476
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2477
+ * @static
2478
+ * @param {gamend.realtime.v1.ReadyCheckParticipant.$Properties} message ReadyCheckParticipant message or plain object to encode
2479
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2480
+ * @returns {$protobuf.Writer} Writer
2481
+ */ReadyCheckParticipant.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id")&&message.user_id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.user_id);if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name")&&message.display_name!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.display_name);if(message.state!=null&&$Object.hasOwnProperty.call(message,"state")&&message.state!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.state);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2482
+ * Decodes a ReadyCheckParticipant message from the specified reader or buffer.
2483
+ * @function decode
2484
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2485
+ * @static
2486
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2487
+ * @param {number} [length] Message length if known beforehand
2488
+ * @returns {gamend.realtime.v1.ReadyCheckParticipant & gamend.realtime.v1.ReadyCheckParticipant.$Shape} ReadyCheckParticipant
2489
+ * @throws {Error} If the payload is not a reader or valid buffer
2490
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2491
+ */ReadyCheckParticipant.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.ReadyCheckParticipant(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.user_id=value;else delete message.user_id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.display_name=value;else delete message.display_name;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.state=value;else delete message.state;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2492
+ * Creates a ReadyCheckParticipant message from a plain object. Also converts values to their respective internal types.
2493
+ * @function fromObject
2494
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2495
+ * @static
2496
+ * @param {Object.<string,*>} object Plain object
2497
+ * @returns {gamend.realtime.v1.ReadyCheckParticipant} ReadyCheckParticipant
2498
+ */ReadyCheckParticipant.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.ReadyCheckParticipant)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.ReadyCheckParticipant: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.ReadyCheckParticipant();if(object.user_id!=null)if(typeof object.user_id!=="string"||object.user_id.length)message.user_id=$String(object.user_id);if(object.display_name!=null)if(typeof object.display_name!=="string"||object.display_name.length)message.display_name=$String(object.display_name);if(object.state!=null)if(typeof object.state!=="string"||object.state.length)message.state=$String(object.state);return message;};/**
2499
+ * Creates a plain object from a ReadyCheckParticipant message. Also converts values to other types if specified.
2500
+ * @function toObject
2501
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2502
+ * @static
2503
+ * @param {gamend.realtime.v1.ReadyCheckParticipant} message ReadyCheckParticipant
2504
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2505
+ * @returns {Object.<string,*>} Plain object
2506
+ */ReadyCheckParticipant.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.user_id="";object.display_name="";object.state="";}if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))object.user_id=message.user_id;if(message.display_name!=null&&$Object.hasOwnProperty.call(message,"display_name"))object.display_name=message.display_name;if(message.state!=null&&$Object.hasOwnProperty.call(message,"state"))object.state=message.state;return object;};/**
2507
+ * Converts this ReadyCheckParticipant to JSON.
2508
+ * @function toJSON
2509
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2510
+ * @instance
2511
+ * @returns {Object.<string,*>} JSON object
2512
+ */ReadyCheckParticipant.prototype.toJSON=function(){return ReadyCheckParticipant.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2513
+ * Gets the type url for ReadyCheckParticipant
2514
+ * @function getTypeUrl
2515
+ * @memberof gamend.realtime.v1.ReadyCheckParticipant
2516
+ * @static
2517
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2518
+ * @returns {string} The type url
2519
+ */ReadyCheckParticipant.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.ReadyCheckParticipant";};return ReadyCheckParticipant;}();v1.ReadyCheckState=function(){/**
2520
+ * Properties of a ReadyCheckState.
2521
+ * @typedef {Object} gamend.realtime.v1.ReadyCheckState.$Properties
2522
+ * @property {string|null} [id] ReadyCheckState id
2523
+ * @property {string|null} [kind] ReadyCheckState kind
2524
+ * @property {string|null} [status] ReadyCheckState status
2525
+ * @property {string|null} [lobby_id] ReadyCheckState lobby_id
2526
+ * @property {number|Long|null} [deadline_ms] ReadyCheckState deadline_ms
2527
+ * @property {number|null} [total] ReadyCheckState total
2528
+ * @property {number|null} [ready_count] ReadyCheckState ready_count
2529
+ * @property {string|null} [your_state] ReadyCheckState your_state
2530
+ * @property {string|null} [reason] ReadyCheckState reason
2531
+ * @property {Array.<gamend.realtime.v1.ReadyCheckParticipant.$Properties>|null} [participants] ReadyCheckState participants
2532
+ * @property {string|null} [party_id] ReadyCheckState party_id
2533
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2534
+ *//**
2535
+ * Properties of a ReadyCheckState.
2536
+ * @memberof gamend.realtime.v1
2537
+ * @interface IReadyCheckState
2538
+ * @augments gamend.realtime.v1.ReadyCheckState.$Properties
2539
+ * @deprecated Use gamend.realtime.v1.ReadyCheckState.$Properties instead.
2540
+ *//**
2541
+ * Shape of a ReadyCheckState.
2542
+ * @typedef {gamend.realtime.v1.ReadyCheckState.$Properties} gamend.realtime.v1.ReadyCheckState.$Shape
2543
+ *//**
2544
+ * Constructs a new ReadyCheckState.
2545
+ * @memberof gamend.realtime.v1
2546
+ * @classdesc Represents a ReadyCheckState.
2547
+ * @constructor
2548
+ * @param {gamend.realtime.v1.ReadyCheckState.$Properties=} [properties] Properties to set
2549
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2550
+ */var ReadyCheckState=function ReadyCheckState(properties){this.participants=[];if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2551
+ * ReadyCheckState id.
2552
+ * @member {string} id
2553
+ * @memberof gamend.realtime.v1.ReadyCheckState
2554
+ * @instance
2555
+ */ReadyCheckState.prototype.id="";/**
2556
+ * ReadyCheckState kind.
2557
+ * @member {string} kind
2558
+ * @memberof gamend.realtime.v1.ReadyCheckState
2559
+ * @instance
2560
+ */ReadyCheckState.prototype.kind="";/**
2561
+ * ReadyCheckState status.
2562
+ * @member {string} status
2563
+ * @memberof gamend.realtime.v1.ReadyCheckState
2564
+ * @instance
2565
+ */ReadyCheckState.prototype.status="";/**
2566
+ * ReadyCheckState lobby_id.
2567
+ * @member {string} lobby_id
2568
+ * @memberof gamend.realtime.v1.ReadyCheckState
2569
+ * @instance
2570
+ */ReadyCheckState.prototype.lobby_id="";/**
2571
+ * ReadyCheckState deadline_ms.
2572
+ * @member {number|Long} deadline_ms
2573
+ * @memberof gamend.realtime.v1.ReadyCheckState
2574
+ * @instance
2575
+ */ReadyCheckState.prototype.deadline_ms=$util.Long?$util.Long.fromBits(0,0,false):0;/**
2576
+ * ReadyCheckState total.
2577
+ * @member {number} total
2578
+ * @memberof gamend.realtime.v1.ReadyCheckState
2579
+ * @instance
2580
+ */ReadyCheckState.prototype.total=0;/**
2581
+ * ReadyCheckState ready_count.
2582
+ * @member {number} ready_count
2583
+ * @memberof gamend.realtime.v1.ReadyCheckState
2584
+ * @instance
2585
+ */ReadyCheckState.prototype.ready_count=0;/**
2586
+ * ReadyCheckState your_state.
2587
+ * @member {string} your_state
2588
+ * @memberof gamend.realtime.v1.ReadyCheckState
2589
+ * @instance
2590
+ */ReadyCheckState.prototype.your_state="";/**
2591
+ * ReadyCheckState reason.
2592
+ * @member {string} reason
2593
+ * @memberof gamend.realtime.v1.ReadyCheckState
2594
+ * @instance
2595
+ */ReadyCheckState.prototype.reason="";/**
2596
+ * ReadyCheckState participants.
2597
+ * @member {Array.<gamend.realtime.v1.ReadyCheckParticipant.$Properties>} participants
2598
+ * @memberof gamend.realtime.v1.ReadyCheckState
2599
+ * @instance
2600
+ */ReadyCheckState.prototype.participants=$util.emptyArray;/**
2601
+ * ReadyCheckState party_id.
2602
+ * @member {string} party_id
2603
+ * @memberof gamend.realtime.v1.ReadyCheckState
2604
+ * @instance
2605
+ */ReadyCheckState.prototype.party_id="";/**
2606
+ * Encodes the specified ReadyCheckState message. Does not implicitly {@link gamend.realtime.v1.ReadyCheckState.verify|verify} messages.
2607
+ * @function encode
2608
+ * @memberof gamend.realtime.v1.ReadyCheckState
2609
+ * @static
2610
+ * @param {gamend.realtime.v1.ReadyCheckState.$Properties} message ReadyCheckState message or plain object to encode
2611
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2612
+ * @returns {$protobuf.Writer} Writer
2613
+ */ReadyCheckState.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.id);if(message.kind!=null&&$Object.hasOwnProperty.call(message,"kind")&&message.kind!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.kind);if(message.status!=null&&$Object.hasOwnProperty.call(message,"status")&&message.status!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.status);if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id")&&message.lobby_id!=="")writer.uint32(/* id 4, wireType 2 =*/34).string(message.lobby_id);if(message.deadline_ms!=null&&$Object.hasOwnProperty.call(message,"deadline_ms")&&(_typeof(message.deadline_ms)==="object"?message.deadline_ms.low||message.deadline_ms.high:message.deadline_ms!==0))writer.uint32(/* id 5, wireType 0 =*/40).int64(message.deadline_ms);if(message.total!=null&&$Object.hasOwnProperty.call(message,"total")&&message.total!==0)writer.uint32(/* id 6, wireType 0 =*/48).int32(message.total);if(message.ready_count!=null&&$Object.hasOwnProperty.call(message,"ready_count")&&message.ready_count!==0)writer.uint32(/* id 7, wireType 0 =*/56).int32(message.ready_count);if(message.your_state!=null&&$Object.hasOwnProperty.call(message,"your_state")&&message.your_state!=="")writer.uint32(/* id 8, wireType 2 =*/66).string(message.your_state);if(message.reason!=null&&$Object.hasOwnProperty.call(message,"reason")&&message.reason!=="")writer.uint32(/* id 9, wireType 2 =*/74).string(message.reason);if(message.participants!=null&&message.participants.length)for(var i=0;i<message.participants.length;++i)$root.gamend.realtime.v1.ReadyCheckParticipant.encode(message.participants[i],writer.uint32(/* id 10, wireType 2 =*/82).fork(),_depth+1).ldelim();if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id")&&message.party_id!=="")writer.uint32(/* id 11, wireType 2 =*/90).string(message.party_id);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var _i6=0;_i6<message.$unknowns.length;++_i6)writer.raw(message.$unknowns[_i6]);return writer;};/**
2614
+ * Decodes a ReadyCheckState message from the specified reader or buffer.
2615
+ * @function decode
2616
+ * @memberof gamend.realtime.v1.ReadyCheckState
2617
+ * @static
2618
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2619
+ * @param {number} [length] Message length if known beforehand
2620
+ * @returns {gamend.realtime.v1.ReadyCheckState & gamend.realtime.v1.ReadyCheckState.$Shape} ReadyCheckState
2621
+ * @throws {Error} If the payload is not a reader or valid buffer
2622
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2623
+ */ReadyCheckState.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.ReadyCheckState(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.kind=value;else delete message.kind;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.status=value;else delete message.status;continue;}case 4:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.lobby_id=value;else delete message.lobby_id;continue;}case 5:{if(wireType!==0)break;if(_typeof(value=reader.int64())==="object"?value.low||value.high:value!==0)message.deadline_ms=value;else delete message.deadline_ms;continue;}case 6:{if(wireType!==0)break;if(value=reader.int32())message.total=value;else delete message.total;continue;}case 7:{if(wireType!==0)break;if(value=reader.int32())message.ready_count=value;else delete message.ready_count;continue;}case 8:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.your_state=value;else delete message.your_state;continue;}case 9:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.reason=value;else delete message.reason;continue;}case 10:{if(wireType!==2)break;if(!(message.participants&&message.participants.length))message.participants=[];message.participants.push($root.gamend.realtime.v1.ReadyCheckParticipant.decode(reader,reader.uint32(),$undefined,_depth+1));continue;}case 11:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.party_id=value;else delete message.party_id;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2624
+ * Creates a ReadyCheckState message from a plain object. Also converts values to their respective internal types.
2625
+ * @function fromObject
2626
+ * @memberof gamend.realtime.v1.ReadyCheckState
2627
+ * @static
2628
+ * @param {Object.<string,*>} object Plain object
2629
+ * @returns {gamend.realtime.v1.ReadyCheckState} ReadyCheckState
2630
+ */ReadyCheckState.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.ReadyCheckState)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.ReadyCheckState: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.ReadyCheckState();if(object.id!=null)if(typeof object.id!=="string"||object.id.length)message.id=$String(object.id);if(object.kind!=null)if(typeof object.kind!=="string"||object.kind.length)message.kind=$String(object.kind);if(object.status!=null)if(typeof object.status!=="string"||object.status.length)message.status=$String(object.status);if(object.lobby_id!=null)if(typeof object.lobby_id!=="string"||object.lobby_id.length)message.lobby_id=$String(object.lobby_id);if(object.deadline_ms!=null)if(_typeof(object.deadline_ms)==="object"?object.deadline_ms.low||object.deadline_ms.high:$Number(object.deadline_ms)!==0)if($util.Long)message.deadline_ms=$util.Long.fromValue(object.deadline_ms,false);else if(typeof object.deadline_ms==="string")message.deadline_ms=$parseInt(object.deadline_ms,10);else if(typeof object.deadline_ms==="number")message.deadline_ms=object.deadline_ms;else if(_typeof(object.deadline_ms)==="object")message.deadline_ms=new $util.LongBits(object.deadline_ms.low>>>0,object.deadline_ms.high>>>0).toNumber();if(object.total!=null)if($Number(object.total)!==0)message.total=object.total|0;if(object.ready_count!=null)if($Number(object.ready_count)!==0)message.ready_count=object.ready_count|0;if(object.your_state!=null)if(typeof object.your_state!=="string"||object.your_state.length)message.your_state=$String(object.your_state);if(object.reason!=null)if(typeof object.reason!=="string"||object.reason.length)message.reason=$String(object.reason);if(object.participants){if(!$Array.isArray(object.participants))throw $TypeError(".gamend.realtime.v1.ReadyCheckState.participants: array expected");message.participants=$Array(object.participants.length);for(var i=0;i<object.participants.length;++i){if(!$util.isObject(object.participants[i]))throw $TypeError(".gamend.realtime.v1.ReadyCheckState.participants: object expected");message.participants[i]=$root.gamend.realtime.v1.ReadyCheckParticipant.fromObject(object.participants[i],_depth+1);}}if(object.party_id!=null)if(typeof object.party_id!=="string"||object.party_id.length)message.party_id=$String(object.party_id);return message;};/**
2631
+ * Creates a plain object from a ReadyCheckState message. Also converts values to other types if specified.
2632
+ * @function toObject
2633
+ * @memberof gamend.realtime.v1.ReadyCheckState
2634
+ * @static
2635
+ * @param {gamend.realtime.v1.ReadyCheckState} message ReadyCheckState
2636
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2637
+ * @returns {Object.<string,*>} Plain object
2638
+ */ReadyCheckState.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.arrays||options.defaults)object.participants=[];if(options.defaults){object.id="";object.kind="";object.status="";object.lobby_id="";if($util.Long){var _long1=new $util.Long(0,0,false);object.deadline_ms=options.longs===$String?_long1.toString():options.longs===$Number?_long1.toNumber():typeof $BigInt!=="undefined"&&options.longs===$BigInt?_long1.toBigInt():_long1;}else object.deadline_ms=options.longs===$String?"0":typeof $BigInt!=="undefined"&&options.longs===$BigInt?$BigInt("0"):0;object.total=0;object.ready_count=0;object.your_state="";object.reason="";object.party_id="";}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.kind!=null&&$Object.hasOwnProperty.call(message,"kind"))object.kind=message.kind;if(message.status!=null&&$Object.hasOwnProperty.call(message,"status"))object.status=message.status;if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))object.lobby_id=message.lobby_id;if(message.deadline_ms!=null&&$Object.hasOwnProperty.call(message,"deadline_ms"))if(typeof $BigInt!=="undefined"&&options.longs===$BigInt)object.deadline_ms=typeof message.deadline_ms==="number"?$BigInt(message.deadline_ms):$util.Long.fromBits(message.deadline_ms.low>>>0,message.deadline_ms.high>>>0,false).toBigInt();else if(typeof message.deadline_ms==="number")object.deadline_ms=options.longs===$String?$String(message.deadline_ms):message.deadline_ms;else object.deadline_ms=options.longs===$String?$util.Long.prototype.toString.call(message.deadline_ms):options.longs===$Number?new $util.LongBits(message.deadline_ms.low>>>0,message.deadline_ms.high>>>0).toNumber():message.deadline_ms;if(message.total!=null&&$Object.hasOwnProperty.call(message,"total"))object.total=message.total;if(message.ready_count!=null&&$Object.hasOwnProperty.call(message,"ready_count"))object.ready_count=message.ready_count;if(message.your_state!=null&&$Object.hasOwnProperty.call(message,"your_state"))object.your_state=message.your_state;if(message.reason!=null&&$Object.hasOwnProperty.call(message,"reason"))object.reason=message.reason;if(message.participants&&message.participants.length){object.participants=$Array(message.participants.length);for(var j=0;j<message.participants.length;++j)object.participants[j]=$root.gamend.realtime.v1.ReadyCheckParticipant.toObject(message.participants[j],options,_depth+1);}if(message.party_id!=null&&$Object.hasOwnProperty.call(message,"party_id"))object.party_id=message.party_id;return object;};/**
2639
+ * Converts this ReadyCheckState to JSON.
2640
+ * @function toJSON
2641
+ * @memberof gamend.realtime.v1.ReadyCheckState
2642
+ * @instance
2643
+ * @returns {Object.<string,*>} JSON object
2644
+ */ReadyCheckState.prototype.toJSON=function(){return ReadyCheckState.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2645
+ * Gets the type url for ReadyCheckState
2646
+ * @function getTypeUrl
2647
+ * @memberof gamend.realtime.v1.ReadyCheckState
2648
+ * @static
2649
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2650
+ * @returns {string} The type url
2651
+ */ReadyCheckState.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.ReadyCheckState";};return ReadyCheckState;}();v1.KvEntry=function(){/**
2652
+ * Properties of a KvEntry.
2653
+ * @typedef {Object} gamend.realtime.v1.KvEntry.$Properties
2654
+ * @property {string|null} [key] KvEntry key
2655
+ * @property {string|null} [user_id] KvEntry user_id
2656
+ * @property {string|null} [lobby_id] KvEntry lobby_id
2657
+ * @property {Uint8Array|null} [data_json] KvEntry data_json
2658
+ * @property {Uint8Array|null} [metadata_json] KvEntry metadata_json
2659
+ * @property {Uint8Array|null} [data_pb] KvEntry data_pb
2660
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2661
+ *//**
2662
+ * Properties of a KvEntry.
2663
+ * @memberof gamend.realtime.v1
2664
+ * @interface IKvEntry
2665
+ * @augments gamend.realtime.v1.KvEntry.$Properties
2666
+ * @deprecated Use gamend.realtime.v1.KvEntry.$Properties instead.
2667
+ *//**
2668
+ * Shape of a KvEntry.
2669
+ * @typedef {gamend.realtime.v1.KvEntry.$Properties} gamend.realtime.v1.KvEntry.$Shape
2670
+ *//**
2671
+ * Constructs a new KvEntry.
2672
+ * @memberof gamend.realtime.v1
2673
+ * @classdesc Represents a KvEntry.
2674
+ * @constructor
2675
+ * @param {gamend.realtime.v1.KvEntry.$Properties=} [properties] Properties to set
2676
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2677
+ */var KvEntry=function KvEntry(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2678
+ * KvEntry key.
2679
+ * @member {string} key
2680
+ * @memberof gamend.realtime.v1.KvEntry
2681
+ * @instance
2682
+ */KvEntry.prototype.key="";/**
2683
+ * KvEntry user_id.
2684
+ * @member {string|null|undefined} user_id
2685
+ * @memberof gamend.realtime.v1.KvEntry
2686
+ * @instance
2687
+ */KvEntry.prototype.user_id=null;/**
2688
+ * KvEntry lobby_id.
2689
+ * @member {string|null|undefined} lobby_id
2690
+ * @memberof gamend.realtime.v1.KvEntry
2691
+ * @instance
2692
+ */KvEntry.prototype.lobby_id=null;/**
2693
+ * KvEntry data_json.
2694
+ * @member {Uint8Array|null|undefined} data_json
2695
+ * @memberof gamend.realtime.v1.KvEntry
2696
+ * @instance
2697
+ */KvEntry.prototype.data_json=null;/**
2698
+ * KvEntry metadata_json.
2699
+ * @member {Uint8Array|null|undefined} metadata_json
2700
+ * @memberof gamend.realtime.v1.KvEntry
2701
+ * @instance
2702
+ */KvEntry.prototype.metadata_json=null;/**
2703
+ * KvEntry data_pb.
2704
+ * @member {Uint8Array|null|undefined} data_pb
2705
+ * @memberof gamend.realtime.v1.KvEntry
2706
+ * @instance
2707
+ */KvEntry.prototype.data_pb=null;// OneOf field names bound to virtual getters and setters
2708
+ var $oneOfFields;// Virtual OneOf for proto3 optional field
2709
+ $Object.defineProperty(KvEntry.prototype,"_user_id",{get:$util.oneOfGetter($oneOfFields=["user_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
2710
+ $Object.defineProperty(KvEntry.prototype,"_lobby_id",{get:$util.oneOfGetter($oneOfFields=["lobby_id"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
2711
+ $Object.defineProperty(KvEntry.prototype,"_data_json",{get:$util.oneOfGetter($oneOfFields=["data_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
2712
+ $Object.defineProperty(KvEntry.prototype,"_metadata_json",{get:$util.oneOfGetter($oneOfFields=["metadata_json"]),set:$util.oneOfSetter($oneOfFields)});// Virtual OneOf for proto3 optional field
2713
+ $Object.defineProperty(KvEntry.prototype,"_data_pb",{get:$util.oneOfGetter($oneOfFields=["data_pb"]),set:$util.oneOfSetter($oneOfFields)});/**
2714
+ * Encodes the specified KvEntry message. Does not implicitly {@link gamend.realtime.v1.KvEntry.verify|verify} messages.
2715
+ * @function encode
2716
+ * @memberof gamend.realtime.v1.KvEntry
2717
+ * @static
2718
+ * @param {gamend.realtime.v1.KvEntry.$Properties} message KvEntry message or plain object to encode
2719
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2720
+ * @returns {$protobuf.Writer} Writer
2721
+ */KvEntry.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.key!=null&&$Object.hasOwnProperty.call(message,"key")&&message.key!=="")writer.uint32(/* id 1, wireType 2 =*/10).string(message.key);if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))writer.uint32(/* id 2, wireType 2 =*/18).string(message.user_id);if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))writer.uint32(/* id 3, wireType 2 =*/26).string(message.lobby_id);if(message.data_json!=null&&$Object.hasOwnProperty.call(message,"data_json"))writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.data_json);if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.metadata_json);if(message.data_pb!=null&&$Object.hasOwnProperty.call(message,"data_pb"))writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.data_pb);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2722
+ * Decodes a KvEntry message from the specified reader or buffer.
2723
+ * @function decode
2724
+ * @memberof gamend.realtime.v1.KvEntry
2725
+ * @static
2726
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2727
+ * @param {number} [length] Message length if known beforehand
2728
+ * @returns {gamend.realtime.v1.KvEntry & gamend.realtime.v1.KvEntry.$Shape} KvEntry
2729
+ * @throws {Error} If the payload is not a reader or valid buffer
2730
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2731
+ */KvEntry.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.KvEntry(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.key=value;else delete message.key;continue;}case 2:{if(wireType!==2)break;message.user_id=reader.stringVerify();message._user_id="user_id";continue;}case 3:{if(wireType!==2)break;message.lobby_id=reader.stringVerify();message._lobby_id="lobby_id";continue;}case 4:{if(wireType!==2)break;message.data_json=reader.bytes();message._data_json="data_json";continue;}case 5:{if(wireType!==2)break;message.metadata_json=reader.bytes();message._metadata_json="metadata_json";continue;}case 6:{if(wireType!==2)break;message.data_pb=reader.bytes();message._data_pb="data_pb";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2732
+ * Creates a KvEntry message from a plain object. Also converts values to their respective internal types.
2733
+ * @function fromObject
2734
+ * @memberof gamend.realtime.v1.KvEntry
2735
+ * @static
2736
+ * @param {Object.<string,*>} object Plain object
2737
+ * @returns {gamend.realtime.v1.KvEntry} KvEntry
2738
+ */KvEntry.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.KvEntry)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.KvEntry: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.KvEntry();if(object.key!=null)if(typeof object.key!=="string"||object.key.length)message.key=$String(object.key);if(object.user_id!=null)message.user_id=$String(object.user_id);if(object.lobby_id!=null)message.lobby_id=$String(object.lobby_id);if(object.data_json!=null)if(typeof object.data_json==="string")$util.base64.decode(object.data_json,message.data_json=$util.newBuffer($util.base64.length(object.data_json)),0);else if(object.data_json.length>=0)message.data_json=object.data_json;if(object.metadata_json!=null)if(typeof object.metadata_json==="string")$util.base64.decode(object.metadata_json,message.metadata_json=$util.newBuffer($util.base64.length(object.metadata_json)),0);else if(object.metadata_json.length>=0)message.metadata_json=object.metadata_json;if(object.data_pb!=null)if(typeof object.data_pb==="string")$util.base64.decode(object.data_pb,message.data_pb=$util.newBuffer($util.base64.length(object.data_pb)),0);else if(object.data_pb.length>=0)message.data_pb=object.data_pb;return message;};/**
2739
+ * Creates a plain object from a KvEntry message. Also converts values to other types if specified.
2740
+ * @function toObject
2741
+ * @memberof gamend.realtime.v1.KvEntry
2742
+ * @static
2743
+ * @param {gamend.realtime.v1.KvEntry} message KvEntry
2744
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2745
+ * @returns {Object.<string,*>} Plain object
2746
+ */KvEntry.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.key="";if(message.key!=null&&$Object.hasOwnProperty.call(message,"key"))object.key=message.key;if(message.user_id!=null&&$Object.hasOwnProperty.call(message,"user_id"))object.user_id=message.user_id;if(message.lobby_id!=null&&$Object.hasOwnProperty.call(message,"lobby_id"))object.lobby_id=message.lobby_id;if(message.data_json!=null&&$Object.hasOwnProperty.call(message,"data_json"))object.data_json=options.bytes===$String?$util.base64.encode(message.data_json,0,message.data_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.data_json):message.data_json;if(message.metadata_json!=null&&$Object.hasOwnProperty.call(message,"metadata_json"))object.metadata_json=options.bytes===$String?$util.base64.encode(message.metadata_json,0,message.metadata_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.metadata_json):message.metadata_json;if(message.data_pb!=null&&$Object.hasOwnProperty.call(message,"data_pb"))object.data_pb=options.bytes===$String?$util.base64.encode(message.data_pb,0,message.data_pb.length):options.bytes===$Array?$Array.prototype.slice.call(message.data_pb):message.data_pb;return object;};/**
2747
+ * Converts this KvEntry to JSON.
2748
+ * @function toJSON
2749
+ * @memberof gamend.realtime.v1.KvEntry
2750
+ * @instance
2751
+ * @returns {Object.<string,*>} JSON object
2752
+ */KvEntry.prototype.toJSON=function(){return KvEntry.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2753
+ * Gets the type url for KvEntry
2754
+ * @function getTypeUrl
2755
+ * @memberof gamend.realtime.v1.KvEntry
2756
+ * @static
2757
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2758
+ * @returns {string} The type url
2759
+ */KvEntry.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.KvEntry";};return KvEntry;}();v1.RpcCall=function(){/**
2760
+ * Properties of a RpcCall.
2761
+ * @typedef {Object} gamend.realtime.v1.RpcCall.$Properties
2762
+ * @property {number|null} [id] RpcCall id
2763
+ * @property {string|null} [plugin] RpcCall plugin
2764
+ * @property {string|null} [fn] RpcCall fn
2765
+ * @property {Uint8Array|null} [args_json] RpcCall args_json
2766
+ * @property {Uint8Array|null} [args_raw] RpcCall args_raw
2767
+ * @property {"args_json"|"args_raw"} [args] RpcCall args
2768
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2769
+ *//**
2770
+ * Properties of a RpcCall.
2771
+ * @memberof gamend.realtime.v1
2772
+ * @interface IRpcCall
2773
+ * @augments gamend.realtime.v1.RpcCall.$Properties
2774
+ * @deprecated Use gamend.realtime.v1.RpcCall.$Properties instead.
2775
+ *//**
2776
+ * Narrowed shape of a RpcCall.
2777
+ * @typedef {{
2778
+ * id?: number|null;
2779
+ * plugin?: string|null;
2780
+ * fn?: string|null;
2781
+ * args_json?: Uint8Array|null;
2782
+ * args_raw?: Uint8Array|null;
2783
+ * $unknowns?: Array.<Uint8Array>;
2784
+ * } & (
2785
+ * ({ args?: undefined; args_json?: null; args_raw?: null }|{ args?: "args_json"; args_json: Uint8Array; args_raw?: null }|{ args?: "args_raw"; args_json?: null; args_raw: Uint8Array })
2786
+ * )} gamend.realtime.v1.RpcCall.$Shape
2787
+ *//**
2788
+ * Constructs a new RpcCall.
2789
+ * @memberof gamend.realtime.v1
2790
+ * @classdesc Represents a RpcCall.
2791
+ * @constructor
2792
+ * @param {gamend.realtime.v1.RpcCall.$Properties=} [properties] Properties to set
2793
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2794
+ */var RpcCall=function RpcCall(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2795
+ * RpcCall id.
2796
+ * @member {number} id
2797
+ * @memberof gamend.realtime.v1.RpcCall
2798
+ * @instance
2799
+ */RpcCall.prototype.id=0;/**
2800
+ * RpcCall plugin.
2801
+ * @member {string} plugin
2802
+ * @memberof gamend.realtime.v1.RpcCall
2803
+ * @instance
2804
+ */RpcCall.prototype.plugin="";/**
2805
+ * RpcCall fn.
2806
+ * @member {string} fn
2807
+ * @memberof gamend.realtime.v1.RpcCall
2808
+ * @instance
2809
+ */RpcCall.prototype.fn="";/**
2810
+ * RpcCall args_json.
2811
+ * @member {Uint8Array|null|undefined} args_json
2812
+ * @memberof gamend.realtime.v1.RpcCall
2813
+ * @instance
2814
+ */RpcCall.prototype.args_json=null;/**
2815
+ * RpcCall args_raw.
2816
+ * @member {Uint8Array|null|undefined} args_raw
2817
+ * @memberof gamend.realtime.v1.RpcCall
2818
+ * @instance
2819
+ */RpcCall.prototype.args_raw=null;// OneOf field names bound to virtual getters and setters
2820
+ var $oneOfFields;/**
2821
+ * RpcCall args.
2822
+ * @member {"args_json"|"args_raw"|undefined} args
2823
+ * @memberof gamend.realtime.v1.RpcCall
2824
+ * @instance
2825
+ */$Object.defineProperty(RpcCall.prototype,"args",{get:$util.oneOfGetter($oneOfFields=["args_json","args_raw"]),set:$util.oneOfSetter($oneOfFields)});/**
2826
+ * Encodes the specified RpcCall message. Does not implicitly {@link gamend.realtime.v1.RpcCall.verify|verify} messages.
2827
+ * @function encode
2828
+ * @memberof gamend.realtime.v1.RpcCall
2829
+ * @static
2830
+ * @param {gamend.realtime.v1.RpcCall.$Properties} message RpcCall message or plain object to encode
2831
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2832
+ * @returns {$protobuf.Writer} Writer
2833
+ */RpcCall.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!==0)writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.id);if(message.plugin!=null&&$Object.hasOwnProperty.call(message,"plugin")&&message.plugin!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.plugin);if(message.fn!=null&&$Object.hasOwnProperty.call(message,"fn")&&message.fn!=="")writer.uint32(/* id 3, wireType 2 =*/26).string(message.fn);if(message.args_json!=null&&$Object.hasOwnProperty.call(message,"args_json"))writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.args_json);if(message.args_raw!=null&&$Object.hasOwnProperty.call(message,"args_raw"))writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.args_raw);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2834
+ * Decodes a RpcCall message from the specified reader or buffer.
2835
+ * @function decode
2836
+ * @memberof gamend.realtime.v1.RpcCall
2837
+ * @static
2838
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2839
+ * @param {number} [length] Message length if known beforehand
2840
+ * @returns {gamend.realtime.v1.RpcCall & gamend.realtime.v1.RpcCall.$Shape} RpcCall
2841
+ * @throws {Error} If the payload is not a reader or valid buffer
2842
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2843
+ */RpcCall.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.RpcCall(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==0)break;if(value=reader.uint32())message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.plugin=value;else delete message.plugin;continue;}case 3:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.fn=value;else delete message.fn;continue;}case 4:{if(wireType!==2)break;message.args_json=reader.bytes();message.args="args_json";continue;}case 5:{if(wireType!==2)break;message.args_raw=reader.bytes();message.args="args_raw";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2844
+ * Creates a RpcCall message from a plain object. Also converts values to their respective internal types.
2845
+ * @function fromObject
2846
+ * @memberof gamend.realtime.v1.RpcCall
2847
+ * @static
2848
+ * @param {Object.<string,*>} object Plain object
2849
+ * @returns {gamend.realtime.v1.RpcCall} RpcCall
2850
+ */RpcCall.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.RpcCall)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.RpcCall: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.RpcCall();if(object.id!=null)if($Number(object.id)!==0)message.id=object.id>>>0;if(object.plugin!=null)if(typeof object.plugin!=="string"||object.plugin.length)message.plugin=$String(object.plugin);if(object.fn!=null)if(typeof object.fn!=="string"||object.fn.length)message.fn=$String(object.fn);if(object.args_json!=null)if(typeof object.args_json==="string")$util.base64.decode(object.args_json,message.args_json=$util.newBuffer($util.base64.length(object.args_json)),0);else if(object.args_json.length>=0)message.args_json=object.args_json;if(object.args_raw!=null)if(typeof object.args_raw==="string")$util.base64.decode(object.args_raw,message.args_raw=$util.newBuffer($util.base64.length(object.args_raw)),0);else if(object.args_raw.length>=0)message.args_raw=object.args_raw;return message;};/**
2851
+ * Creates a plain object from a RpcCall message. Also converts values to other types if specified.
2852
+ * @function toObject
2853
+ * @memberof gamend.realtime.v1.RpcCall
2854
+ * @static
2855
+ * @param {gamend.realtime.v1.RpcCall} message RpcCall
2856
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2857
+ * @returns {Object.<string,*>} Plain object
2858
+ */RpcCall.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.id=0;object.plugin="";object.fn="";}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.plugin!=null&&$Object.hasOwnProperty.call(message,"plugin"))object.plugin=message.plugin;if(message.fn!=null&&$Object.hasOwnProperty.call(message,"fn"))object.fn=message.fn;if(message.args_json!=null&&$Object.hasOwnProperty.call(message,"args_json")){object.args_json=options.bytes===$String?$util.base64.encode(message.args_json,0,message.args_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.args_json):message.args_json;if(options.oneofs)object.args="args_json";}if(message.args_raw!=null&&$Object.hasOwnProperty.call(message,"args_raw")){object.args_raw=options.bytes===$String?$util.base64.encode(message.args_raw,0,message.args_raw.length):options.bytes===$Array?$Array.prototype.slice.call(message.args_raw):message.args_raw;if(options.oneofs)object.args="args_raw";}return object;};/**
2859
+ * Converts this RpcCall to JSON.
2860
+ * @function toJSON
2861
+ * @memberof gamend.realtime.v1.RpcCall
2862
+ * @instance
2863
+ * @returns {Object.<string,*>} JSON object
2864
+ */RpcCall.prototype.toJSON=function(){return RpcCall.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2865
+ * Gets the type url for RpcCall
2866
+ * @function getTypeUrl
2867
+ * @memberof gamend.realtime.v1.RpcCall
2868
+ * @static
2869
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2870
+ * @returns {string} The type url
2871
+ */RpcCall.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.RpcCall";};return RpcCall;}();v1.RpcReply=function(){/**
2872
+ * Properties of a RpcReply.
2873
+ * @typedef {Object} gamend.realtime.v1.RpcReply.$Properties
2874
+ * @property {number|null} [id] RpcReply id
2875
+ * @property {Uint8Array|null} [data_json] RpcReply data_json
2876
+ * @property {Uint8Array|null} [data_raw] RpcReply data_raw
2877
+ * @property {"data_json"|"data_raw"} [data] RpcReply data
2878
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2879
+ *//**
2880
+ * Properties of a RpcReply.
2881
+ * @memberof gamend.realtime.v1
2882
+ * @interface IRpcReply
2883
+ * @augments gamend.realtime.v1.RpcReply.$Properties
2884
+ * @deprecated Use gamend.realtime.v1.RpcReply.$Properties instead.
2885
+ *//**
2886
+ * Narrowed shape of a RpcReply.
2887
+ * @typedef {{
2888
+ * id?: number|null;
2889
+ * data_json?: Uint8Array|null;
2890
+ * data_raw?: Uint8Array|null;
2891
+ * $unknowns?: Array.<Uint8Array>;
2892
+ * } & (
2893
+ * ({ data?: undefined; data_json?: null; data_raw?: null }|{ data?: "data_json"; data_json: Uint8Array; data_raw?: null }|{ data?: "data_raw"; data_json?: null; data_raw: Uint8Array })
2894
+ * )} gamend.realtime.v1.RpcReply.$Shape
2895
+ *//**
2896
+ * Constructs a new RpcReply.
2897
+ * @memberof gamend.realtime.v1
2898
+ * @classdesc Represents a RpcReply.
2899
+ * @constructor
2900
+ * @param {gamend.realtime.v1.RpcReply.$Properties=} [properties] Properties to set
2901
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2902
+ */var RpcReply=function RpcReply(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2903
+ * RpcReply id.
2904
+ * @member {number} id
2905
+ * @memberof gamend.realtime.v1.RpcReply
2906
+ * @instance
2907
+ */RpcReply.prototype.id=0;/**
2908
+ * RpcReply data_json.
2909
+ * @member {Uint8Array|null|undefined} data_json
2910
+ * @memberof gamend.realtime.v1.RpcReply
2911
+ * @instance
2912
+ */RpcReply.prototype.data_json=null;/**
2913
+ * RpcReply data_raw.
2914
+ * @member {Uint8Array|null|undefined} data_raw
2915
+ * @memberof gamend.realtime.v1.RpcReply
2916
+ * @instance
2917
+ */RpcReply.prototype.data_raw=null;// OneOf field names bound to virtual getters and setters
2918
+ var $oneOfFields;/**
2919
+ * RpcReply data.
2920
+ * @member {"data_json"|"data_raw"|undefined} data
2921
+ * @memberof gamend.realtime.v1.RpcReply
2922
+ * @instance
2923
+ */$Object.defineProperty(RpcReply.prototype,"data",{get:$util.oneOfGetter($oneOfFields=["data_json","data_raw"]),set:$util.oneOfSetter($oneOfFields)});/**
2924
+ * Encodes the specified RpcReply message. Does not implicitly {@link gamend.realtime.v1.RpcReply.verify|verify} messages.
2925
+ * @function encode
2926
+ * @memberof gamend.realtime.v1.RpcReply
2927
+ * @static
2928
+ * @param {gamend.realtime.v1.RpcReply.$Properties} message RpcReply message or plain object to encode
2929
+ * @param {$protobuf.Writer} [writer] Writer to encode to
2930
+ * @returns {$protobuf.Writer} Writer
2931
+ */RpcReply.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!==0)writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.id);if(message.data_json!=null&&$Object.hasOwnProperty.call(message,"data_json"))writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.data_json);if(message.data_raw!=null&&$Object.hasOwnProperty.call(message,"data_raw"))writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.data_raw);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
2932
+ * Decodes a RpcReply message from the specified reader or buffer.
2933
+ * @function decode
2934
+ * @memberof gamend.realtime.v1.RpcReply
2935
+ * @static
2936
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2937
+ * @param {number} [length] Message length if known beforehand
2938
+ * @returns {gamend.realtime.v1.RpcReply & gamend.realtime.v1.RpcReply.$Shape} RpcReply
2939
+ * @throws {Error} If the payload is not a reader or valid buffer
2940
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
2941
+ */RpcReply.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.RpcReply(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==0)break;if(value=reader.uint32())message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;message.data_json=reader.bytes();message.data="data_json";continue;}case 3:{if(wireType!==2)break;message.data_raw=reader.bytes();message.data="data_raw";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
2942
+ * Creates a RpcReply message from a plain object. Also converts values to their respective internal types.
2943
+ * @function fromObject
2944
+ * @memberof gamend.realtime.v1.RpcReply
2945
+ * @static
2946
+ * @param {Object.<string,*>} object Plain object
2947
+ * @returns {gamend.realtime.v1.RpcReply} RpcReply
2948
+ */RpcReply.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.RpcReply)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.RpcReply: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.RpcReply();if(object.id!=null)if($Number(object.id)!==0)message.id=object.id>>>0;if(object.data_json!=null)if(typeof object.data_json==="string")$util.base64.decode(object.data_json,message.data_json=$util.newBuffer($util.base64.length(object.data_json)),0);else if(object.data_json.length>=0)message.data_json=object.data_json;if(object.data_raw!=null)if(typeof object.data_raw==="string")$util.base64.decode(object.data_raw,message.data_raw=$util.newBuffer($util.base64.length(object.data_raw)),0);else if(object.data_raw.length>=0)message.data_raw=object.data_raw;return message;};/**
2949
+ * Creates a plain object from a RpcReply message. Also converts values to other types if specified.
2950
+ * @function toObject
2951
+ * @memberof gamend.realtime.v1.RpcReply
2952
+ * @static
2953
+ * @param {gamend.realtime.v1.RpcReply} message RpcReply
2954
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
2955
+ * @returns {Object.<string,*>} Plain object
2956
+ */RpcReply.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults)object.id=0;if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.data_json!=null&&$Object.hasOwnProperty.call(message,"data_json")){object.data_json=options.bytes===$String?$util.base64.encode(message.data_json,0,message.data_json.length):options.bytes===$Array?$Array.prototype.slice.call(message.data_json):message.data_json;if(options.oneofs)object.data="data_json";}if(message.data_raw!=null&&$Object.hasOwnProperty.call(message,"data_raw")){object.data_raw=options.bytes===$String?$util.base64.encode(message.data_raw,0,message.data_raw.length):options.bytes===$Array?$Array.prototype.slice.call(message.data_raw):message.data_raw;if(options.oneofs)object.data="data_raw";}return object;};/**
2957
+ * Converts this RpcReply to JSON.
2958
+ * @function toJSON
2959
+ * @memberof gamend.realtime.v1.RpcReply
2960
+ * @instance
2961
+ * @returns {Object.<string,*>} JSON object
2962
+ */RpcReply.prototype.toJSON=function(){return RpcReply.toObject(this,_minimal["default"].util.toJSONOptions);};/**
2963
+ * Gets the type url for RpcReply
2964
+ * @function getTypeUrl
2965
+ * @memberof gamend.realtime.v1.RpcReply
2966
+ * @static
2967
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
2968
+ * @returns {string} The type url
2969
+ */RpcReply.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.RpcReply";};return RpcReply;}();v1.RpcError=function(){/**
2970
+ * Properties of a RpcError.
2971
+ * @typedef {Object} gamend.realtime.v1.RpcError.$Properties
2972
+ * @property {number|null} [id] RpcError id
2973
+ * @property {string|null} [error] RpcError error
2974
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2975
+ *//**
2976
+ * Properties of a RpcError.
2977
+ * @memberof gamend.realtime.v1
2978
+ * @interface IRpcError
2979
+ * @augments gamend.realtime.v1.RpcError.$Properties
2980
+ * @deprecated Use gamend.realtime.v1.RpcError.$Properties instead.
2981
+ *//**
2982
+ * Shape of a RpcError.
2983
+ * @typedef {gamend.realtime.v1.RpcError.$Properties} gamend.realtime.v1.RpcError.$Shape
2984
+ *//**
2985
+ * Constructs a new RpcError.
2986
+ * @memberof gamend.realtime.v1
2987
+ * @classdesc Represents a RpcError.
2988
+ * @constructor
2989
+ * @param {gamend.realtime.v1.RpcError.$Properties=} [properties] Properties to set
2990
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
2991
+ */var RpcError=function RpcError(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
2992
+ * RpcError id.
2993
+ * @member {number} id
2994
+ * @memberof gamend.realtime.v1.RpcError
2995
+ * @instance
2996
+ */RpcError.prototype.id=0;/**
2997
+ * RpcError error.
2998
+ * @member {string} error
2999
+ * @memberof gamend.realtime.v1.RpcError
3000
+ * @instance
3001
+ */RpcError.prototype.error="";/**
3002
+ * Encodes the specified RpcError message. Does not implicitly {@link gamend.realtime.v1.RpcError.verify|verify} messages.
3003
+ * @function encode
3004
+ * @memberof gamend.realtime.v1.RpcError
3005
+ * @static
3006
+ * @param {gamend.realtime.v1.RpcError.$Properties} message RpcError message or plain object to encode
3007
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3008
+ * @returns {$protobuf.Writer} Writer
3009
+ */RpcError.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.id!=null&&$Object.hasOwnProperty.call(message,"id")&&message.id!==0)writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.id);if(message.error!=null&&$Object.hasOwnProperty.call(message,"error")&&message.error!=="")writer.uint32(/* id 2, wireType 2 =*/18).string(message.error);if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
3010
+ * Decodes a RpcError message from the specified reader or buffer.
3011
+ * @function decode
3012
+ * @memberof gamend.realtime.v1.RpcError
3013
+ * @static
3014
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3015
+ * @param {number} [length] Message length if known beforehand
3016
+ * @returns {gamend.realtime.v1.RpcError & gamend.realtime.v1.RpcError.$Shape} RpcError
3017
+ * @throws {Error} If the payload is not a reader or valid buffer
3018
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3019
+ */RpcError.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.RpcError(),value;while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==0)break;if(value=reader.uint32())message.id=value;else delete message.id;continue;}case 2:{if(wireType!==2)break;if((value=reader.stringVerify()).length)message.error=value;else delete message.error;continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
3020
+ * Creates a RpcError message from a plain object. Also converts values to their respective internal types.
3021
+ * @function fromObject
3022
+ * @memberof gamend.realtime.v1.RpcError
3023
+ * @static
3024
+ * @param {Object.<string,*>} object Plain object
3025
+ * @returns {gamend.realtime.v1.RpcError} RpcError
3026
+ */RpcError.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.RpcError)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.RpcError: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.RpcError();if(object.id!=null)if($Number(object.id)!==0)message.id=object.id>>>0;if(object.error!=null)if(typeof object.error!=="string"||object.error.length)message.error=$String(object.error);return message;};/**
3027
+ * Creates a plain object from a RpcError message. Also converts values to other types if specified.
3028
+ * @function toObject
3029
+ * @memberof gamend.realtime.v1.RpcError
3030
+ * @static
3031
+ * @param {gamend.realtime.v1.RpcError} message RpcError
3032
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3033
+ * @returns {Object.<string,*>} Plain object
3034
+ */RpcError.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(options.defaults){object.id=0;object.error="";}if(message.id!=null&&$Object.hasOwnProperty.call(message,"id"))object.id=message.id;if(message.error!=null&&$Object.hasOwnProperty.call(message,"error"))object.error=message.error;return object;};/**
3035
+ * Converts this RpcError to JSON.
3036
+ * @function toJSON
3037
+ * @memberof gamend.realtime.v1.RpcError
3038
+ * @instance
3039
+ * @returns {Object.<string,*>} JSON object
3040
+ */RpcError.prototype.toJSON=function(){return RpcError.toObject(this,_minimal["default"].util.toJSONOptions);};/**
3041
+ * Gets the type url for RpcError
3042
+ * @function getTypeUrl
3043
+ * @memberof gamend.realtime.v1.RpcError
3044
+ * @static
3045
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
3046
+ * @returns {string} The type url
3047
+ */RpcError.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.RpcError";};return RpcError;}();v1.RtcEnvelope=function(){/**
3048
+ * Properties of a RtcEnvelope.
3049
+ * @typedef {Object} gamend.realtime.v1.RtcEnvelope.$Properties
3050
+ * @property {gamend.realtime.v1.RpcCall.$Properties|null} [call_hook] RtcEnvelope call_hook
3051
+ * @property {gamend.realtime.v1.RpcReply.$Properties|null} [hook_reply] RtcEnvelope hook_reply
3052
+ * @property {gamend.realtime.v1.RpcError.$Properties|null} [hook_error] RtcEnvelope hook_error
3053
+ * @property {"call_hook"|"hook_reply"|"hook_error"} [msg] RtcEnvelope msg
3054
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
3055
+ *//**
3056
+ * Properties of a RtcEnvelope.
3057
+ * @memberof gamend.realtime.v1
3058
+ * @interface IRtcEnvelope
3059
+ * @augments gamend.realtime.v1.RtcEnvelope.$Properties
3060
+ * @deprecated Use gamend.realtime.v1.RtcEnvelope.$Properties instead.
3061
+ *//**
3062
+ * Narrowed shape of a RtcEnvelope.
3063
+ * @typedef {{
3064
+ * call_hook?: gamend.realtime.v1.RpcCall.$Shape|null;
3065
+ * hook_reply?: gamend.realtime.v1.RpcReply.$Shape|null;
3066
+ * hook_error?: gamend.realtime.v1.RpcError.$Shape|null;
3067
+ * $unknowns?: Array.<Uint8Array>;
3068
+ * } & (
3069
+ * ({ msg?: undefined; call_hook?: null; hook_reply?: null; hook_error?: null }|{ msg?: "call_hook"; call_hook: gamend.realtime.v1.RpcCall.$Shape; hook_reply?: null; hook_error?: null }|{ msg?: "hook_reply"; call_hook?: null; hook_reply: gamend.realtime.v1.RpcReply.$Shape; hook_error?: null }|{ msg?: "hook_error"; call_hook?: null; hook_reply?: null; hook_error: gamend.realtime.v1.RpcError.$Shape })
3070
+ * )} gamend.realtime.v1.RtcEnvelope.$Shape
3071
+ *//**
3072
+ * Constructs a new RtcEnvelope.
3073
+ * @memberof gamend.realtime.v1
3074
+ * @classdesc Represents a RtcEnvelope.
3075
+ * @constructor
3076
+ * @param {gamend.realtime.v1.RtcEnvelope.$Properties=} [properties] Properties to set
3077
+ * @property {Array.<Uint8Array>} [$unknowns] Unknown fields preserved while decoding when enabled
3078
+ */var RtcEnvelope=function RtcEnvelope(properties){if(properties)for(var keys=$Object.keys(properties),i=0;i<keys.length;++i)if(properties[keys[i]]!=null&&keys[i]!=="__proto__")this[keys[i]]=properties[keys[i]];};/**
3079
+ * RtcEnvelope call_hook.
3080
+ * @member {gamend.realtime.v1.RpcCall.$Properties|null|undefined} call_hook
3081
+ * @memberof gamend.realtime.v1.RtcEnvelope
3082
+ * @instance
3083
+ */RtcEnvelope.prototype.call_hook=null;/**
3084
+ * RtcEnvelope hook_reply.
3085
+ * @member {gamend.realtime.v1.RpcReply.$Properties|null|undefined} hook_reply
3086
+ * @memberof gamend.realtime.v1.RtcEnvelope
3087
+ * @instance
3088
+ */RtcEnvelope.prototype.hook_reply=null;/**
3089
+ * RtcEnvelope hook_error.
3090
+ * @member {gamend.realtime.v1.RpcError.$Properties|null|undefined} hook_error
3091
+ * @memberof gamend.realtime.v1.RtcEnvelope
3092
+ * @instance
3093
+ */RtcEnvelope.prototype.hook_error=null;// OneOf field names bound to virtual getters and setters
3094
+ var $oneOfFields;/**
3095
+ * RtcEnvelope msg.
3096
+ * @member {"call_hook"|"hook_reply"|"hook_error"|undefined} msg
3097
+ * @memberof gamend.realtime.v1.RtcEnvelope
3098
+ * @instance
3099
+ */$Object.defineProperty(RtcEnvelope.prototype,"msg",{get:$util.oneOfGetter($oneOfFields=["call_hook","hook_reply","hook_error"]),set:$util.oneOfSetter($oneOfFields)});/**
3100
+ * Encodes the specified RtcEnvelope message. Does not implicitly {@link gamend.realtime.v1.RtcEnvelope.verify|verify} messages.
3101
+ * @function encode
3102
+ * @memberof gamend.realtime.v1.RtcEnvelope
3103
+ * @static
3104
+ * @param {gamend.realtime.v1.RtcEnvelope.$Properties} message RtcEnvelope message or plain object to encode
3105
+ * @param {$protobuf.Writer} [writer] Writer to encode to
3106
+ * @returns {$protobuf.Writer} Writer
3107
+ */RtcEnvelope.encode=function(message,writer,_depth){if(!writer)writer=$Writer.create();if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");if(message.call_hook!=null&&$Object.hasOwnProperty.call(message,"call_hook"))$root.gamend.realtime.v1.RpcCall.encode(message.call_hook,writer.uint32(/* id 1, wireType 2 =*/10).fork(),_depth+1).ldelim();if(message.hook_reply!=null&&$Object.hasOwnProperty.call(message,"hook_reply"))$root.gamend.realtime.v1.RpcReply.encode(message.hook_reply,writer.uint32(/* id 2, wireType 2 =*/18).fork(),_depth+1).ldelim();if(message.hook_error!=null&&$Object.hasOwnProperty.call(message,"hook_error"))$root.gamend.realtime.v1.RpcError.encode(message.hook_error,writer.uint32(/* id 3, wireType 2 =*/26).fork(),_depth+1).ldelim();if(message.$unknowns!=null&&$Object.hasOwnProperty.call(message,"$unknowns"))for(var i=0;i<message.$unknowns.length;++i)writer.raw(message.$unknowns[i]);return writer;};/**
3108
+ * Decodes a RtcEnvelope message from the specified reader or buffer.
3109
+ * @function decode
3110
+ * @memberof gamend.realtime.v1.RtcEnvelope
3111
+ * @static
3112
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3113
+ * @param {number} [length] Message length if known beforehand
3114
+ * @returns {gamend.realtime.v1.RtcEnvelope & gamend.realtime.v1.RtcEnvelope.$Shape} RtcEnvelope
3115
+ * @throws {Error} If the payload is not a reader or valid buffer
3116
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
3117
+ */RtcEnvelope.decode=function(reader,length,_end,_depth,_target){if(!(reader instanceof $Reader))reader=$Reader.create(reader);if(_depth===$undefined)_depth=0;if(_depth>$Reader.recursionLimit)throw $Error("max depth exceeded");var end=length===$undefined?reader.len:reader.pos+length,message=_target||new $root.gamend.realtime.v1.RtcEnvelope();while(reader.pos<end){var start=reader.pos;var tag=reader.tag();if(tag===_end){_end=$undefined;break;}var wireType=tag&7;switch(tag>>>=3){case 1:{if(wireType!==2)break;message.call_hook=$root.gamend.realtime.v1.RpcCall.decode(reader,reader.uint32(),$undefined,_depth+1,message.call_hook);message.msg="call_hook";continue;}case 2:{if(wireType!==2)break;message.hook_reply=$root.gamend.realtime.v1.RpcReply.decode(reader,reader.uint32(),$undefined,_depth+1,message.hook_reply);message.msg="hook_reply";continue;}case 3:{if(wireType!==2)break;message.hook_error=$root.gamend.realtime.v1.RpcError.decode(reader,reader.uint32(),$undefined,_depth+1,message.hook_error);message.msg="hook_error";continue;}}reader.skipType(wireType,_depth,tag);if(!reader.discardUnknown){$util.makeProp(message,"$unknowns",false);(message.$unknowns||(message.$unknowns=[])).push(reader.raw(start,reader.pos));}}if(_end!==$undefined)throw $Error("missing end group");return message;};/**
3118
+ * Creates a RtcEnvelope message from a plain object. Also converts values to their respective internal types.
3119
+ * @function fromObject
3120
+ * @memberof gamend.realtime.v1.RtcEnvelope
3121
+ * @static
3122
+ * @param {Object.<string,*>} object Plain object
3123
+ * @returns {gamend.realtime.v1.RtcEnvelope} RtcEnvelope
3124
+ */RtcEnvelope.fromObject=function(object,_depth){if(object instanceof $root.gamend.realtime.v1.RtcEnvelope)return object;if(!$util.isObject(object))throw $TypeError(".gamend.realtime.v1.RtcEnvelope: object expected");if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var message=new $root.gamend.realtime.v1.RtcEnvelope();if(object.call_hook!=null){if(!$util.isObject(object.call_hook))throw $TypeError(".gamend.realtime.v1.RtcEnvelope.call_hook: object expected");message.call_hook=$root.gamend.realtime.v1.RpcCall.fromObject(object.call_hook,_depth+1);}if(object.hook_reply!=null){if(!$util.isObject(object.hook_reply))throw $TypeError(".gamend.realtime.v1.RtcEnvelope.hook_reply: object expected");message.hook_reply=$root.gamend.realtime.v1.RpcReply.fromObject(object.hook_reply,_depth+1);}if(object.hook_error!=null){if(!$util.isObject(object.hook_error))throw $TypeError(".gamend.realtime.v1.RtcEnvelope.hook_error: object expected");message.hook_error=$root.gamend.realtime.v1.RpcError.fromObject(object.hook_error,_depth+1);}return message;};/**
3125
+ * Creates a plain object from a RtcEnvelope message. Also converts values to other types if specified.
3126
+ * @function toObject
3127
+ * @memberof gamend.realtime.v1.RtcEnvelope
3128
+ * @static
3129
+ * @param {gamend.realtime.v1.RtcEnvelope} message RtcEnvelope
3130
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
3131
+ * @returns {Object.<string,*>} Plain object
3132
+ */RtcEnvelope.toObject=function(message,options,_depth){if(!options)options={};if(_depth===$undefined)_depth=0;if(_depth>$util.recursionLimit)throw $Error("max depth exceeded");var object={};if(message.call_hook!=null&&$Object.hasOwnProperty.call(message,"call_hook")){object.call_hook=$root.gamend.realtime.v1.RpcCall.toObject(message.call_hook,options,_depth+1);if(options.oneofs)object.msg="call_hook";}if(message.hook_reply!=null&&$Object.hasOwnProperty.call(message,"hook_reply")){object.hook_reply=$root.gamend.realtime.v1.RpcReply.toObject(message.hook_reply,options,_depth+1);if(options.oneofs)object.msg="hook_reply";}if(message.hook_error!=null&&$Object.hasOwnProperty.call(message,"hook_error")){object.hook_error=$root.gamend.realtime.v1.RpcError.toObject(message.hook_error,options,_depth+1);if(options.oneofs)object.msg="hook_error";}return object;};/**
3133
+ * Converts this RtcEnvelope to JSON.
3134
+ * @function toJSON
3135
+ * @memberof gamend.realtime.v1.RtcEnvelope
3136
+ * @instance
3137
+ * @returns {Object.<string,*>} JSON object
3138
+ */RtcEnvelope.prototype.toJSON=function(){return RtcEnvelope.toObject(this,_minimal["default"].util.toJSONOptions);};/**
3139
+ * Gets the type url for RtcEnvelope
3140
+ * @function getTypeUrl
3141
+ * @memberof gamend.realtime.v1.RtcEnvelope
3142
+ * @static
3143
+ * @param {string} [prefix] Custom type url prefix, defaults to `"type.googleapis.com"`
3144
+ * @returns {string} The type url
3145
+ */RtcEnvelope.getTypeUrl=function(prefix){if(prefix===$undefined)prefix="type.googleapis.com";return prefix+"/gamend.realtime.v1.RtcEnvelope";};return RtcEnvelope;}();return v1;}();return realtime;}();return gamend;}();