peachsim 0.1.1641 → 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 (618) hide show
  1. package/README.md +12 -0
  2. package/cli/app-bundle-resources.ts +57 -0
  3. package/cli/app-catalog.ts +1 -1
  4. package/cli/app-fonts.ts +11 -80
  5. package/cli/app-splash.ts +18 -12
  6. package/cli/bridge-flow-runner.ts +11 -7
  7. package/cli/cloud-client.ts +10 -13
  8. package/cli/command-registry.ts +13 -4
  9. package/cli/commands/box.ts +4 -4
  10. package/cli/commands/control.ts +105 -53
  11. package/cli/commands/coverage-parser.ts +67 -0
  12. package/cli/commands/coverage.ts +550 -0
  13. package/cli/commands/debug.ts +9 -18
  14. package/cli/commands/desktop.ts +19 -7
  15. package/cli/commands/device.ts +14 -9
  16. package/cli/commands/guest-host.ts +6 -10
  17. package/cli/commands/inspect/core.ts +81 -17
  18. package/cli/commands/inspect.ts +13 -8
  19. package/cli/commands/kotlin.ts +2 -2
  20. package/cli/commands/maestro-compare.ts +1 -1
  21. package/cli/commands/platform.ts +20 -11
  22. package/cli/commands/preview.ts +16 -18
  23. package/cli/commands/runtime.ts +3 -2
  24. package/cli/commands/screenshot-layers.ts +1 -1
  25. package/cli/commands/screenshot.ts +1 -1
  26. package/cli/commands/serve.ts +5 -1
  27. package/cli/commands/support.ts +4 -4
  28. package/cli/commands/three-mode.ts +22 -15
  29. package/cli/commands/upload.ts +44 -45
  30. package/cli/current-sim.ts +38 -0
  31. package/cli/desktop-companion.ts +36 -8
  32. package/cli/device-option.ts +1 -1
  33. package/cli/drivers/playwright.ts +40 -0
  34. package/cli/drivers/types.ts +4 -0
  35. package/cli/help-core.ts +1 -1
  36. package/cli/internal-child.ts +2 -1
  37. package/cli/main.ts +9 -3
  38. package/cli/outbound-endpoints.ts +15 -5
  39. package/cli/output-redaction.ts +39 -14
  40. package/cli/remote-simulators.ts +4 -1
  41. package/cli/scene-video.ts +5 -2
  42. package/cli/send-to-box.ts +7 -10
  43. package/cli/telemetry.ts +1 -1
  44. package/cli/ws-bridge.ts +8 -1
  45. package/detox/attempt-events.cjs +3 -1
  46. package/detox/attempt-events.d.cts +1 -1
  47. package/detox/expectations.ts +108 -99
  48. package/detox/frame-offset.d.mts +6 -0
  49. package/detox/frame-offset.mjs +35 -0
  50. package/detox/gestures.ts +6 -18
  51. package/detox/index.ts +169 -101
  52. package/detox/jest-preset.cjs +1 -3
  53. package/detox/jest-transform.cjs +4 -0
  54. package/detox/matchers.ts +3 -0
  55. package/detox/motion-change.cjs +52 -118
  56. package/detox/motion-change.d.cts +6 -27
  57. package/detox/motion-leg-starts.cjs +20 -0
  58. package/detox/motion-leg-starts.d.cts +8 -0
  59. package/dist-lib/agent-daemon-client.cjs +1 -1
  60. package/dist-lib/agent-events.cjs +1 -1
  61. package/dist-lib/attached-projects.cjs +1 -1
  62. package/dist-lib/auth/shared-session.cjs +1 -1
  63. package/dist-lib/backend-origin.cjs +3 -3
  64. package/dist-lib/beta.cjs +1 -1
  65. package/dist-lib/beta.mjs +1 -1
  66. package/dist-lib/bridge-constants.cjs +1 -1
  67. package/dist-lib/bridge-contract-input.cjs +65 -1
  68. package/dist-lib/bridge-contract-input.mjs +63 -1
  69. package/dist-lib/bridge-contract.cjs +19 -1
  70. package/dist-lib/bridge-contract.mjs +17 -1
  71. package/dist-lib/bundle-channel.cjs +38332 -14940
  72. package/dist-lib/capture-contract.cjs +1 -1
  73. package/dist-lib/capture-contract.mjs +1 -1
  74. package/dist-lib/cloud-contract.cjs +1 -1
  75. package/dist-lib/cloud-contract.mjs +1 -1
  76. package/dist-lib/cloud-test-args.cjs +1 -1
  77. package/dist-lib/cloud-test-args.mjs +1 -1
  78. package/dist-lib/cloud.cjs +1 -1
  79. package/dist-lib/cloud.mjs +1 -1
  80. package/dist-lib/config.cjs +1 -1
  81. package/dist-lib/config.mjs +5 -3
  82. package/dist-lib/detox/index.cjs +1247 -4511
  83. package/dist-lib/detox/jest-preset.cjs +1 -3
  84. package/dist-lib/detox/jest-transform.cjs +4 -0
  85. package/dist-lib/dev-bundle-resolution.cjs +28 -24
  86. package/dist-lib/expo-swift-bundle.cjs +35243 -13172
  87. package/dist-lib/expo-swift-metadata.cjs +1 -1
  88. package/dist-lib/expo-swift-metadata.mjs +1 -1
  89. package/dist-lib/home-paths.cjs +1 -1
  90. package/dist-lib/host/bridge-host.cjs +45285 -63163
  91. package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
  92. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  93. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  94. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  95. package/dist-lib/host/websocket-proxy.cjs +1 -1
  96. package/dist-lib/index.cjs +1997 -2069
  97. package/dist-lib/jump-to-source-babel.cjs +1 -1
  98. package/dist-lib/jump-to-source-native.cjs +1 -1
  99. package/dist-lib/kotlin-host.cjs +2 -2
  100. package/dist-lib/menu.cjs +14 -6
  101. package/dist-lib/menu.mjs +14 -6
  102. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  103. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  104. package/dist-lib/metro-production-bundle.cjs +1 -1
  105. package/dist-lib/metro-production-bundle.mjs +1 -1
  106. package/dist-lib/metro.cjs +468 -563
  107. package/dist-lib/native-app-identity-project.cjs +128 -292
  108. package/dist-lib/native-app-identity-project.mjs +1262 -51
  109. package/dist-lib/native-app-identity.cjs +8 -3
  110. package/dist-lib/native-app-identity.mjs +8 -3
  111. package/dist-lib/native-firebase-metadata.cjs +1 -1
  112. package/dist-lib/native-firebase-metadata.mjs +1 -1
  113. package/dist-lib/plist.cjs +2 -244
  114. package/dist-lib/plist.mjs +1 -1
  115. package/dist-lib/profiles.cjs +1 -1
  116. package/dist-lib/public-brand.cjs +1 -1
  117. package/dist-lib/public-origins-lib-esm.json +290 -0
  118. package/dist-lib/public-origins-lib-static.json +1 -0
  119. package/dist-lib/public-origins-lib.json +1852 -0
  120. package/dist-lib/react-native-host-modules.cjs +1 -1
  121. package/dist-lib/react-native-host-modules.mjs +1 -1
  122. package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
  123. package/dist-lib/sdk.cjs +84 -16
  124. package/dist-lib/sdk.mjs +82 -15
  125. package/dist-lib/skills.cjs +51248 -75450
  126. package/dist-lib/swift-compile.cjs +26154 -1245
  127. package/dist-lib/swift-compile.mjs +26151 -1230
  128. package/dist-lib/swift-package.cjs +79 -1
  129. package/dist-lib/swift-package.mjs +75 -1
  130. package/dist-lib/swift-submit.cjs +1 -1
  131. package/dist-lib/swift-submit.mjs +1 -1
  132. package/dist-lib/swift-toolchain.cjs +1 -1
  133. package/dist-lib/swift.cjs +1 -1
  134. package/dist-lib/vite-swift.cjs +34394 -12323
  135. package/dist-lib/vite.cjs +373 -298
  136. package/dist-lib/worklet-executable.cjs +1 -1
  137. package/dist-lib/worklet-executable.mjs +1 -1
  138. package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
  139. package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
  140. package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
  141. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
  142. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
  143. package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
  144. package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
  145. package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
  146. package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
  147. package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
  148. package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
  149. package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
  150. package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
  151. package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
  152. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
  153. package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
  154. package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
  155. package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
  156. package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
  157. package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
  158. package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
  159. package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
  160. package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
  161. package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
  162. package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
  163. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
  164. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
  165. package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
  166. package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
  167. package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
  168. package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
  169. package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
  170. package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
  171. package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
  172. package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
  173. package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
  174. package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
  175. package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
  176. package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
  177. package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
  178. package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
  179. package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
  180. package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
  181. package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
  182. package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
  183. package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
  184. package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
  185. package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
  186. package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
  187. package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
  188. package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
  189. package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
  190. package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
  191. package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
  192. package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
  193. package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
  194. package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
  195. package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
  196. package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
  197. package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
  198. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
  199. package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
  200. package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
  201. package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
  202. package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
  203. package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
  204. package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
  205. package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
  206. package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
  207. package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
  208. package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
  209. package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
  210. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
  211. package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
  212. package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
  213. package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
  214. package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
  215. package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
  216. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
  217. package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
  218. package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
  219. package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
  220. package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
  221. package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
  222. package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
  223. package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
  224. package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
  225. package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
  226. package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
  227. package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
  228. package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
  229. package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
  230. package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
  231. package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
  232. package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
  233. package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
  234. package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
  235. package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
  236. package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
  237. package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
  238. package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
  239. package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
  240. package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
  241. package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
  242. package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
  243. package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
  244. package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
  245. package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
  246. package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
  247. package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
  248. package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
  249. package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
  250. package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
  251. package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
  252. package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
  253. package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
  254. package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
  255. package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
  256. package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
  257. package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
  258. package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
  259. package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
  260. package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
  261. package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
  262. package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
  263. package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
  264. package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
  265. package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
  266. package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
  267. package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
  268. package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
  269. package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
  270. package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
  271. package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
  272. package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
  273. package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
  274. package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
  275. package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
  276. package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
  277. package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
  278. package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
  279. package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
  280. package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
  281. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
  282. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
  283. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
  284. package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
  285. package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
  286. package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
  287. package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
  288. package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
  289. package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
  290. package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
  291. package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
  292. package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
  293. package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
  294. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
  295. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
  296. package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
  297. package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
  298. package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
  299. package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
  300. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
  301. package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
  302. package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
  303. package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
  304. package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
  305. package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
  306. package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
  307. package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
  308. package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
  309. package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
  310. package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
  311. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
  312. package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
  313. package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
  314. package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
  315. package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
  316. package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
  317. package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
  318. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
  319. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
  320. package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
  321. package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
  322. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
  323. package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
  324. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
  325. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
  326. package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
  327. package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
  328. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
  329. package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
  330. package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
  331. package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
  332. package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
  333. package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
  334. package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
  335. package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
  336. package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
  337. package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
  338. package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
  339. package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
  340. package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
  341. package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
  342. package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
  343. package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
  344. package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
  345. package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
  346. package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
  347. package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
  348. package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
  349. package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
  350. package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
  351. package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
  352. package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
  353. package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
  354. package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
  355. package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
  356. package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
  357. package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
  358. package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
  359. package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
  360. package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
  361. package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
  362. package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
  363. package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
  364. package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
  365. package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
  366. package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
  367. package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
  368. package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
  369. package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
  370. package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
  371. package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
  372. package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
  373. package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
  374. package/kotlin/README.md +6 -0
  375. package/package.json +22 -2
  376. package/runtime-companion.json +1 -0
  377. package/skills/contrast/SKILL.md +1 -0
  378. package/src/appBundleResourcesContract.ts +51 -0
  379. package/src/assetCatalogContract.ts +21 -0
  380. package/src/backend-origin.ts +3 -1
  381. package/src/bridge-contract-input.ts +84 -0
  382. package/src/bridge-contract.ts +35 -3
  383. package/src/browser-launch-policy.ts +1 -0
  384. package/src/bundle-channel.mjs +4 -2
  385. package/src/cli-runtime.ts +55 -0
  386. package/src/crash-fingerprint.ts +26 -0
  387. package/src/dev-bundle-resolution.ts +50 -23
  388. package/src/device-catalog.ts +1159 -0
  389. package/src/host/bridge-host.ts +20 -37
  390. package/src/host/browser-pointer.ts +71 -0
  391. package/src/host/dev-server-package-versions.ts +23 -0
  392. package/src/host/fetch-proxy-handler.ts +17 -4
  393. package/src/host/staged-host-files.ts +28 -4
  394. package/src/installed-package-versions.ts +142 -38
  395. package/src/kotlin-host.ts +1 -1
  396. package/src/launchMetadataContract.ts +1 -0
  397. package/src/menu.ts +12 -4
  398. package/src/metro-plugin.ts +4 -4
  399. package/src/metro-project-root.ts +68 -0
  400. package/src/native-app-identity-project.ts +47 -38
  401. package/src/nitro-adapter.lock.json +26 -0
  402. package/src/nitro-adapter.ts +103 -0
  403. package/src/nitro-bundle.ts +24 -10
  404. package/src/nitro-compile.ts +33 -51
  405. package/src/nitro-source.ts +177 -96
  406. package/src/nitroAdapterContract.ts +217 -0
  407. package/src/nitroContract.ts +24 -11
  408. package/src/process-group.ts +41 -34
  409. package/src/react-bridge-importers.ts +28 -0
  410. package/src/reactNativeConfigurationContract.ts +36 -0
  411. package/src/runtime-assets.ts +7 -2
  412. package/src/runtime-delivery.ts +8 -7
  413. package/src/runtimePlatformContract.ts +70 -0
  414. package/src/screenshots/frame-compose.ts +42 -43
  415. package/src/screenshots/org-deck.ts +9 -4
  416. package/src/screenshots/preset-names.ts +29 -0
  417. package/src/screenshots/registry.ts +5 -5
  418. package/src/screenshots/schema.ts +1 -1
  419. package/src/screenshots/screenshotContract.ts +971 -0
  420. package/src/settings-flags.ts +107 -0
  421. package/src/settingsContract.ts +609 -0
  422. package/src/storageSnapshotContract.ts +344 -0
  423. package/src/stub-pattern-matcher.ts +550 -0
  424. package/src/swift-compile.ts +926 -47
  425. package/src/swift-compiler-digest.ts +17 -3
  426. package/src/swift-distribution.lock.json +49 -22
  427. package/src/swift-host.ts +167 -52
  428. package/src/swift-objc-compile.ts +86 -26
  429. package/src/swift-objc-export.ts +532 -0
  430. package/src/swift-objc-import.ts +769 -0
  431. package/src/swift-objc-metadata.ts +285 -10
  432. package/src/swift-objc-sdk.ts +13970 -158
  433. package/src/swift-objc-standin.ts +137 -1
  434. package/src/swift-package.ts +94 -0
  435. package/src/swift-packages.ts +5 -5
  436. package/src/swift-root-lock.ts +241 -92
  437. package/src/swift-submit.ts +6 -0
  438. package/src/swiftContract.ts +99 -0
  439. package/src/target-matcher.ts +6 -1
  440. package/src/vite-plugin.ts +14 -40
  441. package/src/worker-system-chunks.ts +1 -1
  442. package/src/workerChunkContract.ts +5 -0
  443. package/src/worklets-babel.ts +24 -5
  444. package/src/xcode-project.ts +103 -11
  445. package/src/xcode-target-members.ts +10 -3
  446. package/cli/drivers/playwright-sim-host.ts +0 -825
  447. package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
  448. package/kotlin/fixtures/counter/Counter.kt +0 -51
  449. package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
  450. package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
  451. package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
  452. package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
  453. package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
  454. package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
  455. package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
  456. package/kotlin/fixtures/counter/package.json +0 -20
  457. package/kotlin/fixtures/counter/tsconfig.json +0 -19
  458. package/kotlin/fixtures/counter/vite.config.ts +0 -20
  459. package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
  460. package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
  461. package/kotlin/fixtures/import-animation/Animation.kt +0 -80
  462. package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
  463. package/kotlin/fixtures/import-animation/README.md +0 -24
  464. package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
  465. package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
  466. package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
  467. package/kotlin/fixtures/import-animation/package.json +0 -23
  468. package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
  469. package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
  470. package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
  471. package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
  472. package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
  473. package/kotlin/fixtures/import-drawing/README.md +0 -34
  474. package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
  475. package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
  476. package/kotlin/fixtures/import-drawing/package.json +0 -23
  477. package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
  478. package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
  479. package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
  480. package/kotlin/fixtures/import-editor/Editor.kt +0 -59
  481. package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
  482. package/kotlin/fixtures/import-editor/README.md +0 -27
  483. package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
  484. package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
  485. package/kotlin/fixtures/import-editor/package.json +0 -23
  486. package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
  487. package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
  488. package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
  489. package/kotlin/fixtures/import-effects/Effects.kt +0 -87
  490. package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
  491. package/kotlin/fixtures/import-effects/README.md +0 -19
  492. package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
  493. package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
  494. package/kotlin/fixtures/import-effects/package.json +0 -23
  495. package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
  496. package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
  497. package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
  498. package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
  499. package/kotlin/fixtures/import-layout/Layout.kt +0 -72
  500. package/kotlin/fixtures/import-layout/README.md +0 -24
  501. package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
  502. package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
  503. package/kotlin/fixtures/import-layout/package.json +0 -23
  504. package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
  505. package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
  506. package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
  507. package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
  508. package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
  509. package/kotlin/fixtures/import-navigation/README.md +0 -31
  510. package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
  511. package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
  512. package/kotlin/fixtures/import-navigation/package.json +0 -23
  513. package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
  514. package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
  515. package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
  516. package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
  517. package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
  518. package/kotlin/fixtures/import-overlays/README.md +0 -34
  519. package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
  520. package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
  521. package/kotlin/fixtures/import-overlays/package.json +0 -23
  522. package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
  523. package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
  524. package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
  525. package/kotlin/fixtures/import-resources/README.md +0 -26
  526. package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
  527. package/kotlin/fixtures/import-resources/Resources.kt +0 -72
  528. package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
  529. package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
  530. package/kotlin/fixtures/import-resources/package.json +0 -23
  531. package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
  532. package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
  533. package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
  534. package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
  535. package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
  536. package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
  537. package/kotlin/fixtures/import-scroll/README.md +0 -38
  538. package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
  539. package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
  540. package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
  541. package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
  542. package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
  543. package/kotlin/fixtures/import-scroll/package.json +0 -23
  544. package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
  545. package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
  546. package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
  547. package/kotlin/fixtures/import-selection/README.md +0 -32
  548. package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
  549. package/kotlin/fixtures/import-selection/Selection.kt +0 -78
  550. package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
  551. package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
  552. package/kotlin/fixtures/import-selection/package.json +0 -23
  553. package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
  554. package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
  555. package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
  556. package/kotlin/fixtures/import-surfaces/README.md +0 -22
  557. package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
  558. package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
  559. package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
  560. package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
  561. package/kotlin/fixtures/import-surfaces/package.json +0 -23
  562. package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
  563. package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
  564. package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
  565. package/kotlin/fixtures/import-values/README.md +0 -28
  566. package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
  567. package/kotlin/fixtures/import-values/Values.kt +0 -84
  568. package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
  569. package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
  570. package/kotlin/fixtures/import-values/package.json +0 -23
  571. package/kotlin/fixtures/import-values/tsconfig.json +0 -20
  572. package/kotlin/fixtures/import-values/vite.config.ts +0 -20
  573. package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
  574. package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
  575. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
  576. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
  577. package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
  578. package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
  579. package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
  580. package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
  581. package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
  582. package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
  583. package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
  584. package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
  585. package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
  586. package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
  587. package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
  588. package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
  589. package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
  590. package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
  591. package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
  592. package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
  593. package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
  594. package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
  595. package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
  596. package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
  597. package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
  598. package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
  599. package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
  600. package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
  601. package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
  602. package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
  603. package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
  604. package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
  605. package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
  606. package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
  607. package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
  608. package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
  609. package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
  610. package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
  611. package/kotlin/fork/README.md +0 -97
  612. package/kotlin/fork/build.sh +0 -176
  613. package/kotlin/fork/compose-worker-globals.patch +0 -1247
  614. package/kotlin/fork/fork.json +0 -46
  615. package/kotlin/fork/publish.ts +0 -99
  616. package/kotlin/fork/skia-android-shaping.patch +0 -189
  617. package/kotlin/fork/skiko-local.init.gradle +0 -10
  618. package/kotlin/fork/skiko-worker-clock.patch +0 -122
