sitepong 0.0.19 → 0.0.20

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 (289) hide show
  1. package/dist/index.d.mts +718 -2
  2. package/dist/index.d.ts +718 -2
  3. package/dist/react/index.d.mts +2 -2
  4. package/dist/react/index.d.ts +2 -2
  5. package/dist/rn/analytics/autocapture.d.ts +48 -0
  6. package/dist/rn/analytics/autocapture.d.ts.map +1 -0
  7. package/dist/rn/analytics/autocapture.js +229 -0
  8. package/dist/rn/analytics/autocapture.js.map +1 -0
  9. package/dist/rn/analytics/index.d.ts +5 -0
  10. package/dist/rn/analytics/index.d.ts.map +1 -0
  11. package/dist/rn/analytics/index.js +11 -0
  12. package/dist/rn/analytics/index.js.map +1 -0
  13. package/dist/rn/analytics/manager.d.ts +43 -0
  14. package/dist/rn/analytics/manager.d.ts.map +1 -0
  15. package/dist/rn/analytics/manager.js +303 -0
  16. package/dist/rn/analytics/manager.js.map +1 -0
  17. package/dist/rn/analytics/manager.spec.d.ts +2 -0
  18. package/dist/rn/analytics/manager.spec.d.ts.map +1 -0
  19. package/dist/rn/analytics/manager.spec.js +293 -0
  20. package/dist/rn/analytics/manager.spec.js.map +1 -0
  21. package/dist/rn/analytics/session.d.ts +7 -0
  22. package/dist/rn/analytics/session.d.ts.map +1 -0
  23. package/dist/rn/analytics/session.js +72 -0
  24. package/dist/rn/analytics/session.js.map +1 -0
  25. package/dist/rn/analytics/session.spec.d.ts +2 -0
  26. package/dist/rn/analytics/session.spec.d.ts.map +1 -0
  27. package/dist/rn/analytics/session.spec.js +95 -0
  28. package/dist/rn/analytics/session.spec.js.map +1 -0
  29. package/dist/rn/analytics/types.d.ts +66 -0
  30. package/dist/rn/analytics/types.d.ts.map +1 -0
  31. package/dist/rn/analytics/types.js +7 -0
  32. package/dist/rn/analytics/types.js.map +1 -0
  33. package/dist/rn/core/breadcrumbs.d.ts +25 -0
  34. package/dist/rn/core/breadcrumbs.d.ts.map +1 -0
  35. package/dist/rn/core/breadcrumbs.js +56 -0
  36. package/dist/rn/core/breadcrumbs.js.map +1 -0
  37. package/dist/rn/core/client.d.ts +210 -0
  38. package/dist/rn/core/client.d.ts.map +1 -0
  39. package/dist/rn/core/client.js +523 -0
  40. package/dist/rn/core/client.js.map +1 -0
  41. package/dist/rn/core/dsn.d.ts +28 -0
  42. package/dist/rn/core/dsn.d.ts.map +1 -0
  43. package/dist/rn/core/dsn.js +94 -0
  44. package/dist/rn/core/dsn.js.map +1 -0
  45. package/dist/rn/core/types.d.ts +117 -0
  46. package/dist/rn/core/types.d.ts.map +1 -0
  47. package/dist/rn/core/types.js +3 -0
  48. package/dist/rn/core/types.js.map +1 -0
  49. package/dist/rn/crons.d.ts +50 -0
  50. package/dist/rn/crons.d.ts.map +1 -0
  51. package/dist/rn/crons.js +86 -0
  52. package/dist/rn/crons.js.map +1 -0
  53. package/dist/rn/database.d.ts +79 -0
  54. package/dist/rn/database.d.ts.map +1 -0
  55. package/dist/rn/database.js +235 -0
  56. package/dist/rn/database.js.map +1 -0
  57. package/dist/rn/fingerprint/behavior.d.ts +70 -0
  58. package/dist/rn/fingerprint/behavior.d.ts.map +1 -0
  59. package/dist/rn/fingerprint/behavior.js +307 -0
  60. package/dist/rn/fingerprint/behavior.js.map +1 -0
  61. package/dist/rn/fingerprint/captcha.d.ts +60 -0
  62. package/dist/rn/fingerprint/captcha.d.ts.map +1 -0
  63. package/dist/rn/fingerprint/captcha.js +118 -0
  64. package/dist/rn/fingerprint/captcha.js.map +1 -0
  65. package/dist/rn/fingerprint/index.d.ts +11 -0
  66. package/dist/rn/fingerprint/index.d.ts.map +1 -0
  67. package/dist/rn/fingerprint/index.js +19 -0
  68. package/dist/rn/fingerprint/index.js.map +1 -0
  69. package/dist/rn/fingerprint/manager.d.ts +24 -0
  70. package/dist/rn/fingerprint/manager.d.ts.map +1 -0
  71. package/dist/rn/fingerprint/manager.js +216 -0
  72. package/dist/rn/fingerprint/manager.js.map +1 -0
  73. package/dist/rn/fingerprint/manager.spec.d.ts +2 -0
  74. package/dist/rn/fingerprint/manager.spec.d.ts.map +1 -0
  75. package/dist/rn/fingerprint/manager.spec.js +246 -0
  76. package/dist/rn/fingerprint/manager.spec.js.map +1 -0
  77. package/dist/rn/fingerprint/signals.d.ts +10 -0
  78. package/dist/rn/fingerprint/signals.d.ts.map +1 -0
  79. package/dist/rn/fingerprint/signals.js +332 -0
  80. package/dist/rn/fingerprint/signals.js.map +1 -0
  81. package/dist/rn/fingerprint/signals.spec.d.ts +2 -0
  82. package/dist/rn/fingerprint/signals.spec.d.ts.map +1 -0
  83. package/dist/rn/fingerprint/signals.spec.js +249 -0
  84. package/dist/rn/fingerprint/signals.spec.js.map +1 -0
  85. package/dist/rn/fingerprint/tampering.d.ts +33 -0
  86. package/dist/rn/fingerprint/tampering.d.ts.map +1 -0
  87. package/dist/rn/fingerprint/tampering.js +488 -0
  88. package/dist/rn/fingerprint/tampering.js.map +1 -0
  89. package/dist/rn/fingerprint/types.d.ts +146 -0
  90. package/dist/rn/fingerprint/types.d.ts.map +1 -0
  91. package/dist/rn/fingerprint/types.js +7 -0
  92. package/dist/rn/fingerprint/types.js.map +1 -0
  93. package/dist/rn/fingerprint/vpn-detection.d.ts +24 -0
  94. package/dist/rn/fingerprint/vpn-detection.d.ts.map +1 -0
  95. package/dist/rn/fingerprint/vpn-detection.js +198 -0
  96. package/dist/rn/fingerprint/vpn-detection.js.map +1 -0
  97. package/dist/rn/flags/anonymous-id.d.ts +16 -0
  98. package/dist/rn/flags/anonymous-id.d.ts.map +1 -0
  99. package/dist/rn/flags/anonymous-id.js +88 -0
  100. package/dist/rn/flags/anonymous-id.js.map +1 -0
  101. package/dist/rn/flags/context.d.ts +26 -0
  102. package/dist/rn/flags/context.d.ts.map +1 -0
  103. package/dist/rn/flags/context.js +99 -0
  104. package/dist/rn/flags/context.js.map +1 -0
  105. package/dist/rn/flags/evaluator.d.ts +23 -0
  106. package/dist/rn/flags/evaluator.d.ts.map +1 -0
  107. package/dist/rn/flags/evaluator.js +227 -0
  108. package/dist/rn/flags/evaluator.js.map +1 -0
  109. package/dist/rn/flags/index.d.ts +9 -0
  110. package/dist/rn/flags/index.d.ts.map +1 -0
  111. package/dist/rn/flags/index.js +24 -0
  112. package/dist/rn/flags/index.js.map +1 -0
  113. package/dist/rn/flags/manager.d.ts +72 -0
  114. package/dist/rn/flags/manager.d.ts.map +1 -0
  115. package/dist/rn/flags/manager.js +205 -0
  116. package/dist/rn/flags/manager.js.map +1 -0
  117. package/dist/rn/index.d.ts +350 -0
  118. package/dist/rn/index.d.ts.map +1 -0
  119. package/dist/rn/index.js +935 -0
  120. package/dist/rn/index.js.map +1 -0
  121. package/dist/rn/integrations/express.d.ts +44 -0
  122. package/dist/rn/integrations/express.d.ts.map +1 -0
  123. package/dist/rn/integrations/express.js +111 -0
  124. package/dist/rn/integrations/express.js.map +1 -0
  125. package/dist/rn/integrations/nextjs.d.ts +105 -0
  126. package/dist/rn/integrations/nextjs.d.ts.map +1 -0
  127. package/dist/rn/integrations/nextjs.js +194 -0
  128. package/dist/rn/integrations/nextjs.js.map +1 -0
  129. package/dist/rn/metrics.d.ts +82 -0
  130. package/dist/rn/metrics.d.ts.map +1 -0
  131. package/dist/rn/metrics.js +173 -0
  132. package/dist/rn/metrics.js.map +1 -0
  133. package/dist/rn/performance/index.d.ts +5 -0
  134. package/dist/rn/performance/index.d.ts.map +1 -0
  135. package/dist/rn/performance/index.js +13 -0
  136. package/dist/rn/performance/index.js.map +1 -0
  137. package/dist/rn/performance/manager.d.ts +42 -0
  138. package/dist/rn/performance/manager.d.ts.map +1 -0
  139. package/dist/rn/performance/manager.js +323 -0
  140. package/dist/rn/performance/manager.js.map +1 -0
  141. package/dist/rn/performance/tracing.d.ts +21 -0
  142. package/dist/rn/performance/tracing.d.ts.map +1 -0
  143. package/dist/rn/performance/tracing.js +164 -0
  144. package/dist/rn/performance/tracing.js.map +1 -0
  145. package/dist/rn/performance/types.d.ts +57 -0
  146. package/dist/rn/performance/types.d.ts.map +1 -0
  147. package/dist/rn/performance/types.js +3 -0
  148. package/dist/rn/performance/types.js.map +1 -0
  149. package/dist/rn/profiling.d.ts +76 -0
  150. package/dist/rn/profiling.d.ts.map +1 -0
  151. package/dist/rn/profiling.js +193 -0
  152. package/dist/rn/profiling.js.map +1 -0
  153. package/dist/rn/react/error-boundary.d.ts +68 -0
  154. package/dist/rn/react/error-boundary.d.ts.map +1 -0
  155. package/dist/rn/react/error-boundary.js +103 -0
  156. package/dist/rn/react/error-boundary.js.map +1 -0
  157. package/dist/rn/react/hooks.d.ts +194 -0
  158. package/dist/rn/react/hooks.d.ts.map +1 -0
  159. package/dist/rn/react/hooks.js +416 -0
  160. package/dist/rn/react/hooks.js.map +1 -0
  161. package/dist/rn/react/index.d.ts +21 -0
  162. package/dist/rn/react/index.d.ts.map +1 -0
  163. package/dist/rn/react/index.js +66 -0
  164. package/dist/rn/react/index.js.map +1 -0
  165. package/dist/rn/react/provider.d.ts +45 -0
  166. package/dist/rn/react/provider.d.ts.map +1 -0
  167. package/dist/rn/react/provider.js +59 -0
  168. package/dist/rn/react/provider.js.map +1 -0
  169. package/dist/rn/react-native/autocapture.d.ts +19 -0
  170. package/dist/rn/react-native/autocapture.d.ts.map +1 -0
  171. package/dist/rn/react-native/autocapture.js +61 -0
  172. package/dist/rn/react-native/autocapture.js.map +1 -0
  173. package/dist/rn/react-native/device.d.ts +37 -0
  174. package/dist/rn/react-native/device.d.ts.map +1 -0
  175. package/dist/rn/react-native/device.js +106 -0
  176. package/dist/rn/react-native/device.js.map +1 -0
  177. package/dist/rn/react-native/error-handler.d.ts +16 -0
  178. package/dist/rn/react-native/error-handler.d.ts.map +1 -0
  179. package/dist/rn/react-native/error-handler.js +66 -0
  180. package/dist/rn/react-native/error-handler.js.map +1 -0
  181. package/dist/rn/react-native/hooks.d.ts +25 -0
  182. package/dist/rn/react-native/hooks.d.ts.map +1 -0
  183. package/dist/rn/react-native/hooks.js +82 -0
  184. package/dist/rn/react-native/hooks.js.map +1 -0
  185. package/dist/rn/react-native/index.d.ts +42 -0
  186. package/dist/rn/react-native/index.d.ts.map +1 -0
  187. package/dist/rn/react-native/index.js +96 -0
  188. package/dist/rn/react-native/index.js.map +1 -0
  189. package/dist/rn/react-native/navigation.d.ts +23 -0
  190. package/dist/rn/react-native/navigation.d.ts.map +1 -0
  191. package/dist/rn/react-native/navigation.js +46 -0
  192. package/dist/rn/react-native/navigation.js.map +1 -0
  193. package/dist/rn/react-native/network.d.ts +16 -0
  194. package/dist/rn/react-native/network.d.ts.map +1 -0
  195. package/dist/rn/react-native/network.js +63 -0
  196. package/dist/rn/react-native/network.js.map +1 -0
  197. package/dist/rn/react-native/performance.d.ts +32 -0
  198. package/dist/rn/react-native/performance.d.ts.map +1 -0
  199. package/dist/rn/react-native/performance.js +70 -0
  200. package/dist/rn/react-native/performance.js.map +1 -0
  201. package/dist/rn/react-native/provider.d.ts +39 -0
  202. package/dist/rn/react-native/provider.d.ts.map +1 -0
  203. package/dist/rn/react-native/provider.js +110 -0
  204. package/dist/rn/react-native/provider.js.map +1 -0
  205. package/dist/rn/react-native/screen-recorder.d.ts +56 -0
  206. package/dist/rn/react-native/screen-recorder.d.ts.map +1 -0
  207. package/dist/rn/react-native/screen-recorder.js +125 -0
  208. package/dist/rn/react-native/screen-recorder.js.map +1 -0
  209. package/dist/rn/react-native/sqlite-tracker.d.ts +49 -0
  210. package/dist/rn/react-native/sqlite-tracker.d.ts.map +1 -0
  211. package/dist/rn/react-native/sqlite-tracker.js +134 -0
  212. package/dist/rn/react-native/sqlite-tracker.js.map +1 -0
  213. package/dist/rn/react-native/storage.d.ts +13 -0
  214. package/dist/rn/react-native/storage.d.ts.map +1 -0
  215. package/dist/rn/react-native/storage.js +16 -0
  216. package/dist/rn/react-native/storage.js.map +1 -0
  217. package/dist/rn/remote-config/defaults.d.ts +8 -0
  218. package/dist/rn/remote-config/defaults.d.ts.map +1 -0
  219. package/dist/rn/remote-config/defaults.js +31 -0
  220. package/dist/rn/remote-config/defaults.js.map +1 -0
  221. package/dist/rn/remote-config/index.d.ts +5 -0
  222. package/dist/rn/remote-config/index.d.ts.map +1 -0
  223. package/dist/rn/remote-config/index.js +8 -0
  224. package/dist/rn/remote-config/index.js.map +1 -0
  225. package/dist/rn/remote-config/manager.d.ts +37 -0
  226. package/dist/rn/remote-config/manager.d.ts.map +1 -0
  227. package/dist/rn/remote-config/manager.js +164 -0
  228. package/dist/rn/remote-config/manager.js.map +1 -0
  229. package/dist/rn/remote-config/types.d.ts +60 -0
  230. package/dist/rn/remote-config/types.d.ts.map +1 -0
  231. package/dist/rn/remote-config/types.js +9 -0
  232. package/dist/rn/remote-config/types.js.map +1 -0
  233. package/dist/rn/replay/console.d.ts +33 -0
  234. package/dist/rn/replay/console.d.ts.map +1 -0
  235. package/dist/rn/replay/console.js +129 -0
  236. package/dist/rn/replay/console.js.map +1 -0
  237. package/dist/rn/replay/index.d.ts +7 -0
  238. package/dist/rn/replay/index.d.ts.map +1 -0
  239. package/dist/rn/replay/index.js +10 -0
  240. package/dist/rn/replay/index.js.map +1 -0
  241. package/dist/rn/replay/manager.d.ts +65 -0
  242. package/dist/rn/replay/manager.d.ts.map +1 -0
  243. package/dist/rn/replay/manager.js +579 -0
  244. package/dist/rn/replay/manager.js.map +1 -0
  245. package/dist/rn/replay/network.d.ts +46 -0
  246. package/dist/rn/replay/network.d.ts.map +1 -0
  247. package/dist/rn/replay/network.js +222 -0
  248. package/dist/rn/replay/network.js.map +1 -0
  249. package/dist/rn/replay/serializer.d.ts +28 -0
  250. package/dist/rn/replay/serializer.d.ts.map +1 -0
  251. package/dist/rn/replay/serializer.js +441 -0
  252. package/dist/rn/replay/serializer.js.map +1 -0
  253. package/dist/rn/replay/types.d.ts +112 -0
  254. package/dist/rn/replay/types.d.ts.map +1 -0
  255. package/dist/rn/replay/types.js +3 -0
  256. package/dist/rn/replay/types.js.map +1 -0
  257. package/dist/rn/server/index.d.ts +45 -0
  258. package/dist/rn/server/index.d.ts.map +1 -0
  259. package/dist/rn/server/index.js +158 -0
  260. package/dist/rn/server/index.js.map +1 -0
  261. package/dist/rn/transport/fetch.d.ts +15 -0
  262. package/dist/rn/transport/fetch.d.ts.map +1 -0
  263. package/dist/rn/transport/fetch.js +74 -0
  264. package/dist/rn/transport/fetch.js.map +1 -0
  265. package/dist/rn/types/flags.d.ts +61 -0
  266. package/dist/rn/types/flags.d.ts.map +1 -0
  267. package/dist/rn/types/flags.js +6 -0
  268. package/dist/rn/types/flags.js.map +1 -0
  269. package/dist/rn/types/index.d.ts +2 -0
  270. package/dist/rn/types/index.d.ts.map +1 -0
  271. package/dist/rn/types/index.js +18 -0
  272. package/dist/rn/types/index.js.map +1 -0
  273. package/dist/rn/utils/platform.d.ts +79 -0
  274. package/dist/rn/utils/platform.d.ts.map +1 -0
  275. package/dist/rn/utils/platform.js +139 -0
  276. package/dist/rn/utils/platform.js.map +1 -0
  277. package/dist/rn/utils/stacktrace.d.ts +37 -0
  278. package/dist/rn/utils/stacktrace.d.ts.map +1 -0
  279. package/dist/rn/utils/stacktrace.js +160 -0
  280. package/dist/rn/utils/stacktrace.js.map +1 -0
  281. package/package.json +6 -6
  282. package/dist/index-DrUJO5p6.d.mts +0 -717
  283. package/dist/index-bSaNFzwo.d.ts +0 -717
  284. package/dist/react-native/index.d.mts +0 -318
  285. package/dist/react-native/index.d.ts +0 -318
  286. package/dist/react-native/index.js +0 -6083
  287. package/dist/react-native/index.js.map +0 -1
  288. package/dist/react-native/index.mjs +0 -6034
  289. package/dist/react-native/index.mjs.map +0 -1
