@snap/camera-kit 0.7.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 (554) hide show
  1. package/LICENSE.md +6247 -0
  2. package/README.md +166 -0
  3. package/docs/html/.nojekyll +1 -0
  4. package/docs/html/assets/highlight.css +106 -0
  5. package/docs/html/assets/main.js +54 -0
  6. package/docs/html/assets/search.js +1 -0
  7. package/docs/html/assets/style.css +1225 -0
  8. package/docs/html/assets/widgets.png +0 -0
  9. package/docs/html/assets/widgets@2x.png +0 -0
  10. package/docs/html/classes/CameraKit.html +121 -0
  11. package/docs/html/classes/CameraKitSession.html +347 -0
  12. package/docs/html/classes/CameraKitSource.html +152 -0
  13. package/docs/html/classes/LensPerformanceMeasurement.html +115 -0
  14. package/docs/html/classes/LensPerformanceMetrics.html +76 -0
  15. package/docs/html/classes/LensRepository.html +171 -0
  16. package/docs/html/classes/LensSources.html +82 -0
  17. package/docs/html/classes/Transform2D.html +99 -0
  18. package/docs/html/classes/TypedCustomEvent.html +109 -0
  19. package/docs/html/classes/TypedEventTarget.html +146 -0
  20. package/docs/html/functions/Injectable.html +193 -0
  21. package/docs/html/functions/bootstrapCameraKit.html +158 -0
  22. package/docs/html/functions/createExtension.html +127 -0
  23. package/docs/html/functions/createImageSource.html +123 -0
  24. package/docs/html/functions/createMediaStreamSource.html +123 -0
  25. package/docs/html/functions/createUserMediaSource.html +127 -0
  26. package/docs/html/functions/createVideoSource.html +124 -0
  27. package/docs/html/functions/estimateLensPerformance.html +116 -0
  28. package/docs/html/functions/getRequiredBootstrapURLs.html +124 -0
  29. package/docs/html/functions/lensSourcesFactory.html +116 -0
  30. package/docs/html/functions/uriHandlersFactory.html +118 -0
  31. package/docs/html/index.html +208 -0
  32. package/docs/html/interfaces/CameraKitBootstrapConfiguration.html +132 -0
  33. package/docs/html/interfaces/CameraKitSourceSubscriber.html +121 -0
  34. package/docs/html/interfaces/ComputedFrameMetrics.html +70 -0
  35. package/docs/html/interfaces/CreateSessionOptions.html +77 -0
  36. package/docs/html/interfaces/EstimatedLensPerformance.html +78 -0
  37. package/docs/html/interfaces/Lens.html +115 -0
  38. package/docs/html/interfaces/LensSource.html +113 -0
  39. package/docs/html/interfaces/MediaStreamSourceOptions.html +65 -0
  40. package/docs/html/interfaces/UriCancelRequest.html +65 -0
  41. package/docs/html/interfaces/UriHandler.html +128 -0
  42. package/docs/html/interfaces/UriRequest.html +80 -0
  43. package/docs/html/interfaces/UriResponse.html +80 -0
  44. package/docs/html/interfaces/VideoSourceOptions.html +60 -0
  45. package/docs/html/modules.html +198 -0
  46. package/docs/html/types/AssetLoader.html +126 -0
  47. package/docs/html/types/AssetTiming.html +116 -0
  48. package/docs/html/types/BenchmarkError.html +107 -0
  49. package/docs/html/types/BootstrapError.html +110 -0
  50. package/docs/html/types/CacheKeyNotFoundError.html +107 -0
  51. package/docs/html/types/CameraKitDeviceInfo.html +114 -0
  52. package/docs/html/types/CameraKitSessionEventListener.html +109 -0
  53. package/docs/html/types/CameraKitSessionEvents.html +118 -0
  54. package/docs/html/types/CameraKitSourceError.html +107 -0
  55. package/docs/html/types/CameraKitSourceInfo.html +107 -0
  56. package/docs/html/types/CameraKitSourceOptions.html +113 -0
  57. package/docs/html/types/ConfigurationError.html +109 -0
  58. package/docs/html/types/Keyboard.html +196 -0
  59. package/docs/html/types/KeyboardEvents.html +109 -0
  60. package/docs/html/types/LegalError.html +107 -0
  61. package/docs/html/types/LensAssetError.html +109 -0
  62. package/docs/html/types/LensContentValidationError.html +107 -0
  63. package/docs/html/types/LensError.html +107 -0
  64. package/docs/html/types/LensExecutionError.html +114 -0
  65. package/docs/html/types/LensImagePickerError.html +110 -0
  66. package/docs/html/types/LensLaunchParams.html +109 -0
  67. package/docs/html/types/LensMetricsEvents.html +110 -0
  68. package/docs/html/types/LensPerformanceCluster.html +107 -0
  69. package/docs/html/types/LensView.html +119 -0
  70. package/docs/html/types/LensWait.html +111 -0
  71. package/docs/html/types/PersistentStoreError.html +109 -0
  72. package/docs/html/types/PlatformNotSupportedError.html +110 -0
  73. package/docs/html/types/PublicContainer.html +110 -0
  74. package/docs/html/types/RenderTarget.html +111 -0
  75. package/docs/html/types/Uri.html +107 -0
  76. package/docs/html/types/UriHandlers.html +109 -0
  77. package/docs/html/types/WebGLError.html +107 -0
  78. package/docs/html/variables/extensionRequestContext.html +109 -0
  79. package/docs/md/.nojekyll +1 -0
  80. package/docs/md/README.md +168 -0
  81. package/docs/md/classes/CameraKit.md +94 -0
  82. package/docs/md/classes/CameraKitSession.md +359 -0
  83. package/docs/md/classes/CameraKitSource.md +110 -0
  84. package/docs/md/classes/LensPerformanceMeasurement.md +77 -0
  85. package/docs/md/classes/LensPerformanceMetrics.md +37 -0
  86. package/docs/md/classes/LensRepository.md +145 -0
  87. package/docs/md/classes/LensSources.md +29 -0
  88. package/docs/md/classes/Transform2D.md +55 -0
  89. package/docs/md/classes/TypedCustomEvent.md +65 -0
  90. package/docs/md/classes/TypedEventTarget.md +103 -0
  91. package/docs/md/interfaces/CameraKitBootstrapConfiguration.md +106 -0
  92. package/docs/md/interfaces/CameraKitSourceSubscriber.md +55 -0
  93. package/docs/md/interfaces/ComputedFrameMetrics.md +29 -0
  94. package/docs/md/interfaces/CreateSessionOptions.md +35 -0
  95. package/docs/md/interfaces/EstimatedLensPerformance.md +38 -0
  96. package/docs/md/interfaces/Lens.md +84 -0
  97. package/docs/md/interfaces/LensSource.md +68 -0
  98. package/docs/md/interfaces/MediaStreamSourceOptions.md +22 -0
  99. package/docs/md/interfaces/UriCancelRequest.md +22 -0
  100. package/docs/md/interfaces/UriHandler.md +63 -0
  101. package/docs/md/interfaces/UriRequest.md +43 -0
  102. package/docs/md/interfaces/UriResponse.md +43 -0
  103. package/docs/md/interfaces/VideoSourceOptions.md +15 -0
  104. package/docs/md/modules.md +827 -0
  105. package/lib/CameraKit.d.ts +170 -0
  106. package/lib/CameraKit.js +145 -0
  107. package/lib/CameraKit.js.map +1 -0
  108. package/lib/__tests__/data.d.ts +9 -0
  109. package/lib/__tests__/data.js +50 -0
  110. package/lib/__tests__/data.js.map +1 -0
  111. package/lib/__tests__/deferred.d.ts +16 -0
  112. package/lib/__tests__/deferred.js +29 -0
  113. package/lib/__tests__/deferred.js.map +1 -0
  114. package/lib/__tests__/jest.matchers.d.ts +17 -0
  115. package/lib/__tests__/jest.matchers.js +67 -0
  116. package/lib/__tests__/jest.matchers.js.map +1 -0
  117. package/lib/assertPlatformSupported.d.ts +4 -0
  118. package/lib/assertPlatformSupported.js +10 -0
  119. package/lib/assertPlatformSupported.js.map +1 -0
  120. package/lib/benchmark/benchmarkGflops.d.ts +16 -0
  121. package/lib/benchmark/benchmarkGflops.js +129 -0
  122. package/lib/benchmark/benchmarkGflops.js.map +1 -0
  123. package/lib/benchmark/estimateLensPerformanceCluster.d.ts +33 -0
  124. package/lib/benchmark/estimateLensPerformanceCluster.js +48 -0
  125. package/lib/benchmark/estimateLensPerformanceCluster.js.map +1 -0
  126. package/lib/benchmark/webglUtils.d.ts +7 -0
  127. package/lib/benchmark/webglUtils.js +87 -0
  128. package/lib/benchmark/webglUtils.js.map +1 -0
  129. package/lib/bootstrapCameraKit.d.ts +96 -0
  130. package/lib/bootstrapCameraKit.js +204 -0
  131. package/lib/bootstrapCameraKit.js.map +1 -0
  132. package/lib/common/__mocks__/loadScript.d.ts +1 -0
  133. package/lib/common/__mocks__/loadScript.js +10 -0
  134. package/lib/common/__mocks__/loadScript.js.map +1 -0
  135. package/lib/common/assertions.d.ts +27 -0
  136. package/lib/common/assertions.js +39 -0
  137. package/lib/common/assertions.js.map +1 -0
  138. package/lib/common/cameraKitUserAgent.d.ts +34 -0
  139. package/lib/common/cameraKitUserAgent.js +216 -0
  140. package/lib/common/cameraKitUserAgent.js.map +1 -0
  141. package/lib/common/copyDefinedProperties.d.ts +13 -0
  142. package/lib/common/copyDefinedProperties.js +16 -0
  143. package/lib/common/copyDefinedProperties.js.map +1 -0
  144. package/lib/common/entries.d.ts +3 -0
  145. package/lib/common/entries.js +3 -0
  146. package/lib/common/entries.js.map +1 -0
  147. package/lib/common/errorHelpers.d.ts +10 -0
  148. package/lib/common/errorHelpers.js +24 -0
  149. package/lib/common/errorHelpers.js.map +1 -0
  150. package/lib/common/getFilename.d.ts +1 -0
  151. package/lib/common/getFilename.js +4 -0
  152. package/lib/common/getFilename.js.map +1 -0
  153. package/lib/common/index.d.ts +2 -0
  154. package/lib/common/index.js +3 -0
  155. package/lib/common/index.js.map +1 -0
  156. package/lib/common/loadScript.d.ts +1 -0
  157. package/lib/common/loadScript.js +11 -0
  158. package/lib/common/loadScript.js.map +1 -0
  159. package/lib/common/locale.d.ts +2 -0
  160. package/lib/common/locale.js +11 -0
  161. package/lib/common/locale.js.map +1 -0
  162. package/lib/common/localization.d.ts +43 -0
  163. package/lib/common/localization.js +43 -0
  164. package/lib/common/localization.js.map +1 -0
  165. package/lib/common/memoize.d.ts +8 -0
  166. package/lib/common/memoize.js +15 -0
  167. package/lib/common/memoize.js.map +1 -0
  168. package/lib/common/pageVisibility.d.ts +20 -0
  169. package/lib/common/pageVisibility.js +62 -0
  170. package/lib/common/pageVisibility.js.map +1 -0
  171. package/lib/common/time.d.ts +1 -0
  172. package/lib/common/time.js +2 -0
  173. package/lib/common/time.js.map +1 -0
  174. package/lib/common/typeguards.d.ts +53 -0
  175. package/lib/common/typeguards.js +92 -0
  176. package/lib/common/typeguards.js.map +1 -0
  177. package/lib/common/types.d.ts +10 -0
  178. package/lib/common/types.js +2 -0
  179. package/lib/common/types.js.map +1 -0
  180. package/lib/common/validate.d.ts +14 -0
  181. package/lib/common/validate.js +104 -0
  182. package/lib/common/validate.js.map +1 -0
  183. package/lib/configuration.d.ts +92 -0
  184. package/lib/configuration.js +36 -0
  185. package/lib/configuration.js.map +1 -0
  186. package/lib/configurationOverrides.d.ts +12 -0
  187. package/lib/configurationOverrides.js +41 -0
  188. package/lib/configurationOverrides.js.map +1 -0
  189. package/lib/dependency-injection/Container.d.ts +177 -0
  190. package/lib/dependency-injection/Container.js +160 -0
  191. package/lib/dependency-injection/Container.js.map +1 -0
  192. package/lib/dependency-injection/Injectable.d.ts +39 -0
  193. package/lib/dependency-injection/Injectable.js +18 -0
  194. package/lib/dependency-injection/Injectable.js.map +1 -0
  195. package/lib/dependency-injection/PartialContainer.d.ts +81 -0
  196. package/lib/dependency-injection/PartialContainer.js +85 -0
  197. package/lib/dependency-injection/PartialContainer.js.map +1 -0
  198. package/lib/dependency-injection/RootServices.d.ts +62 -0
  199. package/lib/dependency-injection/RootServices.js +2 -0
  200. package/lib/dependency-injection/RootServices.js.map +1 -0
  201. package/lib/dependency-injection/types.d.ts +56 -0
  202. package/lib/dependency-injection/types.js +2 -0
  203. package/lib/dependency-injection/types.js.map +1 -0
  204. package/lib/environment.json +1 -0
  205. package/lib/events/TypedCustomEvent.d.ts +10 -0
  206. package/lib/events/TypedCustomEvent.js +11 -0
  207. package/lib/events/TypedCustomEvent.js.map +1 -0
  208. package/lib/events/TypedEventTarget.d.ts +25 -0
  209. package/lib/events/TypedEventTarget.js +57 -0
  210. package/lib/events/TypedEventTarget.js.map +1 -0
  211. package/lib/events/scan.d.ts +15 -0
  212. package/lib/events/scan.js +46 -0
  213. package/lib/events/scan.js.map +1 -0
  214. package/lib/extensions/LensSources.d.ts +58 -0
  215. package/lib/extensions/LensSources.js +50 -0
  216. package/lib/extensions/LensSources.js.map +1 -0
  217. package/lib/extensions/UriHandlers.d.ts +54 -0
  218. package/lib/extensions/UriHandlers.js +93 -0
  219. package/lib/extensions/UriHandlers.js.map +1 -0
  220. package/lib/extensions/extensionRequestContext.d.ts +4 -0
  221. package/lib/extensions/extensionRequestContext.js +14 -0
  222. package/lib/extensions/extensionRequestContext.js.map +1 -0
  223. package/lib/generated-proto/blizzard/cameraKitEvents.d.ts +5603 -0
  224. package/lib/generated-proto/blizzard/cameraKitEvents.js +522 -0
  225. package/lib/generated-proto/blizzard/cameraKitEvents.js.map +1 -0
  226. package/lib/generated-proto/pb_schema/camera_kit/v3/business_events.d.ts +98 -0
  227. package/lib/generated-proto/pb_schema/camera_kit/v3/business_events.js +260 -0
  228. package/lib/generated-proto/pb_schema/camera_kit/v3/business_events.js.map +1 -0
  229. package/lib/generated-proto/pb_schema/camera_kit/v3/export.d.ts +543 -0
  230. package/lib/generated-proto/pb_schema/camera_kit/v3/export.js +429 -0
  231. package/lib/generated-proto/pb_schema/camera_kit/v3/export.js.map +1 -0
  232. package/lib/generated-proto/pb_schema/camera_kit/v3/legal_prompt.d.ts +100 -0
  233. package/lib/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js +164 -0
  234. package/lib/generated-proto/pb_schema/camera_kit/v3/legal_prompt.js.map +1 -0
  235. package/lib/generated-proto/pb_schema/camera_kit/v3/lens.d.ts +395 -0
  236. package/lib/generated-proto/pb_schema/camera_kit/v3/lens.js +644 -0
  237. package/lib/generated-proto/pb_schema/camera_kit/v3/lens.js.map +1 -0
  238. package/lib/generated-proto/pb_schema/camera_kit/v3/operational_metrics.d.ts +185 -0
  239. package/lib/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js +172 -0
  240. package/lib/generated-proto/pb_schema/camera_kit/v3/operational_metrics.js.map +1 -0
  241. package/lib/generated-proto/pb_schema/camera_kit/v3/ranking.d.ts +86 -0
  242. package/lib/generated-proto/pb_schema/camera_kit/v3/ranking.js +234 -0
  243. package/lib/generated-proto/pb_schema/camera_kit/v3/ranking.js.map +1 -0
  244. package/lib/generated-proto/pb_schema/camera_kit/v3/service.d.ts +854 -0
  245. package/lib/generated-proto/pb_schema/camera_kit/v3/service.js +629 -0
  246. package/lib/generated-proto/pb_schema/camera_kit/v3/service.js.map +1 -0
  247. package/lib/generated-proto/pb_schema/cdp/cof/benchmark.d.ts +86 -0
  248. package/lib/generated-proto/pb_schema/cdp/cof/benchmark.js +185 -0
  249. package/lib/generated-proto/pb_schema/cdp/cof/benchmark.js.map +1 -0
  250. package/lib/generated-proto/pb_schema/cdp/cof/benchmark_name.d.ts +95 -0
  251. package/lib/generated-proto/pb_schema/cdp/cof/benchmark_name.js +104 -0
  252. package/lib/generated-proto/pb_schema/cdp/cof/benchmark_name.js.map +1 -0
  253. package/lib/generated-proto/pb_schema/cdp/cof/circumstance_service.d.ts +10212 -0
  254. package/lib/generated-proto/pb_schema/cdp/cof/circumstance_service.js +1300 -0
  255. package/lib/generated-proto/pb_schema/cdp/cof/circumstance_service.js.map +1 -0
  256. package/lib/generated-proto/pb_schema/cdp/cof/config_request.d.ts +401 -0
  257. package/lib/generated-proto/pb_schema/cdp/cof/config_request.js +525 -0
  258. package/lib/generated-proto/pb_schema/cdp/cof/config_request.js.map +1 -0
  259. package/lib/generated-proto/pb_schema/cdp/cof/config_response.d.ts +1287 -0
  260. package/lib/generated-proto/pb_schema/cdp/cof/config_response.js +135 -0
  261. package/lib/generated-proto/pb_schema/cdp/cof/config_response.js.map +1 -0
  262. package/lib/generated-proto/pb_schema/cdp/cof/config_result.d.ts +4208 -0
  263. package/lib/generated-proto/pb_schema/cdp/cof/config_result.js +1053 -0
  264. package/lib/generated-proto/pb_schema/cdp/cof/config_result.js.map +1 -0
  265. package/lib/generated-proto/pb_schema/cdp/cof/debug_info.d.ts +102 -0
  266. package/lib/generated-proto/pb_schema/cdp/cof/debug_info.js +165 -0
  267. package/lib/generated-proto/pb_schema/cdp/cof/debug_info.js.map +1 -0
  268. package/lib/generated-proto/pb_schema/cdp/cof/namespace.d.ts +8 -0
  269. package/lib/generated-proto/pb_schema/cdp/cof/namespace.js +17 -0
  270. package/lib/generated-proto/pb_schema/cdp/cof/namespace.js.map +1 -0
  271. package/lib/generated-proto/pb_schema/common/ruid.d.ts +75 -0
  272. package/lib/generated-proto/pb_schema/common/ruid.js +96 -0
  273. package/lib/generated-proto/pb_schema/common/ruid.js.map +1 -0
  274. package/lib/generated-proto/pb_schema/common/value.d.ts +131 -0
  275. package/lib/generated-proto/pb_schema/common/value.js +204 -0
  276. package/lib/generated-proto/pb_schema/common/value.js.map +1 -0
  277. package/lib/generated-proto/pb_schema/google/api/annotations.d.ts +1 -0
  278. package/lib/generated-proto/pb_schema/google/api/annotations.js +9 -0
  279. package/lib/generated-proto/pb_schema/google/api/annotations.js.map +1 -0
  280. package/lib/generated-proto/pb_schema/google/api/http.d.ts +3636 -0
  281. package/lib/generated-proto/pb_schema/google/api/http.js +271 -0
  282. package/lib/generated-proto/pb_schema/google/api/http.js.map +1 -0
  283. package/lib/generated-proto/pb_schema/google/protobuf/any.d.ts +139 -0
  284. package/lib/generated-proto/pb_schema/google/protobuf/any.js +94 -0
  285. package/lib/generated-proto/pb_schema/google/protobuf/any.js.map +1 -0
  286. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.d.ts +50968 -0
  287. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js +2962 -0
  288. package/lib/generated-proto/pb_schema/google/protobuf/descriptor.js.map +1 -0
  289. package/lib/generated-proto/pb_schema/google/protobuf/timestamp.d.ts +98 -0
  290. package/lib/generated-proto/pb_schema/google/protobuf/timestamp.js +82 -0
  291. package/lib/generated-proto/pb_schema/google/protobuf/timestamp.js.map +1 -0
  292. package/lib/generated-proto/pb_schema/google/protobuf/wrappers.d.ts +173 -0
  293. package/lib/generated-proto/pb_schema/google/protobuf/wrappers.js +332 -0
  294. package/lib/generated-proto/pb_schema/google/protobuf/wrappers.js.map +1 -0
  295. package/lib/generated-proto/pb_schema/lenses/geocircle.d.ts +42 -0
  296. package/lib/generated-proto/pb_schema/lenses/geocircle.js +52 -0
  297. package/lib/generated-proto/pb_schema/lenses/geocircle.js.map +1 -0
  298. package/lib/generated-proto/pb_schema/lenses/geopoint.d.ts +32 -0
  299. package/lib/generated-proto/pb_schema/lenses/geopoint.js +50 -0
  300. package/lib/generated-proto/pb_schema/lenses/geopoint.js.map +1 -0
  301. package/lib/generated-proto/pb_schema/lenses/launch_params.d.ts +29 -0
  302. package/lib/generated-proto/pb_schema/lenses/launch_params.js +43 -0
  303. package/lib/generated-proto/pb_schema/lenses/launch_params.js.map +1 -0
  304. package/lib/generated-proto/pb_schema/lenses/launchdata.d.ts +365 -0
  305. package/lib/generated-proto/pb_schema/lenses/launchdata.js +216 -0
  306. package/lib/generated-proto/pb_schema/lenses/launchdata.js.map +1 -0
  307. package/lib/generated-proto/pb_schema/lenses/lures.d.ts +113 -0
  308. package/lib/generated-proto/pb_schema/lenses/lures.js +64 -0
  309. package/lib/generated-proto/pb_schema/lenses/lures.js.map +1 -0
  310. package/lib/generated-proto/pb_schema/lenses/persistent_store.d.ts +29 -0
  311. package/lib/generated-proto/pb_schema/lenses/persistent_store.js +43 -0
  312. package/lib/generated-proto/pb_schema/lenses/persistent_store.js.map +1 -0
  313. package/lib/generated-proto/pb_schema/lenses/snappable.d.ts +921 -0
  314. package/lib/generated-proto/pb_schema/lenses/snappable.js +954 -0
  315. package/lib/generated-proto/pb_schema/lenses/snappable.js.map +1 -0
  316. package/lib/generated-proto/pb_schema/lenses/user_data.d.ts +247 -0
  317. package/lib/generated-proto/pb_schema/lenses/user_data.js +362 -0
  318. package/lib/generated-proto/pb_schema/lenses/user_data.js.map +1 -0
  319. package/lib/handlers/HandlerChainBuilder.d.ts +95 -0
  320. package/lib/handlers/HandlerChainBuilder.js +187 -0
  321. package/lib/handlers/HandlerChainBuilder.js.map +1 -0
  322. package/lib/handlers/arrayBufferParsingHandler.d.ts +10 -0
  323. package/lib/handlers/arrayBufferParsingHandler.js +18 -0
  324. package/lib/handlers/arrayBufferParsingHandler.js.map +1 -0
  325. package/lib/handlers/batchingHandler.d.ts +25 -0
  326. package/lib/handlers/batchingHandler.js +79 -0
  327. package/lib/handlers/batchingHandler.js.map +1 -0
  328. package/lib/handlers/cameraKitServiceFetchHandlerFactory.d.ts +12 -0
  329. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js +19 -0
  330. package/lib/handlers/cameraKitServiceFetchHandlerFactory.js.map +1 -0
  331. package/lib/handlers/debugHandler.d.ts +8 -0
  332. package/lib/handlers/debugHandler.js +27 -0
  333. package/lib/handlers/debugHandler.js.map +1 -0
  334. package/lib/handlers/defaultFetchHandler.d.ts +15 -0
  335. package/lib/handlers/defaultFetchHandler.js +29 -0
  336. package/lib/handlers/defaultFetchHandler.js.map +1 -0
  337. package/lib/handlers/headersModifyingFetchHandler.d.ts +8 -0
  338. package/lib/handlers/headersModifyingFetchHandler.js +13 -0
  339. package/lib/handlers/headersModifyingFetchHandler.js.map +1 -0
  340. package/lib/handlers/index.d.ts +2 -0
  341. package/lib/handlers/index.js +3 -0
  342. package/lib/handlers/index.js.map +1 -0
  343. package/lib/handlers/mappingHandler.d.ts +15 -0
  344. package/lib/handlers/mappingHandler.js +65 -0
  345. package/lib/handlers/mappingHandler.js.map +1 -0
  346. package/lib/handlers/noCorsRetryingFetchHandler.d.ts +48 -0
  347. package/lib/handlers/noCorsRetryingFetchHandler.js +94 -0
  348. package/lib/handlers/noCorsRetryingFetchHandler.js.map +1 -0
  349. package/lib/handlers/persistingHandler.d.ts +14 -0
  350. package/lib/handlers/persistingHandler.js +71 -0
  351. package/lib/handlers/persistingHandler.js.map +1 -0
  352. package/lib/handlers/rateLimitingHandler.d.ts +20 -0
  353. package/lib/handlers/rateLimitingHandler.js +43 -0
  354. package/lib/handlers/rateLimitingHandler.js.map +1 -0
  355. package/lib/handlers/requestStateEmittingHandler.d.ts +29 -0
  356. package/lib/handlers/requestStateEmittingHandler.js +43 -0
  357. package/lib/handlers/requestStateEmittingHandler.js.map +1 -0
  358. package/lib/handlers/responseCachingHandler.d.ts +27 -0
  359. package/lib/handlers/responseCachingHandler.js +94 -0
  360. package/lib/handlers/responseCachingHandler.js.map +1 -0
  361. package/lib/handlers/retryingHandler.d.ts +37 -0
  362. package/lib/handlers/retryingHandler.js +73 -0
  363. package/lib/handlers/retryingHandler.js.map +1 -0
  364. package/lib/handlers/timeoutHandler.d.ts +18 -0
  365. package/lib/handlers/timeoutHandler.js +30 -0
  366. package/lib/handlers/timeoutHandler.js.map +1 -0
  367. package/lib/index.d.ts +33 -0
  368. package/lib/index.js +32 -0
  369. package/lib/index.js.map +1 -0
  370. package/lib/legal/legalPrompt.d.ts +17 -0
  371. package/lib/legal/legalPrompt.js +144 -0
  372. package/lib/legal/legalPrompt.js.map +1 -0
  373. package/lib/legal/legalState.d.ts +50 -0
  374. package/lib/legal/legalState.js +149 -0
  375. package/lib/legal/legalState.js.map +1 -0
  376. package/lib/lens/Lens.d.ts +71 -0
  377. package/lib/lens/Lens.js +63 -0
  378. package/lib/lens/Lens.js.map +1 -0
  379. package/lib/lens/LensLaunchParams.d.ts +19 -0
  380. package/lib/lens/LensLaunchParams.js +38 -0
  381. package/lib/lens/LensLaunchParams.js.map +1 -0
  382. package/lib/lens/LensPersistenceStore.d.ts +7 -0
  383. package/lib/lens/LensPersistenceStore.js +20 -0
  384. package/lib/lens/LensPersistenceStore.js.map +1 -0
  385. package/lib/lens/LensRepository.d.ts +134 -0
  386. package/lib/lens/LensRepository.js +239 -0
  387. package/lib/lens/LensRepository.js.map +1 -0
  388. package/lib/lens/assets/LensAssetRepository.d.ts +66 -0
  389. package/lib/lens/assets/LensAssetRepository.js +179 -0
  390. package/lib/lens/assets/LensAssetRepository.js.map +1 -0
  391. package/lib/lens/assets/LensAssetsProvider.d.ts +21 -0
  392. package/lib/lens/assets/LensAssetsProvider.js +41 -0
  393. package/lib/lens/assets/LensAssetsProvider.js.map +1 -0
  394. package/lib/lens/assets/deviceDependentAssetLoader.d.ts +11 -0
  395. package/lib/lens/assets/deviceDependentAssetLoader.js +58 -0
  396. package/lib/lens/assets/deviceDependentAssetLoader.js.map +1 -0
  397. package/lib/lens/assets/remoteMediaAssetLoaderFactory.d.ts +10 -0
  398. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js +26 -0
  399. package/lib/lens/assets/remoteMediaAssetLoaderFactory.js.map +1 -0
  400. package/lib/lens/assets/staticAssetLoader.d.ts +10 -0
  401. package/lib/lens/assets/staticAssetLoader.js +24 -0
  402. package/lib/lens/assets/staticAssetLoader.js.map +1 -0
  403. package/lib/lens/index.d.ts +7 -0
  404. package/lib/lens/index.js +7 -0
  405. package/lib/lens/index.js.map +1 -0
  406. package/lib/lens/lensEnvelopeUtil.d.ts +5 -0
  407. package/lib/lens/lensEnvelopeUtil.js +19 -0
  408. package/lib/lens/lensEnvelopeUtil.js.map +1 -0
  409. package/lib/lens/lensHttpUtil.d.ts +4 -0
  410. package/lib/lens/lensHttpUtil.js +30 -0
  411. package/lib/lens/lensHttpUtil.js.map +1 -0
  412. package/lib/lens-client-interface/exif.d.ts +20 -0
  413. package/lib/lens-client-interface/exif.js +61 -0
  414. package/lib/lens-client-interface/exif.js.map +1 -0
  415. package/lib/lens-client-interface/imagePicker.d.ts +7 -0
  416. package/lib/lens-client-interface/imagePicker.js +128 -0
  417. package/lib/lens-client-interface/imagePicker.js.map +1 -0
  418. package/lib/lens-client-interface/lensClientInterface.d.ts +13 -0
  419. package/lib/lens-client-interface/lensClientInterface.js +30 -0
  420. package/lib/lens-client-interface/lensClientInterface.js.map +1 -0
  421. package/lib/lens-core-module/generated-types.d.ts +426 -0
  422. package/lib/lens-core-module/generated-types.js +2 -0
  423. package/lib/lens-core-module/generated-types.js.map +1 -0
  424. package/lib/lens-core-module/index.d.ts +2 -0
  425. package/lib/lens-core-module/index.js +3 -0
  426. package/lib/lens-core-module/index.js.map +1 -0
  427. package/lib/lens-core-module/loader/index.d.ts +1 -0
  428. package/lib/lens-core-module/loader/index.js +2 -0
  429. package/lib/lens-core-module/loader/index.js.map +1 -0
  430. package/lib/lens-core-module/loader/lensCoreFactory.d.ts +30 -0
  431. package/lib/lens-core-module/loader/lensCoreFactory.js +121 -0
  432. package/lib/lens-core-module/loader/lensCoreFactory.js.map +1 -0
  433. package/lib/lensCoreWasmVersions.json +5 -0
  434. package/lib/logger/errorLoggingDecorator.d.ts +9 -0
  435. package/lib/logger/errorLoggingDecorator.js +32 -0
  436. package/lib/logger/errorLoggingDecorator.js.map +1 -0
  437. package/lib/logger/logEntries.d.ts +15 -0
  438. package/lib/logger/logEntries.js +14 -0
  439. package/lib/logger/logEntries.js.map +1 -0
  440. package/lib/logger/logger.d.ts +35 -0
  441. package/lib/logger/logger.js +48 -0
  442. package/lib/logger/logger.js.map +1 -0
  443. package/lib/logger/registerLogEntriesSubscriber.d.ts +14 -0
  444. package/lib/logger/registerLogEntriesSubscriber.js +23 -0
  445. package/lib/logger/registerLogEntriesSubscriber.js.map +1 -0
  446. package/lib/media-sources/CameraKitSource.d.ts +88 -0
  447. package/lib/media-sources/CameraKitSource.js +140 -0
  448. package/lib/media-sources/CameraKitSource.js.map +1 -0
  449. package/lib/media-sources/FunctionSource.d.ts +30 -0
  450. package/lib/media-sources/FunctionSource.js +132 -0
  451. package/lib/media-sources/FunctionSource.js.map +1 -0
  452. package/lib/media-sources/ImageSource.d.ts +13 -0
  453. package/lib/media-sources/ImageSource.js +28 -0
  454. package/lib/media-sources/ImageSource.js.map +1 -0
  455. package/lib/media-sources/MediaStreamSource.d.ts +41 -0
  456. package/lib/media-sources/MediaStreamSource.js +146 -0
  457. package/lib/media-sources/MediaStreamSource.js.map +1 -0
  458. package/lib/media-sources/VideoSource.d.ts +21 -0
  459. package/lib/media-sources/VideoSource.js +38 -0
  460. package/lib/media-sources/VideoSource.js.map +1 -0
  461. package/lib/metrics/businessEventsReporter.d.ts +37 -0
  462. package/lib/metrics/businessEventsReporter.js +160 -0
  463. package/lib/metrics/businessEventsReporter.js.map +1 -0
  464. package/lib/metrics/metricsEventTarget.d.ts +41 -0
  465. package/lib/metrics/metricsEventTarget.js +11 -0
  466. package/lib/metrics/metricsEventTarget.js.map +1 -0
  467. package/lib/metrics/metricsHandler.d.ts +9 -0
  468. package/lib/metrics/metricsHandler.js +13 -0
  469. package/lib/metrics/metricsHandler.js.map +1 -0
  470. package/lib/metrics/operationalMetricsReporter.d.ts +52 -0
  471. package/lib/metrics/operationalMetricsReporter.js +108 -0
  472. package/lib/metrics/operationalMetricsReporter.js.map +1 -0
  473. package/lib/metrics/reporters/reportBenchmarks.d.ts +10 -0
  474. package/lib/metrics/reporters/reportBenchmarks.js +29 -0
  475. package/lib/metrics/reporters/reportBenchmarks.js.map +1 -0
  476. package/lib/metrics/reporters/reportGlobalException.d.ts +19 -0
  477. package/lib/metrics/reporters/reportGlobalException.js +68 -0
  478. package/lib/metrics/reporters/reportGlobalException.js.map +1 -0
  479. package/lib/metrics/reporters/reportHttpMetrics.d.ts +17 -0
  480. package/lib/metrics/reporters/reportHttpMetrics.js +92 -0
  481. package/lib/metrics/reporters/reportHttpMetrics.js.map +1 -0
  482. package/lib/metrics/reporters/reportLegalState.d.ts +15 -0
  483. package/lib/metrics/reporters/reportLegalState.js +34 -0
  484. package/lib/metrics/reporters/reportLegalState.js.map +1 -0
  485. package/lib/metrics/reporters/reportLensAndAssetDownload.d.ts +38 -0
  486. package/lib/metrics/reporters/reportLensAndAssetDownload.js +88 -0
  487. package/lib/metrics/reporters/reportLensAndAssetDownload.js.map +1 -0
  488. package/lib/metrics/reporters/reportLensValidationFailed.d.ts +20 -0
  489. package/lib/metrics/reporters/reportLensValidationFailed.js +24 -0
  490. package/lib/metrics/reporters/reportLensValidationFailed.js.map +1 -0
  491. package/lib/metrics/reporters/reportLensView.d.ts +36 -0
  492. package/lib/metrics/reporters/reportLensView.js +101 -0
  493. package/lib/metrics/reporters/reportLensView.js.map +1 -0
  494. package/lib/metrics/reporters/reportLensWait.d.ts +33 -0
  495. package/lib/metrics/reporters/reportLensWait.js +56 -0
  496. package/lib/metrics/reporters/reportLensWait.js.map +1 -0
  497. package/lib/metrics/reporters/reportSessionException.d.ts +17 -0
  498. package/lib/metrics/reporters/reportSessionException.js +12 -0
  499. package/lib/metrics/reporters/reportSessionException.js.map +1 -0
  500. package/lib/metrics/reporters/reportUserSession.d.ts +14 -0
  501. package/lib/metrics/reporters/reportUserSession.js +67 -0
  502. package/lib/metrics/reporters/reportUserSession.js.map +1 -0
  503. package/lib/metrics/reporters/reporters.d.ts +44 -0
  504. package/lib/metrics/reporters/reporters.js +33 -0
  505. package/lib/metrics/reporters/reporters.js.map +1 -0
  506. package/lib/namedErrors.d.ts +107 -0
  507. package/lib/namedErrors.js +56 -0
  508. package/lib/namedErrors.js.map +1 -0
  509. package/lib/persistence/ExpiringPersistence.d.ts +20 -0
  510. package/lib/persistence/ExpiringPersistence.js +58 -0
  511. package/lib/persistence/ExpiringPersistence.js.map +1 -0
  512. package/lib/persistence/IndexedDBPersistence.d.ts +47 -0
  513. package/lib/persistence/IndexedDBPersistence.js +180 -0
  514. package/lib/persistence/IndexedDBPersistence.js.map +1 -0
  515. package/lib/persistence/Persistence.d.ts +25 -0
  516. package/lib/persistence/Persistence.js +10 -0
  517. package/lib/persistence/Persistence.js.map +1 -0
  518. package/lib/remote-configuration/cofHandler.d.ts +21 -0
  519. package/lib/remote-configuration/cofHandler.js +75 -0
  520. package/lib/remote-configuration/cofHandler.js.map +1 -0
  521. package/lib/remote-configuration/remoteConfiguration.d.ts +13 -0
  522. package/lib/remote-configuration/remoteConfiguration.js +43 -0
  523. package/lib/remote-configuration/remoteConfiguration.js.map +1 -0
  524. package/lib/session/CameraKitSession.d.ts +252 -0
  525. package/lib/session/CameraKitSession.js +439 -0
  526. package/lib/session/CameraKitSession.js.map +1 -0
  527. package/lib/session/CameraKitSessionEvents.d.ts +33 -0
  528. package/lib/session/CameraKitSessionEvents.js +21 -0
  529. package/lib/session/CameraKitSessionEvents.js.map +1 -0
  530. package/lib/session/LensKeyboard.d.ts +89 -0
  531. package/lib/session/LensKeyboard.js +95 -0
  532. package/lib/session/LensKeyboard.js.map +1 -0
  533. package/lib/session/LensPerformanceMeasurement.d.ts +55 -0
  534. package/lib/session/LensPerformanceMeasurement.js +91 -0
  535. package/lib/session/LensPerformanceMeasurement.js.map +1 -0
  536. package/lib/session/LensPerformanceMetrics.d.ts +31 -0
  537. package/lib/session/LensPerformanceMetrics.js +58 -0
  538. package/lib/session/LensPerformanceMetrics.js.map +1 -0
  539. package/lib/session/index.d.ts +1 -0
  540. package/lib/session/index.js +2 -0
  541. package/lib/session/index.js.map +1 -0
  542. package/lib/session/lensState.d.ts +29 -0
  543. package/lib/session/lensState.js +160 -0
  544. package/lib/session/lensState.js.map +1 -0
  545. package/lib/session/sessionState.d.ts +10 -0
  546. package/lib/session/sessionState.js +12 -0
  547. package/lib/session/sessionState.js.map +1 -0
  548. package/lib/transforms/Transform2D.d.ts +17 -0
  549. package/lib/transforms/Transform2D.js +18 -0
  550. package/lib/transforms/Transform2D.js.map +1 -0
  551. package/lib/transforms/index.d.ts +1 -0
  552. package/lib/transforms/index.js +2 -0
  553. package/lib/transforms/index.js.map +1 -0
  554. package/package.json +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circumstance_service.js","sourceRoot":"","sources":["../../../../../src/generated-proto/pb_schema/cdp/cof/circumstance_service.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable */\nimport Long from \"long\";\nimport { grpc } from \"@improbable-eng/grpc-web\";\nimport _m0 from \"protobufjs/minimal\";\nimport { Namespace } from \"./namespace\";\nimport { ConfigTargetingRequest } from \"./config_request\";\nimport { ConfigTargetingResponse } from \"./config_response\";\nimport { BrowserHeaders } from \"browser-headers\";\nimport { ConfigResult } from \"./config_result\";\nimport { DebugTrace } from \"./debug_info\";\n\nexport const protobufPackage = \"snapchat.cdp.cof\";\n\nexport interface GetAbConfigValuesRequest {\n /** A list of config names to request values. These configs are legacy AB studies. */\n configNames: string[];\n /**\n * If not empty only return the matched configs in these namespaces.\n * If empty return all matched configs.\n * Use `AB_STUDY_VERSION` if you are accessing legacy A/B studies.\n */\n namespaces: Namespace[];\n /** A list of cof config names to request values. These configs are updated by AB segment studies. */\n cofConfigNames: string[];\n /** whether to include all configs in namespaces, config name should be empty if this is true */\n includeAllConfigs: boolean;\n /** whether to log exposure logging, default is to log exposure */\n disableExposureLogging: boolean;\n /** Include debugging information if set */\n enableDebug: boolean;\n}\n\nexport interface GetAbConfigValuesResponse {\n /** A list of configs with value. */\n configResults: ConfigResult[];\n debugTrace: DebugTrace | undefined;\n}\n\nexport interface ConfigSetGenerationRequest {\n targetingParameters: ConfigTargetingRequest | undefined;\n overrides: ConfigResult[];\n}\n\nexport interface ConfigSetGenerationResponse {\n targetingResponse: ConfigTargetingResponse | undefined;\n}\n\nexport interface PinConfigRequest {\n /** this token is also referred to as etag in some places but etag is overloaded so we should rename other places */\n configSetToken: string;\n userId: string;\n ttlSeconds: number;\n}\n\nexport interface PinConfigResponse {\n /** Use for passing any debug information back to callers. This is useful in end-to-end validation */\n debug: string;\n}\n\nexport interface UnpinConfigRequest {\n /** this token is also referred to as etag in some places but etag is overloaded so we should rename other places */\n configSetToken: string;\n userId: string;\n}\n\nexport interface UnpinConfigResponse {\n /** Use for passing any debug information back to callers. This is useful in end-to-end validation */\n debug: string;\n}\n\nexport interface ConfigWithNamespace {\n /** The name of a config. */\n configName: string;\n /** The namespace of this config. */\n namespace: Namespace;\n}\n\nexport interface GetConfigValuesByTokenRequest {\n /** COF token to represent configs served to a user. */\n token: string;\n /** A list of configs to request values. */\n configNames: ConfigWithNamespace[];\n /**\n * Request all configs in a set of namespaces. Either config_names or namespaces can be set. They can't be set\n * together in a single request.\n */\n namespaces: Namespace[];\n /** whether to log exposure logging, default is to log exposure */\n disableExposureLogging: boolean;\n /** Whether to get all configs for this request. */\n getAllConfigs: boolean;\n}\n\nexport interface GetConfigValuesByTokenResponse {\n /** A list of configs with value. */\n configResults: ConfigResult[];\n}\n\nexport interface GetCachedConfigResultSequenceIdsRequest {}\n\nexport interface GetCachedConfigResultSequenceIdsResponse {\n /** The Byte Array of a serialized RoaringBitmap object, which represents a set of integer ids. */\n serializedBitmap: Uint8Array;\n}\n\nexport interface GetConfigResultsBySequenceIdsRequest {\n sequenceIds: number[];\n}\n\nexport interface ConfigResultWithSequenceId {\n /** config result sequence id */\n sequenceId: number;\n /** Config result. */\n configResult: ConfigResult | undefined;\n}\n\nexport interface GetConfigResultsBySequenceIdsResponse {\n configResultWithSequenceIds: ConfigResultWithSequenceId[];\n}\n\nexport interface GetBitmapByTokenRequest {\n /** COF token to request config ids represented as a bitmap. */\n token: string;\n}\n\nexport interface GetBitmapByTokenResponse {\n /** The Byte Array of a serialized RoaringBitmap object, which represents a set of integer ids. */\n idBitmap: Uint8Array;\n}\n\nexport interface GetConfigValuesRegionalRequest {\n /**\n * COF token to represent configs served with this token.\n * If a token is set, we will use configs represented by this token.\n */\n token: string;\n /** If a token is not set, we will use the latest cached configs served to this user id. */\n userId: string;\n /**\n * The TTL for the cached configs served to a user. This cache is updated for every client COF sync request.\n * For inactive users, the latest client sync may happen before this ttl. In this case, we will do targeting to\n * get fresh configs for this user. If this value is not set, the ttl is 6 hours by default. We prefer callers not\n * to set this value less than 1 hour.\n */\n userCacheTtlInSeconds: number;\n /** User agent provides device and app information for targeting. */\n userAgent: string;\n /** Client ip is used for server to pass client ip. */\n clientIp: string;\n /** Device locale is used for server to pass client device locale. */\n deviceLocale: string;\n /** A list of configs to request values. */\n configNames: ConfigWithNamespace[];\n /**\n * Request all configs in a set of namespaces. Either config_names or namespaces can be set. They can't be set\n * together in a single request.\n */\n namespaces: Namespace[];\n /** whether to log exposure logging, default is to log exposure */\n disableExposureLogging: boolean;\n}\n\nexport interface GetConfigValuesRegionalResponse {\n /** A list of configs with value. */\n configResults: ConfigResult[];\n}\n\nexport interface GetUnevaluatedConfigResultsWithAbTargetingRequest {\n /** Which namespaces have to be included in the response */\n namespaces: Namespace[];\n /** Which version of the edge config client is making this request */\n edgeConfigClientVersion: string;\n}\n\nexport interface GetUnevaluatedConfigResultsWithAbTargetingResponse {\n configResults: ConfigResult[];\n}\n\nfunction createBaseGetAbConfigValuesRequest(): GetAbConfigValuesRequest {\n return {\n configNames: [],\n namespaces: [],\n cofConfigNames: [],\n includeAllConfigs: false,\n disableExposureLogging: false,\n enableDebug: false,\n };\n}\n\nexport const GetAbConfigValuesRequest = {\n encode(message: GetAbConfigValuesRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.configNames) {\n writer.uint32(10).string(v!);\n }\n writer.uint32(18).fork();\n for (const v of message.namespaces) {\n writer.int32(v);\n }\n writer.ldelim();\n for (const v of message.cofConfigNames) {\n writer.uint32(26).string(v!);\n }\n if (message.includeAllConfigs === true) {\n writer.uint32(32).bool(message.includeAllConfigs);\n }\n if (message.disableExposureLogging === true) {\n writer.uint32(40).bool(message.disableExposureLogging);\n }\n if (message.enableDebug === true) {\n writer.uint32(104).bool(message.enableDebug);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetAbConfigValuesRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetAbConfigValuesRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configNames.push(reader.string());\n break;\n case 2:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.namespaces.push(reader.int32() as any);\n }\n } else {\n message.namespaces.push(reader.int32() as any);\n }\n break;\n case 3:\n message.cofConfigNames.push(reader.string());\n break;\n case 4:\n message.includeAllConfigs = reader.bool();\n break;\n case 5:\n message.disableExposureLogging = reader.bool();\n break;\n case 13:\n message.enableDebug = reader.bool();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetAbConfigValuesRequest>, I>>(object: I): GetAbConfigValuesRequest {\n const message = createBaseGetAbConfigValuesRequest();\n message.configNames = object.configNames?.map((e) => e) || [];\n message.namespaces = object.namespaces?.map((e) => e) || [];\n message.cofConfigNames = object.cofConfigNames?.map((e) => e) || [];\n message.includeAllConfigs = object.includeAllConfigs ?? false;\n message.disableExposureLogging = object.disableExposureLogging ?? false;\n message.enableDebug = object.enableDebug ?? false;\n return message;\n },\n};\n\nfunction createBaseGetAbConfigValuesResponse(): GetAbConfigValuesResponse {\n return { configResults: [], debugTrace: undefined };\n}\n\nexport const GetAbConfigValuesResponse = {\n encode(message: GetAbConfigValuesResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.configResults) {\n ConfigResult.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n if (message.debugTrace !== undefined) {\n DebugTrace.encode(message.debugTrace, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetAbConfigValuesResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetAbConfigValuesResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configResults.push(ConfigResult.decode(reader, reader.uint32()));\n break;\n case 2:\n message.debugTrace = DebugTrace.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetAbConfigValuesResponse>, I>>(object: I): GetAbConfigValuesResponse {\n const message = createBaseGetAbConfigValuesResponse();\n message.configResults = object.configResults?.map((e) => ConfigResult.fromPartial(e)) || [];\n message.debugTrace =\n object.debugTrace !== undefined && object.debugTrace !== null\n ? DebugTrace.fromPartial(object.debugTrace)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseConfigSetGenerationRequest(): ConfigSetGenerationRequest {\n return { targetingParameters: undefined, overrides: [] };\n}\n\nexport const ConfigSetGenerationRequest = {\n encode(message: ConfigSetGenerationRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.targetingParameters !== undefined) {\n ConfigTargetingRequest.encode(message.targetingParameters, writer.uint32(10).fork()).ldelim();\n }\n for (const v of message.overrides) {\n ConfigResult.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConfigSetGenerationRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConfigSetGenerationRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.targetingParameters = ConfigTargetingRequest.decode(reader, reader.uint32());\n break;\n case 2:\n message.overrides.push(ConfigResult.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<ConfigSetGenerationRequest>, I>>(object: I): ConfigSetGenerationRequest {\n const message = createBaseConfigSetGenerationRequest();\n message.targetingParameters =\n object.targetingParameters !== undefined && object.targetingParameters !== null\n ? ConfigTargetingRequest.fromPartial(object.targetingParameters)\n : undefined;\n message.overrides = object.overrides?.map((e) => ConfigResult.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseConfigSetGenerationResponse(): ConfigSetGenerationResponse {\n return { targetingResponse: undefined };\n}\n\nexport const ConfigSetGenerationResponse = {\n encode(message: ConfigSetGenerationResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.targetingResponse !== undefined) {\n ConfigTargetingResponse.encode(message.targetingResponse, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConfigSetGenerationResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConfigSetGenerationResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.targetingResponse = ConfigTargetingResponse.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<ConfigSetGenerationResponse>, I>>(object: I): ConfigSetGenerationResponse {\n const message = createBaseConfigSetGenerationResponse();\n message.targetingResponse =\n object.targetingResponse !== undefined && object.targetingResponse !== null\n ? ConfigTargetingResponse.fromPartial(object.targetingResponse)\n : undefined;\n return message;\n },\n};\n\nfunction createBasePinConfigRequest(): PinConfigRequest {\n return { configSetToken: \"\", userId: \"\", ttlSeconds: 0 };\n}\n\nexport const PinConfigRequest = {\n encode(message: PinConfigRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.configSetToken !== \"\") {\n writer.uint32(10).string(message.configSetToken);\n }\n if (message.userId !== \"\") {\n writer.uint32(18).string(message.userId);\n }\n if (message.ttlSeconds !== 0) {\n writer.uint32(24).int32(message.ttlSeconds);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): PinConfigRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePinConfigRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configSetToken = reader.string();\n break;\n case 2:\n message.userId = reader.string();\n break;\n case 3:\n message.ttlSeconds = reader.int32();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<PinConfigRequest>, I>>(object: I): PinConfigRequest {\n const message = createBasePinConfigRequest();\n message.configSetToken = object.configSetToken ?? \"\";\n message.userId = object.userId ?? \"\";\n message.ttlSeconds = object.ttlSeconds ?? 0;\n return message;\n },\n};\n\nfunction createBasePinConfigResponse(): PinConfigResponse {\n return { debug: \"\" };\n}\n\nexport const PinConfigResponse = {\n encode(message: PinConfigResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.debug !== \"\") {\n writer.uint32(10).string(message.debug);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): PinConfigResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePinConfigResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.debug = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<PinConfigResponse>, I>>(object: I): PinConfigResponse {\n const message = createBasePinConfigResponse();\n message.debug = object.debug ?? \"\";\n return message;\n },\n};\n\nfunction createBaseUnpinConfigRequest(): UnpinConfigRequest {\n return { configSetToken: \"\", userId: \"\" };\n}\n\nexport const UnpinConfigRequest = {\n encode(message: UnpinConfigRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.configSetToken !== \"\") {\n writer.uint32(10).string(message.configSetToken);\n }\n if (message.userId !== \"\") {\n writer.uint32(18).string(message.userId);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): UnpinConfigRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseUnpinConfigRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configSetToken = reader.string();\n break;\n case 2:\n message.userId = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<UnpinConfigRequest>, I>>(object: I): UnpinConfigRequest {\n const message = createBaseUnpinConfigRequest();\n message.configSetToken = object.configSetToken ?? \"\";\n message.userId = object.userId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseUnpinConfigResponse(): UnpinConfigResponse {\n return { debug: \"\" };\n}\n\nexport const UnpinConfigResponse = {\n encode(message: UnpinConfigResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.debug !== \"\") {\n writer.uint32(10).string(message.debug);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): UnpinConfigResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseUnpinConfigResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.debug = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<UnpinConfigResponse>, I>>(object: I): UnpinConfigResponse {\n const message = createBaseUnpinConfigResponse();\n message.debug = object.debug ?? \"\";\n return message;\n },\n};\n\nfunction createBaseConfigWithNamespace(): ConfigWithNamespace {\n return { configName: \"\", namespace: 0 };\n}\n\nexport const ConfigWithNamespace = {\n encode(message: ConfigWithNamespace, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.configName !== \"\") {\n writer.uint32(10).string(message.configName);\n }\n if (message.namespace !== 0) {\n writer.uint32(16).int32(message.namespace);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConfigWithNamespace {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConfigWithNamespace();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configName = reader.string();\n break;\n case 2:\n message.namespace = reader.int32() as any;\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<ConfigWithNamespace>, I>>(object: I): ConfigWithNamespace {\n const message = createBaseConfigWithNamespace();\n message.configName = object.configName ?? \"\";\n message.namespace = object.namespace ?? 0;\n return message;\n },\n};\n\nfunction createBaseGetConfigValuesByTokenRequest(): GetConfigValuesByTokenRequest {\n return { token: \"\", configNames: [], namespaces: [], disableExposureLogging: false, getAllConfigs: false };\n}\n\nexport const GetConfigValuesByTokenRequest = {\n encode(message: GetConfigValuesByTokenRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.token !== \"\") {\n writer.uint32(10).string(message.token);\n }\n for (const v of message.configNames) {\n ConfigWithNamespace.encode(v!, writer.uint32(18).fork()).ldelim();\n }\n writer.uint32(26).fork();\n for (const v of message.namespaces) {\n writer.int32(v);\n }\n writer.ldelim();\n if (message.disableExposureLogging === true) {\n writer.uint32(32).bool(message.disableExposureLogging);\n }\n if (message.getAllConfigs === true) {\n writer.uint32(40).bool(message.getAllConfigs);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigValuesByTokenRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigValuesByTokenRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.token = reader.string();\n break;\n case 2:\n message.configNames.push(ConfigWithNamespace.decode(reader, reader.uint32()));\n break;\n case 3:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.namespaces.push(reader.int32() as any);\n }\n } else {\n message.namespaces.push(reader.int32() as any);\n }\n break;\n case 4:\n message.disableExposureLogging = reader.bool();\n break;\n case 5:\n message.getAllConfigs = reader.bool();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigValuesByTokenRequest>, I>>(\n object: I\n ): GetConfigValuesByTokenRequest {\n const message = createBaseGetConfigValuesByTokenRequest();\n message.token = object.token ?? \"\";\n message.configNames = object.configNames?.map((e) => ConfigWithNamespace.fromPartial(e)) || [];\n message.namespaces = object.namespaces?.map((e) => e) || [];\n message.disableExposureLogging = object.disableExposureLogging ?? false;\n message.getAllConfigs = object.getAllConfigs ?? false;\n return message;\n },\n};\n\nfunction createBaseGetConfigValuesByTokenResponse(): GetConfigValuesByTokenResponse {\n return { configResults: [] };\n}\n\nexport const GetConfigValuesByTokenResponse = {\n encode(message: GetConfigValuesByTokenResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.configResults) {\n ConfigResult.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigValuesByTokenResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigValuesByTokenResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configResults.push(ConfigResult.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigValuesByTokenResponse>, I>>(\n object: I\n ): GetConfigValuesByTokenResponse {\n const message = createBaseGetConfigValuesByTokenResponse();\n message.configResults = object.configResults?.map((e) => ConfigResult.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseGetCachedConfigResultSequenceIdsRequest(): GetCachedConfigResultSequenceIdsRequest {\n return {};\n}\n\nexport const GetCachedConfigResultSequenceIdsRequest = {\n encode(_: GetCachedConfigResultSequenceIdsRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetCachedConfigResultSequenceIdsRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetCachedConfigResultSequenceIdsRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetCachedConfigResultSequenceIdsRequest>, I>>(\n _: I\n ): GetCachedConfigResultSequenceIdsRequest {\n const message = createBaseGetCachedConfigResultSequenceIdsRequest();\n return message;\n },\n};\n\nfunction createBaseGetCachedConfigResultSequenceIdsResponse(): GetCachedConfigResultSequenceIdsResponse {\n return { serializedBitmap: new Uint8Array() };\n}\n\nexport const GetCachedConfigResultSequenceIdsResponse = {\n encode(message: GetCachedConfigResultSequenceIdsResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.serializedBitmap.length !== 0) {\n writer.uint32(10).bytes(message.serializedBitmap);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetCachedConfigResultSequenceIdsResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetCachedConfigResultSequenceIdsResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.serializedBitmap = reader.bytes();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetCachedConfigResultSequenceIdsResponse>, I>>(\n object: I\n ): GetCachedConfigResultSequenceIdsResponse {\n const message = createBaseGetCachedConfigResultSequenceIdsResponse();\n message.serializedBitmap = object.serializedBitmap ?? new Uint8Array();\n return message;\n },\n};\n\nfunction createBaseGetConfigResultsBySequenceIdsRequest(): GetConfigResultsBySequenceIdsRequest {\n return { sequenceIds: [] };\n}\n\nexport const GetConfigResultsBySequenceIdsRequest = {\n encode(message: GetConfigResultsBySequenceIdsRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n writer.uint32(10).fork();\n for (const v of message.sequenceIds) {\n writer.int32(v);\n }\n writer.ldelim();\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigResultsBySequenceIdsRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigResultsBySequenceIdsRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.sequenceIds.push(reader.int32());\n }\n } else {\n message.sequenceIds.push(reader.int32());\n }\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigResultsBySequenceIdsRequest>, I>>(\n object: I\n ): GetConfigResultsBySequenceIdsRequest {\n const message = createBaseGetConfigResultsBySequenceIdsRequest();\n message.sequenceIds = object.sequenceIds?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseConfigResultWithSequenceId(): ConfigResultWithSequenceId {\n return { sequenceId: 0, configResult: undefined };\n}\n\nexport const ConfigResultWithSequenceId = {\n encode(message: ConfigResultWithSequenceId, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.sequenceId !== 0) {\n writer.uint32(8).int32(message.sequenceId);\n }\n if (message.configResult !== undefined) {\n ConfigResult.encode(message.configResult, writer.uint32(18).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): ConfigResultWithSequenceId {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseConfigResultWithSequenceId();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.sequenceId = reader.int32();\n break;\n case 2:\n message.configResult = ConfigResult.decode(reader, reader.uint32());\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<ConfigResultWithSequenceId>, I>>(object: I): ConfigResultWithSequenceId {\n const message = createBaseConfigResultWithSequenceId();\n message.sequenceId = object.sequenceId ?? 0;\n message.configResult =\n object.configResult !== undefined && object.configResult !== null\n ? ConfigResult.fromPartial(object.configResult)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseGetConfigResultsBySequenceIdsResponse(): GetConfigResultsBySequenceIdsResponse {\n return { configResultWithSequenceIds: [] };\n}\n\nexport const GetConfigResultsBySequenceIdsResponse = {\n encode(message: GetConfigResultsBySequenceIdsResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.configResultWithSequenceIds) {\n ConfigResultWithSequenceId.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigResultsBySequenceIdsResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigResultsBySequenceIdsResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configResultWithSequenceIds.push(ConfigResultWithSequenceId.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigResultsBySequenceIdsResponse>, I>>(\n object: I\n ): GetConfigResultsBySequenceIdsResponse {\n const message = createBaseGetConfigResultsBySequenceIdsResponse();\n message.configResultWithSequenceIds =\n object.configResultWithSequenceIds?.map((e) => ConfigResultWithSequenceId.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseGetBitmapByTokenRequest(): GetBitmapByTokenRequest {\n return { token: \"\" };\n}\n\nexport const GetBitmapByTokenRequest = {\n encode(message: GetBitmapByTokenRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.token !== \"\") {\n writer.uint32(10).string(message.token);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetBitmapByTokenRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetBitmapByTokenRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.token = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetBitmapByTokenRequest>, I>>(object: I): GetBitmapByTokenRequest {\n const message = createBaseGetBitmapByTokenRequest();\n message.token = object.token ?? \"\";\n return message;\n },\n};\n\nfunction createBaseGetBitmapByTokenResponse(): GetBitmapByTokenResponse {\n return { idBitmap: new Uint8Array() };\n}\n\nexport const GetBitmapByTokenResponse = {\n encode(message: GetBitmapByTokenResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.idBitmap.length !== 0) {\n writer.uint32(10).bytes(message.idBitmap);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetBitmapByTokenResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetBitmapByTokenResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.idBitmap = reader.bytes();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetBitmapByTokenResponse>, I>>(object: I): GetBitmapByTokenResponse {\n const message = createBaseGetBitmapByTokenResponse();\n message.idBitmap = object.idBitmap ?? new Uint8Array();\n return message;\n },\n};\n\nfunction createBaseGetConfigValuesRegionalRequest(): GetConfigValuesRegionalRequest {\n return {\n token: \"\",\n userId: \"\",\n userCacheTtlInSeconds: 0,\n userAgent: \"\",\n clientIp: \"\",\n deviceLocale: \"\",\n configNames: [],\n namespaces: [],\n disableExposureLogging: false,\n };\n}\n\nexport const GetConfigValuesRegionalRequest = {\n encode(message: GetConfigValuesRegionalRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.token !== \"\") {\n writer.uint32(10).string(message.token);\n }\n if (message.userId !== \"\") {\n writer.uint32(18).string(message.userId);\n }\n if (message.userCacheTtlInSeconds !== 0) {\n writer.uint32(24).int32(message.userCacheTtlInSeconds);\n }\n if (message.userAgent !== \"\") {\n writer.uint32(34).string(message.userAgent);\n }\n if (message.clientIp !== \"\") {\n writer.uint32(42).string(message.clientIp);\n }\n if (message.deviceLocale !== \"\") {\n writer.uint32(50).string(message.deviceLocale);\n }\n for (const v of message.configNames) {\n ConfigWithNamespace.encode(v!, writer.uint32(58).fork()).ldelim();\n }\n writer.uint32(66).fork();\n for (const v of message.namespaces) {\n writer.int32(v);\n }\n writer.ldelim();\n if (message.disableExposureLogging === true) {\n writer.uint32(72).bool(message.disableExposureLogging);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigValuesRegionalRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigValuesRegionalRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.token = reader.string();\n break;\n case 2:\n message.userId = reader.string();\n break;\n case 3:\n message.userCacheTtlInSeconds = reader.int32();\n break;\n case 4:\n message.userAgent = reader.string();\n break;\n case 5:\n message.clientIp = reader.string();\n break;\n case 6:\n message.deviceLocale = reader.string();\n break;\n case 7:\n message.configNames.push(ConfigWithNamespace.decode(reader, reader.uint32()));\n break;\n case 8:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.namespaces.push(reader.int32() as any);\n }\n } else {\n message.namespaces.push(reader.int32() as any);\n }\n break;\n case 9:\n message.disableExposureLogging = reader.bool();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigValuesRegionalRequest>, I>>(\n object: I\n ): GetConfigValuesRegionalRequest {\n const message = createBaseGetConfigValuesRegionalRequest();\n message.token = object.token ?? \"\";\n message.userId = object.userId ?? \"\";\n message.userCacheTtlInSeconds = object.userCacheTtlInSeconds ?? 0;\n message.userAgent = object.userAgent ?? \"\";\n message.clientIp = object.clientIp ?? \"\";\n message.deviceLocale = object.deviceLocale ?? \"\";\n message.configNames = object.configNames?.map((e) => ConfigWithNamespace.fromPartial(e)) || [];\n message.namespaces = object.namespaces?.map((e) => e) || [];\n message.disableExposureLogging = object.disableExposureLogging ?? false;\n return message;\n },\n};\n\nfunction createBaseGetConfigValuesRegionalResponse(): GetConfigValuesRegionalResponse {\n return { configResults: [] };\n}\n\nexport const GetConfigValuesRegionalResponse = {\n encode(message: GetConfigValuesRegionalResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.configResults) {\n ConfigResult.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetConfigValuesRegionalResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetConfigValuesRegionalResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configResults.push(ConfigResult.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetConfigValuesRegionalResponse>, I>>(\n object: I\n ): GetConfigValuesRegionalResponse {\n const message = createBaseGetConfigValuesRegionalResponse();\n message.configResults = object.configResults?.map((e) => ConfigResult.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseGetUnevaluatedConfigResultsWithAbTargetingRequest(): GetUnevaluatedConfigResultsWithAbTargetingRequest {\n return { namespaces: [], edgeConfigClientVersion: \"\" };\n}\n\nexport const GetUnevaluatedConfigResultsWithAbTargetingRequest = {\n encode(\n message: GetUnevaluatedConfigResultsWithAbTargetingRequest,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n writer.uint32(10).fork();\n for (const v of message.namespaces) {\n writer.int32(v);\n }\n writer.ldelim();\n if (message.edgeConfigClientVersion !== \"\") {\n writer.uint32(18).string(message.edgeConfigClientVersion);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetUnevaluatedConfigResultsWithAbTargetingRequest {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetUnevaluatedConfigResultsWithAbTargetingRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if ((tag & 7) === 2) {\n const end2 = reader.uint32() + reader.pos;\n while (reader.pos < end2) {\n message.namespaces.push(reader.int32() as any);\n }\n } else {\n message.namespaces.push(reader.int32() as any);\n }\n break;\n case 2:\n message.edgeConfigClientVersion = reader.string();\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetUnevaluatedConfigResultsWithAbTargetingRequest>, I>>(\n object: I\n ): GetUnevaluatedConfigResultsWithAbTargetingRequest {\n const message = createBaseGetUnevaluatedConfigResultsWithAbTargetingRequest();\n message.namespaces = object.namespaces?.map((e) => e) || [];\n message.edgeConfigClientVersion = object.edgeConfigClientVersion ?? \"\";\n return message;\n },\n};\n\nfunction createBaseGetUnevaluatedConfigResultsWithAbTargetingResponse(): GetUnevaluatedConfigResultsWithAbTargetingResponse {\n return { configResults: [] };\n}\n\nexport const GetUnevaluatedConfigResultsWithAbTargetingResponse = {\n encode(\n message: GetUnevaluatedConfigResultsWithAbTargetingResponse,\n writer: _m0.Writer = _m0.Writer.create()\n ): _m0.Writer {\n for (const v of message.configResults) {\n ConfigResult.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetUnevaluatedConfigResultsWithAbTargetingResponse {\n const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetUnevaluatedConfigResultsWithAbTargetingResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n message.configResults.push(ConfigResult.decode(reader, reader.uint32()));\n break;\n default:\n reader.skipType(tag & 7);\n break;\n }\n }\n return message;\n },\n\n fromPartial<I extends Exact<DeepPartial<GetUnevaluatedConfigResultsWithAbTargetingResponse>, I>>(\n object: I\n ): GetUnevaluatedConfigResultsWithAbTargetingResponse {\n const message = createBaseGetUnevaluatedConfigResultsWithAbTargetingResponse();\n message.configResults = object.configResults?.map((e) => ConfigResult.fromPartial(e)) || [];\n return message;\n },\n};\n\n/**\n * The main entry point for Circumstances Service\n *\n * endpoint: https://aws.api.snapchat.com\n */\nexport interface CircumstancesService {\n /** Sync request for all configs. */\n targetingQuery(\n request: DeepPartial<ConfigTargetingRequest>,\n metadata?: grpc.Metadata\n ): Promise<ConfigTargetingResponse>;\n /** Request the value of a list of AB configs. */\n getAbConfigValues(\n request: DeepPartial<GetAbConfigValuesRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetAbConfigValuesResponse>;\n /** Request the value of a list of configs using a COF token. */\n getConfigValuesByToken(\n request: DeepPartial<GetConfigValuesByTokenRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigValuesByTokenResponse>;\n /** Get config results for a list of config result sequence ids. */\n getConfigResultsBySequenceIds(\n request: DeepPartial<GetConfigResultsBySequenceIdsRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigResultsBySequenceIdsResponse>;\n /** Get config result sequence ids in CE instance cache. */\n getCachedConfigResultSequenceIds(\n request: DeepPartial<GetCachedConfigResultSequenceIdsRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetCachedConfigResultSequenceIdsResponse>;\n /** Get the config id bitmap for a COF token. */\n getBitmapByToken(\n request: DeepPartial<GetBitmapByTokenRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetBitmapByTokenResponse>;\n /**\n * Generates a new ConfigSet by first performing a search query on targeting_parameters\n * and the replaces results in the query with overrides.\n * The configuration set is persisted for future uses\n */\n generateConfigSet(\n request: DeepPartial<ConfigSetGenerationRequest>,\n metadata?: grpc.Metadata\n ): Promise<ConfigSetGenerationResponse>;\n /**\n * Pins a previously created ConfigurationSet to a user for the period defined in ttl_seconds.\n * If no ttl is set, we will use a default TTL of 1 Day\n */\n pinConfigSet(request: DeepPartial<PinConfigRequest>, metadata?: grpc.Metadata): Promise<PinConfigResponse>;\n /**\n * Removes the pinning of a previously pinned configuration. If the config set was not previously\n * pinned then the call will fail.\n */\n unpinConfigSet(request: DeepPartial<UnpinConfigRequest>, metadata?: grpc.Metadata): Promise<UnpinConfigResponse>;\n /**\n * Gets a full list of unevaluated (as opposed to partially evaluated) ConfigResults, which\n * combines pure COF ConfigResults as well as those generated from AB Studies\n */\n getUnevaluatedConfigResultsWithAbTargeting(\n request: DeepPartial<GetUnevaluatedConfigResultsWithAbTargetingRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetUnevaluatedConfigResultsWithAbTargetingResponse>;\n}\n\nexport class CircumstancesServiceClientImpl implements CircumstancesService {\n private readonly rpc: Rpc;\n\n constructor(rpc: Rpc) {\n this.rpc = rpc;\n this.targetingQuery = this.targetingQuery.bind(this);\n this.getAbConfigValues = this.getAbConfigValues.bind(this);\n this.getConfigValuesByToken = this.getConfigValuesByToken.bind(this);\n this.getConfigResultsBySequenceIds = this.getConfigResultsBySequenceIds.bind(this);\n this.getCachedConfigResultSequenceIds = this.getCachedConfigResultSequenceIds.bind(this);\n this.getBitmapByToken = this.getBitmapByToken.bind(this);\n this.generateConfigSet = this.generateConfigSet.bind(this);\n this.pinConfigSet = this.pinConfigSet.bind(this);\n this.unpinConfigSet = this.unpinConfigSet.bind(this);\n this.getUnevaluatedConfigResultsWithAbTargeting = this.getUnevaluatedConfigResultsWithAbTargeting.bind(this);\n }\n\n targetingQuery(\n request: DeepPartial<ConfigTargetingRequest>,\n metadata?: grpc.Metadata\n ): Promise<ConfigTargetingResponse> {\n return this.rpc.unary(\n CircumstancesServicetargetingQueryDesc,\n ConfigTargetingRequest.fromPartial(request),\n metadata\n );\n }\n\n getAbConfigValues(\n request: DeepPartial<GetAbConfigValuesRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetAbConfigValuesResponse> {\n return this.rpc.unary(\n CircumstancesServicegetAbConfigValuesDesc,\n GetAbConfigValuesRequest.fromPartial(request),\n metadata\n );\n }\n\n getConfigValuesByToken(\n request: DeepPartial<GetConfigValuesByTokenRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigValuesByTokenResponse> {\n return this.rpc.unary(\n CircumstancesServicegetConfigValuesByTokenDesc,\n GetConfigValuesByTokenRequest.fromPartial(request),\n metadata\n );\n }\n\n getConfigResultsBySequenceIds(\n request: DeepPartial<GetConfigResultsBySequenceIdsRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigResultsBySequenceIdsResponse> {\n return this.rpc.unary(\n CircumstancesServicegetConfigResultsBySequenceIdsDesc,\n GetConfigResultsBySequenceIdsRequest.fromPartial(request),\n metadata\n );\n }\n\n getCachedConfigResultSequenceIds(\n request: DeepPartial<GetCachedConfigResultSequenceIdsRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetCachedConfigResultSequenceIdsResponse> {\n return this.rpc.unary(\n CircumstancesServicegetCachedConfigResultSequenceIdsDesc,\n GetCachedConfigResultSequenceIdsRequest.fromPartial(request),\n metadata\n );\n }\n\n getBitmapByToken(\n request: DeepPartial<GetBitmapByTokenRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetBitmapByTokenResponse> {\n return this.rpc.unary(\n CircumstancesServicegetBitmapByTokenDesc,\n GetBitmapByTokenRequest.fromPartial(request),\n metadata\n );\n }\n\n generateConfigSet(\n request: DeepPartial<ConfigSetGenerationRequest>,\n metadata?: grpc.Metadata\n ): Promise<ConfigSetGenerationResponse> {\n return this.rpc.unary(\n CircumstancesServicegenerateConfigSetDesc,\n ConfigSetGenerationRequest.fromPartial(request),\n metadata\n );\n }\n\n pinConfigSet(request: DeepPartial<PinConfigRequest>, metadata?: grpc.Metadata): Promise<PinConfigResponse> {\n return this.rpc.unary(CircumstancesServicepinConfigSetDesc, PinConfigRequest.fromPartial(request), metadata);\n }\n\n unpinConfigSet(request: DeepPartial<UnpinConfigRequest>, metadata?: grpc.Metadata): Promise<UnpinConfigResponse> {\n return this.rpc.unary(CircumstancesServiceunpinConfigSetDesc, UnpinConfigRequest.fromPartial(request), metadata);\n }\n\n getUnevaluatedConfigResultsWithAbTargeting(\n request: DeepPartial<GetUnevaluatedConfigResultsWithAbTargetingRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetUnevaluatedConfigResultsWithAbTargetingResponse> {\n return this.rpc.unary(\n CircumstancesServicegetUnevaluatedConfigResultsWithAbTargetingDesc,\n GetUnevaluatedConfigResultsWithAbTargetingRequest.fromPartial(request),\n metadata\n );\n }\n}\n\nexport const CircumstancesServiceDesc = {\n serviceName: \"snapchat.cdp.cof.CircumstancesService\",\n};\n\nexport const CircumstancesServicetargetingQueryDesc: UnaryMethodDefinitionish = {\n methodName: \"targetingQuery\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return ConfigTargetingRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...ConfigTargetingResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetAbConfigValuesDesc: UnaryMethodDefinitionish = {\n methodName: \"getAbConfigValues\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetAbConfigValuesRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetAbConfigValuesResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetConfigValuesByTokenDesc: UnaryMethodDefinitionish = {\n methodName: \"getConfigValuesByToken\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetConfigValuesByTokenRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetConfigValuesByTokenResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetConfigResultsBySequenceIdsDesc: UnaryMethodDefinitionish = {\n methodName: \"getConfigResultsBySequenceIds\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetConfigResultsBySequenceIdsRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetConfigResultsBySequenceIdsResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetCachedConfigResultSequenceIdsDesc: UnaryMethodDefinitionish = {\n methodName: \"getCachedConfigResultSequenceIds\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetCachedConfigResultSequenceIdsRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetCachedConfigResultSequenceIdsResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetBitmapByTokenDesc: UnaryMethodDefinitionish = {\n methodName: \"getBitmapByToken\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetBitmapByTokenRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetBitmapByTokenResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegenerateConfigSetDesc: UnaryMethodDefinitionish = {\n methodName: \"generateConfigSet\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return ConfigSetGenerationRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...ConfigSetGenerationResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicepinConfigSetDesc: UnaryMethodDefinitionish = {\n methodName: \"pinConfigSet\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return PinConfigRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...PinConfigResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServiceunpinConfigSetDesc: UnaryMethodDefinitionish = {\n methodName: \"unpinConfigSet\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return UnpinConfigRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...UnpinConfigResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\nexport const CircumstancesServicegetUnevaluatedConfigResultsWithAbTargetingDesc: UnaryMethodDefinitionish = {\n methodName: \"getUnevaluatedConfigResultsWithAbTargeting\",\n service: CircumstancesServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetUnevaluatedConfigResultsWithAbTargetingRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetUnevaluatedConfigResultsWithAbTargetingResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\n/** The main entry point for Circumstances Regional Service */\nexport interface CircumstancesRegionalService {\n /**\n * Request the value of a list of configs or all configs in a set of namespaces.\n * If a token is set, configs represented by this token will be returned.\n * If a token is not set, the cached configs served to the user id will be returned.\n * If user id cache is missing or expired, we will get fresh configs using targeting with user id and user agent.\n */\n getConfigValues(\n request: DeepPartial<GetConfigValuesRegionalRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigValuesRegionalResponse>;\n}\n\nexport class CircumstancesRegionalServiceClientImpl implements CircumstancesRegionalService {\n private readonly rpc: Rpc;\n\n constructor(rpc: Rpc) {\n this.rpc = rpc;\n this.getConfigValues = this.getConfigValues.bind(this);\n }\n\n getConfigValues(\n request: DeepPartial<GetConfigValuesRegionalRequest>,\n metadata?: grpc.Metadata\n ): Promise<GetConfigValuesRegionalResponse> {\n return this.rpc.unary(\n CircumstancesRegionalServicegetConfigValuesDesc,\n GetConfigValuesRegionalRequest.fromPartial(request),\n metadata\n );\n }\n}\n\nexport const CircumstancesRegionalServiceDesc = {\n serviceName: \"snapchat.cdp.cof.CircumstancesRegionalService\",\n};\n\nexport const CircumstancesRegionalServicegetConfigValuesDesc: UnaryMethodDefinitionish = {\n methodName: \"getConfigValues\",\n service: CircumstancesRegionalServiceDesc,\n requestStream: false,\n responseStream: false,\n requestType: {\n serializeBinary() {\n return GetConfigValuesRegionalRequest.encode(this).finish();\n },\n } as any,\n responseType: {\n deserializeBinary(data: Uint8Array) {\n return {\n ...GetConfigValuesRegionalResponse.decode(data),\n toObject() {\n return this;\n },\n };\n },\n } as any,\n};\n\ninterface UnaryMethodDefinitionishR extends grpc.UnaryMethodDefinition<any, any> {\n requestStream: any;\n responseStream: any;\n}\n\ntype UnaryMethodDefinitionish = UnaryMethodDefinitionishR;\n\ninterface Rpc {\n unary<T extends UnaryMethodDefinitionish>(\n methodDesc: T,\n request: any,\n metadata: grpc.Metadata | undefined\n ): Promise<any>;\n}\n\nexport class GrpcWebImpl {\n private host: string;\n private options: {\n transport?: grpc.TransportFactory;\n\n debug?: boolean;\n metadata?: grpc.Metadata;\n };\n\n constructor(\n host: string,\n options: {\n transport?: grpc.TransportFactory;\n\n debug?: boolean;\n metadata?: grpc.Metadata;\n }\n ) {\n this.host = host;\n this.options = options;\n }\n\n unary<T extends UnaryMethodDefinitionish>(\n methodDesc: T,\n _request: any,\n metadata: grpc.Metadata | undefined\n ): Promise<any> {\n const request = { ..._request, ...methodDesc.requestType };\n const maybeCombinedMetadata =\n metadata && this.options.metadata\n ? new BrowserHeaders({ ...this.options?.metadata.headersMap, ...metadata?.headersMap })\n : metadata || this.options.metadata;\n return new Promise((resolve, reject) => {\n grpc.unary(methodDesc, {\n request,\n host: this.host,\n metadata: maybeCombinedMetadata,\n transport: this.options.transport,\n debug: this.options.debug,\n onEnd: function (response) {\n if (response.status === grpc.Code.OK) {\n resolve(response.message);\n } else {\n const err = new Error(response.statusMessage) as any;\n err.code = response.status;\n err.metadata = response.trailers;\n reject(err);\n }\n },\n });\n });\n }\n}\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin\n ? T\n : T extends Array<infer U>\n ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U>\n ? ReadonlyArray<DeepPartial<U>>\n : T extends {}\n ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\ntype KeysOfUnion<T> = T extends T ? keyof T : never;\nexport type Exact<P, I extends P> = P extends Builtin\n ? P\n : P & { [K in keyof P]: Exact<P[K], I[K]> } & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n"]}
