zixflow-reactnative 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +451 -0
  3. package/android/build.gradle +155 -0
  4. package/android/cio-core.gradle +12 -0
  5. package/android/consumer-rules.pro +3 -0
  6. package/android/gradle.properties +5 -0
  7. package/android/src/main/AndroidManifest.xml +19 -0
  8. package/android/src/main/java/io/customer/reactnative/sdk/CustomerIOReactNativePackage.kt +85 -0
  9. package/android/src/main/java/io/customer/reactnative/sdk/NativeCustomerIOModule.kt +201 -0
  10. package/android/src/main/java/io/customer/reactnative/sdk/constant/Keys.kt +20 -0
  11. package/android/src/main/java/io/customer/reactnative/sdk/extension/MapExtensions.kt +92 -0
  12. package/android/src/main/java/io/customer/reactnative/sdk/extension/ReactExtensions.kt +11 -0
  13. package/android/src/main/java/io/customer/reactnative/sdk/extension/StringExtensions.kt +3 -0
  14. package/android/src/main/java/io/customer/reactnative/sdk/extension/ViewExtensions.kt +34 -0
  15. package/android/src/main/java/io/customer/reactnative/sdk/location/NativeLocationModule.kt +66 -0
  16. package/android/src/main/java/io/customer/reactnative/sdk/logging/NativeCustomerIOLoggingModule.kt +90 -0
  17. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/InlineInAppMessageViewManager.kt +56 -0
  18. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/NativeMessagingInAppModule.kt +215 -0
  19. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/NotificationInboxExtensions.kt +23 -0
  20. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/ReactInAppEventListener.kt +77 -0
  21. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/ReactInAppPlatformDelegate.kt +37 -0
  22. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/ReactInlineInAppMessageView.kt +44 -0
  23. package/android/src/main/java/io/customer/reactnative/sdk/messaginginapp/ReactNotificationInboxChangeListener.kt +47 -0
  24. package/android/src/main/java/io/customer/reactnative/sdk/messagingpush/NativeMessagingPushModule.kt +283 -0
  25. package/android/src/main/java/io/customer/reactnative/sdk/messagingpush/PermissionStatus.kt +9 -0
  26. package/android/src/main/java/io/customer/reactnative/sdk/messagingpush/PushMessagingExtensions.kt +58 -0
  27. package/android/src/main/java/io/customer/reactnative/sdk/util/Preconditions.kt +35 -0
  28. package/android/src/main/res/values/customer_io_config.xml +13 -0
  29. package/customerio-reactnative.podspec +60 -0
  30. package/ios/CustomerioReactnative.xcodeproj/project.pbxproj +285 -0
  31. package/ios/CustomerioReactnative.xcodeproj/project.xcworkspace/contents.xcworkspacedata +4 -0
  32. package/ios/CustomerioReactnative.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  33. package/ios/wrappers/CustomerioReactnative-Bridging-Header.h +2 -0
  34. package/ios/wrappers/NativeCustomerIO.mm +100 -0
  35. package/ios/wrappers/NativeCustomerIO.swift +162 -0
  36. package/ios/wrappers/inapp/InboxMessage+Conversion.swift +22 -0
  37. package/ios/wrappers/inapp/NativeMessagingInApp.mm +122 -0
  38. package/ios/wrappers/inapp/NativeMessagingInApp.swift +214 -0
  39. package/ios/wrappers/inapp/ReactInAppEventListener.swift +74 -0
  40. package/ios/wrappers/inapp/inline/InlineInAppMessageStateEvent.swift +23 -0
  41. package/ios/wrappers/inapp/inline/RCTInlineMessageNative.h +18 -0
  42. package/ios/wrappers/inapp/inline/RCTInlineMessageNative.mm +168 -0
  43. package/ios/wrappers/inapp/inline/ReactInlineMessageView.h +42 -0
  44. package/ios/wrappers/inapp/inline/ReactInlineMessageView.swift +124 -0
  45. package/ios/wrappers/location/NativeLocation.mm +52 -0
  46. package/ios/wrappers/location/NativeLocation.swift +37 -0
  47. package/ios/wrappers/logging/NativeCustomerIOLogging.mm +81 -0
  48. package/ios/wrappers/logging/NativeCustomerIOLogging.swift +62 -0
  49. package/ios/wrappers/push/NativeMessagingPush.mm +87 -0
  50. package/ios/wrappers/push/NativeMessagingPush.swift +119 -0
  51. package/ios/wrappers/utils/CioConfigUtils.swift +63 -0
  52. package/ios/wrappers/utils/CioConstants.swift +25 -0
  53. package/ios/wrappers/utils/Preconditions.swift +20 -0
  54. package/ios/wrappers/utils/RCTCustomerIOUtils.h +19 -0
  55. package/lib/commonjs/cio-params.js +2 -0
  56. package/lib/commonjs/cio-params.js.map +1 -0
  57. package/lib/commonjs/components/InlineInAppMessageView.js +146 -0
  58. package/lib/commonjs/components/InlineInAppMessageView.js.map +1 -0
  59. package/lib/commonjs/components/index.js +14 -0
  60. package/lib/commonjs/components/index.js.map +1 -0
  61. package/lib/commonjs/customerio-cdp.js +163 -0
  62. package/lib/commonjs/customerio-cdp.js.map +1 -0
  63. package/lib/commonjs/customerio-inapp.js +107 -0
  64. package/lib/commonjs/customerio-inapp.js.map +1 -0
  65. package/lib/commonjs/customerio-location.js +53 -0
  66. package/lib/commonjs/customerio-location.js.map +1 -0
  67. package/lib/commonjs/customerio-push.js +115 -0
  68. package/lib/commonjs/customerio-push.js.map +1 -0
  69. package/lib/commonjs/index.js +17 -0
  70. package/lib/commonjs/index.js.map +1 -0
  71. package/lib/commonjs/native-logger-listener.js +84 -0
  72. package/lib/commonjs/native-logger-listener.js.map +1 -0
  73. package/lib/commonjs/notification-inbox.js +132 -0
  74. package/lib/commonjs/notification-inbox.js.map +1 -0
  75. package/lib/commonjs/package.json +1 -0
  76. package/lib/commonjs/postInstall.js +13 -0
  77. package/lib/commonjs/postInstall.js.map +1 -0
  78. package/lib/commonjs/specs/components/InlineMessageNativeComponent.ts +59 -0
  79. package/lib/commonjs/specs/modules/NativeCustomerIO.js +40 -0
  80. package/lib/commonjs/specs/modules/NativeCustomerIO.js.map +1 -0
  81. package/lib/commonjs/specs/modules/NativeCustomerIOLocation.js +15 -0
  82. package/lib/commonjs/specs/modules/NativeCustomerIOLocation.js.map +1 -0
  83. package/lib/commonjs/specs/modules/NativeCustomerIOLogging.js +19 -0
  84. package/lib/commonjs/specs/modules/NativeCustomerIOLogging.js.map +1 -0
  85. package/lib/commonjs/specs/modules/NativeCustomerIOMessagingInApp.js +16 -0
  86. package/lib/commonjs/specs/modules/NativeCustomerIOMessagingInApp.js.map +1 -0
  87. package/lib/commonjs/specs/modules/NativeCustomerIOMessagingPush.js +15 -0
  88. package/lib/commonjs/specs/modules/NativeCustomerIOMessagingPush.js.map +1 -0
  89. package/lib/commonjs/types/data-pipelines.js +123 -0
  90. package/lib/commonjs/types/data-pipelines.js.map +1 -0
  91. package/lib/commonjs/types/in-app.js +43 -0
  92. package/lib/commonjs/types/in-app.js.map +1 -0
  93. package/lib/commonjs/types/index.js +39 -0
  94. package/lib/commonjs/types/index.js.map +1 -0
  95. package/lib/commonjs/types/internal.js +2 -0
  96. package/lib/commonjs/types/internal.js.map +1 -0
  97. package/lib/commonjs/types/push.js +49 -0
  98. package/lib/commonjs/types/push.js.map +1 -0
  99. package/lib/commonjs/utils/native-bridge.js +31 -0
  100. package/lib/commonjs/utils/native-bridge.js.map +1 -0
  101. package/lib/commonjs/utils/param-validation.js +136 -0
  102. package/lib/commonjs/utils/param-validation.js.map +1 -0
  103. package/lib/commonjs/zixflow.js +71 -0
  104. package/lib/commonjs/zixflow.js.map +1 -0
  105. package/lib/module/cio-params.js +2 -0
  106. package/lib/module/cio-params.js.map +1 -0
  107. package/lib/module/components/InlineInAppMessageView.js +141 -0
  108. package/lib/module/components/InlineInAppMessageView.js.map +1 -0
  109. package/lib/module/components/index.js +6 -0
  110. package/lib/module/components/index.js.map +1 -0
  111. package/lib/module/customerio-cdp.js +157 -0
  112. package/lib/module/customerio-cdp.js.map +1 -0
  113. package/lib/module/customerio-inapp.js +92 -0
  114. package/lib/module/customerio-inapp.js.map +1 -0
  115. package/lib/module/customerio-location.js +48 -0
  116. package/lib/module/customerio-location.js.map +1 -0
  117. package/lib/module/customerio-push.js +111 -0
  118. package/lib/module/customerio-push.js.map +1 -0
  119. package/lib/module/index.js +12 -0
  120. package/lib/module/index.js.map +1 -0
  121. package/lib/module/native-logger-listener.js +79 -0
  122. package/lib/module/native-logger-listener.js.map +1 -0
  123. package/lib/module/notification-inbox.js +127 -0
  124. package/lib/module/notification-inbox.js.map +1 -0
  125. package/lib/module/package.json +1 -0
  126. package/lib/module/postInstall.js +13 -0
  127. package/lib/module/postInstall.js.map +1 -0
  128. package/lib/module/specs/components/InlineMessageNativeComponent.ts +59 -0
  129. package/lib/module/specs/modules/NativeCustomerIO.js +41 -0
  130. package/lib/module/specs/modules/NativeCustomerIO.js.map +1 -0
  131. package/lib/module/specs/modules/NativeCustomerIOLocation.js +13 -0
  132. package/lib/module/specs/modules/NativeCustomerIOLocation.js.map +1 -0
  133. package/lib/module/specs/modules/NativeCustomerIOLogging.js +18 -0
  134. package/lib/module/specs/modules/NativeCustomerIOLogging.js.map +1 -0
  135. package/lib/module/specs/modules/NativeCustomerIOMessagingInApp.js +15 -0
  136. package/lib/module/specs/modules/NativeCustomerIOMessagingInApp.js.map +1 -0
  137. package/lib/module/specs/modules/NativeCustomerIOMessagingPush.js +13 -0
  138. package/lib/module/specs/modules/NativeCustomerIOMessagingPush.js.map +1 -0
  139. package/lib/module/types/data-pipelines.js +126 -0
  140. package/lib/module/types/data-pipelines.js.map +1 -0
  141. package/lib/module/types/in-app.js +42 -0
  142. package/lib/module/types/in-app.js.map +1 -0
  143. package/lib/module/types/index.js +6 -0
  144. package/lib/module/types/index.js.map +1 -0
  145. package/lib/module/types/internal.js +2 -0
  146. package/lib/module/types/internal.js.map +1 -0
  147. package/lib/module/types/push.js +47 -0
  148. package/lib/module/types/push.js.map +1 -0
  149. package/lib/module/utils/native-bridge.js +25 -0
  150. package/lib/module/utils/native-bridge.js.map +1 -0
  151. package/lib/module/utils/param-validation.js +132 -0
  152. package/lib/module/utils/param-validation.js.map +1 -0
  153. package/lib/module/zixflow.js +23 -0
  154. package/lib/module/zixflow.js.map +1 -0
  155. package/lib/typescript/commonjs/cio-params.d.ts +5 -0
  156. package/lib/typescript/commonjs/cio-params.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/components/InlineInAppMessageView.d.ts +41 -0
  158. package/lib/typescript/commonjs/components/InlineInAppMessageView.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/components/index.d.ts +3 -0
  160. package/lib/typescript/commonjs/components/index.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/customerio-cdp.d.ts +40 -0
  162. package/lib/typescript/commonjs/customerio-cdp.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/customerio-inapp.d.ts +48 -0
  164. package/lib/typescript/commonjs/customerio-inapp.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/customerio-location.d.ts +31 -0
  166. package/lib/typescript/commonjs/customerio-location.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/customerio-push.d.ts +56 -0
  168. package/lib/typescript/commonjs/customerio-push.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/index.d.ts +8 -0
  170. package/lib/typescript/commonjs/index.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/native-logger-listener.d.ts +8 -0
  172. package/lib/typescript/commonjs/native-logger-listener.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/notification-inbox.d.ts +57 -0
  174. package/lib/typescript/commonjs/notification-inbox.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/package.json +1 -0
  176. package/lib/typescript/commonjs/postInstall.d.ts +2 -0
  177. package/lib/typescript/commonjs/postInstall.d.ts.map +1 -0
  178. package/lib/typescript/commonjs/specs/components/InlineMessageNativeComponent.d.ts +40 -0
  179. package/lib/typescript/commonjs/specs/components/InlineMessageNativeComponent.d.ts.map +1 -0
  180. package/lib/typescript/commonjs/specs/modules/NativeCustomerIO.d.ts +46 -0
  181. package/lib/typescript/commonjs/specs/modules/NativeCustomerIO.d.ts.map +1 -0
  182. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOLocation.d.ts +14 -0
  183. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOLocation.d.ts.map +1 -0
  184. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOLogging.d.ts +18 -0
  185. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOLogging.d.ts.map +1 -0
  186. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOMessagingInApp.d.ts +23 -0
  187. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOMessagingInApp.d.ts.map +1 -0
  188. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOMessagingPush.d.ts +20 -0
  189. package/lib/typescript/commonjs/specs/modules/NativeCustomerIOMessagingPush.d.ts.map +1 -0
  190. package/lib/typescript/commonjs/types/data-pipelines.d.ts +143 -0
  191. package/lib/typescript/commonjs/types/data-pipelines.d.ts.map +1 -0
  192. package/lib/typescript/commonjs/types/in-app.d.ts +67 -0
  193. package/lib/typescript/commonjs/types/in-app.d.ts.map +1 -0
  194. package/lib/typescript/commonjs/types/index.d.ts +4 -0
  195. package/lib/typescript/commonjs/types/index.d.ts.map +1 -0
  196. package/lib/typescript/commonjs/types/internal.d.ts +20 -0
  197. package/lib/typescript/commonjs/types/internal.d.ts.map +1 -0
  198. package/lib/typescript/commonjs/types/push.d.ts +49 -0
  199. package/lib/typescript/commonjs/types/push.d.ts.map +1 -0
  200. package/lib/typescript/commonjs/utils/native-bridge.d.ts +9 -0
  201. package/lib/typescript/commonjs/utils/native-bridge.d.ts.map +1 -0
  202. package/lib/typescript/commonjs/utils/param-validation.d.ts +44 -0
  203. package/lib/typescript/commonjs/utils/param-validation.d.ts.map +1 -0
  204. package/lib/typescript/commonjs/zixflow.d.ts +14 -0
  205. package/lib/typescript/commonjs/zixflow.d.ts.map +1 -0
  206. package/lib/typescript/module/cio-params.d.ts +5 -0
  207. package/lib/typescript/module/cio-params.d.ts.map +1 -0
  208. package/lib/typescript/module/components/InlineInAppMessageView.d.ts +41 -0
  209. package/lib/typescript/module/components/InlineInAppMessageView.d.ts.map +1 -0
  210. package/lib/typescript/module/components/index.d.ts +3 -0
  211. package/lib/typescript/module/components/index.d.ts.map +1 -0
  212. package/lib/typescript/module/customerio-cdp.d.ts +40 -0
  213. package/lib/typescript/module/customerio-cdp.d.ts.map +1 -0
  214. package/lib/typescript/module/customerio-inapp.d.ts +48 -0
  215. package/lib/typescript/module/customerio-inapp.d.ts.map +1 -0
  216. package/lib/typescript/module/customerio-location.d.ts +31 -0
  217. package/lib/typescript/module/customerio-location.d.ts.map +1 -0
  218. package/lib/typescript/module/customerio-push.d.ts +56 -0
  219. package/lib/typescript/module/customerio-push.d.ts.map +1 -0
  220. package/lib/typescript/module/index.d.ts +8 -0
  221. package/lib/typescript/module/index.d.ts.map +1 -0
  222. package/lib/typescript/module/native-logger-listener.d.ts +8 -0
  223. package/lib/typescript/module/native-logger-listener.d.ts.map +1 -0
  224. package/lib/typescript/module/notification-inbox.d.ts +57 -0
  225. package/lib/typescript/module/notification-inbox.d.ts.map +1 -0
  226. package/lib/typescript/module/package.json +1 -0
  227. package/lib/typescript/module/postInstall.d.ts +2 -0
  228. package/lib/typescript/module/postInstall.d.ts.map +1 -0
  229. package/lib/typescript/module/specs/components/InlineMessageNativeComponent.d.ts +40 -0
  230. package/lib/typescript/module/specs/components/InlineMessageNativeComponent.d.ts.map +1 -0
  231. package/lib/typescript/module/specs/modules/NativeCustomerIO.d.ts +46 -0
  232. package/lib/typescript/module/specs/modules/NativeCustomerIO.d.ts.map +1 -0
  233. package/lib/typescript/module/specs/modules/NativeCustomerIOLocation.d.ts +14 -0
  234. package/lib/typescript/module/specs/modules/NativeCustomerIOLocation.d.ts.map +1 -0
  235. package/lib/typescript/module/specs/modules/NativeCustomerIOLogging.d.ts +18 -0
  236. package/lib/typescript/module/specs/modules/NativeCustomerIOLogging.d.ts.map +1 -0
  237. package/lib/typescript/module/specs/modules/NativeCustomerIOMessagingInApp.d.ts +23 -0
  238. package/lib/typescript/module/specs/modules/NativeCustomerIOMessagingInApp.d.ts.map +1 -0
  239. package/lib/typescript/module/specs/modules/NativeCustomerIOMessagingPush.d.ts +20 -0
  240. package/lib/typescript/module/specs/modules/NativeCustomerIOMessagingPush.d.ts.map +1 -0
  241. package/lib/typescript/module/types/data-pipelines.d.ts +143 -0
  242. package/lib/typescript/module/types/data-pipelines.d.ts.map +1 -0
  243. package/lib/typescript/module/types/in-app.d.ts +67 -0
  244. package/lib/typescript/module/types/in-app.d.ts.map +1 -0
  245. package/lib/typescript/module/types/index.d.ts +4 -0
  246. package/lib/typescript/module/types/index.d.ts.map +1 -0
  247. package/lib/typescript/module/types/internal.d.ts +20 -0
  248. package/lib/typescript/module/types/internal.d.ts.map +1 -0
  249. package/lib/typescript/module/types/push.d.ts +49 -0
  250. package/lib/typescript/module/types/push.d.ts.map +1 -0
  251. package/lib/typescript/module/utils/native-bridge.d.ts +9 -0
  252. package/lib/typescript/module/utils/native-bridge.d.ts.map +1 -0
  253. package/lib/typescript/module/utils/param-validation.d.ts +44 -0
  254. package/lib/typescript/module/utils/param-validation.d.ts.map +1 -0
  255. package/lib/typescript/module/zixflow.d.ts +14 -0
  256. package/lib/typescript/module/zixflow.d.ts.map +1 -0
  257. package/package.json +165 -0
  258. package/src/cio-params.ts +4 -0
  259. package/src/components/InlineInAppMessageView.tsx +187 -0
  260. package/src/components/index.ts +3 -0
  261. package/src/customerio-cdp.ts +190 -0
  262. package/src/customerio-inapp.ts +127 -0
  263. package/src/customerio-location.ts +56 -0
  264. package/src/customerio-push.ts +127 -0
  265. package/src/index.ts +9 -0
  266. package/src/native-logger-listener.ts +84 -0
  267. package/src/notification-inbox.ts +154 -0
  268. package/src/postInstall.js +10 -0
  269. package/src/specs/components/InlineMessageNativeComponent.ts +59 -0
  270. package/src/specs/modules/NativeCustomerIO.ts +55 -0
  271. package/src/specs/modules/NativeCustomerIOLocation.ts +15 -0
  272. package/src/specs/modules/NativeCustomerIOLogging.ts +24 -0
  273. package/src/specs/modules/NativeCustomerIOMessagingInApp.ts +30 -0
  274. package/src/specs/modules/NativeCustomerIOMessagingPush.ts +27 -0
  275. package/src/types/data-pipelines.ts +150 -0
  276. package/src/types/in-app.ts +69 -0
  277. package/src/types/index.ts +3 -0
  278. package/src/types/internal.ts +20 -0
  279. package/src/types/push.ts +50 -0
  280. package/src/utils/native-bridge.ts +30 -0
  281. package/src/utils/param-validation.ts +178 -0
  282. package/src/zixflow.ts +24 -0
  283. package/zixflow-reactnative-richpush.podspec +42 -0
  284. package/zixflow-reactnative.podspec +66 -0
