@expofp/react-native-efp-crowdconnected 0.1.5 → 0.1.7

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 (145) hide show
  1. package/ExpofpCrowdconnected.podspec +5 -5
  2. package/README.md +23 -13
  3. package/android/build.gradle +4 -4
  4. package/android/src/main/java/com/expofpcrowdconnected/ExpoFpCrowdConnectedLocationProviderSettings.kt +8 -1
  5. package/android/src/main/java/com/expofpcrowdconnected/ExpoFpPosition.kt +2 -3
  6. package/android/src/main/java/com/expofpcrowdconnected/RCTCrowdConnectedLocationProviderModule.kt +66 -70
  7. package/ios/ExpoFpLocationProvider/ExpoFpCrowdConnectedLocationProviderSettings.swift +36 -23
  8. package/ios/Extensions/{LocationTrackingMode+Extensions.swift → CrowdConnected+Extensions.swift} +5 -4
  9. package/ios/Frameworks/CrowdConnectedCore.xcframework/Info.plist +44 -0
  10. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/CrowdConnectedCore +0 -0
  11. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Headers/CrowdConnectedCore-Swift.h +767 -0
  12. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Headers/CrowdConnectedCore.h +15 -0
  13. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Info.plist +0 -0
  14. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios.abi.json +8032 -0
  15. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios.private.swiftinterface +162 -0
  16. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  17. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios.swiftinterface +162 -0
  18. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/Modules/module.modulemap +11 -0
  19. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/PrivacyInfo.xcprivacy +36 -0
  20. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64/CrowdConnectedCore.framework/_CodeSignature/CodeResources +201 -0
  21. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/CrowdConnectedCore +0 -0
  22. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Headers/CrowdConnectedCore-Swift.h +1530 -0
  23. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Headers/CrowdConnectedCore.h +15 -0
  24. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Info.plist +0 -0
  25. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios-simulator.abi.json +8032 -0
  26. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +162 -0
  27. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  28. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/arm64-apple-ios-simulator.swiftinterface +162 -0
  29. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/x86_64-apple-ios-simulator.abi.json +8032 -0
  30. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +162 -0
  31. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  32. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/CrowdConnectedCore.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +162 -0
  33. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/Modules/module.modulemap +11 -0
  34. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/PrivacyInfo.xcprivacy +36 -0
  35. package/ios/Frameworks/CrowdConnectedCore.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCore.framework/_CodeSignature/CodeResources +256 -0
  36. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/Info.plist +44 -0
  37. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/CrowdConnectedCoreBluetooth +0 -0
  38. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Headers/CrowdConnectedCoreBluetooth-Swift.h +329 -0
  39. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Headers/CrowdConnectedCoreBluetooth.h +11 -0
  40. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Info.plist +0 -0
  41. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios.abi.json +296 -0
  42. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios.private.swiftinterface +16 -0
  43. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  44. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios.swiftinterface +16 -0
  45. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/Modules/module.modulemap +11 -0
  46. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/PrivacyInfo.xcprivacy +14 -0
  47. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64/CrowdConnectedCoreBluetooth.framework/_CodeSignature/CodeResources +201 -0
  48. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/CrowdConnectedCoreBluetooth +0 -0
  49. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Headers/CrowdConnectedCoreBluetooth-Swift.h +654 -0
  50. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Headers/CrowdConnectedCoreBluetooth.h +11 -0
  51. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Info.plist +0 -0
  52. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios-simulator.abi.json +296 -0
  53. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +16 -0
  54. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  55. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/arm64-apple-ios-simulator.swiftinterface +16 -0
  56. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/x86_64-apple-ios-simulator.abi.json +296 -0
  57. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +16 -0
  58. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  59. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/CrowdConnectedCoreBluetooth.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +16 -0
  60. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/Modules/module.modulemap +11 -0
  61. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/PrivacyInfo.xcprivacy +14 -0
  62. package/ios/Frameworks/CrowdConnectedCoreBluetooth.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedCoreBluetooth.framework/_CodeSignature/CodeResources +256 -0
  63. package/ios/Frameworks/CrowdConnectedGeo.xcframework/Info.plist +44 -0
  64. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/CrowdConnectedGeo +0 -0
  65. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Headers/CrowdConnectedGeo-Swift.h +328 -0
  66. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Headers/CrowdConnectedGeo.h +15 -0
  67. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Info.plist +0 -0
  68. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios.abi.json +444 -0
  69. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios.private.swiftinterface +16 -0
  70. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  71. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios.swiftinterface +16 -0
  72. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/Modules/module.modulemap +11 -0
  73. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/PrivacyInfo.xcprivacy +27 -0
  74. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64/CrowdConnectedGeo.framework/_CodeSignature/CodeResources +201 -0
  75. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/CrowdConnectedGeo +0 -0
  76. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Headers/CrowdConnectedGeo-Swift.h +652 -0
  77. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Headers/CrowdConnectedGeo.h +15 -0
  78. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Info.plist +0 -0
  79. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios-simulator.abi.json +444 -0
  80. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +16 -0
  81. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  82. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/arm64-apple-ios-simulator.swiftinterface +16 -0
  83. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/x86_64-apple-ios-simulator.abi.json +444 -0
  84. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +16 -0
  85. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  86. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/CrowdConnectedGeo.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +16 -0
  87. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/Modules/module.modulemap +11 -0
  88. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/PrivacyInfo.xcprivacy +27 -0
  89. package/ios/Frameworks/CrowdConnectedGeo.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedGeo.framework/_CodeSignature/CodeResources +256 -0
  90. package/ios/Frameworks/CrowdConnectedIPS.xcframework/Info.plist +44 -0
  91. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/CrowdConnectedIPS +0 -0
  92. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Headers/CrowdConnectedIPS-Swift.h +331 -0
  93. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Headers/CrowdConnectedIPS.h +15 -0
  94. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Info.plist +0 -0
  95. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios.abi.json +1362 -0
  96. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios.private.swiftinterface +21 -0
  97. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  98. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios.swiftinterface +21 -0
  99. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/Modules/module.modulemap +11 -0
  100. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/PrivacyInfo.xcprivacy +23 -0
  101. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64/CrowdConnectedIPS.framework/_CodeSignature/CodeResources +201 -0
  102. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/CrowdConnectedIPS +0 -0
  103. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Headers/CrowdConnectedIPS-Swift.h +658 -0
  104. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Headers/CrowdConnectedIPS.h +15 -0
  105. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Info.plist +0 -0
  106. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios-simulator.abi.json +1362 -0
  107. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +21 -0
  108. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  109. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/arm64-apple-ios-simulator.swiftinterface +21 -0
  110. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/x86_64-apple-ios-simulator.abi.json +1362 -0
  111. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +21 -0
  112. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  113. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/CrowdConnectedIPS.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +21 -0
  114. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/Modules/module.modulemap +11 -0
  115. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/PrivacyInfo.xcprivacy +23 -0
  116. package/ios/Frameworks/CrowdConnectedIPS.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedIPS.framework/_CodeSignature/CodeResources +256 -0
  117. package/ios/Frameworks/CrowdConnectedShared.xcframework/Info.plist +44 -0
  118. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/CrowdConnectedShared +0 -0
  119. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Headers/CrowdConnectedShared-Swift.h +322 -0
  120. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Headers/CrowdConnectedShared.h +9 -0
  121. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Info.plist +0 -0
  122. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios.abi.json +17142 -0
  123. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios.private.swiftinterface +501 -0
  124. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
  125. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios.swiftinterface +501 -0
  126. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/Modules/module.modulemap +11 -0
  127. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/PrivacyInfo.xcprivacy +23 -0
  128. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64/CrowdConnectedShared.framework/_CodeSignature/CodeResources +201 -0
  129. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/CrowdConnectedShared +0 -0
  130. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Headers/CrowdConnectedShared-Swift.h +640 -0
  131. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Headers/CrowdConnectedShared.h +9 -0
  132. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Info.plist +0 -0
  133. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios-simulator.abi.json +17142 -0
  134. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +501 -0
  135. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
  136. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/arm64-apple-ios-simulator.swiftinterface +501 -0
  137. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/x86_64-apple-ios-simulator.abi.json +17142 -0
  138. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +501 -0
  139. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
  140. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/CrowdConnectedShared.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +501 -0
  141. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/Modules/module.modulemap +11 -0
  142. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/PrivacyInfo.xcprivacy +23 -0
  143. package/ios/Frameworks/CrowdConnectedShared.xcframework/ios-arm64_x86_64-simulator/CrowdConnectedShared.framework/_CodeSignature/CodeResources +256 -0
  144. package/ios/RCTCrowdConnectedLocationProvider.swift +69 -101
  145. package/package.json +1 -1