@@ -0,0 +1,401 @@
1
+ import _m0 from "protobufjs/minimal";
2
+ import { Namespace } from "./namespace";
3
+ import { BenchmarkResult } from "./benchmark";
4
+ import { Ruid } from "../../common/ruid";
5
+ export declare const protobufPackage = "snapchat.cdp.cof";
6
+ /** Indicates what was the state of the app when the config sync was triggered */
7
+ export declare enum ConfigTargetingTriggerEventType {
8
+ /** UNKNOWN_EVENT_TYPE - Unknown */
9
+ UNKNOWN_EVENT_TYPE = 0,
10
+ /** COLD_START - Deprecated because of simplification to FG/BG */
11
+ COLD_START = 1,
12
+ /** WARM_START - Deprecated because of simplification to FG/BG */
13
+ WARM_START = 2,
14
+ /** FOREGROUND_TRIGGER - Triggered when application is in the foreground */
15
+ FOREGROUND_TRIGGER = 3,
16
+ /** BACKGROUND_TRIGGER - Triggered when application is backgrounded */
17
+ BACKGROUND_TRIGGER = 4,
18
+ UNRECOGNIZED = -1
19
+ }
20
+ /**
21
+ * Indicates what was the state of the app when the config sync happens
22
+ * The enum is also used as a dynamic client property to populate feature signals
23
+ */
24
+ export declare enum ConfigTargetingAppState {
25
+ /** UNKNOWN_APP_STATE - Unknown */
26
+ UNKNOWN_APP_STATE = 0,
27
+ /** FOREGROUND - Foreground */
28
+ FOREGROUND = 1,
29
+ /** BACKGROUND - Background */
30
+ BACKGROUND = 2,
31
+ UNRECOGNIZED = -1
32
+ }
33
+ /**
34
+ * We expect this enum to be updated whenever there is a new sync instrumentation: This will help us isolate new changes on
35
+ * server side to avoid post mortems like https://snapchat.quip.com/xGnVAcsBrOeC
36
+ */
37
+ export declare enum ConfigTargetingInstrumentation {
38
+ /** DEFAULT_INSTRUMENTATION - Default */
39
+ DEFAULT_INSTRUMENTATION = 0,
40
+ /** USER_AUTHENTICATION - User logged in */
41
+ USER_AUTHENTICATION = 1,
42
+ UNRECOGNIZED = -1
43
+ }
44
+ /**
45
+ * The request contains targeting signals that are not already part of the User Agent.
46
+ * Note the user agent is passed via the standard HTTP header hence not part of the request proto.
47
+ */
48
+ export interface ConfigTargetingRequest {
49
+ /**
50
+ * The previously received etag, an empty list of ConfigResult will be returned if this matches
51
+ * the newly computed etag.
52
+ */
53
+ configResultsEtag: string;
54
+ /**
55
+ * Caller can provide at most one field from "namespaces" and "config_names"
56
+ * If not empty only return the matched configs in these namespaces.
57
+ * If empty return all matched configs.
58
+ */
59
+ namespaces: Namespace[];
60
+ /**
61
+ * Deprecated
62
+ *
63
+ * @deprecated
64
+ */
65
+ ghostId: string;
66
+ /** ISO ALPHA-2 Country Code (lowercase) */
67
+ countryCode: string;
68
+ /** The width in pixel of client screen. */
69
+ screenWidth: number;
70
+ /** The height in pixel of client screen. */
71
+ screenHeight: number;
72
+ /** Current device connectivity */
73
+ connectivity: Connectivity | undefined;
74
+ /** The maximum playable video width (assumes portrait orientation) */
75
+ maxVideoWidthPx: number;
76
+ /** The maximum playable video height (assumes portrait orientation) */
77
+ maxVideoHeightPx: number;
78
+ /** Client reports results from benchmark executions. */
79
+ benchmarkResults: BenchmarkResult[];
80
+ /** If set the server will only return the config results that are new or have changed. */
81
+ deltaSync: boolean;
82
+ /**
83
+ * User Agent used for server to server request, which takes precedence over the User-Agent header
84
+ *
85
+ * @deprecated
86
+ */
87
+ userAgent: string;
88
+ /** Type of event that triggers client to sync server */
89
+ triggerEventType: ConfigTargetingTriggerEventType;
90
+ /** App state when config targeting sync happens */
91
+ appState: ConfigTargetingAppState;
92
+ /**
93
+ * Locale of the client.
94
+ *
95
+ * @deprecated
96
+ */
97
+ locale: string;
98
+ /** Need to set this field for AB service if user id is not available (before user login). */
99
+ deviceId: string;
100
+ /**
101
+ * Deprecated! This field won't be used! For server-initiated requests, set userId in "x-snap-cof-principal" header
102
+ *
103
+ * @deprecated
104
+ */
105
+ userId: string;
106
+ /**
107
+ * client ip is used for server to client ip to cof server.
108
+ *
109
+ * @deprecated
110
+ */
111
+ clientIp: string;
112
+ /** If true, this is a request before user login. */
113
+ isUnAuthorized: boolean;
114
+ /** App locale in client. This may be different from device locale, which will be passed from header "Accept-Language". */
115
+ appLocale: string;
116
+ /** Location of config targeting sync invocation. */
117
+ instrumentation: ConfigTargetingInstrumentation;
118
+ /**
119
+ * Timestamp in seconds from unix epoc that is the last time that this client was able to sync with the service.
120
+ * This is used for us to optimize delta syncing infrastructure.
121
+ */
122
+ lastSuccessfulSync: number;
123
+ /** This sync triggered by user logout. */
124
+ isLogout: boolean;
125
+ /** The source of app install (Android Only) */
126
+ packageInstaller: string;
127
+ /** Session ID that blizzard has when a COF sync is triggered */
128
+ syncTriggerBlizzardSessionId: string;
129
+ /** Session ID that blizzard has when a COF sync is executed */
130
+ syncExecutionBlizzardSessionId: string;
131
+ /** The delay between when the app is started and cof sync is triggered */
132
+ cofSyncTriggerDelayFromStartupMs: number;
133
+ /** The delay between when the app is started and cof sync starts to execute */
134
+ cofSyncExecutionDelayFromStartupMs: number;
135
+ /** Timestamp in seconds of the time the sync was triggered */
136
+ syncTriggerTime: number;
137
+ /** Allows client to signal what kind of media encoders/decoders are available */
138
+ decoderEncoderAvailability: DecoderEncoderAvailablity | undefined;
139
+ /** SnapKit app id from SnapKit Dev Portal */
140
+ snapkitAppId: string;
141
+ /** Lens core version which will be passed by all clients */
142
+ lenscoreVersion: number;
143
+ /**
144
+ * Can represent any ID such as user_id, device_id, web_client_id; When present, its value override the corresponding
145
+ * fields in the request
146
+ */
147
+ ruid: Ruid | undefined;
148
+ /**
149
+ * Caller can provide at most one field from "namespaces" and "config_names"
150
+ * If not empty only return the matched configs
151
+ */
152
+ configNames: string[];
153
+ /**
154
+ * If true response will include TEST_USER allowlisted treatments
155
+ * This is necessary for pre-login syncs where we do not yet know the user that will be logged in
156
+ * Only works on internal builds AND if user is not logged-in.
157
+ * See https://jira.sc-corp.net/browse/DAPSUPPORT-3363 for more context.
158
+ */
159
+ includeTestUserTreatments: boolean;
160
+ /** whether to log exposure logging, default is to log exposure */
161
+ disableExposureLogging: boolean;
162
+ /**
163
+ * Override value for the LENS_CLUSTER_ORIG_4 targeting property so that browser clients can
164
+ * implement their own device benchmarking for lenses.
165
+ */
166
+ lensClusterOrig4: number;
167
+ /**
168
+ * ClientID is similar to device ID but it rotates after 30 days.
169
+ * Used for allocation logs for device id AB Studies triggered in the server side
170
+ */
171
+ clientId: string;
172
+ }
173
+ /** Connectivity */
174
+ export interface Connectivity {
175
+ /** Current network connection type */
176
+ networkType: Connectivity_NetworkType;
177
+ /**
178
+ * A network is classified as metered when the user is sensitive to heavy data usage
179
+ * on that connection due to monetary costs, data limitations or battery/performance issues.
180
+ */
181
+ isMetered: boolean | undefined;
182
+ /** Whether or not client is roaming */
183
+ isRoaming: boolean | undefined;
184
+ /** String representing what carrier is providing the device with internet. */
185
+ carrier: string;
186
+ }
187
+ /** NetworkType */
188
+ export declare enum Connectivity_NetworkType {
189
+ /** UNKNOWN_NETWORK_TYPE - Unknown */
190
+ UNKNOWN_NETWORK_TYPE = 0,
191
+ /** CELLULAR - Cellular */
192
+ CELLULAR = 1,
193
+ /** WIFI - Wifi */
194
+ WIFI = 2,
195
+ UNRECOGNIZED = -1
196
+ }
197
+ export interface DecoderEncoderAvailablity {
198
+ /** Signals that snapchat's custom VP9 software decoder library is available on the client */
199
+ isSnapVp9DecoderAvailable: boolean;
200
+ /** Signals that snapchat's custom AV1 software decoder library is available on the client */
201
+ isSnapAv1DecoderAvailable: boolean;
202
+ }
203
+ export declare const ConfigTargetingRequest: {
204
+ encode(message: ConfigTargetingRequest, writer?: _m0.Writer): _m0.Writer;
205
+ decode(input: _m0.Reader | Uint8Array, length?: number): ConfigTargetingRequest;
206
+ fromPartial<I extends {
207
+ configResultsEtag?: string | undefined;
208
+ namespaces?: Namespace[] | undefined;
209
+ ghostId?: string | undefined;
210
+ countryCode?: string | undefined;
211
+ screenWidth?: number | undefined;
212
+ screenHeight?: number | undefined;
213
+ connectivity?: {
214
+ networkType?: Connectivity_NetworkType | undefined;
215
+ isMetered?: boolean | undefined;
216
+ isRoaming?: boolean | undefined;
217
+ carrier?: string | undefined;
218
+ } | undefined;
219
+ maxVideoWidthPx?: number | undefined;
220
+ maxVideoHeightPx?: number | undefined;
221
+ benchmarkResults?: {
222
+ name?: import("./benchmark_name").BenchmarkName | undefined;
223
+ value?: {
224
+ intValue?: number | undefined;
225
+ longValue?: number | undefined;
226
+ boolValue?: boolean | undefined;
227
+ floatValue?: number | undefined;
228
+ } | undefined;
229
+ }[] | undefined;
230
+ deltaSync?: boolean | undefined;
231
+ userAgent?: string | undefined;
232
+ triggerEventType?: ConfigTargetingTriggerEventType | undefined;
233
+ appState?: ConfigTargetingAppState | undefined;
234
+ locale?: string | undefined;
235
+ deviceId?: string | undefined;
236
+ userId?: string | undefined;
237
+ clientIp?: string | undefined;
238
+ isUnAuthorized?: boolean | undefined;
239
+ appLocale?: string | undefined;
240
+ instrumentation?: ConfigTargetingInstrumentation | undefined;
241
+ lastSuccessfulSync?: number | undefined;
242
+ isLogout?: boolean | undefined;
243
+ packageInstaller?: string | undefined;
244
+ syncTriggerBlizzardSessionId?: string | undefined;
245
+ syncExecutionBlizzardSessionId?: string | undefined;
246
+ cofSyncTriggerDelayFromStartupMs?: number | undefined;
247
+ cofSyncExecutionDelayFromStartupMs?: number | undefined;
248
+ syncTriggerTime?: number | undefined;
249
+ decoderEncoderAvailability?: {
250
+ isSnapVp9DecoderAvailable?: boolean | undefined;
251
+ isSnapAv1DecoderAvailable?: boolean | undefined;
252
+ } | undefined;
253
+ snapkitAppId?: string | undefined;
254
+ lenscoreVersion?: number | undefined;
255
+ ruid?: {
256
+ type?: import("../../common/ruid").Ruid_Type | undefined;
257
+ stringValue?: string | undefined;
258
+ loggingIdValue?: string | undefined;
259
+ } | undefined;
260
+ configNames?: string[] | undefined;
261
+ includeTestUserTreatments?: boolean | undefined;
262
+ disableExposureLogging?: boolean | undefined;
263
+ lensClusterOrig4?: number | undefined;
264
+ clientId?: string | undefined;
265
+ } & {
266
+ configResultsEtag?: string | undefined;
267
+ namespaces?: (Namespace[] & Namespace[] & Record<Exclude<keyof I["namespaces"], keyof Namespace[]>, never>) | undefined;
268
+ ghostId?: string | undefined;
269
+ countryCode?: string | undefined;
270
+ screenWidth?: number | undefined;
271
+ screenHeight?: number | undefined;
272
+ connectivity?: ({
273
+ networkType?: Connectivity_NetworkType | undefined;
274
+ isMetered?: boolean | undefined;
275
+ isRoaming?: boolean | undefined;
276
+ carrier?: string | undefined;
277
+ } & {
278
+ networkType?: Connectivity_NetworkType | undefined;
279
+ isMetered?: boolean | undefined;
280
+ isRoaming?: boolean | undefined;
281
+ carrier?: string | undefined;
282
+ } & Record<Exclude<keyof I["connectivity"], keyof Connectivity>, never>) | undefined;
283
+ maxVideoWidthPx?: number | undefined;
284
+ maxVideoHeightPx?: number | undefined;
285
+ benchmarkResults?: ({
286
+ name?: import("./benchmark_name").BenchmarkName | undefined;
287
+ value?: {
288
+ intValue?: number | undefined;
289
+ longValue?: number | undefined;
290
+ boolValue?: boolean | undefined;
291
+ floatValue?: number | undefined;
292
+ } | undefined;
293
+ }[] & ({
294
+ name?: import("./benchmark_name").BenchmarkName | undefined;
295
+ value?: {
296
+ intValue?: number | undefined;
297
+ longValue?: number | undefined;
298
+ boolValue?: boolean | undefined;
299
+ floatValue?: number | undefined;
300
+ } | undefined;
301
+ } & {
302
+ name?: import("./benchmark_name").BenchmarkName | undefined;
303
+ value?: ({
304
+ intValue?: number | undefined;
305
+ longValue?: number | undefined;
306
+ boolValue?: boolean | undefined;
307
+ floatValue?: number | undefined;
308
+ } & {
309
+ intValue?: number | undefined;
310
+ longValue?: number | undefined;
311
+ boolValue?: boolean | undefined;
312
+ floatValue?: number | undefined;
313
+ } & Record<Exclude<keyof I["benchmarkResults"][number]["value"], keyof import("./benchmark").BenchmarkValue>, never>) | undefined;
314
+ } & Record<Exclude<keyof I["benchmarkResults"][number], keyof BenchmarkResult>, never>)[] & Record<Exclude<keyof I["benchmarkResults"], keyof {
315
+ name?: import("./benchmark_name").BenchmarkName | undefined;
316
+ value?: {
317
+ intValue?: number | undefined;
318
+ longValue?: number | undefined;
319
+ boolValue?: boolean | undefined;
320
+ floatValue?: number | undefined;
321
+ } | undefined;
322
+ }[]>, never>) | undefined;
323
+ deltaSync?: boolean | undefined;
324
+ userAgent?: string | undefined;
325
+ triggerEventType?: ConfigTargetingTriggerEventType | undefined;
326
+ appState?: ConfigTargetingAppState | undefined;
327
+ locale?: string | undefined;
328
+ deviceId?: string | undefined;
329
+ userId?: string | undefined;
330
+ clientIp?: string | undefined;
331
+ isUnAuthorized?: boolean | undefined;
332
+ appLocale?: string | undefined;
333
+ instrumentation?: ConfigTargetingInstrumentation | undefined;
334
+ lastSuccessfulSync?: number | undefined;
335
+ isLogout?: boolean | undefined;
336
+ packageInstaller?: string | undefined;
337
+ syncTriggerBlizzardSessionId?: string | undefined;
338
+ syncExecutionBlizzardSessionId?: string | undefined;
339
+ cofSyncTriggerDelayFromStartupMs?: number | undefined;
340
+ cofSyncExecutionDelayFromStartupMs?: number | undefined;
341
+ syncTriggerTime?: number | undefined;
342
+ decoderEncoderAvailability?: ({
343
+ isSnapVp9DecoderAvailable?: boolean | undefined;
344
+ isSnapAv1DecoderAvailable?: boolean | undefined;
345
+ } & {
346
+ isSnapVp9DecoderAvailable?: boolean | undefined;
347
+ isSnapAv1DecoderAvailable?: boolean | undefined;
348
+ } & Record<Exclude<keyof I["decoderEncoderAvailability"], keyof DecoderEncoderAvailablity>, never>) | undefined;
349
+ snapkitAppId?: string | undefined;
350
+ lenscoreVersion?: number | undefined;
351
+ ruid?: ({
352
+ type?: import("../../common/ruid").Ruid_Type | undefined;
353
+ stringValue?: string | undefined;
354
+ loggingIdValue?: string | undefined;
355
+ } & {
356
+ type?: import("../../common/ruid").Ruid_Type | undefined;
357
+ stringValue?: string | undefined;
358
+ loggingIdValue?: string | undefined;
359
+ } & Record<Exclude<keyof I["ruid"], keyof Ruid>, never>) | undefined;
360
+ configNames?: (string[] & string[] & Record<Exclude<keyof I["configNames"], keyof string[]>, never>) | undefined;
361
+ includeTestUserTreatments?: boolean | undefined;
362
+ disableExposureLogging?: boolean | undefined;
363
+ lensClusterOrig4?: number | undefined;
364
+ clientId?: string | undefined;
365
+ } & Record<Exclude<keyof I, keyof ConfigTargetingRequest>, never>>(object: I): ConfigTargetingRequest;
366
+ };
367
+ export declare const Connectivity: {
368
+ encode(message: Connectivity, writer?: _m0.Writer): _m0.Writer;
369
+ decode(input: _m0.Reader | Uint8Array, length?: number): Connectivity;
370
+ fromPartial<I extends {
371
+ networkType?: Connectivity_NetworkType | undefined;
372
+ isMetered?: boolean | undefined;
373
+ isRoaming?: boolean | undefined;
374
+ carrier?: string | undefined;
375
+ } & {
376
+ networkType?: Connectivity_NetworkType | undefined;
377
+ isMetered?: boolean | undefined;
378
+ isRoaming?: boolean | undefined;
379
+ carrier?: string | undefined;
380
+ } & Record<Exclude<keyof I, keyof Connectivity>, never>>(object: I): Connectivity;
381
+ };
382
+ export declare const DecoderEncoderAvailablity: {
383
+ encode(message: DecoderEncoderAvailablity, writer?: _m0.Writer): _m0.Writer;
384
+ decode(input: _m0.Reader | Uint8Array, length?: number): DecoderEncoderAvailablity;
385
+ fromPartial<I extends {
386
+ isSnapVp9DecoderAvailable?: boolean | undefined;
387
+ isSnapAv1DecoderAvailable?: boolean | undefined;
388
+ } & {
389
+ isSnapVp9DecoderAvailable?: boolean | undefined;
390
+ isSnapAv1DecoderAvailable?: boolean | undefined;
391
+ } & Record<Exclude<keyof I, keyof DecoderEncoderAvailablity>, never>>(object: I): DecoderEncoderAvailablity;
392
+ };
393
+ declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
394
+ export declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
395
+ [K in keyof T]?: DeepPartial<T[K]>;
396
+ } : Partial<T>;
397
+ declare type KeysOfUnion<T> = T extends T ? keyof T : never;
398
+ export declare type Exact<P, I extends P> = P extends Builtin ? P : P & {
399
+ [K in keyof P]: Exact<P[K], I[K]>;
400
+ } & Record<Exclude<keyof I, KeysOfUnion<P>>, never>;
401
+ export {};