@@ -0,0 +1,40 @@
1
+ import type { HostComponent, ViewProps } from 'react-native';
2
+ import type { DirectEventHandler, Double } from 'react-native/Libraries/Types/CodegenTypes';
3
+ /** Event data for inline message size changes. */
4
+ export interface SizeChangeEvent {
5
+ width: Double;
6
+ height: Double;
7
+ duration?: Double;
8
+ }
9
+ /** States representing the loading and display status of inline messages. */
10
+ export declare enum InlineMessageState {
11
+ LoadingStarted = "LoadingStarted",
12
+ LoadingFinished = "LoadingFinished",
13
+ NoMessageToDisplay = "NoMessageToDisplay"
14
+ }
15
+ /** Event data for inline message state changes. */
16
+ export interface StateChangeEvent {
17
+ state: string;
18
+ }
19
+ /** Event data for inline message action clicks. */
20
+ export interface ActionClickEvent {
21
+ /** Message data structure - defined inline for codegen compatibility (cannot import types) */
22
+ message: {
23
+ messageId: string;
24
+ deliveryId?: string;
25
+ elementId?: string;
26
+ };
27
+ actionValue: string;
28
+ actionName: string;
29
+ }
30
+ /** Props for the native inline message component. */
31
+ export interface NativeProps extends ViewProps {
32
+ /** Required element ID for retrieving inline message content. */
33
+ elementId: string;
34
+ onSizeChange: DirectEventHandler<SizeChangeEvent>;
35
+ onStateChange?: DirectEventHandler<StateChangeEvent>;
36
+ onActionClick?: DirectEventHandler<ActionClickEvent>;
37
+ }
38
+ declare const _default: HostComponent<NativeProps>;
39
+ export default _default;
40
+ //# sourceMappingURL=InlineMessageNativeComponent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineMessageNativeComponent.d.ts","sourceRoot":"","sources":["../../../../../src/specs/components/InlineMessageNativeComponent.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACP,MAAM,2CAA2C,CAAC;AAGnD,kDAAkD;AAClD,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,6EAA6E;AAC7E,oBAAY,kBAAkB;IAC5B,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IACnC,kBAAkB,uBAAuB;CAC1C;AAED,mDAAmD;AACnD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,mDAAmD;AACnD,MAAM,WAAW,gBAAgB;IAC/B,8FAA8F;IAC9F,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qDAAqD;AACrD,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,iEAAiE;IACjE,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAClD,aAAa,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACrD,aAAa,CAAC,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;CACtD;wBAOI,aAAa,CAAC,WAAW,CAAC;AAF/B,wBAEgC"}
@@ -0,0 +1,46 @@
1
+ import { type TurboModule } from 'react-native';
2
+ import type { UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes';
3
+ /**
4
+ * Native module specification for CustomerIO React Native SDK
5
+ *
6
+ * This module defines the TurboModule interface for CustomerIO SDK native bridge.
7
+ * Types use basic primitives for React Native Codegen compatibility, while the public
8
+ * API layer provides more specific TypeScript types for better developer experience.
9
+ *
10
+ * The separation allows:
11
+ * - Native bridge compatibility with Codegen constraints
12
+ * - Type-safe public API with proper TypeScript definitions
13
+ * - Alignment between codegen spec and public contract
14
+ *
15
+ * @see https://github.com/facebook/react-native/issues/38769 for Codegen limitations
16
+ */
17
+ /**
18
+ * Generic object type for native bridge parameter passing.
19
+ *
20
+ * Used for all complex data structures passed to native methods to ensure
21
+ * React Native Codegen compatibility. The public API layer converts these
22
+ * to proper TypeScript types (CustomAttributes, CioConfig, etc.) for
23
+ * better type safety and developer experience.
24
+ *
25
+ * @internal - Not exported to avoid conflicts with public API types
26
+ */
27
+ type NativeBridgeObject = UnsafeObject;
28
+ /**
29
+ * TurboModule specification for CustomerIO SDK native bridge methods.
30
+ * Uses generic Object types for React Native Codegen compatibility.
31
+ */
32
+ export interface Spec extends TurboModule {
33
+ initialize(config: NativeBridgeObject, args: NativeBridgeObject): Promise<void>;
34
+ identify(params?: NativeBridgeObject): void;
35
+ clearIdentify(): void;
36
+ track(name: string, properties?: NativeBridgeObject): void;
37
+ screen(title: string, properties?: NativeBridgeObject): void;
38
+ setProfileAttributes(attributes: NativeBridgeObject): void;
39
+ setDeviceAttributes(attributes: NativeBridgeObject): void;
40
+ registerDeviceToken(token: string): void;
41
+ trackMetric(deliveryID: string, deviceToken: string, event: string): void;
42
+ deleteDeviceToken(): void;
43
+ }
44
+ declare const _default: Spec;
45
+ export default _default;
46
+ //# sourceMappingURL=NativeCustomerIO.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomerIO.d.ts","sourceRoot":"","sources":["../../../../../src/specs/modules/NativeCustomerIO.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAE9E;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;GASG;AACH,KAAK,kBAAkB,GAAG,YAAY,CAAC;AAMvC;;;GAGG;AACH,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,UAAU,CACR,MAAM,EAAE,kBAAkB,EAC1B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC5C,aAAa,IAAI,IAAI,CAAC;IACtB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC7D,oBAAoB,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3D,mBAAmB,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC1D,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1E,iBAAiB,IAAI,IAAI,CAAC;CAC3B;;AAED,wBAA0E"}
@@ -0,0 +1,14 @@
1
+ import { type TurboModule } from 'react-native';
2
+ /**
3
+ * Native module specification for CustomerIO Location React Native SDK
4
+ *
5
+ * @see NativeCustomerIO.ts for detailed documentation on TurboModule patterns,
6
+ * Codegen compatibility, and type safety approach.
7
+ */
8
+ export interface Spec extends TurboModule {
9
+ setLastKnownLocation(latitude: number, longitude: number): void;
10
+ requestLocationUpdate(): void;
11
+ }
12
+ declare const _default: Spec | null;
13
+ export default _default;
14
+ //# sourceMappingURL=NativeCustomerIOLocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomerIOLocation.d.ts","sourceRoot":"","sources":["../../../../../src/specs/modules/NativeCustomerIOLocation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE;;;;;GAKG;AAEH,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAChE,qBAAqB,IAAI,IAAI,CAAC;CAC/B;;AAED,wBAAyE"}
@@ -0,0 +1,18 @@
1
+ import { type TurboModule } from 'react-native';
2
+ import type { EventEmitter, UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes';
3
+ /**
4
+ * Native module specification for CustomerIO Logging React Native SDK
5
+ *
6
+ * This module defines the TurboModule interface for CustomerIO logging bridge.
7
+ * Used internally for printing logs to React Native environment instead of native.
8
+ *
9
+ * @see NativeCustomerIO.ts for detailed documentation on TurboModule patterns,
10
+ * Codegen compatibility, and type safety approach.
11
+ */
12
+ /** TurboModule interface for CustomerIO logging native operations */
13
+ export interface Spec extends TurboModule {
14
+ readonly onCioLogEvent: EventEmitter<UnsafeObject>;
15
+ }
16
+ declare const _default: Spec;
17
+ export default _default;
18
+ //# sourceMappingURL=NativeCustomerIOLogging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomerIOLogging.d.ts","sourceRoot":"","sources":["../../../../../src/specs/modules/NativeCustomerIOLogging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACb,MAAM,2CAA2C,CAAC;AAEnD;;;;;;;;GAQG;AAEH,qEAAqE;AACrE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,QAAQ,CAAC,aAAa,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;CACpD;;AAED,wBAEE"}
@@ -0,0 +1,23 @@
1
+ import { type TurboModule } from 'react-native';
2
+ import type { EventEmitter, UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes';
3
+ /**
4
+ * Native module specification for CustomerIO In-App Messaging React Native SDK
5
+ *
6
+ * @see NativeCustomerIO.ts for detailed documentation on TurboModule patterns,
7
+ * Codegen compatibility, and type safety approach.
8
+ */
9
+ /** TurboModule interface for CustomerIO In-App Messaging native operations */
10
+ export interface Spec extends TurboModule {
11
+ dismissMessage(): void;
12
+ readonly onInAppEventReceived: EventEmitter<UnsafeObject>;
13
+ setupInboxListener(): void;
14
+ readonly subscribeToMessagesChanged: EventEmitter<UnsafeObject>;
15
+ getMessages(topic?: string): Promise<UnsafeObject[]>;
16
+ markMessageOpened(message: UnsafeObject): void;
17
+ markMessageUnopened(message: UnsafeObject): void;
18
+ markMessageDeleted(message: UnsafeObject): void;
19
+ trackMessageClicked(message: UnsafeObject, actionName?: string): void;
20
+ }
21
+ declare const _default: Spec;
22
+ export default _default;
23
+ //# sourceMappingURL=NativeCustomerIOMessagingInApp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomerIOMessagingInApp.d.ts","sourceRoot":"","sources":["../../../../../src/specs/modules/NativeCustomerIOMessagingInApp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACb,MAAM,2CAA2C,CAAC;AAEnD;;;;;GAKG;AAEH,8EAA8E;AAC9E,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,cAAc,IAAI,IAAI,CAAC;IACvB,QAAQ,CAAC,oBAAoB,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IAE1D,kBAAkB,IAAI,IAAI,CAAC;IAC3B,QAAQ,CAAC,0BAA0B,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IAChE,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACrD,iBAAiB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC/C,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IACjD,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAChD,mBAAmB,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvE;;AAED,wBAEE"}
@@ -0,0 +1,20 @@
1
+ import { type TurboModule } from 'react-native';
2
+ import type { UnsafeObject } from 'react-native/Libraries/Types/CodegenTypes';
3
+ /**
4
+ * Native module specification for CustomerIO Push Messaging React Native SDK
5
+ *
6
+ * @see NativeCustomerIO.ts for detailed documentation on TurboModule patterns,
7
+ * Codegen compatibility, and type safety approach.
8
+ */
9
+ type NativeBridgeObject = UnsafeObject;
10
+ export interface Spec extends TurboModule {
11
+ onMessageReceived(message: NativeBridgeObject, handleNotificationTrigger: boolean): Promise<boolean>;
12
+ trackNotificationResponseReceived(payload: NativeBridgeObject): void;
13
+ trackNotificationReceived(payload: NativeBridgeObject): void;
14
+ getRegisteredDeviceToken(): Promise<string>;
15
+ showPromptForPushNotifications(options: NativeBridgeObject): Promise<string>;
16
+ getPushPermissionStatus(): Promise<string>;
17
+ }
18
+ declare const _default: Spec;
19
+ export default _default;
20
+ //# sourceMappingURL=NativeCustomerIOMessagingPush.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeCustomerIOMessagingPush.d.ts","sourceRoot":"","sources":["../../../../../src/specs/modules/NativeCustomerIOMessagingPush.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAE9E;;;;;GAKG;AAEH,KAAK,kBAAkB,GAAG,YAAY,CAAC;AAEvC,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,iBAAiB,CACf,OAAO,EAAE,kBAAkB,EAC3B,yBAAyB,EAAE,OAAO,GACjC,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,iCAAiC,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACrE,yBAAyB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC7D,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,8BAA8B,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5C;;AAED,wBAEE"}
@@ -0,0 +1,143 @@
1
+ import type { PushClickBehaviorAndroid } from './push';
2
+ /**
3
+ * Key-value pairs for custom user attributes and event properties.
4
+ *
5
+ * Provides a type-safe interface for passing custom data to CustomerIO.
6
+ * While the native bridge uses generic Object types for Codegen compatibility,
7
+ * this type gives developers better TypeScript intellisense and validation.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const attributes: CustomAttributes = {
12
+ * age: 25,
13
+ * email: 'user@example.com',
14
+ * preferences: { theme: 'dark' }
15
+ * };
16
+ * ```
17
+ *
18
+ * @public
19
+ */
20
+ export type CustomAttributes = Record<string, any>;
21
+ /**
22
+ * Parameters for identifying a user in CustomerIO.
23
+ *
24
+ * @param userId - Unique identifier for the user (email, username, etc.)
25
+ * @param traits - Additional user attributes and properties
26
+ *
27
+ * @public
28
+ */
29
+ export interface IdentifyParams {
30
+ userId?: string;
31
+ traits?: CustomAttributes;
32
+ }
33
+ /**
34
+ * Configuration options for initializing the CustomerIO SDK.
35
+ *
36
+ * @param cdpApiKey - Customer Data Platform API key from CustomerIO dashboard
37
+ * @param migrationSiteId - Legacy site ID for migrating from tracking API
38
+ * @param region - Data center region (US or EU)
39
+ * @param logLevel - SDK logging verbosity level
40
+ * @param apiHost - Override the CDP API host. Use to route SDK traffic through a first-party proxy.
41
+ * @param cdnHost - Override the CDN host. Use to route SDK traffic through a first-party proxy.
42
+ * @param flushAt - Number of events to batch before sending
43
+ * @param flushInterval - Time interval (seconds) to flush events
44
+ * @param screenViewUse - How to handle screen view tracking
45
+ * @param trackApplicationLifecycleEvents - Auto-track app lifecycle events
46
+ * @param autoTrackDeviceAttributes - Auto-track device information
47
+ * @param inApp - In-app messaging configuration
48
+ * @param push - Push notification configuration
49
+ *
50
+ * @public
51
+ */
52
+ export type CioConfig = {
53
+ cdpApiKey: string;
54
+ migrationSiteId?: string;
55
+ region?: CioRegion;
56
+ logLevel?: CioLogLevel;
57
+ apiHost?: string;
58
+ cdnHost?: string;
59
+ flushAt?: number;
60
+ flushInterval?: number;
61
+ screenViewUse?: ScreenView;
62
+ trackApplicationLifecycleEvents?: boolean;
63
+ autoTrackDeviceAttributes?: boolean;
64
+ inApp?: {
65
+ siteId: string;
66
+ };
67
+ push?: {
68
+ android?: {
69
+ pushClickBehavior?: PushClickBehaviorAndroid;
70
+ };
71
+ };
72
+ location?: {
73
+ /** Location tracking mode. Defaults to 'manual' if location config is provided. */
74
+ trackingMode?: CioLocationTrackingMode;
75
+ };
76
+ };
77
+ /**
78
+ * Log levels for CustomerIO SDK debugging and monitoring.
79
+ *
80
+ * Controls the verbosity of SDK logging output for debugging purposes.
81
+ *
82
+ * @public
83
+ */
84
+ export declare enum CioLogLevel {
85
+ /** No logging output */
86
+ None = "none",
87
+ /** Only error messages */
88
+ Error = "error",
89
+ /** Error and informational messages */
90
+ Info = "info",
91
+ /** All messages including debug information */
92
+ Debug = "debug"
93
+ }
94
+ /**
95
+ * Data center regions for CustomerIO API endpoints.
96
+ *
97
+ * @public
98
+ */
99
+ export declare enum CioRegion {
100
+ US = "US",
101
+ EU = "EU"
102
+ }
103
+ /**
104
+ * Screen view tracking behavior configuration.
105
+ *
106
+ * Defines how the SDK should handle automatic screen view events
107
+ * for analytics and in-app message targeting.
108
+ *
109
+ * @public
110
+ */
111
+ export declare enum ScreenView {
112
+ /** Send screen events to destinations and display in-app messages */
113
+ All = "all",
114
+ /** Only display in-app messages, don't send to destinations */
115
+ InApp = "inApp"
116
+ }
117
+ /**
118
+ * Location tracking mode for the CustomerIO Location module.
119
+ *
120
+ * @public
121
+ */
122
+ export declare enum CioLocationTrackingMode {
123
+ /** Location tracking is disabled. All location operations no-op. */
124
+ Off = "OFF",
125
+ /** Host app controls when location is captured (default when location config is provided). */
126
+ Manual = "MANUAL",
127
+ /** SDK auto-captures location once per app launch when the app becomes active. */
128
+ OnAppStart = "ON_APP_START"
129
+ }
130
+ /**
131
+ * Enum to specify the type of metric for tracking
132
+ *
133
+ * @public
134
+ */
135
+ export declare enum MetricEvent {
136
+ /** Push notification was delivered to the device */
137
+ Delivered = "delivered",
138
+ /** Push notification was opened by the user */
139
+ Opened = "opened",
140
+ /** Push notification resulted in a conversion */
141
+ Converted = "converted"
142
+ }
143
+ //# sourceMappingURL=data-pipelines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-pipelines.d.ts","sourceRoot":"","sources":["../../../../src/types/data-pipelines.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,QAAQ,CAAC;AAEvD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEnD;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,UAAU,CAAC;IAC3B,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,KAAK,CAAC,EAAE;QACN,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE;YACR,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;SAC9C,CAAC;KACH,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,mFAAmF;QACnF,YAAY,CAAC,EAAE,uBAAuB,CAAC;KACxC,CAAC;CACH,CAAC;AAEF;;;;;;GAMG;AACH,oBAAY,WAAW;IACrB,wBAAwB;IACxB,IAAI,SAAS;IACb,0BAA0B;IAC1B,KAAK,UAAU;IACf,uCAAuC;IACvC,IAAI,SAAS;IACb,+CAA+C;IAC/C,KAAK,UAAU;CAChB;AAED;;;;GAIG;AACH,oBAAY,SAAS;IACnB,EAAE,OAAO;IACT,EAAE,OAAO;CACV;AAED;;;;;;;GAOG;AACH,oBAAY,UAAU;IACpB,qEAAqE;IACrE,GAAG,QAAQ;IACX,+DAA+D;IAC/D,KAAK,UAAU;CAChB;AAED;;;;GAIG;AACH,oBAAY,uBAAuB;IACjC,oEAAoE;IACpE,GAAG,QAAQ;IACX,8FAA8F;IAC9F,MAAM,WAAW;IACjB,kFAAkF;IAClF,UAAU,iBAAiB;CAC5B;AAED;;;;GAIG;AACH,oBAAY,WAAW;IACrB,oDAAoD;IACpD,SAAS,cAAc;IACvB,+CAA+C;IAC/C,MAAM,WAAW;IACjB,iDAAiD;IACjD,SAAS,cAAc;CACxB"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * In-app message data structure for event callbacks.
3
+ *
4
+ * Contains metadata about displayed in-app messages that can be used
5
+ * for tracking user interactions and message performance analytics.
6
+ *
7
+ * @public
8
+ */
9
+ export interface InAppMessage {
10
+ /** Unique identifier for the message template */
11
+ messageId: string;
12
+ /** Unique identifier for this specific message delivery */
13
+ deliveryId?: string;
14
+ /** Element ID for inline message UI component that was interacted with */
15
+ elementId?: string;
16
+ }
17
+ /**
18
+ * Enum to represent the type of event triggered by in-app event callback.
19
+ *
20
+ * @public
21
+ */
22
+ export declare enum InAppMessageEventType {
23
+ errorWithMessage = "errorWithMessage",
24
+ messageActionTaken = "messageActionTaken",
25
+ messageDismissed = "messageDismissed",
26
+ messageShown = "messageShown"
27
+ }
28
+ /**
29
+ * Represents an inbox message for a user.
30
+ *
31
+ * Inbox messages are persistent messages that can be displayed in a message center or inbox UI.
32
+ * They support read/unread states, expiration, and custom properties.
33
+ *
34
+ * @public
35
+ */
36
+ export interface InboxMessage {
37
+ /** Internal queue identifier (for SDK use) */
38
+ queueId: string;
39
+ /** Unique identifier for this message delivery */
40
+ deliveryId?: string;
41
+ /** Expiration date for the message. Messages may be hidden after this date. */
42
+ expiry?: number;
43
+ /** Date when the message was sent (Unix timestamp in milliseconds) */
44
+ sentAt: number;
45
+ /** List of topic identifiers associated with this message */
46
+ topics: string[];
47
+ /** Message type identifier */
48
+ type: string;
49
+ /** Whether the user has opened/read this message */
50
+ opened: boolean;
51
+ /** Priority for message ordering. Lower values = higher priority (e.g., 1 is higher priority than 100) */
52
+ priority?: number;
53
+ /** Custom key-value properties associated with this message */
54
+ properties: Record<string, any>;
55
+ }
56
+ /**
57
+ * Listener for notification inbox message changes.
58
+ *
59
+ * Receives real-time notifications when inbox messages are added, updated, or removed.
60
+ * Callbacks are invoked on the main thread for safe UI updates.
61
+ *
62
+ * @public
63
+ */
64
+ export type NotificationInboxChangeListener = {
65
+ onMessagesChanged: (messages: InboxMessage[]) => void;
66
+ };
67
+ //# sourceMappingURL=in-app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-app.d.ts","sourceRoot":"","sources":["../../../../src/types/in-app.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,oBAAY,qBAAqB;IAC/B,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;IACzC,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;CAC9B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,YAAY;IAC3B,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,0GAA0G;IAC1G,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACjC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,iBAAiB,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;CACvD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './data-pipelines';
2
+ export * from './in-app';
3
+ export * from './push';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Internal-only types used within the Customer.io React Native SDK implementation.
3
+ *
4
+ * Not intended for public use.
5
+ */
6
+ /**
7
+ * Arguments passed to native SDK for package identification.
8
+ *
9
+ * Provides metadata about the host environment and SDK version to native
10
+ * CustomerIO SDK for debugging and analytics.
11
+ *
12
+ * @internal
13
+ */
14
+ export type NativeSDKArgs = {
15
+ /** The package manager or framework hosting the SDK (ReactNative, Expo) */
16
+ packageSource: string;
17
+ /** Version of the SDK package being used */
18
+ packageVersion: string;
19
+ };
20
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../../src/types/internal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,2EAA2E;IAC3E,aAAa,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Android-specific behavior when a push notification is clicked.
3
+ *
4
+ * Controls how the Android system handles activity lifecycle
5
+ * when users tap on push notifications.
6
+ *
7
+ * @public
8
+ */
9
+ export declare enum PushClickBehaviorAndroid {
10
+ /** Clear the activity task stack and start fresh */
11
+ ResetTaskStack = "RESET_TASK_STACK",
12
+ /** Prevent the current activity from restarting */
13
+ ActivityPreventRestart = "ACTIVITY_PREVENT_RESTART",
14
+ /** Use default behavior without special flags */
15
+ ActivityNoFlags = "ACTIVITY_NO_FLAGS"
16
+ }
17
+ /**
18
+ * Push notification permission request options.
19
+ *
20
+ * Configure which types of notifications to request permission for
21
+ * on different platforms.
22
+ *
23
+ * @public
24
+ */
25
+ export type CioPushPermissionOptions = {
26
+ ios?: {
27
+ /** Request permission to show badge numbers on app icon */
28
+ badge: boolean;
29
+ /** Request permission to play notification sounds */
30
+ sound: boolean;
31
+ };
32
+ };
33
+ /**
34
+ * Current push notification permission status.
35
+ *
36
+ * Indicates whether the user has granted, denied, or not yet
37
+ * responded to push notification permission requests.
38
+ *
39
+ * @public
40
+ */
41
+ export declare enum CioPushPermissionStatus {
42
+ /** User has granted push notification permissions */
43
+ Granted = "GRANTED",
44
+ /** User has denied push notification permissions */
45
+ Denied = "DENIED",
46
+ /** User may not yet have been asked for permissions and permission status is unknown */
47
+ NotDetermined = "NOTDETERMINED"
48
+ }
49
+ //# sourceMappingURL=push.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../../src/types/push.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,oBAAY,wBAAwB;IAClC,oDAAoD;IACpD,cAAc,qBAAqB;IACnC,mDAAmD;IACnD,sBAAsB,6BAA6B;IACnD,iDAAiD;IACjD,eAAe,sBAAsB;CACtC;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,GAAG,CAAC,EAAE;QACJ,2DAA2D;QAC3D,KAAK,EAAE,OAAO,CAAC;QACf,qDAAqD;QACrD,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,oBAAY,uBAAuB;IACjC,qDAAqD;IACrD,OAAO,YAAY;IACnB,oDAAoD;IACpD,MAAM,WAAW;IACjB,wFAAwF;IACxF,aAAa,kBAAkB;CAChC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Ensures the native module is available, otherwise throws a helpful linking error.
3
+ */
4
+ export declare function ensureNativeModule<NativeModule>(nativeModule: NativeModule | null): NativeModule;
5
+ /**
6
+ * Calls a method on a native module with type-safe access.
7
+ */
8
+ export declare const callNativeModule: <Spec, Result>(nativeModule: Spec, fn: (native: Spec) => Result) => Result;
9
+ //# sourceMappingURL=native-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-bridge.d.ts","sourceRoot":"","sources":["../../../../src/utils/native-bridge.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAC7C,YAAY,EAAE,YAAY,GAAG,IAAI,GAChC,YAAY,CAMd;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,IAAI,EAAE,MAAM,EAC3C,cAAc,IAAI,EAClB,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,MAAM,KAC3B,MAEF,CAAC"}
@@ -0,0 +1,44 @@
1
+ import type { CioConfig, CustomAttributes } from '../types';
2
+ /**
3
+ * Returns true if the value is undefined or null.
4
+ */
5
+ declare function isUndefined(value: unknown): boolean;
6
+ /**
7
+ * Validates that a value is a string.
8
+ * Throws if the value is not a string, or if it's empty (unless allowEmpty is true).
9
+ */
10
+ declare function validateString(value: unknown, fieldName: string, options?: {
11
+ allowEmpty?: boolean;
12
+ usage?: string;
13
+ optional?: boolean;
14
+ }): void;
15
+ /**
16
+ * Validates that a value is a plain object (not null or an array).
17
+ */
18
+ declare function validateRecord(value: unknown, fieldName: string, options?: {
19
+ usage?: string;
20
+ expectedType?: string;
21
+ optional?: boolean;
22
+ }): void;
23
+ /**
24
+ * Validates that a value is a valid CustomAttributes object.
25
+ * Automatically converts Map objects to plain objects for compatibility.
26
+ * This is a specialized version of validateRecord optimized for attribute validation.
27
+ */
28
+ declare function validateAttributes(value: unknown, fieldName: string, options?: {
29
+ usage?: string;
30
+ expectedType?: string;
31
+ optional?: boolean;
32
+ }): CustomAttributes | undefined;
33
+ type ConfigValidator = (value: unknown) => asserts value is CioConfig;
34
+ export declare const assert: {
35
+ string: typeof validateString;
36
+ record: typeof validateRecord;
37
+ attributes: typeof validateAttributes;
38
+ config: ConfigValidator;
39
+ };
40
+ export declare const validate: {
41
+ isUndefined: typeof isUndefined;
42
+ };
43
+ export {};
44
+ //# sourceMappingURL=param-validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param-validation.d.ts","sourceRoot":"","sources":["../../../../src/utils/param-validation.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAc5D;;GAEG;AACH,iBAAS,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE5C;AA0BD;;;GAGG;AACH,iBAAS,cAAc,CACrB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACG,QAqBzB;AAED;;GAEG;AACH,iBAAS,cAAc,CACrB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACf,QAeP;AAED;;;;GAIG;AACH,iBAAS,kBAAkB,CACzB,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACf,GACL,gBAAgB,GAAG,SAAS,CAe9B;AAwBD,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;AAEtE,eAAO,MAAM,MAAM,EAAE;IACnB,MAAM,EAAE,OAAO,cAAc,CAAC;IAC9B,MAAM,EAAE,OAAO,cAAc,CAAC;IAC9B,UAAU,EAAE,OAAO,kBAAkB,CAAC;IACtC,MAAM,EAAE,eAAe,CAAC;CAMzB,CAAC;AAEF,eAAO,MAAM,QAAQ;;CAEpB,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Zixflow SDK - Main entry point
3
+ *
4
+ * This provides the Zixflow-branded API that wraps the underlying Customer.io implementation.
5
+ */
6
+ import { CustomerIO } from './customerio-cdp';
7
+ import { CustomerIOInAppMessaging } from './customerio-inapp';
8
+ import { CustomerIOLocation } from './customerio-location';
9
+ import { CustomerIOPushMessaging } from './customerio-push';
10
+ export declare const Zixflow: typeof CustomerIO;
11
+ export * from './types';
12
+ export * from './notification-inbox';
13
+ export { CustomerIOInAppMessaging, CustomerIOLocation, CustomerIOPushMessaging, };
14
+ //# sourceMappingURL=zixflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zixflow.d.ts","sourceRoot":"","sources":["../../../src/zixflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,eAAO,MAAM,OAAO,mBAAa,CAAC;AAGlC,cAAc,SAAS,CAAC;AACxB,cAAc,sBAAsB,CAAC;AAGrC,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,uBAAuB,GACxB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface IdentifyParams {
2
+ userId?: string;
3
+ traits?: Record<string, any>;
4
+ }
5
+ //# sourceMappingURL=cio-params.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cio-params.d.ts","sourceRoot":"","sources":["../../../src/cio-params.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import { type ActivityIndicatorProps, type ViewStyle } from 'react-native';
3
+ import { type NativeProps } from '../specs/components/InlineMessageNativeComponent';
4
+ import type { InAppMessage } from '../types';
5
+ /**
6
+ * Props for the InlineInAppMessageView component.
7
+ */
8
+ /** @public */
9
+ export interface InlineInAppMessageViewProps extends Omit<NativeProps, 'onSizeChange' | 'onStateChange' | 'onActionClick'> {
10
+ /** Custom loading component to display while message is loading */
11
+ loadingComponent?: React.ReactNode;
12
+ /** Props for the default ActivityIndicator with optional minimum height */
13
+ loadingIndicatorProps?: ActivityIndicatorProps & {
14
+ /** Minimum height for the loading state (default: 36) */
15
+ minimumHeight?: number;
16
+ };
17
+ /** Custom styles for the loading container */
18
+ loadingContainerStyle?: ViewStyle;
19
+ /** Callback triggered when a user clicks an action button in the inline message */
20
+ onActionClick?: (message: InAppMessage, actionValue: string, actionName: string) => void;
21
+ }
22
+ /**
23
+ * A React Native component for displaying inline in-app messages with animated sizing
24
+ * and customizable loading states.
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * <InlineInAppMessageView
29
+ * elementId="my-message"
30
+ * loadingIndicatorProps={{ minimumHeight: 50 }}
31
+ * style={{ width: '100%' }}
32
+ * onActionClick={(message, actionValue, actionName) => {
33
+ * console.log('Action clicked:', { message, actionValue, actionName });
34
+ * }}
35
+ * />
36
+ * ```
37
+ */
38
+ /** @public */
39
+ declare const InlineInAppMessageView: React.FC<InlineInAppMessageViewProps>;
40
+ export default InlineInAppMessageView;
41
+ //# sourceMappingURL=InlineInAppMessageView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InlineInAppMessageView.d.ts","sourceRoot":"","sources":["../../../../src/components/InlineInAppMessageView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAC;AACzD,OAAO,EAEL,KAAK,sBAAsB,EAI3B,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAqC,EAGnC,KAAK,WAAW,EAGjB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C;;GAEG;AACH,cAAc;AACd,MAAM,WAAW,2BAA4B,SAAQ,IAAI,CACvD,WAAW,EACX,cAAc,GAAG,eAAe,GAAG,eAAe,CACnD;IACC,mEAAmE;IACnE,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACnC,2EAA2E;IAC3E,qBAAqB,CAAC,EAAE,sBAAsB,GAAG;QAC/C,yDAAyD;QACzD,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,8CAA8C;IAC9C,qBAAqB,CAAC,EAAE,SAAS,CAAC;IAClC,mFAAmF;IACnF,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,YAAY,EACrB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,KACf,IAAI,CAAC;CACX;AAED;;;;;;;;;;;;;;;GAeG;AACH,cAAc;AACd,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAgHjE,CAAC;AAcF,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type { InlineInAppMessageViewProps } from './InlineInAppMessageView';
2
+ export { default as InlineInAppMessageView } from './InlineInAppMessageView';
3
+ //# sourceMappingURL=index.d.ts.map