@@ -0,0 +1,43 @@
1
+ import type { ConfiguredOneWidget } from '../../../../../src/oneWidgetContract.ts';
2
+ import type { AppDef } from './home/types.d.ts';
3
+ import type { SootSimApp } from './shell-controller-types.d.ts';
4
+ import type { AppSettingsSpecifier } from '../../../peach-globals/src/index.d.ts';
5
+ export interface HomeCatalogApp {
6
+ id: string;
7
+ name: string;
8
+ color: string;
9
+ icon?: string;
10
+ iconImage?: string;
11
+ iconBackgroundColor?: string;
12
+ liveIcon?: AppDef['liveIcon'];
13
+ widget?: ConfiguredOneWidget | null;
14
+ settingsBundle?: readonly AppSettingsSpecifier[];
15
+ settingsStorageScopeUrl?: string;
16
+ dock?: boolean;
17
+ hidden?: boolean;
18
+ }
19
+ export interface SerializedHomeCatalogApp {
20
+ id: string;
21
+ name: string;
22
+ color: string;
23
+ icon?: string;
24
+ iconImage?: string;
25
+ iconBackgroundColor?: string;
26
+ widget?: ConfiguredOneWidget | null;
27
+ settingsBundle?: readonly AppSettingsSpecifier[];
28
+ settingsStorageScopeUrl?: string;
29
+ dock?: boolean;
30
+ hidden?: boolean;
31
+ }
32
+ export declare function normalizeHomeCatalog(apps?: SootSimApp[] | null): HomeCatalogApp[];
33
+ export declare function homeCatalogAppDef(app: Pick<HomeCatalogApp, 'id' | 'name' | 'color' | 'icon' | 'iconImage' | 'iconBackgroundColor' | 'liveIcon'>): AppDef;
34
+ export declare function serializeHomeCatalog(apps?: HomeCatalogApp[] | SootSimApp[] | null): SerializedHomeCatalogApp[];
35
+ export declare function publishHomeCatalog(apps?: SootSimApp[] | null): void;
36
+ export declare function publishShellAppCatalog(apps?: SootSimApp[] | null): void;
37
+ export declare function readHomeCatalog(): HomeCatalogApp[];
38
+ export declare function readShellAppCatalog(): SootSimApp[];
39
+ export declare function readShellAppCatalogRevision(): number;
40
+ export declare function subscribeHomeCatalog(listener: () => void): () => void;
41
+ export declare const subscribeShellAppCatalog: typeof subscribeHomeCatalog;
42
+ export declare function readMergedHomeCatalog(): HomeCatalogApp[];
43
+ export declare function subscribeMergedHomeCatalog(listener: () => void): () => void;
@@ -0,0 +1,73 @@
1
+ import type { PhotoLibraryAssetSpec } from '../render-worker/native-ui-protocol.d.ts';
2
+ type PhotoEntryFields = {
3
+ uri: string;
4
+ w: number;
5
+ h: number;
6
+ createdAt: number;
7
+ savedAt: number | null;
8
+ modifiedAt?: number;
9
+ capturedByMe?: boolean;
10
+ favorite: boolean;
11
+ id: string;
12
+ fileName?: string;
13
+ fileSize?: number;
14
+ originalContent?: PhotoContent;
15
+ };
16
+ type PhotoMedia = {
17
+ mediaType: 'photo';
18
+ } | {
19
+ mediaType: 'video';
20
+ thumbnailUri: string;
21
+ mimeType: string;
22
+ durationMs: number;
23
+ };
24
+ export type PhotoEntry = PhotoEntryFields & PhotoMedia;
25
+ export type PhotoContent = Pick<PhotoEntryFields, 'uri' | 'w' | 'h' | 'fileName' | 'fileSize'> & PhotoMedia;
26
+ export interface PhotoAlbum {
27
+ id: string;
28
+ title: string;
29
+ assetIds: readonly string[];
30
+ }
31
+ export declare function photoPreviewUri(entry: PhotoEntry): string;
32
+ type Listener = () => void;
33
+ export declare function localPhotoUri(name: string): string;
34
+ type PhotoStoreUpdate = {
35
+ scopeId: string;
36
+ revision: number;
37
+ photos: PhotoEntry[];
38
+ deletedPhotos: string[];
39
+ albums: PhotoAlbum[];
40
+ deletedAlbums: string[];
41
+ };
42
+ interface PhotoStoreTransaction {
43
+ photos: IDBObjectStore;
44
+ albums: IDBObjectStore;
45
+ }
46
+ export declare function idbResult<T>(request: IDBRequest<T>): Promise<T>;
47
+ export declare function initializePhotoStore(): Promise<void>;
48
+ export declare function commitPhotoMutation<T>(mutate: (stores: PhotoStoreTransaction, update: PhotoStoreUpdate) => Promise<T>, active?: () => boolean): Promise<T>;
49
+ export declare function getPhotos(): PhotoEntry[];
50
+ export declare function addPhoto(entry: Omit<PhotoEntryFields, 'savedAt'> & PhotoMedia & {
51
+ savedAt?: number | null;
52
+ }, active?: () => boolean): Promise<PhotoEntry>;
53
+ export declare function deletePhoto(id: string, active?: () => boolean): Promise<void>;
54
+ export declare function photoContent(entry: PhotoEntry): PhotoContent;
55
+ export declare function replacePhotoContent(id: string, content: PhotoContent, active?: () => boolean): Promise<boolean>;
56
+ export declare function revertPhotoContent(id: string, active?: () => boolean): Promise<boolean>;
57
+ export declare function getPhotoAlbums(): readonly PhotoAlbum[];
58
+ export declare function createPhotoAlbum(title: string, active?: () => boolean): Promise<PhotoAlbum>;
59
+ export declare function renamePhotoAlbum(id: string, title: string, active?: () => boolean): Promise<boolean>;
60
+ export declare function setPhotoAlbumMembership(id: string, assetId: string, included: boolean, active?: () => boolean): Promise<boolean>;
61
+ export declare function deletePhotoAlbum(id: string, active?: () => boolean): Promise<boolean>;
62
+ export declare function setPhotoFavorite(id: string, favorite: boolean, active?: () => boolean): Promise<void>;
63
+ export declare function seedPhotos(count: number): number;
64
+ export interface PhotoPage {
65
+ entries: PhotoEntry[];
66
+ hasNextPage: boolean;
67
+ endCursor: string | null;
68
+ totalCount: number;
69
+ }
70
+ export declare function getPhotoPage(first: number, after?: string): PhotoPage;
71
+ export declare function subscribe(listener: Listener): () => void;
72
+ export declare function photoEntryToSpec(entry: PhotoEntry): PhotoLibraryAssetSpec;
73
+ export {};
@@ -0,0 +1,166 @@
1
+ import type { PhotoContent } from './photo-store.d.ts';
2
+ import type { ShellNativeEvaluationOwner } from '../../../peach-globals/src/index.d.ts';
3
+ export interface NativePhotoLibraryAsset {
4
+ identifier: string;
5
+ mediaType: 'image' | 'video';
6
+ width: number;
7
+ height: number;
8
+ durationMs: number;
9
+ creationDateMs: number;
10
+ isFavorite: boolean;
11
+ isLivePhoto: boolean;
12
+ filename: string | null;
13
+ modificationDateMs: number | null;
14
+ uri: string;
15
+ }
16
+ export interface NativePhotoLibraryAlbum {
17
+ identifier: string;
18
+ title: string;
19
+ type: 'album' | 'smartAlbum';
20
+ assetCount: number;
21
+ }
22
+ export type NativePhotoLibraryBatch = {
23
+ kind: 'deleteAssets';
24
+ identifiers: string[];
25
+ } | {
26
+ kind: 'deleteAlbums';
27
+ identifiers: string[];
28
+ deleteAssets: boolean;
29
+ } | {
30
+ kind: 'membership';
31
+ albumIdentifier: string;
32
+ identifiers: string[];
33
+ included: boolean;
34
+ strictAssets: boolean;
35
+ ignoreMissingAlbum: boolean;
36
+ };
37
+ export type NativePhotoLibraryOperation = {
38
+ verb: 'attach' | 'retire';
39
+ } | {
40
+ verb: 'observe';
41
+ enabled: boolean;
42
+ } | {
43
+ verb: 'batch';
44
+ mutation: NativePhotoLibraryBatch;
45
+ } | {
46
+ verb: 'checkAccess';
47
+ access: 'read' | 'write' | 'full';
48
+ } | {
49
+ verb: 'getAssetAlbums';
50
+ identifier: string;
51
+ } | {
52
+ verb: 'saveAssets';
53
+ files: {
54
+ uri: string;
55
+ fileName: string;
56
+ mediaType: 'photo' | 'video';
57
+ }[];
58
+ } | {
59
+ verb: 'listAssets' | 'listAlbums';
60
+ offset: number;
61
+ limit: number;
62
+ } | {
63
+ verb: 'getAsset' | 'getAlbum' | 'deleteAsset' | 'deleteAlbum' | 'revertAssetContent';
64
+ identifier: string;
65
+ } | {
66
+ verb: 'presentLimitedLibraryPicker';
67
+ } | {
68
+ verb: 'createAlbum';
69
+ title: string;
70
+ } | {
71
+ verb: 'renameAlbum';
72
+ identifier: string;
73
+ title: string;
74
+ } | {
75
+ verb: 'listAlbumAssets';
76
+ identifier: string;
77
+ offset: number;
78
+ limit: number;
79
+ } | {
80
+ verb: 'addAssetToAlbum' | 'removeAssetFromAlbum';
81
+ albumIdentifier: string;
82
+ assetIdentifier: string;
83
+ } | {
84
+ verb: 'setFavorite';
85
+ identifier: string;
86
+ favorite: boolean;
87
+ } | {
88
+ verb: 'saveImage' | 'saveVideo';
89
+ uri: string;
90
+ fileName: string;
91
+ } | {
92
+ verb: 'replaceImageContent' | 'replaceVideoContent';
93
+ identifier: string;
94
+ uri: string;
95
+ fileName: string;
96
+ prepareOnly?: boolean;
97
+ } | {
98
+ verb: 'exportOriginalAsset' | 'exportCurrentVideo' | 'exportCurrentImage' | 'exportCurrentResource';
99
+ identifier: string;
100
+ };
101
+ export type NativePhotoLibraryReply = {
102
+ kind: 'completed';
103
+ } | {
104
+ kind: 'identifier';
105
+ identifier: string;
106
+ } | {
107
+ kind: 'identifiers';
108
+ identifiers: string[];
109
+ } | {
110
+ kind: 'asset';
111
+ asset: NativePhotoLibraryAsset;
112
+ } | {
113
+ kind: 'assets';
114
+ assets: NativePhotoLibraryAsset[];
115
+ totalCount: number;
116
+ } | {
117
+ kind: 'album';
118
+ album: NativePhotoLibraryAlbum;
119
+ } | {
120
+ kind: 'albums';
121
+ albums: NativePhotoLibraryAlbum[];
122
+ totalCount: number;
123
+ } | {
124
+ kind: 'content';
125
+ content: PhotoContent;
126
+ } | {
127
+ kind: 'error';
128
+ error: string;
129
+ };
130
+ export interface NativePhotoLibraryRequest {
131
+ kind: 'photoLibrary.perform';
132
+ owner: ShellNativeEvaluationOwner;
133
+ evaluationId: string;
134
+ connectionId: string;
135
+ requestId: number;
136
+ albumAccess?: 'read';
137
+ usageDescriptions: {
138
+ addOnly: boolean;
139
+ readWrite: boolean;
140
+ };
141
+ operation: NativePhotoLibraryOperation;
142
+ }
143
+ export interface NativePhotoLibraryResult {
144
+ kind: 'photoLibrary.result';
145
+ owner: ShellNativeEvaluationOwner;
146
+ evaluationId: string;
147
+ connectionId: string;
148
+ requestId: number;
149
+ result: NativePhotoLibraryReply;
150
+ }
151
+ export interface NativePhotoLibraryHost {
152
+ postChange?(event: NativePhotoLibraryChange): void;
153
+ presentLimitedPhotoPicker(appId: string, signal: AbortSignal): Promise<readonly string[] | null>;
154
+ }
155
+ export interface NativePhotoLibraryChange {
156
+ kind: 'photoLibrary.change';
157
+ owner: ShellNativeEvaluationOwner;
158
+ evaluationId: string;
159
+ connectionId: string;
160
+ insertedAssets: string[];
161
+ deletedAssets: string[];
162
+ updatedAssets: string[];
163
+ insertedMetadata: NativePhotoLibraryAsset[];
164
+ deletedMetadata: NativePhotoLibraryAsset[];
165
+ updatedMetadata: NativePhotoLibraryAsset[];
166
+ }
@@ -0,0 +1,21 @@
1
+ import type { ConfiguredOneWidget } from '../../../../../src/oneWidgetContract.ts';
2
+ import type { AppDef } from './home/types.d.ts';
3
+ import type { AppSettingsSpecifier } from '../../../peach-globals/src/index.d.ts';
4
+ import type { ReactNode } from 'react';
5
+ export interface SootSimApp {
6
+ id: string;
7
+ name: string;
8
+ color: string;
9
+ icon?: string;
10
+ iconImage?: string;
11
+ iconBackgroundColor?: string;
12
+ liveIcon?: AppDef['liveIcon'];
13
+ component?: ReactNode;
14
+ widget?: ConfiguredOneWidget | null;
15
+ settingsBundle?: readonly AppSettingsSpecifier[];
16
+ settingsStorageScopeUrl?: string;
17
+ dock?: boolean;
18
+ hidden?: boolean;
19
+ }
20
+ export type IOSState = 'home' | 'app';
21
+ export type SwitcherPhase = 'idle' | 'undecided' | 'panX' | 'panYDismiss' | 'snapping' | 'dismissingCard' | 'openingApp' | 'goingHome' | 'enteringFromHome';
@@ -0,0 +1,18 @@
1
+ export interface ShellTransitionEvent {
2
+ now: number;
3
+ kind: string;
4
+ caller?: string;
5
+ payload?: Record<string, unknown>;
6
+ }
7
+ export declare function setShellTransitionRecordingEnabled(enabled: boolean): void;
8
+ export declare function setShellTransitionForwarder(fn: ((event: ShellTransitionEvent) => void) | null): void;
9
+ export declare function recordShellTransition(kind: string, options?: {
10
+ caller?: string;
11
+ payload?: Record<string, unknown>;
12
+ }): void;
13
+ export interface ShellTransitionDebugSnapshot {
14
+ count: number;
15
+ recent: ShellTransitionEvent[];
16
+ }
17
+ export declare function readShellTransitionDebug(): ShellTransitionDebugSnapshot;
18
+ export declare function clearShellTransitionDebug(): void;
@@ -0,0 +1,21 @@
1
+ export interface MetroAssetPathRecord {
2
+ width?: number;
3
+ height?: number;
4
+ resolver?: 'android' | 'generic';
5
+ httpServerLocation?: string;
6
+ name?: string;
7
+ type?: string;
8
+ scales?: number[];
9
+ hash?: string;
10
+ fileUris?: string[];
11
+ fileHashes?: string[];
12
+ }
13
+ export declare function getMetroAssetScale(asset: MetroAssetPathRecord): number;
14
+ export declare function getMetroAssetFilename(asset: MetroAssetPathRecord, scale: number): string;
15
+ export declare function buildMetroAssetRequestPath(asset: MetroAssetPathRecord, filename: string, platform: string): string;
16
+ export declare function buildMetroAssetDisplayPath(asset: MetroAssetPathRecord, filename: string): string;
17
+ export declare function normalizeMetroAssetRequest(uri: string, origin: string): {
18
+ path: string;
19
+ hash: string;
20
+ };
21
+ export declare function isMetroAssetRegistryModulePath(modulePath: string): boolean;
@@ -0,0 +1,11 @@
1
+ import type { RNXMetroFingerprintRegistry } from '../../../../src/metro-fingerprint-registry.ts';
2
+ export interface MetroFingerprintRegistryReceipt {
3
+ registry: RNXMetroFingerprintRegistry;
4
+ integrity: string;
5
+ source: 'network' | 'cache';
6
+ }
7
+ export interface MetroFingerprintRegistryClientOptions {
8
+ pointerUrl?: string;
9
+ fetch?: typeof fetch;
10
+ }
11
+ export declare function loadMetroFingerprintRegistry(options?: MetroFingerprintRegistryClientOptions): Promise<MetroFingerprintRegistryReceipt>;
@@ -0,0 +1,38 @@
1
+ import type { RNXMetroFingerprintAtom, RNXMetroFingerprintRegistry } from '../../../../src/metro-fingerprint-registry.ts';
2
+ import type { RNXMetroModulePathMap } from '../../../../src/metro-production-bundle.ts';
3
+ export interface BlindMetroModuleFingerprint extends RNXMetroFingerprintAtom {
4
+ moduleId: number;
5
+ dependencies: Array<number | null>;
6
+ discriminators: string[];
7
+ }
8
+ export interface InferredMetroModuleIdentity {
9
+ tier: 'inferred';
10
+ source: 'fingerprint-registry';
11
+ modulePaths: RNXMetroModulePathMap;
12
+ registryRevision: string;
13
+ registryIntegrity: string;
14
+ matchedPackages: string[];
15
+ unknownModules: number;
16
+ }
17
+ export declare function metroFingerprintDiscriminators(input: {
18
+ exports: readonly string[];
19
+ literals: readonly string[];
20
+ dependencyArity: number;
21
+ }): Array<{
22
+ key: string;
23
+ cost: number;
24
+ }>;
25
+ export declare function metroFingerprintDiscriminator(input: {
26
+ exports: readonly string[];
27
+ literals: readonly string[];
28
+ dependencyArity: number;
29
+ }): string;
30
+ export declare function isHermesBytecodeHeader(header: Uint8Array): boolean;
31
+ export declare function isHermesBytecodeText(source: string): boolean;
32
+ export declare function fingerprintBlindMetroBundle(source: string): Promise<BlindMetroModuleFingerprint[]>;
33
+ export declare function metroFingerprintModuleClaimRoute(packageName: string, modulePath: string): string;
34
+ export declare function inferMetroModuleIdentity(args: {
35
+ source: string;
36
+ registry: RNXMetroFingerprintRegistry;
37
+ registryIntegrity: string;
38
+ }): Promise<InferredMetroModuleIdentity>;
@@ -0,0 +1,44 @@
1
+ import type { NativeRenderer } from '../../../../src/config.ts';
2
+ export type NativePreviewProjectBinding = {
3
+ useProjectServer: true;
4
+ projectId: string;
5
+ routeKey: string;
6
+ previewSessionId: string;
7
+ };
8
+ export type NativePreviewNetworkBinding = {
9
+ useProjectServer: false;
10
+ projectId?: never;
11
+ routeKey?: never;
12
+ previewSessionId?: never;
13
+ };
14
+ export type NativePreviewBundleShared = {
15
+ appFonts?: string | null;
16
+ nativeRenderer?: NativeRenderer;
17
+ coldMount?: boolean;
18
+ depBase: string;
19
+ depVersion?: string | null;
20
+ serverUrl?: string | null;
21
+ externalPackages?: string[];
22
+ cdnPackages?: Record<string, string>;
23
+ sequence?: number | null;
24
+ format?: 'metro' | null;
25
+ buildSequence?: number | null;
26
+ initialState?: Record<string, unknown> | null;
27
+ localStorageEntries?: Array<[string, string]>;
28
+ } & (NativePreviewProjectBinding | NativePreviewNetworkBinding);
29
+ export type NativePreviewColdBundle = NativePreviewBundleShared & {
30
+ code: string;
31
+ update?: {
32
+ code: string;
33
+ baseSequence: number;
34
+ } | null;
35
+ };
36
+ export type NativePreviewHotBundle = NativePreviewBundleShared & {
37
+ code?: never;
38
+ update: {
39
+ code: string;
40
+ baseSequence: number;
41
+ };
42
+ };
43
+ export type NativePreviewBundle = NativePreviewColdBundle | NativePreviewHotBundle;
44
+ export declare function readNativePreviewStorageEntries(value: unknown): Array<[string, string]>;
@@ -0,0 +1,74 @@
1
+ export type NetworkKind = 'fetch' | 'xhr' | 'resource';
2
+ export type NetworkEntry = {
3
+ id: string;
4
+ source: string;
5
+ kind: NetworkKind;
6
+ method: string;
7
+ url: string;
8
+ displayUrl: string;
9
+ startTs: number;
10
+ durationMs: number | null;
11
+ status: number | null;
12
+ statusText: string | null;
13
+ ok: boolean;
14
+ error: string | null;
15
+ size: number | null;
16
+ type: string | null;
17
+ sourcePath?: string;
18
+ sourceHash?: string;
19
+ requestBody?: string | null;
20
+ requestBodyTruncated?: boolean;
21
+ responseBody?: string | null;
22
+ responseBodyTruncated?: boolean;
23
+ };
24
+ export type LogLevel = 'log' | 'info' | 'warn' | 'error' | 'debug';
25
+ export declare const APP_LOG_SOURCE = "sootsim-worker";
26
+ export type LogEntry = {
27
+ id: string;
28
+ source: string;
29
+ level: LogLevel;
30
+ ts: number;
31
+ args: string[];
32
+ stack: string | null;
33
+ };
34
+ export type Store<T extends {
35
+ id: string;
36
+ source: string;
37
+ }> = {
38
+ getSnapshot(): ReadonlyArray<T>;
39
+ subscribe(listener: () => void): () => void;
40
+ upsert(entry: T): void;
41
+ prepend(entries: readonly T[]): void;
42
+ clear(): void;
43
+ size(): number;
44
+ };
45
+ export declare const NETWORK_MESSAGE_TYPE: 'sootsim-network';
46
+ export declare const LOG_MESSAGE_TYPE: 'sootsim-log';
47
+ export type NetworkMessage = {
48
+ type: typeof NETWORK_MESSAGE_TYPE;
49
+ entry: NetworkEntry;
50
+ };
51
+ export type LogMessage = {
52
+ type: typeof LOG_MESSAGE_TYPE;
53
+ entry: LogEntry;
54
+ };
55
+ export type ReportedErrorEntry = {
56
+ id: string;
57
+ source: string;
58
+ ts: number;
59
+ type: string;
60
+ message: string;
61
+ stack: string | null;
62
+ appName: string | null;
63
+ dependencies: string[];
64
+ dependencyCount: number;
65
+ moduleCount: number;
66
+ dependenciesTruncated: boolean;
67
+ reported: boolean;
68
+ count: number;
69
+ };
70
+ export declare const REPORTED_ERROR_MESSAGE_TYPE: 'sootsim-reported-error';
71
+ export type ReportedErrorMessage = {
72
+ type: typeof REPORTED_ERROR_MESSAGE_TYPE;
73
+ entry: ReportedErrorEntry;
74
+ };
@@ -0,0 +1,32 @@
1
+ export declare const PEACH_WARM_BINDING_DIST_PATH = ".vite/peach-warm-binding.json";
2
+ export declare function graphitePipelineCacheFilename(sha256: string): string;
3
+ export interface PeachWarmEntry {
4
+ app: string;
5
+ pipelines: number[];
6
+ images: Array<{
7
+ uri: string;
8
+ cacheKey: string;
9
+ width: number;
10
+ height: number;
11
+ }>;
12
+ fonts: string[];
13
+ }
14
+ export declare const PEACH_WARM_WIREFRAME_HOME = "journey:home-wireframe";
15
+ export interface PeachWarmManifest {
16
+ schema: 3;
17
+ corpusSha256: string;
18
+ capturedWasmSha256: string;
19
+ browsers: Array<'chromium' | 'webkit'>;
20
+ colorModes: Array<'light' | 'dark'>;
21
+ firstUse: string[];
22
+ home: PeachWarmEntry;
23
+ launches: Record<string, PeachWarmEntry>;
24
+ screens: Record<string, PeachWarmEntry>;
25
+ }
26
+ export declare function readPeachWarmManifest(value: unknown): PeachWarmManifest;
27
+ export interface PeachWarmBinding {
28
+ schema: 1;
29
+ corpusSha256: string;
30
+ wasmSha256: string;
31
+ }
32
+ export declare function readPeachWarmBinding(value: unknown): PeachWarmBinding;
@@ -0,0 +1,25 @@
1
+ import type { AppPreferenceValue, AppSettingsSnapshot, SystemPermissionApp, SystemPermissionMutation } from './system-permission-types.d.ts';
2
+ import type { SystemNotificationSettings, SystemPermissionKind, SystemPermissionStatus } from '../../../peach-compat/src/engine-config.d.ts';
3
+ import type { SootsimSettingsPage, SootsimSettingsRoute } from '../../../peach-globals/src/index.d.ts';
4
+ export type { AppPreferenceValue, AppPermissionSetting, AppSettingsSpecifier, AppSettingsSnapshot, SystemPermissionApp, SystemPermissionMutation, } from './system-permission-types.d.ts';
5
+ export type { SystemNotificationSettings, SystemPermissionKind, SystemPermissionStatus, } from '../../../peach-compat/src/engine-config.d.ts';
6
+ type SettingsListener = (snapshot: AppSettingsSnapshot) => void;
7
+ type SettingsAppsListener = (apps: readonly SystemPermissionApp[]) => void;
8
+ export declare function readAppPermissionStatus(appId: string, kind: SystemPermissionKind): SystemPermissionStatus;
9
+ export type SettingsSystemPage = SootsimSettingsPage;
10
+ export type AppSettingsRoute = SootsimSettingsRoute;
11
+ type RouteListener = (route: AppSettingsRoute) => void;
12
+ export declare function startAppSettingsRouteCapture(): void;
13
+ export declare function listSettingsApps(): Promise<readonly SystemPermissionApp[]>;
14
+ export declare function subscribeSettingsApps(listener: SettingsAppsListener): () => void;
15
+ export declare function getAppSettingsSnapshot(appId: string): Promise<AppSettingsSnapshot>;
16
+ export declare function subscribeAppSettings(appId: string, listener: SettingsListener): () => void;
17
+ export declare function setAppPermission(appId: string, kind: SystemPermissionKind, mutation: SystemPermissionMutation): Promise<AppSettingsSnapshot>;
18
+ export declare function patchNotificationSettings(appId: string, patch: Partial<SystemNotificationSettings>): Promise<AppSettingsSnapshot>;
19
+ export declare function setAppDeclaredSetting(appId: string, key: string, value: AppPreferenceValue): Promise<AppSettingsSnapshot>;
20
+ export declare function resetAppPermissions(appId: string): Promise<void>;
21
+ export declare function getInitialAppSettingsRoute(): AppSettingsRoute | null;
22
+ export declare function subscribeAppSettingsRoute(listener: RouteListener): () => void;
23
+ export declare function handleOpenAppSettingsRoute(route: AppSettingsRoute): void;
24
+ export declare function handleAppSettingsChanged(snapshot: AppSettingsSnapshot): void;
25
+ export declare function handleSettingsAppsChanged(apps: readonly SystemPermissionApp[]): void;
@@ -0,0 +1,20 @@
1
+ export type { AppPreferenceValue, AppPermissionSetting, AppSettingsSpecifier, AppSettingsSnapshot, SystemNotificationSettings, SystemPermissionApp, SystemPermissionDescriptor, SystemPermissionKind, SystemPermissionLocationAccuracy, SystemPermissionMutation, SystemPermissionPlatform, SystemPermissionRecord, SystemPermissionRequestContext, SystemPermissionState, SystemPermissionStatus, } from '../../../peach-globals/src/index.d.ts';
2
+ import type { SystemPermissionKind, SystemPermissionRequestContext, SystemPermissionStatus } from '../../../peach-globals/src/index.d.ts';
3
+ export interface SystemPermissionPrompt {
4
+ app: SystemPermissionRequestContext;
5
+ kind: SystemPermissionKind;
6
+ purpose?: string;
7
+ variant?: 'authorization' | 'location-accuracy';
8
+ }
9
+ export interface SystemPermissionCatalogEntry {
10
+ kind: SystemPermissionKind;
11
+ displayName: string;
12
+ minimumIOSVersion: number;
13
+ initialStatus: SystemPermissionStatus;
14
+ settingsEditableStatuses: readonly SystemPermissionStatus[];
15
+ supportsLimited: boolean;
16
+ limitedIntroducedIOSVersion?: number;
17
+ promptStyle: 'binary' | 'location' | 'photos' | 'contacts' | 'calendar' | 'tracking';
18
+ }
19
+ export declare const SYSTEM_PERMISSION_CATALOG: readonly SystemPermissionCatalogEntry[];
20
+ export declare function getSystemPermissionCatalogEntry(kind: SystemPermissionKind): SystemPermissionCatalogEntry;