peachsim 0.1.1644 → 0.1.1653

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 (608) hide show
  1. package/README.md +12 -0
  2. package/cli/app-catalog.ts +1 -1
  3. package/cli/app-fonts.ts +11 -80
  4. package/cli/app-splash.ts +18 -12
  5. package/cli/bridge-flow-runner.ts +11 -7
  6. package/cli/cloud-client.ts +10 -13
  7. package/cli/command-registry.ts +13 -4
  8. package/cli/commands/box.ts +4 -4
  9. package/cli/commands/control.ts +93 -53
  10. package/cli/commands/coverage-parser.ts +67 -0
  11. package/cli/commands/coverage.ts +550 -0
  12. package/cli/commands/debug.ts +9 -18
  13. package/cli/commands/desktop.ts +19 -7
  14. package/cli/commands/device.ts +14 -9
  15. package/cli/commands/guest-host.ts +6 -10
  16. package/cli/commands/inspect/core.ts +81 -17
  17. package/cli/commands/inspect.ts +13 -8
  18. package/cli/commands/kotlin.ts +2 -2
  19. package/cli/commands/maestro-compare.ts +1 -1
  20. package/cli/commands/platform.ts +20 -11
  21. package/cli/commands/preview.ts +16 -18
  22. package/cli/commands/runtime.ts +3 -2
  23. package/cli/commands/screenshot-layers.ts +1 -1
  24. package/cli/commands/screenshot.ts +1 -1
  25. package/cli/commands/serve.ts +5 -1
  26. package/cli/commands/support.ts +4 -4
  27. package/cli/commands/three-mode.ts +22 -15
  28. package/cli/commands/upload.ts +44 -45
  29. package/cli/current-sim.ts +38 -0
  30. package/cli/desktop-companion.ts +36 -8
  31. package/cli/device-option.ts +1 -1
  32. package/cli/drivers/playwright.ts +1 -0
  33. package/cli/drivers/types.ts +4 -0
  34. package/cli/help-core.ts +1 -1
  35. package/cli/internal-child.ts +2 -1
  36. package/cli/main.ts +9 -3
  37. package/cli/outbound-endpoints.ts +11 -3
  38. package/cli/output-redaction.ts +39 -14
  39. package/cli/remote-simulators.ts +4 -1
  40. package/cli/scene-video.ts +5 -2
  41. package/cli/send-to-box.ts +7 -10
  42. package/cli/telemetry.ts +1 -1
  43. package/cli/ws-bridge.ts +8 -1
  44. package/detox/attempt-events.cjs +3 -1
  45. package/detox/attempt-events.d.cts +1 -1
  46. package/detox/expectations.ts +108 -99
  47. package/detox/frame-offset.d.mts +6 -0
  48. package/detox/frame-offset.mjs +35 -0
  49. package/detox/gestures.ts +6 -18
  50. package/detox/index.ts +169 -101
  51. package/detox/jest-preset.cjs +1 -3
  52. package/detox/jest-transform.cjs +4 -0
  53. package/detox/matchers.ts +3 -0
  54. package/detox/motion-change.cjs +46 -114
  55. package/detox/motion-change.d.cts +5 -27
  56. package/dist-lib/agent-daemon-client.cjs +1 -1
  57. package/dist-lib/agent-events.cjs +1 -1
  58. package/dist-lib/attached-projects.cjs +1 -1
  59. package/dist-lib/auth/shared-session.cjs +1 -1
  60. package/dist-lib/backend-origin.cjs +1 -1
  61. package/dist-lib/beta.cjs +1 -1
  62. package/dist-lib/beta.mjs +1 -1
  63. package/dist-lib/bridge-constants.cjs +1 -1
  64. package/dist-lib/bridge-contract-input.cjs +65 -1
  65. package/dist-lib/bridge-contract-input.mjs +63 -1
  66. package/dist-lib/bridge-contract.cjs +19 -1
  67. package/dist-lib/bridge-contract.mjs +17 -1
  68. package/dist-lib/bundle-channel.cjs +38091 -14846
  69. package/dist-lib/capture-contract.cjs +1 -1
  70. package/dist-lib/capture-contract.mjs +1 -1
  71. package/dist-lib/cloud-contract.cjs +1 -1
  72. package/dist-lib/cloud-contract.mjs +1 -1
  73. package/dist-lib/cloud-test-args.cjs +1 -1
  74. package/dist-lib/cloud-test-args.mjs +1 -1
  75. package/dist-lib/cloud.cjs +1 -1
  76. package/dist-lib/cloud.mjs +1 -1
  77. package/dist-lib/config.cjs +1 -1
  78. package/dist-lib/config.mjs +5 -3
  79. package/dist-lib/detox/index.cjs +1244 -4509
  80. package/dist-lib/detox/jest-preset.cjs +1 -3
  81. package/dist-lib/detox/jest-transform.cjs +4 -0
  82. package/dist-lib/dev-bundle-resolution.cjs +28 -24
  83. package/dist-lib/expo-swift-bundle.cjs +35049 -13125
  84. package/dist-lib/expo-swift-metadata.cjs +1 -1
  85. package/dist-lib/expo-swift-metadata.mjs +1 -1
  86. package/dist-lib/home-paths.cjs +1 -1
  87. package/dist-lib/host/bridge-host.cjs +45112 -63143
  88. package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
  89. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  90. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  91. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  92. package/dist-lib/host/websocket-proxy.cjs +1 -1
  93. package/dist-lib/index.cjs +1909 -2029
  94. package/dist-lib/jump-to-source-babel.cjs +1 -1
  95. package/dist-lib/jump-to-source-native.cjs +1 -1
  96. package/dist-lib/kotlin-host.cjs +2 -2
  97. package/dist-lib/menu.cjs +1 -1
  98. package/dist-lib/menu.mjs +1 -1
  99. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  100. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  101. package/dist-lib/metro-production-bundle.cjs +1 -1
  102. package/dist-lib/metro-production-bundle.mjs +1 -1
  103. package/dist-lib/metro.cjs +380 -522
  104. package/dist-lib/native-app-identity-project.cjs +39 -252
  105. package/dist-lib/native-app-identity-project.mjs +1174 -11
  106. package/dist-lib/native-app-identity.cjs +8 -3
  107. package/dist-lib/native-app-identity.mjs +8 -3
  108. package/dist-lib/native-firebase-metadata.cjs +1 -1
  109. package/dist-lib/native-firebase-metadata.mjs +1 -1
  110. package/dist-lib/plist.cjs +2 -244
  111. package/dist-lib/plist.mjs +1 -1
  112. package/dist-lib/profiles.cjs +1 -1
  113. package/dist-lib/public-brand.cjs +1 -1
  114. package/dist-lib/public-origins-lib-esm.json +290 -0
  115. package/dist-lib/public-origins-lib-static.json +1 -0
  116. package/dist-lib/public-origins-lib.json +1852 -0
  117. package/dist-lib/react-native-host-modules.cjs +1 -1
  118. package/dist-lib/react-native-host-modules.mjs +1 -1
  119. package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
  120. package/dist-lib/sdk.cjs +83 -16
  121. package/dist-lib/sdk.mjs +81 -15
  122. package/dist-lib/skills.cjs +50546 -75098
  123. package/dist-lib/swift-compile.cjs +25897 -1070
  124. package/dist-lib/swift-compile.mjs +25866 -1033
  125. package/dist-lib/swift-package.cjs +79 -1
  126. package/dist-lib/swift-package.mjs +75 -1
  127. package/dist-lib/swift-submit.cjs +1 -1
  128. package/dist-lib/swift-submit.mjs +1 -1
  129. package/dist-lib/swift-toolchain.cjs +1 -1
  130. package/dist-lib/swift.cjs +1 -1
  131. package/dist-lib/vite-swift.cjs +34273 -12349
  132. package/dist-lib/vite.cjs +373 -298
  133. package/dist-lib/worklet-executable.cjs +1 -1
  134. package/dist-lib/worklet-executable.mjs +1 -1
  135. package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
  136. package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
  137. package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
  138. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
  139. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
  140. package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
  141. package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
  142. package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
  143. package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
  144. package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
  145. package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
  146. package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
  147. package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
  148. package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
  149. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
  150. package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
  151. package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
  152. package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
  153. package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
  154. package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
  155. package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
  156. package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
  157. package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
  158. package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
  159. package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
  160. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
  161. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
  162. package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
  163. package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
  164. package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
  165. package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
  166. package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
  167. package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
  168. package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
  169. package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
  170. package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
  171. package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
  172. package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
  173. package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
  174. package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
  175. package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
  176. package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
  177. package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
  178. package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
  179. package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
  180. package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
  181. package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
  182. package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
  183. package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
  184. package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
  185. package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
  186. package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
  187. package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
  188. package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
  189. package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
  190. package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
  191. package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
  192. package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
  193. package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
  194. package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
  195. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
  196. package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
  197. package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
  198. package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
  199. package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
  200. package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
  201. package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
  202. package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
  203. package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
  204. package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
  205. package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
  206. package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
  207. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
  208. package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
  209. package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
  210. package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
  211. package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
  212. package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
  213. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
  214. package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
  215. package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
  216. package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
  217. package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
  218. package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
  219. package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
  220. package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
  221. package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
  222. package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
  223. package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
  224. package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
  225. package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
  226. package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
  227. package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
  228. package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
  229. package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
  230. package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
  231. package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
  232. package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
  233. package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
  234. package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
  235. package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
  236. package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
  237. package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
  238. package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
  239. package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
  240. package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
  241. package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
  242. package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
  243. package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
  244. package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
  245. package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
  246. package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
  247. package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
  248. package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
  249. package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
  250. package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
  251. package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
  252. package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
  253. package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
  254. package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
  255. package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
  256. package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
  257. package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
  258. package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
  259. package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
  260. package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
  261. package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
  262. package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
  263. package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
  264. package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
  265. package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
  266. package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
  267. package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
  268. package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
  269. package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
  270. package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
  271. package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
  272. package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
  273. package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
  274. package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
  275. package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
  276. package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
  277. package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
  278. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
  279. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
  280. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
  281. package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
  282. package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
  283. package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
  284. package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
  285. package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
  286. package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
  287. package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
  288. package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
  289. package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
  290. package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
  291. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
  292. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
  293. package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
  294. package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
  295. package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
  296. package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
  297. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
  298. package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
  299. package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
  300. package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
  301. package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
  302. package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
  303. package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
  304. package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
  305. package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
  306. package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
  307. package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
  308. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
  309. package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
  310. package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
  311. package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
  312. package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
  313. package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
  314. package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
  315. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
  316. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
  317. package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
  318. package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
  319. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
  320. package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
  321. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
  322. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
  323. package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
  324. package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
  325. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
  326. package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
  327. package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
  328. package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
  329. package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
  330. package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
  331. package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
  332. package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
  333. package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
  334. package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
  335. package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
  336. package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
  337. package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
  338. package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
  339. package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
  340. package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
  341. package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
  342. package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
  343. package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
  344. package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
  345. package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
  346. package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
  347. package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
  348. package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
  349. package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
  350. package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
  351. package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
  352. package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
  353. package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
  354. package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
  355. package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
  356. package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
  357. package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
  358. package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
  359. package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
  360. package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
  361. package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
  362. package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
  363. package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
  364. package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
  365. package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
  366. package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
  367. package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
  368. package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
  369. package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
  370. package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
  371. package/kotlin/README.md +6 -0
  372. package/package.json +22 -2
  373. package/runtime-companion.json +1 -0
  374. package/skills/contrast/SKILL.md +1 -0
  375. package/src/assetCatalogContract.ts +21 -0
  376. package/src/bridge-contract-input.ts +84 -0
  377. package/src/bridge-contract.ts +35 -3
  378. package/src/browser-launch-policy.ts +1 -0
  379. package/src/bundle-channel.mjs +4 -2
  380. package/src/cli-runtime.ts +55 -0
  381. package/src/crash-fingerprint.ts +26 -0
  382. package/src/dev-bundle-resolution.ts +50 -23
  383. package/src/device-catalog.ts +1159 -0
  384. package/src/host/bridge-host.ts +3 -26
  385. package/src/host/browser-pointer.ts +71 -0
  386. package/src/host/dev-server-package-versions.ts +23 -0
  387. package/src/host/fetch-proxy-handler.ts +17 -4
  388. package/src/installed-package-versions.ts +142 -38
  389. package/src/kotlin-host.ts +1 -1
  390. package/src/metro-plugin.ts +4 -4
  391. package/src/metro-project-root.ts +68 -0
  392. package/src/nitro-adapter.lock.json +26 -0
  393. package/src/nitro-adapter.ts +103 -0
  394. package/src/nitro-bundle.ts +24 -10
  395. package/src/nitro-compile.ts +33 -51
  396. package/src/nitro-source.ts +177 -96
  397. package/src/nitroAdapterContract.ts +217 -0
  398. package/src/nitroContract.ts +24 -11
  399. package/src/process-group.ts +41 -34
  400. package/src/react-bridge-importers.ts +28 -0
  401. package/src/reactNativeConfigurationContract.ts +36 -0
  402. package/src/runtime-assets.ts +7 -2
  403. package/src/runtime-delivery.ts +2 -0
  404. package/src/runtimePlatformContract.ts +70 -0
  405. package/src/screenshots/frame-compose.ts +42 -43
  406. package/src/screenshots/org-deck.ts +9 -4
  407. package/src/screenshots/preset-names.ts +29 -0
  408. package/src/screenshots/registry.ts +5 -5
  409. package/src/screenshots/schema.ts +1 -1
  410. package/src/screenshots/screenshotContract.ts +971 -0
  411. package/src/settings-flags.ts +107 -0
  412. package/src/settingsContract.ts +609 -0
  413. package/src/storageSnapshotContract.ts +344 -0
  414. package/src/stub-pattern-matcher.ts +550 -0
  415. package/src/swift-compile.ts +908 -40
  416. package/src/swift-compiler-digest.ts +13 -1
  417. package/src/swift-distribution.lock.json +49 -22
  418. package/src/swift-host.ts +167 -52
  419. package/src/swift-objc-compile.ts +54 -24
  420. package/src/swift-objc-export.ts +532 -0
  421. package/src/swift-objc-import.ts +769 -0
  422. package/src/swift-objc-metadata.ts +285 -10
  423. package/src/swift-objc-sdk.ts +13970 -158
  424. package/src/swift-objc-standin.ts +137 -1
  425. package/src/swift-package.ts +94 -0
  426. package/src/swift-packages.ts +5 -5
  427. package/src/swift-submit.ts +6 -0
  428. package/src/swiftContract.ts +99 -0
  429. package/src/target-matcher.ts +6 -1
  430. package/src/vite-plugin.ts +14 -40
  431. package/src/worker-system-chunks.ts +1 -1
  432. package/src/workerChunkContract.ts +5 -0
  433. package/src/worklets-babel.ts +24 -5
  434. package/src/xcode-project.ts +36 -7
  435. package/src/xcode-target-members.ts +10 -3
  436. package/cli/drivers/playwright-sim-host.ts +0 -825
  437. package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
  438. package/kotlin/fixtures/counter/Counter.kt +0 -51
  439. package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
  440. package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
  441. package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
  442. package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
  443. package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
  444. package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
  445. package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
  446. package/kotlin/fixtures/counter/package.json +0 -20
  447. package/kotlin/fixtures/counter/tsconfig.json +0 -19
  448. package/kotlin/fixtures/counter/vite.config.ts +0 -20
  449. package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
  450. package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
  451. package/kotlin/fixtures/import-animation/Animation.kt +0 -80
  452. package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
  453. package/kotlin/fixtures/import-animation/README.md +0 -24
  454. package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
  455. package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
  456. package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
  457. package/kotlin/fixtures/import-animation/package.json +0 -23
  458. package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
  459. package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
  460. package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
  461. package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
  462. package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
  463. package/kotlin/fixtures/import-drawing/README.md +0 -34
  464. package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
  465. package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
  466. package/kotlin/fixtures/import-drawing/package.json +0 -23
  467. package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
  468. package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
  469. package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
  470. package/kotlin/fixtures/import-editor/Editor.kt +0 -59
  471. package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
  472. package/kotlin/fixtures/import-editor/README.md +0 -27
  473. package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
  474. package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
  475. package/kotlin/fixtures/import-editor/package.json +0 -23
  476. package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
  477. package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
  478. package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
  479. package/kotlin/fixtures/import-effects/Effects.kt +0 -87
  480. package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
  481. package/kotlin/fixtures/import-effects/README.md +0 -19
  482. package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
  483. package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
  484. package/kotlin/fixtures/import-effects/package.json +0 -23
  485. package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
  486. package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
  487. package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
  488. package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
  489. package/kotlin/fixtures/import-layout/Layout.kt +0 -72
  490. package/kotlin/fixtures/import-layout/README.md +0 -24
  491. package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
  492. package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
  493. package/kotlin/fixtures/import-layout/package.json +0 -23
  494. package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
  495. package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
  496. package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
  497. package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
  498. package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
  499. package/kotlin/fixtures/import-navigation/README.md +0 -31
  500. package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
  501. package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
  502. package/kotlin/fixtures/import-navigation/package.json +0 -23
  503. package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
  504. package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
  505. package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
  506. package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
  507. package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
  508. package/kotlin/fixtures/import-overlays/README.md +0 -34
  509. package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
  510. package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
  511. package/kotlin/fixtures/import-overlays/package.json +0 -23
  512. package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
  513. package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
  514. package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
  515. package/kotlin/fixtures/import-resources/README.md +0 -26
  516. package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
  517. package/kotlin/fixtures/import-resources/Resources.kt +0 -72
  518. package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
  519. package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
  520. package/kotlin/fixtures/import-resources/package.json +0 -23
  521. package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
  522. package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
  523. package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
  524. package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
  525. package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
  526. package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
  527. package/kotlin/fixtures/import-scroll/README.md +0 -38
  528. package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
  529. package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
  530. package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
  531. package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
  532. package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
  533. package/kotlin/fixtures/import-scroll/package.json +0 -23
  534. package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
  535. package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
  536. package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
  537. package/kotlin/fixtures/import-selection/README.md +0 -32
  538. package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
  539. package/kotlin/fixtures/import-selection/Selection.kt +0 -78
  540. package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
  541. package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
  542. package/kotlin/fixtures/import-selection/package.json +0 -23
  543. package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
  544. package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
  545. package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
  546. package/kotlin/fixtures/import-surfaces/README.md +0 -22
  547. package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
  548. package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
  549. package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
  550. package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
  551. package/kotlin/fixtures/import-surfaces/package.json +0 -23
  552. package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
  553. package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
  554. package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
  555. package/kotlin/fixtures/import-values/README.md +0 -28
  556. package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
  557. package/kotlin/fixtures/import-values/Values.kt +0 -84
  558. package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
  559. package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
  560. package/kotlin/fixtures/import-values/package.json +0 -23
  561. package/kotlin/fixtures/import-values/tsconfig.json +0 -20
  562. package/kotlin/fixtures/import-values/vite.config.ts +0 -20
  563. package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
  564. package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
  565. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
  566. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
  567. package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
  568. package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
  569. package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
  570. package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
  571. package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
  572. package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
  573. package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
  574. package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
  575. package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
  576. package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
  577. package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
  578. package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
  579. package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
  580. package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
  581. package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
  582. package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
  583. package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
  584. package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
  585. package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
  586. package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
  587. package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
  588. package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
  589. package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
  590. package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
  591. package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
  592. package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
  593. package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
  594. package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
  595. package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
  596. package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
  597. package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
  598. package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
  599. package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
  600. package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
  601. package/kotlin/fork/README.md +0 -97
  602. package/kotlin/fork/build.sh +0 -176
  603. package/kotlin/fork/compose-worker-globals.patch +0 -1247
  604. package/kotlin/fork/fork.json +0 -46
  605. package/kotlin/fork/publish.ts +0 -99
  606. package/kotlin/fork/skia-android-shaping.patch +0 -189
  607. package/kotlin/fork/skiko-local.init.gradle +0 -10
  608. package/kotlin/fork/skiko-worker-clock.patch +0 -122