@@ -0,0 +1,1530 @@
1
+ #if 0
2
+ #elif defined(__arm64__) && __arm64__
3
+ // Generated by Apple Swift version 6.2.4 effective-5.10 (swiftlang-6.2.4.1.4 clang-1700.6.4.2)
4
+ #ifndef CROWDCONNECTEDCORE_SWIFT_H
5
+ #define CROWDCONNECTEDCORE_SWIFT_H
6
+ #pragma clang diagnostic push
7
+ #pragma clang diagnostic ignored "-Wgcc-compat"
8
+
9
+ #if !defined(__has_include)
10
+ # define __has_include(x) 0
11
+ #endif
12
+ #if !defined(__has_attribute)
13
+ # define __has_attribute(x) 0
14
+ #endif
15
+ #if !defined(__has_feature)
16
+ # define __has_feature(x) 0
17
+ #endif
18
+ #if !defined(__has_warning)
19
+ # define __has_warning(x) 0
20
+ #endif
21
+
22
+ #if __has_include(<swift/objc-prologue.h>)
23
+ # include <swift/objc-prologue.h>
24
+ #endif
25
+
26
+ #pragma clang diagnostic ignored "-Wauto-import"
27
+ #if defined(__OBJC__)
28
+ #include <Foundation/Foundation.h>
29
+ #endif
30
+ #if defined(__cplusplus)
31
+ #include <cstdint>
32
+ #include <cstddef>
33
+ #include <cstdbool>
34
+ #include <cstring>
35
+ #include <stdlib.h>
36
+ #include <new>
37
+ #include <type_traits>
38
+ #else
39
+ #include <stdint.h>
40
+ #include <stddef.h>
41
+ #include <stdbool.h>
42
+ #include <string.h>
43
+ #endif
44
+ #if defined(__cplusplus)
45
+ #pragma clang diagnostic push
46
+ #pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module"
47
+ #if defined(__arm64e__) && __has_include(<ptrauth.h>)
48
+ # include <ptrauth.h>
49
+ #else
50
+ #pragma clang diagnostic push
51
+ #pragma clang diagnostic ignored "-Wreserved-macro-identifier"
52
+ # ifndef __ptrauth_swift_value_witness_function_pointer
53
+ # define __ptrauth_swift_value_witness_function_pointer(x)
54
+ # endif
55
+ # ifndef __ptrauth_swift_class_method_pointer
56
+ # define __ptrauth_swift_class_method_pointer(x)
57
+ # endif
58
+ #pragma clang diagnostic pop
59
+ #endif
60
+ #pragma clang diagnostic pop
61
+ #endif
62
+
63
+ #if !defined(SWIFT_TYPEDEFS)
64
+ # define SWIFT_TYPEDEFS 1
65
+ # if __has_include(<uchar.h>)
66
+ # include <uchar.h>
67
+ # elif !defined(__cplusplus)
68
+ typedef unsigned char char8_t;
69
+ typedef uint_least16_t char16_t;
70
+ typedef uint_least32_t char32_t;
71
+ # endif
72
+ typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
73
+ typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
74
+ typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
75
+ typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
76
+ typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
77
+ typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
78
+ typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
79
+ typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
80
+ typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
81
+ typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
82
+ typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
83
+ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
84
+ #endif
85
+
86
+ #if !defined(SWIFT_PASTE)
87
+ # define SWIFT_PASTE_HELPER(x, y) x##y
88
+ # define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
89
+ #endif
90
+ #if !defined(SWIFT_METATYPE)
91
+ # define SWIFT_METATYPE(X) Class
92
+ #endif
93
+ #if !defined(SWIFT_CLASS_PROPERTY)
94
+ # if __has_feature(objc_class_property)
95
+ # define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
96
+ # else
97
+ # define SWIFT_CLASS_PROPERTY(...)
98
+ # endif
99
+ #endif
100
+ #if !defined(SWIFT_RUNTIME_NAME)
101
+ # if __has_attribute(objc_runtime_name)
102
+ # define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
103
+ # else
104
+ # define SWIFT_RUNTIME_NAME(X)
105
+ # endif
106
+ #endif
107
+ #if !defined(SWIFT_COMPILE_NAME)
108
+ # if __has_attribute(swift_name)
109
+ # define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
110
+ # else
111
+ # define SWIFT_COMPILE_NAME(X)
112
+ # endif
113
+ #endif
114
+ #if !defined(SWIFT_METHOD_FAMILY)
115
+ # if __has_attribute(objc_method_family)
116
+ # define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
117
+ # else
118
+ # define SWIFT_METHOD_FAMILY(X)
119
+ # endif
120
+ #endif
121
+ #if !defined(SWIFT_NOESCAPE)
122
+ # if __has_attribute(noescape)
123
+ # define SWIFT_NOESCAPE __attribute__((noescape))
124
+ # else
125
+ # define SWIFT_NOESCAPE
126
+ # endif
127
+ #endif
128
+ #if !defined(SWIFT_RELEASES_ARGUMENT)
129
+ # if __has_attribute(ns_consumed)
130
+ # define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
131
+ # else
132
+ # define SWIFT_RELEASES_ARGUMENT
133
+ # endif
134
+ #endif
135
+ #if !defined(SWIFT_WARN_UNUSED_RESULT)
136
+ # if __has_attribute(warn_unused_result)
137
+ # define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
138
+ # else
139
+ # define SWIFT_WARN_UNUSED_RESULT
140
+ # endif
141
+ #endif
142
+ #if !defined(SWIFT_NORETURN)
143
+ # if __has_attribute(noreturn)
144
+ # define SWIFT_NORETURN __attribute__((noreturn))
145
+ # else
146
+ # define SWIFT_NORETURN
147
+ # endif
148
+ #endif
149
+ #if !defined(SWIFT_CLASS_EXTRA)
150
+ # define SWIFT_CLASS_EXTRA
151
+ #endif
152
+ #if !defined(SWIFT_PROTOCOL_EXTRA)
153
+ # define SWIFT_PROTOCOL_EXTRA
154
+ #endif
155
+ #if !defined(SWIFT_ENUM_EXTRA)
156
+ # define SWIFT_ENUM_EXTRA
157
+ #endif
158
+ #if !defined(SWIFT_CLASS)
159
+ # if __has_attribute(objc_subclassing_restricted)
160
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
161
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
162
+ # else
163
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
164
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
165
+ # endif
166
+ #endif
167
+ #if !defined(SWIFT_RESILIENT_CLASS)
168
+ # if __has_attribute(objc_class_stub)
169
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
170
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
171
+ # else
172
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
173
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
174
+ # endif
175
+ #endif
176
+ #if !defined(SWIFT_PROTOCOL)
177
+ # define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
178
+ # define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
179
+ #endif
180
+ #if !defined(SWIFT_EXTENSION)
181
+ # define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
182
+ #endif
183
+ #if !defined(OBJC_DESIGNATED_INITIALIZER)
184
+ # if __has_attribute(objc_designated_initializer)
185
+ # define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
186
+ # else
187
+ # define OBJC_DESIGNATED_INITIALIZER
188
+ # endif
189
+ #endif
190
+ #if !defined(SWIFT_ENUM_ATTR)
191
+ # if __has_attribute(enum_extensibility)
192
+ # define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
193
+ # else
194
+ # define SWIFT_ENUM_ATTR(_extensibility)
195
+ # endif
196
+ #endif
197
+ #if !defined(SWIFT_ENUM)
198
+ # define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
199
+ # if __has_feature(generalized_swift_name)
200
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
201
+ # else
202
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
203
+ # endif
204
+ #endif
205
+ #if !defined(SWIFT_UNAVAILABLE)
206
+ # define SWIFT_UNAVAILABLE __attribute__((unavailable))
207
+ #endif
208
+ #if !defined(SWIFT_UNAVAILABLE_MSG)
209
+ # define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
210
+ #endif
211
+ #if !defined(SWIFT_AVAILABILITY)
212
+ # define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
213
+ #endif
214
+ #if !defined(SWIFT_WEAK_IMPORT)
215
+ # define SWIFT_WEAK_IMPORT __attribute__((weak_import))
216
+ #endif
217
+ #if !defined(SWIFT_DEPRECATED)
218
+ # define SWIFT_DEPRECATED __attribute__((deprecated))
219
+ #endif
220
+ #if !defined(SWIFT_DEPRECATED_MSG)
221
+ # define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
222
+ #endif
223
+ #if !defined(SWIFT_DEPRECATED_OBJC)
224
+ # if __has_feature(attribute_diagnose_if_objc)
225
+ # define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
226
+ # else
227
+ # define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
228
+ # endif
229
+ #endif
230
+ #if defined(__OBJC__)
231
+ #if !defined(IBSegueAction)
232
+ # define IBSegueAction
233
+ #endif
234
+ #endif
235
+ #if !defined(SWIFT_EXTERN)
236
+ # if defined(__cplusplus)
237
+ # define SWIFT_EXTERN extern "C"
238
+ # else
239
+ # define SWIFT_EXTERN extern
240
+ # endif
241
+ #endif
242
+ #if !defined(SWIFT_CALL)
243
+ # define SWIFT_CALL __attribute__((swiftcall))
244
+ #endif
245
+ #if !defined(SWIFT_INDIRECT_RESULT)
246
+ # define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
247
+ #endif
248
+ #if !defined(SWIFT_CONTEXT)
249
+ # define SWIFT_CONTEXT __attribute__((swift_context))
250
+ #endif
251
+ #if !defined(SWIFT_ERROR_RESULT)
252
+ # define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
253
+ #endif
254
+ #if defined(__cplusplus)
255
+ # define SWIFT_NOEXCEPT noexcept
256
+ #else
257
+ # define SWIFT_NOEXCEPT
258
+ #endif
259
+ #if !defined(SWIFT_C_INLINE_THUNK)
260
+ # if __has_attribute(always_inline)
261
+ # if __has_attribute(nodebug)
262
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
263
+ # else
264
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
265
+ # endif
266
+ # else
267
+ # define SWIFT_C_INLINE_THUNK inline
268
+ # endif
269
+ #endif
270
+ #if defined(_WIN32)
271
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
272
+ # define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
273
+ #endif
274
+ #else
275
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
276
+ # define SWIFT_IMPORT_STDLIB_SYMBOL
277
+ #endif
278
+ #endif
279
+ #if defined(__OBJC__)
280
+ #if __has_feature(objc_modules)
281
+ #if __has_warning("-Watimport-in-framework-header")
282
+ #pragma clang diagnostic ignored "-Watimport-in-framework-header"
283
+ #endif
284
+ @import Foundation;
285
+ @import ObjectiveC;
286
+ #endif
287
+
288
+ #endif
289
+ #pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
290
+ #pragma clang diagnostic ignored "-Wduplicate-method-arg"
291
+ #if __has_warning("-Wpragma-clang-attribute")
292
+ # pragma clang diagnostic ignored "-Wpragma-clang-attribute"
293
+ #endif
294
+ #pragma clang diagnostic ignored "-Wunknown-pragmas"
295
+ #pragma clang diagnostic ignored "-Wnullability"
296
+ #pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
297
+ #pragma clang diagnostic ignored "-Wunsafe-buffer-usage"
298
+
299
+ #if __has_attribute(external_source_symbol)
300
+ # pragma push_macro("any")
301
+ # undef any
302
+ # pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="CrowdConnectedCore",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
303
+ # pragma pop_macro("any")
304
+ #endif
305
+
306
+ #if defined(__OBJC__)
307
+
308
+ @class Credentials;
309
+ enum LocationTrackingMode : NSInteger;
310
+ @class NSString;
311
+ /// SDK Configuration containing authentication Credentials and tracking mode.
312
+ /// The Configuration class encapsulates all settings required to initialize and run
313
+ /// the CrowdConnected SDK. It includes authentication credentials, enabled modules,
314
+ /// and location tracking behavior.
315
+ /// <em>Usage:</em>
316
+ /// Create a Configuration using the fluent Builder pattern:
317
+ /// \code
318
+ /// let config = Configuration.Builder()
319
+ /// .withCredentials(appKey: "your-app-key",
320
+ /// clientId: "your-client-id",
321
+ /// clientSecret: "your-client-secret")
322
+ /// .with(modules: [.geo, .ips])
323
+ /// .with(trackingMode: .background)
324
+ /// .build()
325
+ ///
326
+ /// \endcodeOr use the direct initializer if you already have Credentials:
327
+ /// \code
328
+ /// let credentials = Credentials(appKey: "key", clientId: "id", clientSecret: "secret")
329
+ /// let config = Configuration(credentials: credentials, modules: [.geo], trackingMode: .foreground)
330
+ ///
331
+ /// \endcode
332
+ SWIFT_CLASS("_TtC18CrowdConnectedCore13Configuration")
333
+ @interface Configuration : NSObject
334
+ /// The authentication credentials provided by CrowdConnected.
335
+ /// These are required to authenticate API requests and should be kept secure.
336
+ @property (nonatomic, readonly, strong) Credentials * _Nonnull credentials;
337
+ /// The location tracking mode determining foreground and background tracking behavior.
338
+ /// Controls whether location tracking is active in the background, foreground, or both.
339
+ @property (nonatomic, readonly) enum LocationTrackingMode trackingMode;
340
+ /// Optional custom fields for internal use.
341
+ @property (nonatomic, readonly, copy) NSDictionary<NSString *, NSString *> * _Nonnull customFields;
342
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
343
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
344
+ @end
345
+
346
+ enum Module : NSInteger;
347
+ /// Builder for creating Configuration objects with a fluent, chainable API.
348
+ /// The Builder pattern provides a cleaner and more readable way to construct
349
+ /// Configuration objects with all required credentials and optional settings.
350
+ /// <em>Features:</em>
351
+ /// <ul>
352
+ /// <li>
353
+ /// Fluent API with method chaining for easy configuration
354
+ /// </li>
355
+ /// <li>
356
+ /// Consolidated credential setter for all authentication parameters
357
+ /// </li>
358
+ /// <li>
359
+ /// Default values for optional parameters
360
+ /// </li>
361
+ /// <li>
362
+ /// Single or bulk module addition
363
+ /// </li>
364
+ /// <li>
365
+ /// Automatic duplicate module prevention
366
+ /// </li>
367
+ /// <li>
368
+ /// Validation in build() to ensure all required credentials are set
369
+ /// </li>
370
+ /// </ul>
371
+ /// <em>Example usage:</em>
372
+ /// \code
373
+ /// // Full configuration with all credentials and modules
374
+ /// let config = Configuration.Builder()
375
+ /// .withCredentials(appKey: "app-456",
376
+ /// clientId: "client-789",
377
+ /// clientSecret: "secret-abc")
378
+ /// .with(modules: [.geo, .ips])
379
+ /// .with(trackingMode: .background)
380
+ /// .build()
381
+ ///
382
+ /// // Add modules incrementally
383
+ /// let customConfig = Configuration.Builder()
384
+ /// .withCredentials(appKey: "app-456",
385
+ /// clientId: "client-789",
386
+ /// clientSecret: "secret-abc")
387
+ /// .with(module: .geo)
388
+ /// .with(module: .ips)
389
+ /// .build()
390
+ ///
391
+ /// \endcode
392
+ SWIFT_CLASS("_TtCC18CrowdConnectedCore13Configuration7Builder")
393
+ @interface Builder : NSObject
394
+ /// Creates a new Builder instance for constructing Configuration objects.
395
+ /// Initializes a Builder with all optional properties unset. You must call
396
+ /// withCredentials() to set authentication credentials before calling build(),
397
+ /// or a fatal error will be raised.
398
+ /// Other properties have sensible defaults:
399
+ /// <ul>
400
+ /// <li>
401
+ /// modules: Empty array (no modules enabled)
402
+ /// </li>
403
+ /// <li>
404
+ /// trackingMode: .foreground (only track when app is in foreground)
405
+ /// </li>
406
+ /// </ul>
407
+ /// <em>Typical usage:</em>
408
+ /// \code
409
+ /// let config = Configuration.Builder()
410
+ /// .withCredentials(appKey: "key", clientId: "id", clientSecret: "secret")
411
+ /// .with(module: .geo)
412
+ /// .build()
413
+ ///
414
+ /// \endcode
415
+ - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
416
+ /// Sets all required authentication credentials in one call.
417
+ /// This method consolidates all credential parameters (appKey, clientId, clientSecret)
418
+ /// into a single Credentials object. Must be called before build() to successfully
419
+ /// create a Configuration.
420
+ /// \param appKey Your unique application key provided by CrowdConnected.
421
+ ///
422
+ /// \param clientId Your unique client ID provided by CrowdConnected for API authentication.
423
+ ///
424
+ /// \param clientSecret Your unique client secret provided by CrowdConnected for API authentication.
425
+ /// Keep this value secure and never hardcode it in production code.
426
+ ///
427
+ ///
428
+ /// returns:
429
+ /// Self for method chaining, allowing fluent API usage.
430
+ - (Builder * _Nonnull)withCredentialsWithAppKey:(NSString * _Nonnull)appKey clientId:(NSString * _Nonnull)clientId clientSecret:(NSString * _Nonnull)clientSecret;
431
+ /// Adds or removes a single module from the configuration’s module list.
432
+ /// Use this method to add or remove modules one at a time. Multiple calls will append
433
+ /// each module to the existing list or remove it as specified, allowing incremental
434
+ /// module setup and modification.
435
+ /// <em>Behavior:</em>
436
+ /// <ul>
437
+ /// <li>
438
+ /// When <code>enabled</code> is <code>true</code> (default): Adds the module to the list if not already present.
439
+ /// Duplicate modules are automatically prevented.
440
+ /// </li>
441
+ /// <li>
442
+ /// When <code>enabled</code> is <code>false</code>: Removes all instances of the module from the list.
443
+ /// </li>
444
+ /// </ul>
445
+ /// <em>Examples:</em>
446
+ /// \code
447
+ /// // Add modules
448
+ /// builder.with(module: .geo) // Add geo module (enabled=true by default)
449
+ /// builder.with(module: .ips, enabled: true) // Explicitly add IPS module
450
+ ///
451
+ /// // Remove modules
452
+ /// builder.with(module: .geo, enabled: false) // Remove geo module
453
+ ///
454
+ /// \endcode\param module A single Module instance to add or remove from the configuration.
455
+ ///
456
+ /// \param enabled Boolean flag indicating whether to add (true) or remove (false) the module.
457
+ /// Defaults to true (add the module).
458
+ ///
459
+ ///
460
+ /// returns:
461
+ /// Self for method chaining, allowing fluent API usage.
462
+ - (Builder * _Nonnull)withModule:(enum Module)module_ enabled:(BOOL)enabled;
463
+ /// Sets the location tracking mode for the SDK.
464
+ /// This determines whether the SDK tracks user location in foreground,
465
+ /// background, or both scenarios. The default is foreground-only tracking.
466
+ /// \param trackingMode The desired LocationTrackingMode.
467
+ ///
468
+ ///
469
+ /// returns:
470
+ /// Self for method chaining, allowing fluent API usage.
471
+ - (Builder * _Nonnull)withTrackingMode:(enum LocationTrackingMode)trackingMode;
472
+ /// Sets a custom fields for internal use.
473
+ /// \param customFields The custom fields.
474
+ ///
475
+ ///
476
+ /// returns:
477
+ /// Self for method chaining, allowing fluent API usage.
478
+ - (Builder * _Nonnull)withCustomFields:(NSDictionary<NSString *, NSString *> * _Nonnull)customFields;
479
+ /// Builds and returns the configured Configuration object.
480
+ /// This method finalizes the builder and creates an immutable Configuration
481
+ /// instance with all the settings specified through the builder methods.
482
+ /// After a successful call to build(), the Configuration object is ready to be
483
+ /// passed to the SDK’s start method.
484
+ /// <em>Validation:</em>
485
+ /// This method performs validation to ensure credentials have been set:
486
+ /// <ul>
487
+ /// <li>
488
+ /// withCredentials() must be called before build()
489
+ /// </li>
490
+ /// </ul>
491
+ /// If credentials have not been set, this method will raise a fatal error
492
+ /// indicating that credentials are required.
493
+ /// <em>Return Value:</em>
494
+ /// A fully configured Configuration object with:
495
+ /// <ul>
496
+ /// <li>
497
+ /// credentials: Set via withCredentials()
498
+ /// </li>
499
+ /// <li>
500
+ /// modules: Set via with(modules:) or with(module:), defaults to empty array
501
+ /// </li>
502
+ /// <li>
503
+ /// trackingMode: Set via with(trackingMode:), defaults to .foreground
504
+ /// </li>
505
+ /// </ul>
506
+ ///
507
+ /// throws:
508
+ /// Fatal error if credentials have not been set via withCredentials().
509
+ ///
510
+ /// returns:
511
+ /// A fully configured Configuration object.
512
+ - (Configuration * _Nonnull)build SWIFT_WARN_UNUSED_RESULT;
513
+ @end
514
+
515
+ /// Pixel coordinates representing a location on a 2D floor plan.
516
+ SWIFT_CLASS("_TtC18CrowdConnectedCore10Coordinate")
517
+ @interface Coordinate : NSObject
518
+ /// The x coordinate of the location in pixels.
519
+ @property (nonatomic) double xPixels;
520
+ /// The y coordinate of the location in pixels.
521
+ @property (nonatomic) double yPixels;
522
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
523
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
524
+ @end
525
+
526
+ /// Authentication Credentials used for the CrowdConnected SDK.
527
+ /// All credential values are provided by CrowdConnected.
528
+ SWIFT_CLASS("_TtC18CrowdConnectedCore11Credentials")
529
+ @interface Credentials : NSObject
530
+ /// Creates a new credentials object.
531
+ /// \param appKey The unique app key provided by CrowdConnected.
532
+ ///
533
+ /// \param clientId The client ID provided by CrowdConnected.
534
+ ///
535
+ /// \param clientSecret The client secret key provided by CrowdConnected.
536
+ ///
537
+ - (nonnull instancetype)initWithAppKey:(NSString * _Nonnull)appKey clientId:(NSString * _Nonnull)clientId clientSecret:(NSString * _Nonnull)clientSecret OBJC_DESIGNATED_INITIALIZER;
538
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
539
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
540
+ @end
541
+
542
+ @protocol CrowdConnectedDelegate;
543
+ @class Location;
544
+ /// The entry point class of the <code>CrowdConnected</code> SDK.
545
+ SWIFT_CLASS("_TtC18CrowdConnectedCore14CrowdConnected")
546
+ @interface CrowdConnected : NSObject
547
+ /// A <code>CrowdConnectedDelegate</code> delegate used to return location data produced by the <code>CrowdConnected</code> SDK.
548
+ /// The delegate receives callbacks for:
549
+ /// <ul>
550
+ /// <li>
551
+ /// <code>locationProvider(_:didStartSuccess:)</code> — called when SDK starts successfully
552
+ /// </li>
553
+ /// <li>
554
+ /// <code>locationProvider(_:didStartFailure:)</code> — called if SDK start fails
555
+ /// </li>
556
+ /// <li>
557
+ /// <code>locationProvider(_:didUpdateLocation:)</code> — called when new location data is available
558
+ /// </li>
559
+ /// </ul>
560
+ /// Doesn’t need to be set if location updates are not expected or used by your app. Defaults to <code>nil</code>.
561
+ @property (nonatomic, weak) id <CrowdConnectedDelegate> _Nullable delegate;
562
+ /// The shared <code>CrowdConnected</code> instance.
563
+ /// Used for SDK configurations and communication.
564
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) CrowdConnected * _Nonnull shared;)
565
+ + (CrowdConnected * _Nonnull)shared SWIFT_WARN_UNUSED_RESULT;
566
+ /// The associated CrowdConnected device ID.
567
+ /// Available after the SDK has been started successfully.
568
+ @property (nonatomic, readonly, copy) NSString * _Nullable deviceID;
569
+ /// Check if the SDK is currently running and successfully started.
570
+ ///
571
+ /// returns:
572
+ /// <code>true</code> if SDK is running, <code>false</code> otherwise.
573
+ @property (nonatomic, readonly) BOOL isRunning;
574
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
575
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
576
+ /// Get the SDK version.
577
+ ///
578
+ /// returns:
579
+ /// The SDK version string in the format “version(build)”.
580
+ + (NSString * _Nonnull)getVersion SWIFT_WARN_UNUSED_RESULT;
581
+ /// Start the SDK.
582
+ /// Initiates the SDK lifecycle including authentication, device registration, and module activation.
583
+ /// When this method is called:
584
+ /// <ul>
585
+ /// <li>
586
+ /// If SDK is already running, the request is rejected.
587
+ /// </li>
588
+ /// <li>
589
+ /// If SDK is transitioning (start/stop in progress), the request is queued and will execute when the current transition completes.
590
+ /// </li>
591
+ /// <li>
592
+ /// Otherwise, the start process begins: credentials are validated, device registers with the server, and modules are activated.
593
+ /// </li>
594
+ /// </ul>
595
+ /// The start operation is asynchronous. Results are reported through the delegate:
596
+ /// <ul>
597
+ /// <li>
598
+ /// <code>locationProvider(_:didStartSuccess:)</code> is called when the SDK starts successfully with the device ID.
599
+ /// </li>
600
+ /// <li>
601
+ /// <code>locationProvider(_:didStartFailure:)</code> is called if the SDK fails to start with an error code.
602
+ /// </li>
603
+ /// <li>
604
+ /// Once started, <code>locationProvider(_:didUpdateLocation:)</code> will be called with location updates as they arrive.
605
+ /// </li>
606
+ /// </ul>
607
+ /// \param configuration The SDK configuration containing authentication credentials, enabled modules, and tracking mode.
608
+ ///
609
+ - (void)startWith:(Configuration * _Nonnull)configuration;
610
+ /// Stop the SDK and all its processes.
611
+ /// Stops all SDK operations including location tracking, data publishing, and background monitoring.
612
+ /// The stop operation is asynchronous and serialized through the lifecycle queue.
613
+ /// Call this method when you no longer need location tracking, such as on app termination or when
614
+ /// transitioning to a state that doesn’t require the SDK.
615
+ - (void)stop;
616
+ /// Set and persist an alias for the current device.
617
+ /// \param key The alias key.
618
+ ///
619
+ /// \param value The alias value.
620
+ ///
621
+ - (void)setAliasWithKey:(NSString * _Nonnull)key value:(NSString * _Nonnull)value;
622
+ /// Get the last known location from the SDK.
623
+ ///
624
+ /// returns:
625
+ /// The last known location, or <code>nil</code> if no location has been received yet.
626
+ - (Location * _Nullable)getLastLocation SWIFT_WARN_UNUSED_RESULT;
627
+ /// Get the current SDK configuration.
628
+ ///
629
+ /// returns:
630
+ /// The SDK configuration, or <code>nil</code> if the SDK hasn’t been started yet.
631
+ - (Configuration * _Nullable)getCurrentConfiguration SWIFT_WARN_UNUSED_RESULT;
632
+ @end
633
+
634
+ enum ErrorCode : NSInteger;
635
+ /// A delegate protocol for receiving callbacks from the CrowdConnected SDK.
636
+ /// Implement this protocol to receive location updates, success notifications, and error callbacks from the SDK.
637
+ /// All methods are optional.
638
+ SWIFT_PROTOCOL("_TtP18CrowdConnectedCore22CrowdConnectedDelegate_")
639
+ @protocol CrowdConnectedDelegate
640
+ @optional
641
+ /// Called when new locations have been computed by the SDK.
642
+ /// \param crowdConnected The <code>CrowdConnected</code> instance that generated the update.
643
+ ///
644
+ /// \param locations An array of <code>Location</code> items in chronological order.
645
+ ///
646
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didUpdateLocation:(Location * _Nonnull)location;
647
+ /// Called when the SDK has successfully started and registered the device.
648
+ /// \param crowdConnected The <code>CrowdConnected</code> instance that completed initialization.
649
+ ///
650
+ /// \param deviceId The unique device identifier assigned by the CrowdConnected backend.
651
+ ///
652
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didStartSuccess:(NSString * _Nonnull)deviceId;
653
+ /// Called when an error occurs in the SDK.
654
+ /// \param crowdConnected The <code>CrowdConnected</code> instance where the error occurred.
655
+ ///
656
+ /// \param errorCode A <code>ErrorCode</code> describing the error that occurred.
657
+ ///
658
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didStartFailure:(enum ErrorCode)errorCode;
659
+ @end
660
+
661
+ /// Validation result for SDK Configuration and startup.
662
+ /// Use the <code>description</code> property for detailed Error messages.
663
+ typedef SWIFT_ENUM(NSInteger, ErrorCode, open) {
664
+ /// SDK configuration and startup completed successfully.
665
+ ErrorCodeNoError = 0,
666
+ /// SDK is already running and cannot be started again.
667
+ ErrorCodeAlreadyRunning = 1,
668
+ /// App key is missing or empty in the credentials.
669
+ ErrorCodeMissingAppKey = 2,
670
+ /// Token is missing or empty in the credentials.
671
+ ErrorCodeMissingToken = 3,
672
+ /// Secret is missing or empty in the credentials.
673
+ ErrorCodeMissingSecret = 4,
674
+ /// Device registration with the CrowdConnected backend failed.
675
+ ErrorCodeDeviceRegistrationFailed = 5,
676
+ /// No SDK modules (Geo or IPS) are active.
677
+ ErrorCodeNoModulesAreActive = 6,
678
+ /// <code>NSBluetoothAlwaysUsageDescription</code> is missing from Info.plist.
679
+ ErrorCodeMissingBluetoothPermissionItem = 7,
680
+ /// <code>NSLocationWhenInUseUsageDescription</code> is missing from Info.plist.
681
+ ErrorCodeMissingWhileInUseLocationPermissionItem = 8,
682
+ /// <code>NSLocationAlwaysAndWhenInUseUsageDescription</code> is missing from Info.plist.
683
+ ErrorCodeMissingAlwaysLocationPermissionItem = 9,
684
+ /// <code>location</code> entry is missing from <code>UIBackgroundModes</code> in Info.plist.
685
+ ErrorCodeMissingLocationBackgroundModeItem = 10,
686
+ /// <code>bluetooth-central</code> entry is missing from <code>UIBackgroundModes</code> in Info.plist.
687
+ ErrorCodeMissingBluetoothBackgroundModeItem = 11,
688
+ ErrorCodeNoGeoModuleImported = 15,
689
+ ErrorCodeNoIPSModuleImported = 17,
690
+ ErrorCodeNoCoreBluetoothModuleImported = 19,
691
+ };
692
+ static NSString * _Nonnull const ErrorCodeDomain = @"CrowdConnectedCore.ErrorCode";
693
+
694
+ /// A location computed by the CrowdConnected SDK.
695
+ /// Contains geographic coordinates, metric positions, floor information, timestamps, and quality indicators.
696
+ SWIFT_CLASS("_TtC18CrowdConnectedCore8Location")
697
+ @interface Location : NSObject
698
+ /// The x coordinate of the location in meters.
699
+ @property (nonatomic) double xMeters;
700
+ /// The y coordinate of the location in meters.
701
+ @property (nonatomic) double yMeters;
702
+ /// The latitude of the location.
703
+ @property (nonatomic) double latitude;
704
+ /// The longitude of the location.
705
+ @property (nonatomic) double longitude;
706
+ /// The coordinates of the location in pixels.
707
+ @property (nonatomic, strong) Coordinate * _Nullable pixelCoordinates;
708
+ /// The floor number.
709
+ @property (nonatomic) NSInteger floor;
710
+ /// The surface of the location.
711
+ @property (nonatomic, copy) NSString * _Nonnull surfaceID;
712
+ /// The timestamp of the location.
713
+ @property (nonatomic) int64_t timestamp;
714
+ /// The type of the location.
715
+ /// Can be either “IPS” (Indoor Positioning System) or “GEO” (GPS/Geographic).
716
+ @property (nonatomic, copy) NSString * _Nonnull type;
717
+ /// The quality of the location.
718
+ /// Values range from 0 to 2, where 2 represents the best accuracy.
719
+ @property (nonatomic) NSInteger quality;
720
+ /// For IPS location type only. The maximum RSSI value recently observed.
721
+ /// Defaults to <code>-1000</code>.
722
+ @property (nonatomic) double maxRSSI;
723
+ /// For IPS location type only. The x-coordinate of the beacon with the maximum RSSI value.
724
+ /// Defaults to <code>0</code>.
725
+ @property (nonatomic) double beaconXForMaxRSSI;
726
+ /// For IPS location type only. The y-coordinate of the beacon with the maximum RSSI value.
727
+ /// Defaults to <code>0</code>.
728
+ @property (nonatomic) double beaconYForMaxRSSI;
729
+ /// For IPS location type only. The surface ID of the beacon with the maximum RSSI value.
730
+ /// Defaults to <code>00000000-0000-0000-0000-000000000000</code>.
731
+ @property (nonatomic, copy) NSString * _Nonnull surfaceIDForMaxRSSI;
732
+ /// For IPS location type only. The number of surfaces with at least one beacon observation.
733
+ @property (nonatomic) NSInteger observedSurfaces;
734
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
735
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
736
+ @end
737
+
738
+ /// Location tracking mode determining whether the SDK tracks location in foreground only or both foreground and background.
739
+ typedef SWIFT_ENUM(NSInteger, LocationTrackingMode, open) {
740
+ /// Track location only when the app is in the foreground.
741
+ LocationTrackingModeForeground = 0,
742
+ /// Track location both in foreground and background.
743
+ LocationTrackingModeBackground = 1,
744
+ };
745
+
746
+ /// Represents the modules available in the CrowdConnected SDK.
747
+ typedef SWIFT_ENUM(NSInteger, Module, open) {
748
+ /// Geofencing / location module.
749
+ ModuleGeo = 0,
750
+ /// Indoor Positioning System (IPS) module.
751
+ ModuleIps = 1,
752
+ /// Core Bluetooth module for BLE interactions.
753
+ ModuleCoreBluetooth = 2,
754
+ };
755
+
756
+ #endif
757
+ #if __has_attribute(external_source_symbol)
758
+ # pragma clang attribute pop
759
+ #endif
760
+ #if defined(__cplusplus)
761
+ #endif
762
+ #pragma clang diagnostic pop
763
+ #endif
764
+
765
+ #elif defined(__x86_64__) && __x86_64__
766
+ // Generated by Apple Swift version 6.2.4 effective-5.10 (swiftlang-6.2.4.1.4 clang-1700.6.4.2)
767
+ #ifndef CROWDCONNECTEDCORE_SWIFT_H
768
+ #define CROWDCONNECTEDCORE_SWIFT_H
769
+ #pragma clang diagnostic push
770
+ #pragma clang diagnostic ignored "-Wgcc-compat"
771
+
772
+ #if !defined(__has_include)
773
+ # define __has_include(x) 0
774
+ #endif
775
+ #if !defined(__has_attribute)
776
+ # define __has_attribute(x) 0
777
+ #endif
778
+ #if !defined(__has_feature)
779
+ # define __has_feature(x) 0
780
+ #endif
781
+ #if !defined(__has_warning)
782
+ # define __has_warning(x) 0
783
+ #endif
784
+
785
+ #if __has_include(<swift/objc-prologue.h>)
786
+ # include <swift/objc-prologue.h>
787
+ #endif
788
+
789
+ #pragma clang diagnostic ignored "-Wauto-import"
790
+ #if defined(__OBJC__)
791
+ #include <Foundation/Foundation.h>
792
+ #endif
793
+ #if defined(__cplusplus)
794
+ #include <cstdint>
795
+ #include <cstddef>
796
+ #include <cstdbool>
797
+ #include <cstring>
798
+ #include <stdlib.h>
799
+ #include <new>
800
+ #include <type_traits>
801
+ #else
802
+ #include <stdint.h>
803
+ #include <stddef.h>
804
+ #include <stdbool.h>
805
+ #include <string.h>
806
+ #endif
807
+ #if defined(__cplusplus)
808
+ #pragma clang diagnostic push
809
+ #pragma clang diagnostic ignored "-Wnon-modular-include-in-framework-module"
810
+ #if defined(__arm64e__) && __has_include(<ptrauth.h>)
811
+ # include <ptrauth.h>
812
+ #else
813
+ #pragma clang diagnostic push
814
+ #pragma clang diagnostic ignored "-Wreserved-macro-identifier"
815
+ # ifndef __ptrauth_swift_value_witness_function_pointer
816
+ # define __ptrauth_swift_value_witness_function_pointer(x)
817
+ # endif
818
+ # ifndef __ptrauth_swift_class_method_pointer
819
+ # define __ptrauth_swift_class_method_pointer(x)
820
+ # endif
821
+ #pragma clang diagnostic pop
822
+ #endif
823
+ #pragma clang diagnostic pop
824
+ #endif
825
+
826
+ #if !defined(SWIFT_TYPEDEFS)
827
+ # define SWIFT_TYPEDEFS 1
828
+ # if __has_include(<uchar.h>)
829
+ # include <uchar.h>
830
+ # elif !defined(__cplusplus)
831
+ typedef unsigned char char8_t;
832
+ typedef uint_least16_t char16_t;
833
+ typedef uint_least32_t char32_t;
834
+ # endif
835
+ typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
836
+ typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
837
+ typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
838
+ typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
839
+ typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
840
+ typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
841
+ typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
842
+ typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
843
+ typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
844
+ typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
845
+ typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
846
+ typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
847
+ #endif
848
+
849
+ #if !defined(SWIFT_PASTE)
850
+ # define SWIFT_PASTE_HELPER(x, y) x##y
851
+ # define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
852
+ #endif
853
+ #if !defined(SWIFT_METATYPE)
854
+ # define SWIFT_METATYPE(X) Class
855
+ #endif
856
+ #if !defined(SWIFT_CLASS_PROPERTY)
857
+ # if __has_feature(objc_class_property)
858
+ # define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
859
+ # else
860
+ # define SWIFT_CLASS_PROPERTY(...)
861
+ # endif
862
+ #endif
863
+ #if !defined(SWIFT_RUNTIME_NAME)
864
+ # if __has_attribute(objc_runtime_name)
865
+ # define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
866
+ # else
867
+ # define SWIFT_RUNTIME_NAME(X)
868
+ # endif
869
+ #endif
870
+ #if !defined(SWIFT_COMPILE_NAME)
871
+ # if __has_attribute(swift_name)
872
+ # define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
873
+ # else
874
+ # define SWIFT_COMPILE_NAME(X)
875
+ # endif
876
+ #endif
877
+ #if !defined(SWIFT_METHOD_FAMILY)
878
+ # if __has_attribute(objc_method_family)
879
+ # define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
880
+ # else
881
+ # define SWIFT_METHOD_FAMILY(X)
882
+ # endif
883
+ #endif
884
+ #if !defined(SWIFT_NOESCAPE)
885
+ # if __has_attribute(noescape)
886
+ # define SWIFT_NOESCAPE __attribute__((noescape))
887
+ # else
888
+ # define SWIFT_NOESCAPE
889
+ # endif
890
+ #endif
891
+ #if !defined(SWIFT_RELEASES_ARGUMENT)
892
+ # if __has_attribute(ns_consumed)
893
+ # define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
894
+ # else
895
+ # define SWIFT_RELEASES_ARGUMENT
896
+ # endif
897
+ #endif
898
+ #if !defined(SWIFT_WARN_UNUSED_RESULT)
899
+ # if __has_attribute(warn_unused_result)
900
+ # define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
901
+ # else
902
+ # define SWIFT_WARN_UNUSED_RESULT
903
+ # endif
904
+ #endif
905
+ #if !defined(SWIFT_NORETURN)
906
+ # if __has_attribute(noreturn)
907
+ # define SWIFT_NORETURN __attribute__((noreturn))
908
+ # else
909
+ # define SWIFT_NORETURN
910
+ # endif
911
+ #endif
912
+ #if !defined(SWIFT_CLASS_EXTRA)
913
+ # define SWIFT_CLASS_EXTRA
914
+ #endif
915
+ #if !defined(SWIFT_PROTOCOL_EXTRA)
916
+ # define SWIFT_PROTOCOL_EXTRA
917
+ #endif
918
+ #if !defined(SWIFT_ENUM_EXTRA)
919
+ # define SWIFT_ENUM_EXTRA
920
+ #endif
921
+ #if !defined(SWIFT_CLASS)
922
+ # if __has_attribute(objc_subclassing_restricted)
923
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
924
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
925
+ # else
926
+ # define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
927
+ # define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
928
+ # endif
929
+ #endif
930
+ #if !defined(SWIFT_RESILIENT_CLASS)
931
+ # if __has_attribute(objc_class_stub)
932
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
933
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
934
+ # else
935
+ # define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
936
+ # define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
937
+ # endif
938
+ #endif
939
+ #if !defined(SWIFT_PROTOCOL)
940
+ # define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
941
+ # define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
942
+ #endif
943
+ #if !defined(SWIFT_EXTENSION)
944
+ # define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
945
+ #endif
946
+ #if !defined(OBJC_DESIGNATED_INITIALIZER)
947
+ # if __has_attribute(objc_designated_initializer)
948
+ # define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
949
+ # else
950
+ # define OBJC_DESIGNATED_INITIALIZER
951
+ # endif
952
+ #endif
953
+ #if !defined(SWIFT_ENUM_ATTR)
954
+ # if __has_attribute(enum_extensibility)
955
+ # define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
956
+ # else
957
+ # define SWIFT_ENUM_ATTR(_extensibility)
958
+ # endif
959
+ #endif
960
+ #if !defined(SWIFT_ENUM)
961
+ # define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
962
+ # if __has_feature(generalized_swift_name)
963
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
964
+ # else
965
+ # define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
966
+ # endif
967
+ #endif
968
+ #if !defined(SWIFT_UNAVAILABLE)
969
+ # define SWIFT_UNAVAILABLE __attribute__((unavailable))
970
+ #endif
971
+ #if !defined(SWIFT_UNAVAILABLE_MSG)
972
+ # define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
973
+ #endif
974
+ #if !defined(SWIFT_AVAILABILITY)
975
+ # define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
976
+ #endif
977
+ #if !defined(SWIFT_WEAK_IMPORT)
978
+ # define SWIFT_WEAK_IMPORT __attribute__((weak_import))
979
+ #endif
980
+ #if !defined(SWIFT_DEPRECATED)
981
+ # define SWIFT_DEPRECATED __attribute__((deprecated))
982
+ #endif
983
+ #if !defined(SWIFT_DEPRECATED_MSG)
984
+ # define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
985
+ #endif
986
+ #if !defined(SWIFT_DEPRECATED_OBJC)
987
+ # if __has_feature(attribute_diagnose_if_objc)
988
+ # define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
989
+ # else
990
+ # define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
991
+ # endif
992
+ #endif
993
+ #if defined(__OBJC__)
994
+ #if !defined(IBSegueAction)
995
+ # define IBSegueAction
996
+ #endif
997
+ #endif
998
+ #if !defined(SWIFT_EXTERN)
999
+ # if defined(__cplusplus)
1000
+ # define SWIFT_EXTERN extern "C"
1001
+ # else
1002
+ # define SWIFT_EXTERN extern
1003
+ # endif
1004
+ #endif
1005
+ #if !defined(SWIFT_CALL)
1006
+ # define SWIFT_CALL __attribute__((swiftcall))
1007
+ #endif
1008
+ #if !defined(SWIFT_INDIRECT_RESULT)
1009
+ # define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result))
1010
+ #endif
1011
+ #if !defined(SWIFT_CONTEXT)
1012
+ # define SWIFT_CONTEXT __attribute__((swift_context))
1013
+ #endif
1014
+ #if !defined(SWIFT_ERROR_RESULT)
1015
+ # define SWIFT_ERROR_RESULT __attribute__((swift_error_result))
1016
+ #endif
1017
+ #if defined(__cplusplus)
1018
+ # define SWIFT_NOEXCEPT noexcept
1019
+ #else
1020
+ # define SWIFT_NOEXCEPT
1021
+ #endif
1022
+ #if !defined(SWIFT_C_INLINE_THUNK)
1023
+ # if __has_attribute(always_inline)
1024
+ # if __has_attribute(nodebug)
1025
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
1026
+ # else
1027
+ # define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
1028
+ # endif
1029
+ # else
1030
+ # define SWIFT_C_INLINE_THUNK inline
1031
+ # endif
1032
+ #endif
1033
+ #if defined(_WIN32)
1034
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
1035
+ # define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
1036
+ #endif
1037
+ #else
1038
+ #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
1039
+ # define SWIFT_IMPORT_STDLIB_SYMBOL
1040
+ #endif
1041
+ #endif
1042
+ #if defined(__OBJC__)
1043
+ #if __has_feature(objc_modules)
1044
+ #if __has_warning("-Watimport-in-framework-header")
1045
+ #pragma clang diagnostic ignored "-Watimport-in-framework-header"
1046
+ #endif
1047
+ @import Foundation;
1048
+ @import ObjectiveC;
1049
+ #endif
1050
+
1051
+ #endif
1052
+ #pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
1053
+ #pragma clang diagnostic ignored "-Wduplicate-method-arg"
1054
+ #if __has_warning("-Wpragma-clang-attribute")
1055
+ # pragma clang diagnostic ignored "-Wpragma-clang-attribute"
1056
+ #endif
1057
+ #pragma clang diagnostic ignored "-Wunknown-pragmas"
1058
+ #pragma clang diagnostic ignored "-Wnullability"
1059
+ #pragma clang diagnostic ignored "-Wdollar-in-identifier-extension"
1060
+ #pragma clang diagnostic ignored "-Wunsafe-buffer-usage"
1061
+
1062
+ #if __has_attribute(external_source_symbol)
1063
+ # pragma push_macro("any")
1064
+ # undef any
1065
+ # pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="CrowdConnectedCore",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
1066
+ # pragma pop_macro("any")
1067
+ #endif
1068
+
1069
+ #if defined(__OBJC__)
1070
+
1071
+ @class Credentials;
1072
+ enum LocationTrackingMode : NSInteger;
1073
+ @class NSString;
1074
+ /// SDK Configuration containing authentication Credentials and tracking mode.
1075
+ /// The Configuration class encapsulates all settings required to initialize and run
1076
+ /// the CrowdConnected SDK. It includes authentication credentials, enabled modules,
1077
+ /// and location tracking behavior.
1078
+ /// <em>Usage:</em>
1079
+ /// Create a Configuration using the fluent Builder pattern:
1080
+ /// \code
1081
+ /// let config = Configuration.Builder()
1082
+ /// .withCredentials(appKey: "your-app-key",
1083
+ /// clientId: "your-client-id",
1084
+ /// clientSecret: "your-client-secret")
1085
+ /// .with(modules: [.geo, .ips])
1086
+ /// .with(trackingMode: .background)
1087
+ /// .build()
1088
+ ///
1089
+ /// \endcodeOr use the direct initializer if you already have Credentials:
1090
+ /// \code
1091
+ /// let credentials = Credentials(appKey: "key", clientId: "id", clientSecret: "secret")
1092
+ /// let config = Configuration(credentials: credentials, modules: [.geo], trackingMode: .foreground)
1093
+ ///
1094
+ /// \endcode
1095
+ SWIFT_CLASS("_TtC18CrowdConnectedCore13Configuration")
1096
+ @interface Configuration : NSObject
1097
+ /// The authentication credentials provided by CrowdConnected.
1098
+ /// These are required to authenticate API requests and should be kept secure.
1099
+ @property (nonatomic, readonly, strong) Credentials * _Nonnull credentials;
1100
+ /// The location tracking mode determining foreground and background tracking behavior.
1101
+ /// Controls whether location tracking is active in the background, foreground, or both.
1102
+ @property (nonatomic, readonly) enum LocationTrackingMode trackingMode;
1103
+ /// Optional custom fields for internal use.
1104
+ @property (nonatomic, readonly, copy) NSDictionary<NSString *, NSString *> * _Nonnull customFields;
1105
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1106
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1107
+ @end
1108
+
1109
+ enum Module : NSInteger;
1110
+ /// Builder for creating Configuration objects with a fluent, chainable API.
1111
+ /// The Builder pattern provides a cleaner and more readable way to construct
1112
+ /// Configuration objects with all required credentials and optional settings.
1113
+ /// <em>Features:</em>
1114
+ /// <ul>
1115
+ /// <li>
1116
+ /// Fluent API with method chaining for easy configuration
1117
+ /// </li>
1118
+ /// <li>
1119
+ /// Consolidated credential setter for all authentication parameters
1120
+ /// </li>
1121
+ /// <li>
1122
+ /// Default values for optional parameters
1123
+ /// </li>
1124
+ /// <li>
1125
+ /// Single or bulk module addition
1126
+ /// </li>
1127
+ /// <li>
1128
+ /// Automatic duplicate module prevention
1129
+ /// </li>
1130
+ /// <li>
1131
+ /// Validation in build() to ensure all required credentials are set
1132
+ /// </li>
1133
+ /// </ul>
1134
+ /// <em>Example usage:</em>
1135
+ /// \code
1136
+ /// // Full configuration with all credentials and modules
1137
+ /// let config = Configuration.Builder()
1138
+ /// .withCredentials(appKey: "app-456",
1139
+ /// clientId: "client-789",
1140
+ /// clientSecret: "secret-abc")
1141
+ /// .with(modules: [.geo, .ips])
1142
+ /// .with(trackingMode: .background)
1143
+ /// .build()
1144
+ ///
1145
+ /// // Add modules incrementally
1146
+ /// let customConfig = Configuration.Builder()
1147
+ /// .withCredentials(appKey: "app-456",
1148
+ /// clientId: "client-789",
1149
+ /// clientSecret: "secret-abc")
1150
+ /// .with(module: .geo)
1151
+ /// .with(module: .ips)
1152
+ /// .build()
1153
+ ///
1154
+ /// \endcode
1155
+ SWIFT_CLASS("_TtCC18CrowdConnectedCore13Configuration7Builder")
1156
+ @interface Builder : NSObject
1157
+ /// Creates a new Builder instance for constructing Configuration objects.
1158
+ /// Initializes a Builder with all optional properties unset. You must call
1159
+ /// withCredentials() to set authentication credentials before calling build(),
1160
+ /// or a fatal error will be raised.
1161
+ /// Other properties have sensible defaults:
1162
+ /// <ul>
1163
+ /// <li>
1164
+ /// modules: Empty array (no modules enabled)
1165
+ /// </li>
1166
+ /// <li>
1167
+ /// trackingMode: .foreground (only track when app is in foreground)
1168
+ /// </li>
1169
+ /// </ul>
1170
+ /// <em>Typical usage:</em>
1171
+ /// \code
1172
+ /// let config = Configuration.Builder()
1173
+ /// .withCredentials(appKey: "key", clientId: "id", clientSecret: "secret")
1174
+ /// .with(module: .geo)
1175
+ /// .build()
1176
+ ///
1177
+ /// \endcode
1178
+ - (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
1179
+ /// Sets all required authentication credentials in one call.
1180
+ /// This method consolidates all credential parameters (appKey, clientId, clientSecret)
1181
+ /// into a single Credentials object. Must be called before build() to successfully
1182
+ /// create a Configuration.
1183
+ /// \param appKey Your unique application key provided by CrowdConnected.
1184
+ ///
1185
+ /// \param clientId Your unique client ID provided by CrowdConnected for API authentication.
1186
+ ///
1187
+ /// \param clientSecret Your unique client secret provided by CrowdConnected for API authentication.
1188
+ /// Keep this value secure and never hardcode it in production code.
1189
+ ///
1190
+ ///
1191
+ /// returns:
1192
+ /// Self for method chaining, allowing fluent API usage.
1193
+ - (Builder * _Nonnull)withCredentialsWithAppKey:(NSString * _Nonnull)appKey clientId:(NSString * _Nonnull)clientId clientSecret:(NSString * _Nonnull)clientSecret;
1194
+ /// Adds or removes a single module from the configuration’s module list.
1195
+ /// Use this method to add or remove modules one at a time. Multiple calls will append
1196
+ /// each module to the existing list or remove it as specified, allowing incremental
1197
+ /// module setup and modification.
1198
+ /// <em>Behavior:</em>
1199
+ /// <ul>
1200
+ /// <li>
1201
+ /// When <code>enabled</code> is <code>true</code> (default): Adds the module to the list if not already present.
1202
+ /// Duplicate modules are automatically prevented.
1203
+ /// </li>
1204
+ /// <li>
1205
+ /// When <code>enabled</code> is <code>false</code>: Removes all instances of the module from the list.
1206
+ /// </li>
1207
+ /// </ul>
1208
+ /// <em>Examples:</em>
1209
+ /// \code
1210
+ /// // Add modules
1211
+ /// builder.with(module: .geo) // Add geo module (enabled=true by default)
1212
+ /// builder.with(module: .ips, enabled: true) // Explicitly add IPS module
1213
+ ///
1214
+ /// // Remove modules
1215
+ /// builder.with(module: .geo, enabled: false) // Remove geo module
1216
+ ///
1217
+ /// \endcode\param module A single Module instance to add or remove from the configuration.
1218
+ ///
1219
+ /// \param enabled Boolean flag indicating whether to add (true) or remove (false) the module.
1220
+ /// Defaults to true (add the module).
1221
+ ///
1222
+ ///
1223
+ /// returns:
1224
+ /// Self for method chaining, allowing fluent API usage.
1225
+ - (Builder * _Nonnull)withModule:(enum Module)module_ enabled:(BOOL)enabled;
1226
+ /// Sets the location tracking mode for the SDK.
1227
+ /// This determines whether the SDK tracks user location in foreground,
1228
+ /// background, or both scenarios. The default is foreground-only tracking.
1229
+ /// \param trackingMode The desired LocationTrackingMode.
1230
+ ///
1231
+ ///
1232
+ /// returns:
1233
+ /// Self for method chaining, allowing fluent API usage.
1234
+ - (Builder * _Nonnull)withTrackingMode:(enum LocationTrackingMode)trackingMode;
1235
+ /// Sets a custom fields for internal use.
1236
+ /// \param customFields The custom fields.
1237
+ ///
1238
+ ///
1239
+ /// returns:
1240
+ /// Self for method chaining, allowing fluent API usage.
1241
+ - (Builder * _Nonnull)withCustomFields:(NSDictionary<NSString *, NSString *> * _Nonnull)customFields;
1242
+ /// Builds and returns the configured Configuration object.
1243
+ /// This method finalizes the builder and creates an immutable Configuration
1244
+ /// instance with all the settings specified through the builder methods.
1245
+ /// After a successful call to build(), the Configuration object is ready to be
1246
+ /// passed to the SDK’s start method.
1247
+ /// <em>Validation:</em>
1248
+ /// This method performs validation to ensure credentials have been set:
1249
+ /// <ul>
1250
+ /// <li>
1251
+ /// withCredentials() must be called before build()
1252
+ /// </li>
1253
+ /// </ul>
1254
+ /// If credentials have not been set, this method will raise a fatal error
1255
+ /// indicating that credentials are required.
1256
+ /// <em>Return Value:</em>
1257
+ /// A fully configured Configuration object with:
1258
+ /// <ul>
1259
+ /// <li>
1260
+ /// credentials: Set via withCredentials()
1261
+ /// </li>
1262
+ /// <li>
1263
+ /// modules: Set via with(modules:) or with(module:), defaults to empty array
1264
+ /// </li>
1265
+ /// <li>
1266
+ /// trackingMode: Set via with(trackingMode:), defaults to .foreground
1267
+ /// </li>
1268
+ /// </ul>
1269
+ ///
1270
+ /// throws:
1271
+ /// Fatal error if credentials have not been set via withCredentials().
1272
+ ///
1273
+ /// returns:
1274
+ /// A fully configured Configuration object.
1275
+ - (Configuration * _Nonnull)build SWIFT_WARN_UNUSED_RESULT;
1276
+ @end
1277
+
1278
+ /// Pixel coordinates representing a location on a 2D floor plan.
1279
+ SWIFT_CLASS("_TtC18CrowdConnectedCore10Coordinate")
1280
+ @interface Coordinate : NSObject
1281
+ /// The x coordinate of the location in pixels.
1282
+ @property (nonatomic) double xPixels;
1283
+ /// The y coordinate of the location in pixels.
1284
+ @property (nonatomic) double yPixels;
1285
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1286
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1287
+ @end
1288
+
1289
+ /// Authentication Credentials used for the CrowdConnected SDK.
1290
+ /// All credential values are provided by CrowdConnected.
1291
+ SWIFT_CLASS("_TtC18CrowdConnectedCore11Credentials")
1292
+ @interface Credentials : NSObject
1293
+ /// Creates a new credentials object.
1294
+ /// \param appKey The unique app key provided by CrowdConnected.
1295
+ ///
1296
+ /// \param clientId The client ID provided by CrowdConnected.
1297
+ ///
1298
+ /// \param clientSecret The client secret key provided by CrowdConnected.
1299
+ ///
1300
+ - (nonnull instancetype)initWithAppKey:(NSString * _Nonnull)appKey clientId:(NSString * _Nonnull)clientId clientSecret:(NSString * _Nonnull)clientSecret OBJC_DESIGNATED_INITIALIZER;
1301
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1302
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1303
+ @end
1304
+
1305
+ @protocol CrowdConnectedDelegate;
1306
+ @class Location;
1307
+ /// The entry point class of the <code>CrowdConnected</code> SDK.
1308
+ SWIFT_CLASS("_TtC18CrowdConnectedCore14CrowdConnected")
1309
+ @interface CrowdConnected : NSObject
1310
+ /// A <code>CrowdConnectedDelegate</code> delegate used to return location data produced by the <code>CrowdConnected</code> SDK.
1311
+ /// The delegate receives callbacks for:
1312
+ /// <ul>
1313
+ /// <li>
1314
+ /// <code>locationProvider(_:didStartSuccess:)</code> — called when SDK starts successfully
1315
+ /// </li>
1316
+ /// <li>
1317
+ /// <code>locationProvider(_:didStartFailure:)</code> — called if SDK start fails
1318
+ /// </li>
1319
+ /// <li>
1320
+ /// <code>locationProvider(_:didUpdateLocation:)</code> — called when new location data is available
1321
+ /// </li>
1322
+ /// </ul>
1323
+ /// Doesn’t need to be set if location updates are not expected or used by your app. Defaults to <code>nil</code>.
1324
+ @property (nonatomic, weak) id <CrowdConnectedDelegate> _Nullable delegate;
1325
+ /// The shared <code>CrowdConnected</code> instance.
1326
+ /// Used for SDK configurations and communication.
1327
+ SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) CrowdConnected * _Nonnull shared;)
1328
+ + (CrowdConnected * _Nonnull)shared SWIFT_WARN_UNUSED_RESULT;
1329
+ /// The associated CrowdConnected device ID.
1330
+ /// Available after the SDK has been started successfully.
1331
+ @property (nonatomic, readonly, copy) NSString * _Nullable deviceID;
1332
+ /// Check if the SDK is currently running and successfully started.
1333
+ ///
1334
+ /// returns:
1335
+ /// <code>true</code> if SDK is running, <code>false</code> otherwise.
1336
+ @property (nonatomic, readonly) BOOL isRunning;
1337
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1338
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1339
+ /// Get the SDK version.
1340
+ ///
1341
+ /// returns:
1342
+ /// The SDK version string in the format “version(build)”.
1343
+ + (NSString * _Nonnull)getVersion SWIFT_WARN_UNUSED_RESULT;
1344
+ /// Start the SDK.
1345
+ /// Initiates the SDK lifecycle including authentication, device registration, and module activation.
1346
+ /// When this method is called:
1347
+ /// <ul>
1348
+ /// <li>
1349
+ /// If SDK is already running, the request is rejected.
1350
+ /// </li>
1351
+ /// <li>
1352
+ /// If SDK is transitioning (start/stop in progress), the request is queued and will execute when the current transition completes.
1353
+ /// </li>
1354
+ /// <li>
1355
+ /// Otherwise, the start process begins: credentials are validated, device registers with the server, and modules are activated.
1356
+ /// </li>
1357
+ /// </ul>
1358
+ /// The start operation is asynchronous. Results are reported through the delegate:
1359
+ /// <ul>
1360
+ /// <li>
1361
+ /// <code>locationProvider(_:didStartSuccess:)</code> is called when the SDK starts successfully with the device ID.
1362
+ /// </li>
1363
+ /// <li>
1364
+ /// <code>locationProvider(_:didStartFailure:)</code> is called if the SDK fails to start with an error code.
1365
+ /// </li>
1366
+ /// <li>
1367
+ /// Once started, <code>locationProvider(_:didUpdateLocation:)</code> will be called with location updates as they arrive.
1368
+ /// </li>
1369
+ /// </ul>
1370
+ /// \param configuration The SDK configuration containing authentication credentials, enabled modules, and tracking mode.
1371
+ ///
1372
+ - (void)startWith:(Configuration * _Nonnull)configuration;
1373
+ /// Stop the SDK and all its processes.
1374
+ /// Stops all SDK operations including location tracking, data publishing, and background monitoring.
1375
+ /// The stop operation is asynchronous and serialized through the lifecycle queue.
1376
+ /// Call this method when you no longer need location tracking, such as on app termination or when
1377
+ /// transitioning to a state that doesn’t require the SDK.
1378
+ - (void)stop;
1379
+ /// Set and persist an alias for the current device.
1380
+ /// \param key The alias key.
1381
+ ///
1382
+ /// \param value The alias value.
1383
+ ///
1384
+ - (void)setAliasWithKey:(NSString * _Nonnull)key value:(NSString * _Nonnull)value;
1385
+ /// Get the last known location from the SDK.
1386
+ ///
1387
+ /// returns:
1388
+ /// The last known location, or <code>nil</code> if no location has been received yet.
1389
+ - (Location * _Nullable)getLastLocation SWIFT_WARN_UNUSED_RESULT;
1390
+ /// Get the current SDK configuration.
1391
+ ///
1392
+ /// returns:
1393
+ /// The SDK configuration, or <code>nil</code> if the SDK hasn’t been started yet.
1394
+ - (Configuration * _Nullable)getCurrentConfiguration SWIFT_WARN_UNUSED_RESULT;
1395
+ @end
1396
+
1397
+ enum ErrorCode : NSInteger;
1398
+ /// A delegate protocol for receiving callbacks from the CrowdConnected SDK.
1399
+ /// Implement this protocol to receive location updates, success notifications, and error callbacks from the SDK.
1400
+ /// All methods are optional.
1401
+ SWIFT_PROTOCOL("_TtP18CrowdConnectedCore22CrowdConnectedDelegate_")
1402
+ @protocol CrowdConnectedDelegate
1403
+ @optional
1404
+ /// Called when new locations have been computed by the SDK.
1405
+ /// \param crowdConnected The <code>CrowdConnected</code> instance that generated the update.
1406
+ ///
1407
+ /// \param locations An array of <code>Location</code> items in chronological order.
1408
+ ///
1409
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didUpdateLocation:(Location * _Nonnull)location;
1410
+ /// Called when the SDK has successfully started and registered the device.
1411
+ /// \param crowdConnected The <code>CrowdConnected</code> instance that completed initialization.
1412
+ ///
1413
+ /// \param deviceId The unique device identifier assigned by the CrowdConnected backend.
1414
+ ///
1415
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didStartSuccess:(NSString * _Nonnull)deviceId;
1416
+ /// Called when an error occurs in the SDK.
1417
+ /// \param crowdConnected The <code>CrowdConnected</code> instance where the error occurred.
1418
+ ///
1419
+ /// \param errorCode A <code>ErrorCode</code> describing the error that occurred.
1420
+ ///
1421
+ - (void)locationProvider:(CrowdConnected * _Nonnull)crowdConnected didStartFailure:(enum ErrorCode)errorCode;
1422
+ @end
1423
+
1424
+ /// Validation result for SDK Configuration and startup.
1425
+ /// Use the <code>description</code> property for detailed Error messages.
1426
+ typedef SWIFT_ENUM(NSInteger, ErrorCode, open) {
1427
+ /// SDK configuration and startup completed successfully.
1428
+ ErrorCodeNoError = 0,
1429
+ /// SDK is already running and cannot be started again.
1430
+ ErrorCodeAlreadyRunning = 1,
1431
+ /// App key is missing or empty in the credentials.
1432
+ ErrorCodeMissingAppKey = 2,
1433
+ /// Token is missing or empty in the credentials.
1434
+ ErrorCodeMissingToken = 3,
1435
+ /// Secret is missing or empty in the credentials.
1436
+ ErrorCodeMissingSecret = 4,
1437
+ /// Device registration with the CrowdConnected backend failed.
1438
+ ErrorCodeDeviceRegistrationFailed = 5,
1439
+ /// No SDK modules (Geo or IPS) are active.
1440
+ ErrorCodeNoModulesAreActive = 6,
1441
+ /// <code>NSBluetoothAlwaysUsageDescription</code> is missing from Info.plist.
1442
+ ErrorCodeMissingBluetoothPermissionItem = 7,
1443
+ /// <code>NSLocationWhenInUseUsageDescription</code> is missing from Info.plist.
1444
+ ErrorCodeMissingWhileInUseLocationPermissionItem = 8,
1445
+ /// <code>NSLocationAlwaysAndWhenInUseUsageDescription</code> is missing from Info.plist.
1446
+ ErrorCodeMissingAlwaysLocationPermissionItem = 9,
1447
+ /// <code>location</code> entry is missing from <code>UIBackgroundModes</code> in Info.plist.
1448
+ ErrorCodeMissingLocationBackgroundModeItem = 10,
1449
+ /// <code>bluetooth-central</code> entry is missing from <code>UIBackgroundModes</code> in Info.plist.
1450
+ ErrorCodeMissingBluetoothBackgroundModeItem = 11,
1451
+ ErrorCodeNoGeoModuleImported = 15,
1452
+ ErrorCodeNoIPSModuleImported = 17,
1453
+ ErrorCodeNoCoreBluetoothModuleImported = 19,
1454
+ };
1455
+ static NSString * _Nonnull const ErrorCodeDomain = @"CrowdConnectedCore.ErrorCode";
1456
+
1457
+ /// A location computed by the CrowdConnected SDK.
1458
+ /// Contains geographic coordinates, metric positions, floor information, timestamps, and quality indicators.
1459
+ SWIFT_CLASS("_TtC18CrowdConnectedCore8Location")
1460
+ @interface Location : NSObject
1461
+ /// The x coordinate of the location in meters.
1462
+ @property (nonatomic) double xMeters;
1463
+ /// The y coordinate of the location in meters.
1464
+ @property (nonatomic) double yMeters;
1465
+ /// The latitude of the location.
1466
+ @property (nonatomic) double latitude;
1467
+ /// The longitude of the location.
1468
+ @property (nonatomic) double longitude;
1469
+ /// The coordinates of the location in pixels.
1470
+ @property (nonatomic, strong) Coordinate * _Nullable pixelCoordinates;
1471
+ /// The floor number.
1472
+ @property (nonatomic) NSInteger floor;
1473
+ /// The surface of the location.
1474
+ @property (nonatomic, copy) NSString * _Nonnull surfaceID;
1475
+ /// The timestamp of the location.
1476
+ @property (nonatomic) int64_t timestamp;
1477
+ /// The type of the location.
1478
+ /// Can be either “IPS” (Indoor Positioning System) or “GEO” (GPS/Geographic).
1479
+ @property (nonatomic, copy) NSString * _Nonnull type;
1480
+ /// The quality of the location.
1481
+ /// Values range from 0 to 2, where 2 represents the best accuracy.
1482
+ @property (nonatomic) NSInteger quality;
1483
+ /// For IPS location type only. The maximum RSSI value recently observed.
1484
+ /// Defaults to <code>-1000</code>.
1485
+ @property (nonatomic) double maxRSSI;
1486
+ /// For IPS location type only. The x-coordinate of the beacon with the maximum RSSI value.
1487
+ /// Defaults to <code>0</code>.
1488
+ @property (nonatomic) double beaconXForMaxRSSI;
1489
+ /// For IPS location type only. The y-coordinate of the beacon with the maximum RSSI value.
1490
+ /// Defaults to <code>0</code>.
1491
+ @property (nonatomic) double beaconYForMaxRSSI;
1492
+ /// For IPS location type only. The surface ID of the beacon with the maximum RSSI value.
1493
+ /// Defaults to <code>00000000-0000-0000-0000-000000000000</code>.
1494
+ @property (nonatomic, copy) NSString * _Nonnull surfaceIDForMaxRSSI;
1495
+ /// For IPS location type only. The number of surfaces with at least one beacon observation.
1496
+ @property (nonatomic) NSInteger observedSurfaces;
1497
+ - (nonnull instancetype)init SWIFT_UNAVAILABLE;
1498
+ + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
1499
+ @end
1500
+
1501
+ /// Location tracking mode determining whether the SDK tracks location in foreground only or both foreground and background.
1502
+ typedef SWIFT_ENUM(NSInteger, LocationTrackingMode, open) {
1503
+ /// Track location only when the app is in the foreground.
1504
+ LocationTrackingModeForeground = 0,
1505
+ /// Track location both in foreground and background.
1506
+ LocationTrackingModeBackground = 1,
1507
+ };
1508
+
1509
+ /// Represents the modules available in the CrowdConnected SDK.
1510
+ typedef SWIFT_ENUM(NSInteger, Module, open) {
1511
+ /// Geofencing / location module.
1512
+ ModuleGeo = 0,
1513
+ /// Indoor Positioning System (IPS) module.
1514
+ ModuleIps = 1,
1515
+ /// Core Bluetooth module for BLE interactions.
1516
+ ModuleCoreBluetooth = 2,
1517
+ };
1518
+
1519
+ #endif
1520
+ #if __has_attribute(external_source_symbol)
1521
+ # pragma clang attribute pop
1522
+ #endif
1523
+ #if defined(__cplusplus)
1524
+ #endif
1525
+ #pragma clang diagnostic pop
1526
+ #endif
1527
+
1528
+ #else
1529
+ #error unsupported Swift architecture
1530
+ #endif