package/dist/index.d.mts CHANGED
@@ -1,2 +1,718 @@
1
- export { C as CapturedError, aj as CronCheckinOptions, ak as CronHandle, am as DatabaseQueryEvent, an as DatabaseTrackerConfig, D as DeviceSignals, E as ErrorContext, af as FraudCheckResult, al as MetricOptions, ag as PerformanceConfig, ai as PerformanceSpan, ah as PerformanceTransaction, ao as ProfileData, ap as ProfileFrame, aq as ProfilerConfig, ay as RemoteConfig, az as RemoteConfigFeatures, aA as RemoteConfigSampling, b as SitePongConfig, S as SitePongInitConfig, ax as TraceContext, ar as TracePropagator, ae as VisitorIdResult, W as WebVitals, a as addBreadcrumb, q as areFlagsReady, d as captureError, e as captureMessage, ac as clearAnonymousId, l as clearUser, s as client, as as createTraceContext, U as cronCheckin, V as cronStart, X as cronWrap, O as dbTrack, P as dbTrackSync, s as default, M as endSpan, K as endTransaction, au as extractTrace, j as flush, a2 as flushMetrics, a7 as flushProfiles, aw as generateSpanId, av as generateTraceId, n as getAllFlags, ab as getAnonymousId, T as getDbNPlusOnePatterns, Q as getDbQueryCount, A as getDeviceSignals, m as getFlag, B as getFraudCheck, a6 as getLatestProfile, a5 as getProfiles, a8 as getRemoteConfig, I as getReplaySessionId, o as getVariant, p as getVariantPayload, z as getVisitorId, N as getWebVitals, x as group, v as identify, i as init, c as initRN, k as isInitialized, a9 as isRemoteConfigFeatureEnabled, H as isReplayRecording, $ as metricDistribution, Z as metricGauge, _ as metricHistogram, Y as metricIncrement, a1 as metricStartTimer, a0 as metricTime, aa as onRemoteConfigChange, a3 as profile, at as propagateTrace, r as refreshFlags, y as resetAnalytics, R as resetDbQueryCount, ad as setAnonymousId, f as setContext, h as setTags, g as setUser, a4 as startProfileSpan, F as startReplay, L as startSpan, J as startTransaction, G as stopReplay, t as track, u as trackPageView, w as waitForFlags } from './index-DrUJO5p6.mjs';
2
- export { G as GroupTraits, R as ReplayConfig, a as ReplayEvent, T as TrackProperties, U as UserTraits } from './types-BEqbz0tw.mjs';
1
+ import { T as TrackProperties, U as UserTraits, G as GroupTraits } from './types-BEqbz0tw.mjs';
2
+ export { R as ReplayConfig, a as ReplayEvent } from './types-BEqbz0tw.mjs';
3
+
4
+ interface CoreSignals {
5
+ userAgent: string;
6
+ language: string;
7
+ languages: string[];
8
+ platform: string;
9
+ screenWidth: number;
10
+ screenHeight: number;
11
+ screenColorDepth: number;
12
+ devicePixelRatio: number;
13
+ timezoneOffset: number;
14
+ timezone: string;
15
+ sessionStorage: boolean;
16
+ localStorage: boolean;
17
+ indexedDB: boolean;
18
+ cookieEnabled: boolean;
19
+ hardwareConcurrency: number;
20
+ maxTouchPoints: number;
21
+ deviceMemory?: number;
22
+ }
23
+ interface ExtendedSignals {
24
+ canvasFingerprint?: string;
25
+ webglVendor?: string;
26
+ webglRenderer?: string;
27
+ audioFingerprint?: string;
28
+ }
29
+ interface SmartSignals {
30
+ incognito?: boolean;
31
+ bot?: boolean;
32
+ /** Browser timezone differs from what's expected for this IP location (computed server-side) */
33
+ timezoneMismatch?: boolean;
34
+ /** Browser language doesn't match expected language for IP location (computed server-side) */
35
+ languageMismatch?: boolean;
36
+ /** First time this device was seen (from localStorage) */
37
+ deviceFirstSeen?: string;
38
+ /** Number of times this device has been seen (incremented per session) */
39
+ deviceVisitCount?: number;
40
+ /** Whether the device appears to be using a privacy-focused browser */
41
+ privacyBrowser?: boolean;
42
+ /** Whether developer tools appear to be open */
43
+ devToolsOpen?: boolean;
44
+ /** Connection type (if available) */
45
+ connectionType?: string;
46
+ /** Whether the browser supports notifications */
47
+ notificationsEnabled?: boolean;
48
+ /** Whether do-not-track is enabled */
49
+ doNotTrack?: boolean;
50
+ /** Browser UA/fingerprint appears spoofed */
51
+ browserTampered?: boolean;
52
+ /** Canvas fingerprint noise/blocking detected */
53
+ canvasTampered?: boolean;
54
+ /** WebGL fingerprint spoofing detected */
55
+ webglTampered?: boolean;
56
+ /** Virtual machine environment detected */
57
+ vmDetected?: boolean;
58
+ /** VM indicator details */
59
+ vmIndicators?: string[];
60
+ }
61
+ interface BehaviorScore {
62
+ score: number;
63
+ mouseMovements: number;
64
+ keystrokes: number;
65
+ scrolls: number;
66
+ clicks: number;
67
+ isHuman: boolean;
68
+ }
69
+ interface DeviceSignals extends CoreSignals {
70
+ extended?: ExtendedSignals;
71
+ smart?: SmartSignals;
72
+ behavior?: BehaviorScore;
73
+ /** @deprecated Use smart.incognito */
74
+ incognito?: boolean;
75
+ /** @deprecated Use smart.bot */
76
+ bot?: boolean;
77
+ }
78
+ interface VisitorIdResult {
79
+ visitorId: string;
80
+ confidence: number;
81
+ firstSeenAt?: string;
82
+ lastSeenAt?: string;
83
+ }
84
+ interface FraudCheckResult {
85
+ visitorId: string;
86
+ riskScore: number;
87
+ signals: DeviceSignals;
88
+ flags?: {
89
+ incognito?: boolean;
90
+ bot?: boolean;
91
+ vpn?: boolean;
92
+ tampered?: boolean;
93
+ };
94
+ }
95
+
96
+ interface RecaptchaV3 {
97
+ ready: (cb: () => void) => void;
98
+ execute: (siteKey: string, options: {
99
+ action: string;
100
+ }) => Promise<string>;
101
+ }
102
+ interface HCaptcha {
103
+ execute: (siteKey: string, options?: {
104
+ async: boolean;
105
+ }) => Promise<{
106
+ response: string;
107
+ }>;
108
+ render: (container: string | HTMLElement, options: object) => string;
109
+ }
110
+ declare global {
111
+ interface Window {
112
+ grecaptcha?: RecaptchaV3;
113
+ hcaptcha?: HCaptcha;
114
+ }
115
+ }
116
+
117
+ interface PerformanceConfig {
118
+ apiKey: string;
119
+ endpoint?: string;
120
+ enabled?: boolean;
121
+ /** Collect Web Vitals (default: true) */
122
+ webVitals?: boolean;
123
+ /** Report navigation timing (default: true) */
124
+ navigationTiming?: boolean;
125
+ /** Report resource timing (default: false) */
126
+ resourceTiming?: boolean;
127
+ /** Custom endpoint for performance data */
128
+ performanceEndpoint?: string;
129
+ /** Flush interval in ms (default: 10000) */
130
+ flushInterval?: number;
131
+ /** Sample rate 0-1 (default: 1.0) */
132
+ sampleRate?: number;
133
+ debug?: boolean;
134
+ }
135
+ interface WebVitals {
136
+ lcp?: number;
137
+ fid?: number;
138
+ cls?: number;
139
+ fcp?: number;
140
+ ttfb?: number;
141
+ inp?: number;
142
+ }
143
+ interface PerformanceSpan {
144
+ id: string;
145
+ name: string;
146
+ startTime: number;
147
+ endTime?: number;
148
+ duration?: number;
149
+ status: 'ok' | 'error' | 'running';
150
+ data?: Record<string, unknown>;
151
+ }
152
+ interface PerformanceTransaction {
153
+ id: string;
154
+ name: string;
155
+ startTime: number;
156
+ endTime?: number;
157
+ duration?: number;
158
+ status: 'ok' | 'error' | 'running';
159
+ spans: PerformanceSpan[];
160
+ data?: Record<string, unknown>;
161
+ }
162
+
163
+ interface TraceContext {
164
+ traceId: string;
165
+ spanId: string;
166
+ parentSpanId: string | null;
167
+ sampled: boolean;
168
+ }
169
+ declare function generateTraceId(): string;
170
+ declare function generateSpanId(): string;
171
+ declare function createTraceContext(): TraceContext;
172
+ declare function propagateTrace(context: TraceContext): Record<string, string>;
173
+ declare function extractTrace(headers: Record<string, string>): TraceContext | null;
174
+ declare class TracePropagator {
175
+ private targets;
176
+ private originalFetch;
177
+ constructor(targets: string[]);
178
+ shouldPropagate(url: string): boolean;
179
+ injectHeaders(url: string, headers: Record<string, string>, context: TraceContext): Record<string, string>;
180
+ start(): void;
181
+ stop(): void;
182
+ }
183
+
184
+ /**
185
+ * Cron Job Monitoring SDK Module
186
+ *
187
+ * Usage:
188
+ * import { cronMonitor } from '@sitepong/sdk';
189
+ *
190
+ * // Simple check-in
191
+ * await cronMonitor.checkin('my-job-slug');
192
+ *
193
+ * // With duration tracking
194
+ * const done = cronMonitor.start('my-job-slug');
195
+ * try { await doWork(); done.ok(); }
196
+ * catch (e) { done.error(e.message); }
197
+ */
198
+ interface CronCheckinOptions {
199
+ status?: 'ok' | 'error' | 'in_progress';
200
+ duration_ms?: number;
201
+ message?: string;
202
+ environment?: string;
203
+ }
204
+ interface CronHandle {
205
+ ok: (message?: string) => Promise<void>;
206
+ error: (message?: string) => Promise<void>;
207
+ }
208
+
209
+ /**
210
+ * Custom Metrics SDK Module
211
+ *
212
+ * Usage:
213
+ * import { metrics } from '@sitepong/sdk';
214
+ *
215
+ * // Counter
216
+ * metrics.increment('api.requests', 1, { endpoint: '/users' });
217
+ *
218
+ * // Gauge
219
+ * metrics.gauge('memory.usage', process.memoryUsage().heapUsed, { unit: 'bytes' });
220
+ *
221
+ * // Distribution (for percentile calculations)
222
+ * metrics.distribution('api.latency', responseTime, { unit: 'ms' });
223
+ *
224
+ * // Histogram
225
+ * metrics.histogram('request.size', bodySize, { unit: 'bytes' });
226
+ */
227
+ interface MetricOptions {
228
+ tags?: Record<string, string>;
229
+ unit?: string;
230
+ timestamp?: string;
231
+ }
232
+
233
+ /**
234
+ * Production Profiling SDK Module
235
+ *
236
+ * Usage:
237
+ * import { profiler } from '@sitepong/sdk';
238
+ *
239
+ * // Profile a function
240
+ * const result = await profiler.profile('processOrder', async () => {
241
+ * return await processOrder(orderId);
242
+ * });
243
+ *
244
+ * // Get flame graph data
245
+ * const profile = profiler.getProfile();
246
+ */
247
+ interface ProfileFrame {
248
+ name: string;
249
+ duration_ms: number;
250
+ start_ms: number;
251
+ children: ProfileFrame[];
252
+ metadata?: Record<string, unknown>;
253
+ }
254
+ interface ProfileData {
255
+ id: string;
256
+ name: string;
257
+ startTime: number;
258
+ duration_ms: number;
259
+ frames: ProfileFrame[];
260
+ metadata?: Record<string, unknown>;
261
+ }
262
+ interface ProfilerConfig {
263
+ apiKey: string;
264
+ endpoint: string;
265
+ debug?: boolean;
266
+ /** Sample rate for profiling (0-1, default 0.1 = 10%) */
267
+ sampleRate?: number;
268
+ /** Maximum profile duration in ms (default 30000) */
269
+ maxDuration?: number;
270
+ /** Flush interval for sending profiles (default 30000) */
271
+ flushInterval?: number;
272
+ }
273
+
274
+ /**
275
+ * Remote Config Types
276
+ *
277
+ * Configuration fetched from SitePong servers to control SDK behavior
278
+ * without requiring npm updates.
279
+ */
280
+ interface RemoteConfigFeatures {
281
+ /** Per-feature on/off toggles */
282
+ [key: string]: boolean;
283
+ }
284
+ interface RemoteConfigSampling {
285
+ /** Error sampling rate (0-1) */
286
+ errors?: number;
287
+ /** Analytics sampling rate (0-1) */
288
+ analytics?: number;
289
+ /** Replay sampling rate (0-1) */
290
+ replay?: number;
291
+ /** Performance sampling rate (0-1) */
292
+ performance?: number;
293
+ }
294
+ interface RemoteConfigTransport {
295
+ /** Flush interval in ms */
296
+ flushInterval?: number;
297
+ /** Max batch size */
298
+ maxBatchSize?: number;
299
+ /** Max retry attempts */
300
+ maxRetries?: number;
301
+ }
302
+ interface RemoteConfigAutocapture {
303
+ /** Enable click autocapture */
304
+ clicks?: boolean;
305
+ /** Enable form autocapture */
306
+ forms?: boolean;
307
+ /** Enable pageview autocapture */
308
+ pageviews?: boolean;
309
+ /** Enable RN app state tracking */
310
+ appState?: boolean;
311
+ /** Enable RN screen view tracking */
312
+ screenViews?: boolean;
313
+ }
314
+ interface RemoteConfig {
315
+ /** Feature toggles */
316
+ features: RemoteConfigFeatures;
317
+ /** Sampling rates */
318
+ sampling: RemoteConfigSampling;
319
+ /** Transport settings */
320
+ transport: RemoteConfigTransport;
321
+ /** Autocapture rules per platform */
322
+ autocapture: RemoteConfigAutocapture;
323
+ /** TTL in seconds before refetch */
324
+ ttl: number;
325
+ /** Minimum SDK version required (semver) */
326
+ minSdkVersion?: string;
327
+ }
328
+
329
+ /**
330
+ * Platform-agnostic storage interface
331
+ */
332
+ interface StorageAdapter {
333
+ getItem(key: string): Promise<string | null>;
334
+ setItem(key: string, value: string): Promise<void>;
335
+ removeItem(key: string): Promise<void>;
336
+ }
337
+
338
+ /**
339
+ * Anonymous ID Management
340
+ * Generates and persists a unique ID for consistent flag evaluation
341
+ */
342
+ declare function getAnonymousId(): string;
343
+ /**
344
+ * Clear the anonymous ID
345
+ * Useful for testing or when user wants to reset their identity
346
+ */
347
+ declare function clearAnonymousId(): void;
348
+ /**
349
+ * Set a custom anonymous ID
350
+ * Useful when you want to use your own user identifier
351
+ */
352
+ declare function setAnonymousId(id: string): void;
353
+
354
+ /**
355
+ * Database Query Tracking SDK Module
356
+ *
357
+ * Usage (Node.js):
358
+ * import { dbTracker } from '@sitepong/sdk';
359
+ *
360
+ * // Wrap a database query
361
+ * const result = await dbTracker.track('SELECT * FROM users WHERE id = ?', async () => {
362
+ * return await db.query('SELECT * FROM users WHERE id = ?', [userId]);
363
+ * });
364
+ *
365
+ * // Integration with ORMs
366
+ * dbTracker.patchKnex(knex); // Auto-tracks all Knex queries
367
+ */
368
+ interface DatabaseQueryEvent {
369
+ query: string;
370
+ duration_ms: number;
371
+ timestamp: string;
372
+ source?: string;
373
+ rows_affected?: number;
374
+ error?: string;
375
+ is_slow?: boolean;
376
+ }
377
+ interface DatabaseTrackerConfig {
378
+ apiKey: string;
379
+ endpoint: string;
380
+ debug?: boolean;
381
+ slowQueryThreshold?: number;
382
+ maxBatchSize?: number;
383
+ flushInterval?: number;
384
+ /** Redact query parameters for security */
385
+ redactParams?: boolean;
386
+ }
387
+
388
+ interface SitePongConfig {
389
+ apiKey: string;
390
+ endpoint?: string;
391
+ environment?: string;
392
+ release?: string;
393
+ autoCapture?: boolean;
394
+ maxBatchSize?: number;
395
+ flushInterval?: number;
396
+ debug?: boolean;
397
+ }
398
+ interface ErrorContext {
399
+ user?: {
400
+ id?: string;
401
+ email?: string;
402
+ [key: string]: unknown;
403
+ };
404
+ tags?: Record<string, string>;
405
+ extra?: Record<string, unknown>;
406
+ }
407
+ interface CapturedError {
408
+ message: string;
409
+ stack?: string;
410
+ type: string;
411
+ timestamp: string;
412
+ url?: string;
413
+ userAgent?: string;
414
+ environment?: string;
415
+ release?: string;
416
+ context?: ErrorContext;
417
+ fingerprint?: string;
418
+ /** Replay session ID if session recording is active */
419
+ replaySessionId?: string;
420
+ }
421
+
422
+ interface SitePongInitConfig extends SitePongConfig {
423
+ /** Enable feature flags (default: false) */
424
+ enableFlags?: boolean;
425
+ /** Custom endpoint for flags API (default: uses main endpoint) */
426
+ flagsEndpoint?: string;
427
+ /** Analytics configuration */
428
+ analytics?: {
429
+ enabled?: boolean;
430
+ autocapturePageviews?: boolean;
431
+ autocaptureClicks?: boolean;
432
+ autocaptureForms?: boolean;
433
+ /** Full autocapture configuration (overrides individual autocapture flags) */
434
+ autocapture?: {
435
+ clicks?: boolean;
436
+ forms?: boolean;
437
+ pageviews?: boolean;
438
+ blockSelectors?: string[];
439
+ allowSelectors?: string[];
440
+ } | boolean;
441
+ maxBatchSize?: number;
442
+ flushInterval?: number;
443
+ eventsEndpoint?: string;
444
+ };
445
+ /** Fingerprint / device intelligence configuration */
446
+ fingerprint?: {
447
+ enabled?: boolean;
448
+ extendedSignals?: boolean;
449
+ visitorEndpoint?: string;
450
+ };
451
+ /** Performance monitoring configuration */
452
+ performance?: {
453
+ enabled?: boolean;
454
+ webVitals?: boolean;
455
+ navigationTiming?: boolean;
456
+ resourceTiming?: boolean;
457
+ sampleRate?: number;
458
+ flushInterval?: number;
459
+ performanceEndpoint?: string;
460
+ };
461
+ /** Session replay configuration — records a rolling buffer and only sends on error */
462
+ replay?: {
463
+ enabled?: boolean;
464
+ maskInputs?: boolean;
465
+ blockSelector?: string;
466
+ maskSelector?: string;
467
+ sampleRate?: number;
468
+ maxSessionDuration?: number;
469
+ flushInterval?: number;
470
+ replayEndpoint?: string;
471
+ /** Record network requests (XHR/fetch) in the replay timeline */
472
+ recordNetwork?: boolean;
473
+ /** Include request/response headers in network recording */
474
+ captureNetworkHeaders?: boolean;
475
+ /** Record console logs in the replay timeline */
476
+ recordConsole?: boolean;
477
+ /** Which console levels to record (default: all) */
478
+ consoleLevels?: Array<'log' | 'info' | 'warn' | 'error' | 'debug'>;
479
+ /** Rolling buffer duration in ms — how many seconds of replay to keep before an error (default: 20000) */
480
+ bufferDuration?: number;
481
+ };
482
+ /** Cron monitoring configuration */
483
+ crons?: {
484
+ enabled?: boolean;
485
+ };
486
+ /** Custom metrics configuration */
487
+ metrics?: {
488
+ enabled?: boolean;
489
+ flushInterval?: number;
490
+ maxBatchSize?: number;
491
+ };
492
+ /** Database query tracking configuration */
493
+ database?: {
494
+ enabled?: boolean;
495
+ slowQueryThreshold?: number;
496
+ redactParams?: boolean;
497
+ };
498
+ /** Production profiling configuration */
499
+ profiling?: {
500
+ enabled?: boolean;
501
+ sampleRate?: number;
502
+ maxDuration?: number;
503
+ flushInterval?: number;
504
+ };
505
+ /** Remote config options */
506
+ remoteConfig?: {
507
+ enabled?: boolean;
508
+ };
509
+ /** Storage adapter for caching (auto-detected if not provided) */
510
+ _storageAdapter?: StorageAdapter;
511
+ }
512
+ declare class SitePongClient {
513
+ private config;
514
+ private errorQueue;
515
+ private flushTimer;
516
+ private context;
517
+ private initialized;
518
+ private flushFailures;
519
+ private disabled;
520
+ private flagManager;
521
+ private analyticsManager;
522
+ private fingerprintManager;
523
+ private replayManager;
524
+ private performanceManager;
525
+ private cronManager;
526
+ private metricsManager;
527
+ private databaseTracker;
528
+ private profiler;
529
+ private remoteConfigManager;
530
+ constructor();
531
+ init(config: SitePongInitConfig): void;
532
+ /**
533
+ * Initialize SDK for React Native — only starts platform-agnostic subsystems.
534
+ * Skips: FingerprintManager, ReplayManager, PerformanceManager, browser autocapture,
535
+ * window event listeners (beforeunload, visibilitychange).
536
+ */
537
+ initRN(config: SitePongInitConfig): void;
538
+ /**
539
+ * Check if the SDK is initialized
540
+ */
541
+ isInitialized(): boolean;
542
+ /**
543
+ * Get a feature flag value
544
+ * Returns the cached evaluated result or default value
545
+ */
546
+ getFlag(key: string, defaultValue?: boolean): boolean;
547
+ /**
548
+ * Get all feature flag values
549
+ */
550
+ getAllFlags(): Record<string, boolean>;
551
+ /**
552
+ * Wait for flags to be initialized
553
+ */
554
+ waitForFlags(): Promise<void>;
555
+ /**
556
+ * Check if flags are ready
557
+ */
558
+ areFlagsReady(): boolean;
559
+ /**
560
+ * Get a multivariate flag variant
561
+ * Returns the assigned variant key or the default value
562
+ */
563
+ getVariant(key: string, defaultValue?: string | null): string | null;
564
+ /**
565
+ * Get the payload for a multivariate flag's assigned variant
566
+ */
567
+ getVariantPayload<T = unknown>(key: string, defaultValue?: T | null): T | null;
568
+ /**
569
+ * Force refresh flags from the server
570
+ */
571
+ refreshFlags(): Promise<void>;
572
+ track(eventName: string, properties?: TrackProperties): void;
573
+ trackPageView(url?: string, properties?: TrackProperties): void;
574
+ identify(userId: string, traits?: UserTraits): void;
575
+ group(groupId: string, traits?: GroupTraits): void;
576
+ resetAnalytics(): void;
577
+ getVisitorId(): Promise<VisitorIdResult>;
578
+ getDeviceSignals(): Promise<DeviceSignals>;
579
+ getFraudCheck(): Promise<FraudCheckResult>;
580
+ startReplay(): boolean;
581
+ stopReplay(): void;
582
+ isReplayRecording(): boolean;
583
+ getReplaySessionId(): string | null;
584
+ startTransaction(name: string, data?: Record<string, unknown>): string;
585
+ endTransaction(id: string, status?: 'ok' | 'error'): void;
586
+ startSpan(transactionId: string, name: string, data?: Record<string, unknown>): string;
587
+ endSpan(transactionId: string, spanId: string, status?: 'ok' | 'error'): void;
588
+ getWebVitals(): WebVitals;
589
+ cronCheckin(slug: string, options?: CronCheckinOptions): Promise<void>;
590
+ cronStart(slug: string, environment?: string): CronHandle;
591
+ cronWrap<T>(slug: string, fn: () => Promise<T>, environment?: string): Promise<T>;
592
+ metricIncrement(name: string, value?: number, options?: MetricOptions): void;
593
+ metricGauge(name: string, value: number, options?: MetricOptions): void;
594
+ metricHistogram(name: string, value: number, options?: MetricOptions): void;
595
+ metricDistribution(name: string, value: number, options?: MetricOptions): void;
596
+ metricTime<T>(name: string, fn: () => Promise<T>, options?: MetricOptions): Promise<T>;
597
+ metricStartTimer(name: string, options?: MetricOptions): {
598
+ stop: () => void;
599
+ };
600
+ flushMetrics(): Promise<void>;
601
+ dbTrack<T>(query: string, fn: () => Promise<T>, source?: string): Promise<T>;
602
+ dbTrackSync<T>(query: string, fn: () => T, source?: string): T;
603
+ getDbQueryCount(): number;
604
+ resetDbQueryCount(): void;
605
+ getDbNPlusOnePatterns(): Array<{
606
+ query: string;
607
+ count: number;
608
+ }>;
609
+ profile<T>(name: string, fn: () => Promise<T>, metadata?: Record<string, unknown>): Promise<T>;
610
+ startProfileSpan(name: string, metadata?: Record<string, unknown>): () => void;
611
+ getProfiles(): ProfileData[];
612
+ getLatestProfile(): ProfileData | null;
613
+ flushProfiles(): Promise<void>;
614
+ getRemoteConfig(): RemoteConfig | null;
615
+ isRemoteConfigFeatureEnabled(key: string, defaultValue?: boolean): boolean;
616
+ onRemoteConfigChange(listener: (config: RemoteConfig) => void): () => void;
617
+ setContext(context: ErrorContext): void;
618
+ setUser(user: ErrorContext['user']): void;
619
+ setTags(tags: Record<string, string>): void;
620
+ clearUser(): void;
621
+ addBreadcrumb(breadcrumb: {
622
+ type?: 'default' | 'http' | 'navigation' | 'ui' | 'console' | 'error';
623
+ category?: string;
624
+ message?: string;
625
+ level?: 'fatal' | 'error' | 'warning' | 'info' | 'debug';
626
+ data?: Record<string, unknown>;
627
+ }): void;
628
+ captureError(error: Error | string, additionalContext?: ErrorContext): void;
629
+ captureMessage(message: string, level?: 'info' | 'warning' | 'error', additionalContext?: ErrorContext): void;
630
+ flush(): Promise<void>;
631
+ private formatError;
632
+ /**
633
+ * Generate a fingerprint matching the server-side algorithm.
634
+ * Groups by: error type + normalized message + top stack frame.
635
+ */
636
+ private generateFingerprint;
637
+ private normalizeMessage;
638
+ private extractTopFrame;
639
+ private setupAutoCapture;
640
+ private startFlushTimer;
641
+ private flushWithBeacon;
642
+ private getUrl;
643
+ private getUserAgent;
644
+ private log;
645
+ }
646
+ declare const sitepong: SitePongClient;
647
+ declare const init: (config: SitePongInitConfig) => void;
648
+ declare const initRN: (config: SitePongInitConfig) => void;
649
+ declare const captureError: (error: Error | string, additionalContext?: ErrorContext) => void;
650
+ declare const captureMessage: (message: string, level?: "info" | "warning" | "error", additionalContext?: ErrorContext) => void;
651
+ declare const setContext: (context: ErrorContext) => void;
652
+ declare const setUser: (user: ErrorContext["user"]) => void;
653
+ declare const setTags: (tags: Record<string, string>) => void;
654
+ declare const flush: () => Promise<void>;
655
+ declare const isInitialized: () => boolean;
656
+ declare const clearUser: () => void;
657
+ declare const addBreadcrumb: (breadcrumb: {
658
+ type?: "default" | "http" | "navigation" | "ui" | "console" | "error";
659
+ category?: string;
660
+ message?: string;
661
+ level?: "fatal" | "error" | "warning" | "info" | "debug";
662
+ data?: Record<string, unknown>;
663
+ }) => void;
664
+
665
+ declare const getFlag: (key: string, defaultValue?: boolean) => boolean;
666
+ declare const getAllFlags: () => Record<string, boolean>;
667
+ declare const getVariant: (key: string, defaultValue?: string | null) => string | null;
668
+ declare const getVariantPayload: <T = unknown>(key: string, defaultValue?: T | null) => T | null;
669
+ declare const waitForFlags: () => Promise<void>;
670
+ declare const areFlagsReady: () => boolean;
671
+ declare const refreshFlags: () => Promise<void>;
672
+ declare const track: (eventName: string, properties?: TrackProperties) => void;
673
+ declare const trackPageView: (url?: string, properties?: TrackProperties) => void;
674
+ declare const identify: (userId: string, traits?: UserTraits) => void;
675
+ declare const group: (groupId: string, traits?: GroupTraits) => void;
676
+ declare const resetAnalytics: () => void;
677
+ declare const getVisitorId: () => Promise<VisitorIdResult>;
678
+ declare const getDeviceSignals: () => Promise<DeviceSignals>;
679
+ declare const getFraudCheck: () => Promise<FraudCheckResult>;
680
+ declare const startReplay: () => boolean;
681
+ declare const stopReplay: () => void;
682
+ declare const isReplayRecording: () => boolean;
683
+ declare const getReplaySessionId: () => string | null;
684
+ declare const startTransaction: (name: string, data?: Record<string, unknown>) => string;
685
+ declare const endTransaction: (id: string, status?: "ok" | "error") => void;
686
+ declare const startSpan: (transactionId: string, name: string, data?: Record<string, unknown>) => string;
687
+ declare const endSpan: (transactionId: string, spanId: string, status?: "ok" | "error") => void;
688
+ declare const getWebVitals: () => WebVitals;
689
+ declare const dbTrack: <T>(query: string, fn: () => Promise<T>, source?: string) => Promise<T>;
690
+ declare const dbTrackSync: <T>(query: string, fn: () => T, source?: string) => T;
691
+ declare const getDbQueryCount: () => number;
692
+ declare const resetDbQueryCount: () => void;
693
+ declare const getDbNPlusOnePatterns: () => Array<{
694
+ query: string;
695
+ count: number;
696
+ }>;
697
+ declare const cronCheckin: (slug: string, options?: CronCheckinOptions) => Promise<void>;
698
+ declare const cronStart: (slug: string, environment?: string) => CronHandle;
699
+ declare const cronWrap: <T>(slug: string, fn: () => Promise<T>, environment?: string) => Promise<T>;
700
+ declare const metricIncrement: (name: string, value?: number, options?: MetricOptions) => void;
701
+ declare const metricGauge: (name: string, value: number, options?: MetricOptions) => void;
702
+ declare const metricHistogram: (name: string, value: number, options?: MetricOptions) => void;
703
+ declare const metricDistribution: (name: string, value: number, options?: MetricOptions) => void;
704
+ declare const metricTime: <T>(name: string, fn: () => Promise<T>, options?: MetricOptions) => Promise<T>;
705
+ declare const metricStartTimer: (name: string, options?: MetricOptions) => {
706
+ stop: () => void;
707
+ };
708
+ declare const flushMetrics: () => Promise<void>;
709
+ declare const profile: <T>(name: string, fn: () => Promise<T>, metadata?: Record<string, unknown>) => Promise<T>;
710
+ declare const startProfileSpan: (name: string, metadata?: Record<string, unknown>) => () => void;
711
+ declare const getProfiles: () => ProfileData[];
712
+ declare const getLatestProfile: () => ProfileData | null;
713
+ declare const flushProfiles: () => Promise<void>;
714
+ declare const getRemoteConfig: () => RemoteConfig | null;
715
+ declare const isRemoteConfigFeatureEnabled: (key: string, defaultValue?: boolean) => boolean;
716
+ declare const onRemoteConfigChange: (listener: (config: RemoteConfig) => void) => () => void;
717
+
718
+ export { type CapturedError, type CronCheckinOptions, type CronHandle, type DatabaseQueryEvent, type DatabaseTrackerConfig, type DeviceSignals, type ErrorContext, type FraudCheckResult, GroupTraits, type MetricOptions, type PerformanceConfig, type PerformanceSpan, type PerformanceTransaction, type ProfileData, type ProfileFrame, type ProfilerConfig, type RemoteConfig, type RemoteConfigFeatures, type RemoteConfigSampling, type SitePongConfig, type SitePongInitConfig, type TraceContext, TracePropagator, TrackProperties, UserTraits, type VisitorIdResult, type WebVitals, addBreadcrumb, areFlagsReady, captureError, captureMessage, clearAnonymousId, clearUser, sitepong as client, createTraceContext, cronCheckin, cronStart, cronWrap, dbTrack, dbTrackSync, sitepong as default, endSpan, endTransaction, extractTrace, flush, flushMetrics, flushProfiles, generateSpanId, generateTraceId, getAllFlags, getAnonymousId, getDbNPlusOnePatterns, getDbQueryCount, getDeviceSignals, getFlag, getFraudCheck, getLatestProfile, getProfiles, getRemoteConfig, getReplaySessionId, getVariant, getVariantPayload, getVisitorId, getWebVitals, group, identify, init, initRN, isInitialized, isRemoteConfigFeatureEnabled, isReplayRecording, metricDistribution, metricGauge, metricHistogram, metricIncrement, metricStartTimer, metricTime, onRemoteConfigChange, profile, propagateTrace, refreshFlags, resetAnalytics, resetDbQueryCount, setAnonymousId, setContext, setTags, setUser, startProfileSpan, startReplay, startSpan, startTransaction, stopReplay, track, trackPageView, waitForFlags };