@@ -0,0 +1,721 @@
1
+ import type { ShellInteractiveEdgeSwipeSpec, ShellInteractiveFormSheetSpec } from '../../peach-compat/src/stubs/screen-transition-math.d.ts';
2
+ import type { ScreenFormSheetCommit, ScreenFormSheetMotion } from '../../peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts';
3
+ import type { ScreenInfo } from './navigation-types.d.ts';
4
+ import type { ShellNativeEvaluationOwner, SystemPermissionDescriptor, SystemPermissionKind, SystemPermissionLocationAccuracy, SystemPermissionState, SystemPermissionStatus, SootsimSettingsPage } from '../../peach-globals/src/index.d.ts';
5
+ import type { ComponentType, ReactNode, ReactPortal } from 'react';
6
+ export type { SystemNotificationSettings, SystemPermissionDescriptor, SystemPermissionKind, SystemPermissionLocationAccuracy, SystemPermissionState, SystemPermissionStatus, } from '../../peach-globals/src/index.d.ts';
7
+ declare const screenTransitionAnimations: readonly ['slide', 'cross-fade', 'simple-push', 'simple-push-from-left', 'android-default', 'slide-from-left', 'slide-from-right', 'android-ios-from-left', 'android-ios-from-right', 'slide-from-bottom', 'sheet-cover', 'modal-cover', 'android-slide-from-bottom', 'fade', 'modal-fade', 'modal-flip', 'android-fade', 'fade-from-bottom', 'android-fade-from-bottom', 'zoom', 'none'];
8
+ export type ScreenTransitionAnimation = (typeof screenTransitionAnimations)[number];
9
+ export interface ScreenTransitionProgress {
10
+ surfaceId: string;
11
+ generation: number;
12
+ stackId: number;
13
+ transitionId: number;
14
+ progress: number;
15
+ }
16
+ export declare function isScreenTransitionAnimation(value: unknown): value is ScreenTransitionAnimation;
17
+ export type ScreenEdgeSwipeCommit = {
18
+ surfaceId: string;
19
+ generation: number;
20
+ stackId: number;
21
+ interactiveId: number;
22
+ controllerTag: number;
23
+ } & ({
24
+ phase: 'progress';
25
+ progress: number;
26
+ } | {
27
+ phase: 'begin';
28
+ committed: boolean;
29
+ behindDimEnabled: boolean;
30
+ animation: ScreenTransitionAnimation;
31
+ durationMs: number;
32
+ screenWidth: number;
33
+ screenHeight: number;
34
+ } | {
35
+ phase: 'release' | 'settle';
36
+ committed: boolean;
37
+ });
38
+ export interface SymbolImageBox {
39
+ width: number;
40
+ height: number;
41
+ }
42
+ export interface TabBarIconImage {
43
+ source: {
44
+ uri: string;
45
+ width?: number;
46
+ height?: number;
47
+ scale?: number;
48
+ } | number;
49
+ template: boolean;
50
+ }
51
+ export interface BottomTabBarItem {
52
+ label: string;
53
+ testID?: string;
54
+ accessibilityLabel?: string;
55
+ icon?: string;
56
+ iconName?: string;
57
+ selectedIconName?: string;
58
+ allowCustomSymbols?: boolean;
59
+ iconRenderingMode?: 'default' | 'monochrome' | 'original';
60
+ selectedIconRenderingMode?: BottomTabBarItem['iconRenderingMode'];
61
+ labelPositionAdjustment?: {
62
+ stacked?: {
63
+ horizontal?: number;
64
+ vertical?: number;
65
+ };
66
+ inline?: {
67
+ horizontal?: number;
68
+ vertical?: number;
69
+ };
70
+ compactInline?: {
71
+ horizontal?: number;
72
+ vertical?: number;
73
+ };
74
+ };
75
+ symbolVariant?: 'fill';
76
+ selectedSymbolVariant?: 'fill';
77
+ materialIconName?: string;
78
+ selectedMaterialIconName?: string;
79
+ iconImage?: TabBarIconImage;
80
+ selectedIconImage?: TabBarIconImage;
81
+ badge?: number | string | {
82
+ text: string;
83
+ };
84
+ androidBadgeText?: boolean;
85
+ badgeStyle?: {
86
+ backgroundColor?: string;
87
+ color?: string;
88
+ };
89
+ labelVisibility?: 'auto' | 'labeled' | 'unlabeled' | 'selected';
90
+ rippleColor?: string;
91
+ activeIndicatorColor?: string;
92
+ activeIndicatorEnabled?: boolean;
93
+ iconSize?: number;
94
+ activeIndicatorWidth?: number;
95
+ activeIndicatorHeight?: number;
96
+ role?: string;
97
+ systemItem?: string;
98
+ prominent?: boolean;
99
+ activeTintColor?: string;
100
+ preventsDefault?: boolean;
101
+ }
102
+ export type BottomTabAccessoryPlacement = 'regular' | 'inline';
103
+ export type BottomTabAccessoryRenderer = (placement: BottomTabAccessoryPlacement) => ReactNode;
104
+ export interface MinimizeTracking {
105
+ readonly value: number;
106
+ addListener(fn: () => void): () => void;
107
+ }
108
+ export interface BottomTabBarProps {
109
+ tabs: readonly BottomTabBarItem[];
110
+ activeIndex: number;
111
+ hidden?: boolean;
112
+ visibilityAnimationEnabled?: boolean;
113
+ onTabPress: (index: number) => boolean | void;
114
+ onTabLongPress?: (index: number) => void;
115
+ tabLabelStyle?: {
116
+ fontFamily?: string;
117
+ fontWeight?: string;
118
+ fontSize?: number;
119
+ fontStyle?: 'normal' | 'italic';
120
+ color?: string;
121
+ };
122
+ selectedTabLabelStyle?: BottomTabBarProps['tabLabelStyle'];
123
+ colorScheme?: 'light' | 'dark';
124
+ activeTintColor?: string;
125
+ inactiveTintColor?: string;
126
+ activeLabelColor?: string;
127
+ inactiveLabelColor?: string;
128
+ tabBarControllerMode?: 'automatic' | 'tabBar' | 'tabSidebar';
129
+ sidebarVisible?: boolean;
130
+ onSidebarToggle?: () => void;
131
+ rippleColor?: string;
132
+ backgroundColor?: string;
133
+ hasScrollEdgeEffect?: boolean;
134
+ materialKey?: string;
135
+ bottomAccessory?: BottomTabAccessoryRenderer;
136
+ onBottomInsetChange?: (inset: number) => void;
137
+ isMinimized?: boolean;
138
+ minimizeProgress?: number;
139
+ minimizeTracking?: MinimizeTracking;
140
+ compressionBehavior?: 'overflow';
141
+ }
142
+ export type GestureSeamOwner = {
143
+ kind: 'app';
144
+ peerEpoch: number;
145
+ surfaceId: 'app:one' | 'app:two';
146
+ generation: number;
147
+ } | {
148
+ kind: 'shell-overlay';
149
+ peerEpoch: number;
150
+ surfaceId: 'shell-overlay';
151
+ generation: 1;
152
+ };
153
+ export interface ColorPickerControlProps {
154
+ color: string;
155
+ label?: string;
156
+ children?: ReactNode;
157
+ disabled?: boolean;
158
+ supportsOpacity?: boolean;
159
+ onChange?: (value: string) => void;
160
+ testID?: string;
161
+ }
162
+ export interface SootSimEngineConfig {
163
+ components: {
164
+ View: any;
165
+ Pressable: any;
166
+ Text: any;
167
+ Image: any;
168
+ ScrollView: any;
169
+ FlatList: any;
170
+ SectionList?: any;
171
+ Modal: any;
172
+ KeyboardAvoidingView: any;
173
+ ContextMenu: any;
174
+ BottomTabBar: ComponentType<BottomTabBarProps>;
175
+ GlassPress?: any;
176
+ Slider?: any;
177
+ SegmentedControl?: any;
178
+ ColorWheel?: any;
179
+ ColorPicker: ComponentType<ColorPickerControlProps>;
180
+ WheelPicker?: any;
181
+ SfSymbolIcon?: any;
182
+ Swipeable: any;
183
+ [key: string]: any;
184
+ };
185
+ bottomTabBarHeight?: () => number;
186
+ topTabBarInset?: () => number;
187
+ types: {
188
+ MenuItemConfig: any;
189
+ MenuGroupConfig: any;
190
+ TabItem: any;
191
+ [key: string]: any;
192
+ };
193
+ engine: {
194
+ createPortal: (children: ReactNode, target: unknown, key?: string | null) => ReactPortal;
195
+ AnimatedValue: any;
196
+ registerNativeAnimation: (value: any, step: (now: number) => boolean, callback?: (result: {
197
+ finished: boolean;
198
+ reason: 'completed' | 'stalled' | 'stopped';
199
+ }) => void, options?: {
200
+ priority?: 'normal' | 'low' | 'high';
201
+ layoutBound?: boolean;
202
+ }) => number;
203
+ stopNativeAnimation: (id: number) => void;
204
+ createTimingStep: (value: any, config: {
205
+ toValue: number;
206
+ duration?: number;
207
+ easing?: (t: number) => number;
208
+ }) => (now: number) => boolean;
209
+ createLoopingTimingStep: (value: any, config: {
210
+ fromValue?: number;
211
+ toValue: number;
212
+ duration?: number;
213
+ easing?: (t: number) => number;
214
+ }) => (now: number) => boolean;
215
+ createSpringStep: (value: any, config: any) => (now: number) => boolean;
216
+ triggerAnimatedRender: (options?: {
217
+ layout?: boolean;
218
+ targetNodes?: Set<any>;
219
+ }) => void;
220
+ beginScreenTransition: () => () => void;
221
+ beginNavigationTransition: (kind: 'presenting' | 'dismissing' | 'swiping-back') => () => void;
222
+ registerScreen: (info: ScreenInfo) => () => void;
223
+ updateScreen: (id: string, partial: Partial<Omit<ScreenInfo, 'id' | 'owner'>>, owner: ShellNativeEvaluationOwner | null) => boolean;
224
+ bumpLayoutVersion?: (node?: any) => void;
225
+ invalidateBoundaryForAnimatedStyle?: (style: {
226
+ ___sootsimNodeTag?: number;
227
+ }) => void;
228
+ beginShellScreenTransition?: (descriptor: any, onStarted: () => void) => boolean;
229
+ settleShellScreenTransitionEntry?: (owner: Omit<ScreenTransitionProgress, 'progress'>) => void;
230
+ onShellScreenTransitionProgress: (callback: (event: ScreenTransitionProgress) => void) => () => void;
231
+ beginShellScreenInteractive?: (descriptor: any) => boolean;
232
+ updateShellScreenInteractive?: (owner: {
233
+ interactiveId: number;
234
+ surfaceId: string;
235
+ generation: number;
236
+ }, drag: number) => void;
237
+ endShellScreenInteractive?: (owner: {
238
+ interactiveId: number;
239
+ surfaceId: string;
240
+ generation: number;
241
+ }, opts: {
242
+ commit: boolean;
243
+ fromDrag: number;
244
+ velocity: number;
245
+ stackId: number;
246
+ }) => void;
247
+ registerShellInteractiveEdgeSwipe?: (spec: ShellInteractiveEdgeSwipeSpec) => boolean;
248
+ getShellSurfaceOwner?: (viewTag: number) => {
249
+ surfaceId: 'app:one' | 'app:two';
250
+ generation: number;
251
+ } | null;
252
+ unregisterShellInteractiveEdgeSwipe?: (owner: {
253
+ surfaceId: string;
254
+ generation: number;
255
+ viewTag: number;
256
+ }) => void;
257
+ onShellEdgeSwipeCommit?: (cb: (commit: ScreenEdgeSwipeCommit) => void) => () => void;
258
+ registerShellInteractiveFormSheet?: (spec: ShellInteractiveFormSheetSpec) => boolean;
259
+ unregisterShellInteractiveFormSheet?: (owner: {
260
+ surfaceId: string;
261
+ generation: number;
262
+ viewTag: number;
263
+ }) => void;
264
+ settleShellInteractiveFormSheet?: (motion: ScreenFormSheetMotion) => void;
265
+ onShellFormSheetCommit?: (cb: (commit: ScreenFormSheetCommit) => void) => () => void;
266
+ postGestureSeamRequest?: (req: {
267
+ kind: 'create';
268
+ handlerName: string;
269
+ handlerTag: number;
270
+ config: Record<string, unknown>;
271
+ graph: {
272
+ owner: GestureSeamOwner;
273
+ detectorId: number;
274
+ generation: number;
275
+ revision: number;
276
+ memberTags: number[];
277
+ groups: Array<{
278
+ kind: 'race' | 'exclusive' | 'simultaneous';
279
+ members: number[][];
280
+ }>;
281
+ relations: Array<{
282
+ handlerTag: number;
283
+ simultaneousWith: number[];
284
+ requireToFail: number[];
285
+ blocksExternal: number[];
286
+ }>;
287
+ };
288
+ } | {
289
+ kind: 'attach';
290
+ handlerTag: number;
291
+ viewTag: number;
292
+ actionType: number;
293
+ owner: GestureSeamOwner;
294
+ viewIsUIControl: boolean;
295
+ reanimatedEventViewTag?: number;
296
+ reanimatedHandlerTag?: number;
297
+ } | {
298
+ kind: 'update';
299
+ handlerTag: number;
300
+ config: Record<string, unknown>;
301
+ graph: {
302
+ owner: GestureSeamOwner;
303
+ detectorId: number;
304
+ generation: number;
305
+ revision: number;
306
+ memberTags: number[];
307
+ groups: Array<{
308
+ kind: 'race' | 'exclusive' | 'simultaneous';
309
+ members: number[][];
310
+ }>;
311
+ relations: Array<{
312
+ handlerTag: number;
313
+ simultaneousWith: number[];
314
+ requireToFail: number[];
315
+ blocksExternal: number[];
316
+ }>;
317
+ };
318
+ } | {
319
+ kind: 'drop';
320
+ handlerTag: number;
321
+ owner: GestureSeamOwner;
322
+ } | {
323
+ kind: 'setState';
324
+ handlerTag: number;
325
+ newState: number;
326
+ owner: GestureSeamOwner;
327
+ }) => void;
328
+ getGestureSurfaceOwner?: (viewTag: number, nativeNode: unknown) => GestureSeamOwner | null;
329
+ cancelGesturePointers?: (surfaceId: string, pointerIds: readonly number[], cancelsJSResponder: boolean, cancelsNativeTouch: boolean) => void;
330
+ registerGestureSeamHandler?: (cb: (event: {
331
+ owner: GestureSeamOwner;
332
+ channel: 'stateChange' | 'update';
333
+ handlerTag: number;
334
+ state: number;
335
+ oldState: number;
336
+ numberOfPointers: number;
337
+ x?: number;
338
+ y?: number;
339
+ absoluteX?: number;
340
+ absoluteY?: number;
341
+ translationX?: number;
342
+ translationY?: number;
343
+ velocityX?: number;
344
+ velocityY?: number;
345
+ velocity?: number;
346
+ scale?: number;
347
+ focalX?: number;
348
+ focalY?: number;
349
+ rotation?: number;
350
+ anchorX?: number;
351
+ anchorY?: number;
352
+ pointerInside?: boolean;
353
+ pointerType?: number;
354
+ stylusData?: Record<string, number>;
355
+ duration?: number;
356
+ timestamp?: number;
357
+ sourcePhase?: 'down' | 'move' | 'up' | 'cancel';
358
+ } | {
359
+ owner: GestureSeamOwner;
360
+ channel: 'touch';
361
+ handlerTag: number;
362
+ pointerType: number;
363
+ x: number;
364
+ y: number;
365
+ touches: ReadonlyArray<{
366
+ pageX: number;
367
+ pageY: number;
368
+ identifier: number;
369
+ }>;
370
+ viewRect: {
371
+ pageX: number;
372
+ pageY: number;
373
+ };
374
+ sourcePhase: 'down' | 'move' | 'up' | 'cancel';
375
+ } | {
376
+ owner: GestureSeamOwner;
377
+ channel: 'touchCancellation';
378
+ handlerTag: number;
379
+ pointerIds: readonly number[];
380
+ cancelsJSResponder: boolean;
381
+ cancelsNativeTouch: boolean;
382
+ sourcePhase: 'down' | 'move' | 'up' | 'cancel';
383
+ }) => void) => () => void;
384
+ beginNativeMenuGesture?: (event?: {
385
+ pointerId?: number;
386
+ pageX?: number;
387
+ pageY?: number;
388
+ }) => boolean;
389
+ [key: string]: any;
390
+ };
391
+ reactNative: {
392
+ usePinnedTraitColorScheme: () => 'light' | 'dark' | null;
393
+ Platform: any;
394
+ Dimensions: any;
395
+ UIManager: any;
396
+ Keyboard: any;
397
+ findNodeHandle?: (component: any) => number | null;
398
+ BackHandler: {
399
+ emitBackPress: () => boolean;
400
+ };
401
+ AppRegistry: any;
402
+ NativeEventEmitter: any;
403
+ DeviceEventEmitter: any;
404
+ Animated?: any;
405
+ Easing?: any;
406
+ [key: string]: any;
407
+ };
408
+ nativeNotifications?: NativeNotificationsConfig;
409
+ nativeAlerts?: NativeAlertsConfig;
410
+ nativePermissions?: NativePermissionsConfig;
411
+ systemPermissions?: NativePermissionsConfig;
412
+ appSurfaceBackground?: {
413
+ set: (color: string | number | null) => void;
414
+ get: () => string | null;
415
+ };
416
+ systemBars?: {
417
+ update: (patch: {
418
+ behavior?: string | null;
419
+ statusBar?: {
420
+ backgroundColor?: string;
421
+ hidden?: boolean;
422
+ style?: string;
423
+ translucent?: boolean;
424
+ };
425
+ navigationBar?: {
426
+ backgroundColor?: string;
427
+ borderColor?: string | null;
428
+ hidden?: boolean;
429
+ position?: string | null;
430
+ style?: string;
431
+ translucent?: boolean;
432
+ };
433
+ }) => void;
434
+ };
435
+ services?: {
436
+ dynamicColor?: (light: string, dark: string) => any;
437
+ resolveIOSSemanticColor?: (name: string) => any;
438
+ liquidGlassPresets?: Record<string, any>;
439
+ iosStepperCapsule?: any;
440
+ iosStepperDivider?: any;
441
+ iosSwitchMetrics?: any;
442
+ sfSymbolCodePoint?: {
443
+ get: (name: string) => number | null | undefined;
444
+ request: (name: string) => Promise<number | null>;
445
+ };
446
+ sfSymbolImageBox?: {
447
+ get: (name: string, size: number, weight?: string) => SymbolImageBox | null;
448
+ request: (name: string, size: number, weight?: string) => Promise<SymbolImageBox | null>;
449
+ };
450
+ [key: string]: any;
451
+ };
452
+ [key: string]: any;
453
+ }
454
+ export interface NativePermissionsConfig {
455
+ prepareStatusSnapshot: () => Promise<void>;
456
+ subscribeStatus: (listener: () => void) => () => void;
457
+ getStatus: (kind: SystemPermissionKind, owner?: ShellNativeEvaluationOwner) => SystemPermissionStatus;
458
+ check: (descriptor: SystemPermissionDescriptor, signal?: AbortSignal, owner?: ShellNativeEvaluationOwner) => Promise<SystemPermissionState>;
459
+ checkMultiple: (descriptors: readonly SystemPermissionDescriptor[]) => Promise<readonly SystemPermissionState[]>;
460
+ request: (descriptor: SystemPermissionDescriptor, signal?: AbortSignal, owner?: ShellNativeEvaluationOwner) => Promise<SystemPermissionState>;
461
+ requestMultiple: (descriptors: readonly SystemPermissionDescriptor[]) => Promise<readonly SystemPermissionState[]>;
462
+ requestLocationAccuracy: (purpose: string) => Promise<SystemPermissionLocationAccuracy>;
463
+ setLimitedResources: (kind: SystemPermissionKind, resourceIds: readonly string[], owner?: ShellNativeEvaluationOwner) => Promise<void>;
464
+ openLimitedPhotoLibraryPicker: () => Promise<void>;
465
+ openSettings: (route: {
466
+ kind: 'app';
467
+ } | {
468
+ kind: 'system';
469
+ page: SootsimSettingsPage;
470
+ }, owner?: ShellNativeEvaluationOwner) => Promise<void>;
471
+ }
472
+ export type NativeAlertPromptValue = string | {
473
+ login: string;
474
+ password: string;
475
+ };
476
+ export interface NativeAlertsConfig {
477
+ showSystem: (title: string, message: string, buttons: Array<NonNullable<Parameters<NativeAlertsConfig['show']>[2]>[number] & {
478
+ settingsRoute?: Parameters<NativePermissionsConfig['openSettings']>[0];
479
+ }>) => number;
480
+ show: (title: string, message?: string, buttons?: Array<{
481
+ text?: string;
482
+ style?: 'default' | 'cancel' | 'destructive';
483
+ isPreferred?: boolean;
484
+ onPress?: (value?: NativeAlertPromptValue) => void;
485
+ }>, options?: {
486
+ cancelable?: boolean;
487
+ onDismiss?: () => void;
488
+ }, traitScheme?: 'light' | 'dark' | null) => number;
489
+ dismiss: (handle: number) => void;
490
+ showActionSheet: (spec: {
491
+ title?: string;
492
+ message?: string;
493
+ options: string[];
494
+ animated?: boolean;
495
+ permittedArrowDirections?: number;
496
+ disabledButtonIndices?: number[];
497
+ preferredButtonIndex?: number;
498
+ cancelButtonIndex?: number;
499
+ destructiveButtonIndex?: number | number[];
500
+ sourceRect?: {
501
+ x: number;
502
+ y: number;
503
+ width: number;
504
+ height: number;
505
+ };
506
+ }, onSelect: (index: number) => void, traitScheme?: 'light' | 'dark' | null, lifecycle?: {
507
+ onDidPresent?: () => void;
508
+ onWillDismiss?: () => void;
509
+ onDidDismiss?: () => void;
510
+ }) => number;
511
+ dismissActionSheet: (handle: number) => void;
512
+ isWindowTintDimmed: () => boolean;
513
+ subscribeWindowTintDimmed: (listener: () => void) => () => void;
514
+ }
515
+ export interface NativeNotificationsConfig {
516
+ push: (spec: {
517
+ appName: string;
518
+ body: string;
519
+ iconColor?: string;
520
+ id: string;
521
+ time?: string;
522
+ title: string;
523
+ }, onTap?: () => void) => void;
524
+ dismiss: (id: string) => void;
525
+ bus: NotificationBusInterface;
526
+ }
527
+ export interface NotifChannel {
528
+ id: string;
529
+ name?: string;
530
+ description?: string;
531
+ importance?: number;
532
+ groupId?: string;
533
+ sound?: string | null;
534
+ vibrationPattern?: number[] | null;
535
+ enableVibrate?: boolean;
536
+ enableLights?: boolean;
537
+ lightColor?: string;
538
+ visibility?: number;
539
+ bypassDnd?: boolean;
540
+ showBadge?: boolean;
541
+ blocked?: boolean;
542
+ }
543
+ export interface NotifChannelGroup {
544
+ id: string;
545
+ name?: string;
546
+ description?: string;
547
+ blocked?: boolean;
548
+ }
549
+ export interface NotifSpec {
550
+ id: string;
551
+ title?: string;
552
+ body?: string;
553
+ subtitle?: string;
554
+ data?: Record<string, unknown>;
555
+ pushPayload?: Record<string, unknown>;
556
+ channelId?: string;
557
+ categoryId?: string;
558
+ color?: string;
559
+ badge?: number;
560
+ threadId?: string;
561
+ contentAvailable?: 0 | 1;
562
+ smallIcon?: string;
563
+ largeIcon?: string;
564
+ autoCancel?: boolean;
565
+ ongoing?: boolean;
566
+ groupId?: string;
567
+ subText?: string;
568
+ raw?: Record<string, unknown>;
569
+ origin?: 'notifee' | 'expo' | 'rnpn' | 'rnpn-ios' | 'fcm' | 'airship' | 'onesignal';
570
+ }
571
+ export type NotifTrigger = {
572
+ type: 'timestamp';
573
+ timestamp: number;
574
+ repeats?: boolean;
575
+ } | {
576
+ type: 'interval';
577
+ seconds: number;
578
+ repeats?: boolean;
579
+ } | {
580
+ type: 'date';
581
+ date: number;
582
+ repeats?: boolean;
583
+ } | {
584
+ type: 'daily';
585
+ hour: number;
586
+ minute: number;
587
+ utc?: boolean;
588
+ } | {
589
+ type: 'weekly';
590
+ weekday: number;
591
+ hour: number;
592
+ minute: number;
593
+ utc?: boolean;
594
+ } | {
595
+ type: 'calendar';
596
+ year?: number;
597
+ month?: number;
598
+ day?: number;
599
+ weekday?: number;
600
+ hour?: number;
601
+ minute?: number;
602
+ second?: number;
603
+ utc?: boolean;
604
+ } | {
605
+ type: 'location';
606
+ latitude: number;
607
+ longitude: number;
608
+ radius: number;
609
+ identifier: string;
610
+ notifyOnEntry: boolean;
611
+ notifyOnExit: boolean;
612
+ repeats: boolean;
613
+ } | null;
614
+ export type NotifEventType = 'delivered' | 'pressed' | 'dismissed' | 'received' | 'channel-blocked' | 'app-blocked' | 'trigger-created' | 'badge-changed' | 'permission-changed' | 'token-changed';
615
+ export interface NotifPermission {
616
+ status: 'undetermined' | 'denied' | 'granted' | 'provisional';
617
+ canAskAgain: boolean;
618
+ alert: boolean;
619
+ badge: boolean;
620
+ sound: boolean;
621
+ critical?: boolean;
622
+ lockScreen?: boolean;
623
+ notificationCenter?: boolean;
624
+ showPreviews?: 'always' | 'whenUnlocked' | 'never';
625
+ announcement?: boolean;
626
+ carPlay?: boolean;
627
+ inAppNotificationSettings?: boolean;
628
+ authorizationStatus: number;
629
+ }
630
+ export interface NotifToken {
631
+ type: 'expo' | 'apns' | 'fcm' | 'browser' | 'voip';
632
+ data: string;
633
+ }
634
+ export interface NotifEvent {
635
+ type: NotifEventType;
636
+ notification?: NotifSpec;
637
+ actionId?: string;
638
+ userText?: string;
639
+ badge?: number;
640
+ permission?: NotifPermission;
641
+ token?: NotifToken;
642
+ }
643
+ export interface NotifAction {
644
+ id: string;
645
+ title: string;
646
+ options?: Record<string, unknown>;
647
+ destructive?: boolean;
648
+ foreground?: boolean;
649
+ textInput?: {
650
+ buttonTitle?: string;
651
+ placeholder?: string;
652
+ };
653
+ }
654
+ export interface NotifCategory {
655
+ id: string;
656
+ actions: NotifAction[];
657
+ options?: Record<string, unknown>;
658
+ }
659
+ export interface NotifPresentation {
660
+ banner: boolean;
661
+ list: boolean;
662
+ sound: boolean;
663
+ badge: boolean;
664
+ alert?: boolean;
665
+ }
666
+ export type NotifForegroundPresenter = (spec: NotifSpec) => Promise<NotifPresentation>;
667
+ export interface NotificationBusInterface {
668
+ createChannel: (channel: NotifChannel) => NotifChannel;
669
+ getChannel: (id: string) => NotifChannel | null;
670
+ deleteChannel: (id: string) => void;
671
+ getChannels: () => NotifChannel[];
672
+ isChannelCreated: (id: string) => boolean;
673
+ isChannelBlocked: (id: string) => boolean;
674
+ createChannelGroup: (group: NotifChannelGroup) => NotifChannelGroup;
675
+ getChannelGroup: (id: string) => NotifChannelGroup | null;
676
+ deleteChannelGroup: (id: string) => void;
677
+ getChannelGroups: () => NotifChannelGroup[];
678
+ push: (spec: NotifSpec) => string;
679
+ dispatchUserNotification: (payload: Record<string, unknown>, opts: {
680
+ launch: boolean;
681
+ actionId?: string;
682
+ userText?: string;
683
+ }) => string | null;
684
+ dismiss: (id: string) => void;
685
+ dismissAll: () => void;
686
+ removeDisplayed: (id: string) => void;
687
+ removeAllDisplayed: () => void;
688
+ getDisplayed: () => NotifSpec[];
689
+ setForegroundPresenter: (presenter: NotifForegroundPresenter | null) => void;
690
+ schedule: (spec: NotifSpec, trigger: NotifTrigger) => string;
691
+ cancelScheduled: (id: string) => void;
692
+ cancelAllScheduled: () => void;
693
+ getScheduled: () => Array<{
694
+ spec: NotifSpec;
695
+ trigger: NotifTrigger;
696
+ }>;
697
+ getBadge: () => number;
698
+ setBadge: (count: number) => void;
699
+ incrementBadge: (by?: number) => void;
700
+ decrementBadge: (by?: number) => void;
701
+ requestPermission: (opts?: {
702
+ alert?: boolean;
703
+ badge?: boolean;
704
+ sound?: boolean;
705
+ critical?: boolean;
706
+ }) => Promise<NotifPermission>;
707
+ getPermission: () => Promise<NotifPermission>;
708
+ getExpoPushToken: () => string;
709
+ getDevicePushToken: (platform: 'apns' | 'fcm' | 'browser' | 'voip') => NotifToken;
710
+ setCategory: (category: NotifCategory) => void;
711
+ getCategories: () => NotifCategory[];
712
+ deleteCategory: (id: string) => void;
713
+ getInitialNotification: () => NotifSpec | null;
714
+ on: (type: NotifEventType, cb: (event: NotifEvent) => void) => () => void;
715
+ onAny: (cb: (event: NotifEvent) => void) => () => void;
716
+ }
717
+ export declare function setEngineConfig(config: SootSimEngineConfig): void;
718
+ export declare function setEngineConfigInitializer(init: () => SootSimEngineConfig): void;
719
+ export declare function resetCapabilityStore(): void;
720
+ export declare function getOptionalEngineConfig(): SootSimEngineConfig | undefined;
721
+ export declare function getEngineConfig(): SootSimEngineConfig;