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,756 @@
1
+ import { type TransitionScalarMath } from './transition-scalar.d.ts';
2
+ export declare const STACK_TRANSITION_SHADOW_MAX_OPACITY = 1;
3
+ export type ScreenSlideRole = 'incoming' | 'behind';
4
+ export type ScreenTransitionPhase = 'idle' | 'presenting' | 'dismissing' | 'swiping-back';
5
+ import type { ScreenTransitionAnimation } from '../../../peach-kit/src/runtime.d.ts';
6
+ export type { ScreenTransitionAnimation } from '../../../peach-kit/src/runtime.d.ts';
7
+ export declare function isRnsSlideFromLeft(stackAnimation: unknown): boolean;
8
+ export declare function isRnsNativeDefaultAnimator(stackAnimation: unknown): boolean;
9
+ export declare function normalizeScreenTransitionAnimation(stackAnimation: unknown, platformOS?: string, presentation?: unknown, prefersCrossFadeTransitions?: boolean): ScreenTransitionAnimation;
10
+ export declare const UIKIT_PUSH_MS = 470;
11
+ export declare const UIKIT_CROSS_FADE_MS = 500;
12
+ export declare const UIKIT_MODAL_FADE_MS = 500;
13
+ export declare const UIKIT_MODAL_FLIP_MS = 700;
14
+ export declare const FORM_SHEET_PRESENT_STIFFNESS: number;
15
+ export declare const FORM_SHEET_PRESENT_DAMPING: number;
16
+ export declare const FORM_SHEET_PRESENT_DURATION_MS = 500;
17
+ export declare function screenTransitionEase(animation: ScreenTransitionAnimation, elapsedMs: number, durationMs: number): number;
18
+ export declare function screenSlideTranslateX(input: {
19
+ role: ScreenSlideRole;
20
+ p: number;
21
+ d?: number;
22
+ screenWidth: number;
23
+ keepsPreviousVisible?: boolean;
24
+ }): number;
25
+ export declare function leavingTitleClipShift(input: {
26
+ p: number;
27
+ screenWidth: number;
28
+ titleX: number;
29
+ titleWidth: number;
30
+ translateX: number;
31
+ }): number;
32
+ export declare function transitionHeaderOpacity(input: {
33
+ role: ScreenSlideRole;
34
+ p: number;
35
+ parentKeepsHeader?: boolean;
36
+ phase?: ScreenTransitionPhase;
37
+ d?: number;
38
+ }): number;
39
+ export declare function transitionSlideShadowOpacity(input: {
40
+ p: number;
41
+ d?: number;
42
+ phase: ScreenTransitionPhase;
43
+ }): number;
44
+ export declare const STACK_TRANSITION_BEHIND_DIM_MAX_OPACITY = 0.1;
45
+ export declare function transitionBehindDimOpacity(input: {
46
+ p: number;
47
+ d?: number;
48
+ phase: ScreenTransitionPhase;
49
+ }): number;
50
+ export interface ZoomSourceRect {
51
+ x: number;
52
+ y: number;
53
+ width: number;
54
+ height: number;
55
+ cornerRadius?: number;
56
+ }
57
+ export interface ScreenSlideInput {
58
+ rtl?: boolean;
59
+ customSwipe?: RnsCustomSwipe | null;
60
+ animation?: ScreenTransitionAnimation;
61
+ role: ScreenSlideRole;
62
+ p: number;
63
+ d?: number;
64
+ screenWidth: number;
65
+ screenHeight?: number;
66
+ keepsPreviousVisible?: boolean;
67
+ behindDimEnabled?: boolean;
68
+ parentKeepsHeader?: boolean;
69
+ largeTitleScrollAttached?: boolean;
70
+ phase: ScreenTransitionPhase;
71
+ isPushPresentation?: boolean;
72
+ pushCornerRadius?: number;
73
+ sheetRestTop?: number;
74
+ sheetOpeningScale?: boolean;
75
+ sheetStack?: {
76
+ restTop: number;
77
+ depth: number;
78
+ presenter?: {
79
+ top: number;
80
+ cornerRadius: number;
81
+ };
82
+ };
83
+ sheetCornerRadii?: ScreenTransitionCornerRadii;
84
+ zoomSourceRect?: ZoomSourceRect;
85
+ zoomTargetRect?: {
86
+ x: number;
87
+ y: number;
88
+ width: number;
89
+ height: number;
90
+ };
91
+ zoomInteraction?: ZoomInteraction;
92
+ zoomEdgeDrag?: ZoomEdgeDrag;
93
+ zoomRelease?: ZoomRelease;
94
+ zoomReleaseMs?: number;
95
+ handoff01?: number;
96
+ durationMs?: number;
97
+ barItemsMs?: number;
98
+ barItemsPresentationMs?: number;
99
+ }
100
+ export interface ScreenSlideTransforms {
101
+ projectiveMatrix?: number[];
102
+ brightness?: number;
103
+ translateX: number;
104
+ translateY: number;
105
+ cornerRadii: ScreenTransitionCornerRadii | undefined;
106
+ scaleX: number;
107
+ scaleY: number;
108
+ opacity: number;
109
+ headerOpacity: number;
110
+ transitionShadowOpacity: number;
111
+ behindDimOpacity: number;
112
+ sourceContentOpacity: number;
113
+ labelOpacity?: number;
114
+ labelBlurPx?: number;
115
+ backOpacity?: number;
116
+ backBlurPx?: number;
117
+ barItemsElapsedMs?: number;
118
+ barLaidOut?: boolean;
119
+ barCapsuleFlat?: boolean;
120
+ barBackReveal?: boolean;
121
+ aloneCapsule?: {
122
+ opacity: number;
123
+ blurPx: number;
124
+ };
125
+ backGlyph?: {
126
+ opacity: number;
127
+ blurPx: number;
128
+ scale: number;
129
+ };
130
+ barBackgroundLeaving?: boolean;
131
+ largeTitleLifted?: boolean;
132
+ sharedBar?: {
133
+ titleOpacity: number;
134
+ incomingBar: boolean;
135
+ lifted: boolean;
136
+ };
137
+ zoomClip?: ZoomClip;
138
+ }
139
+ export interface ZoomClip<T = number> {
140
+ insetX: T;
141
+ insetY: T;
142
+ innerRadii: ScreenTransitionCornerRadii<T>;
143
+ rect: {
144
+ x: T;
145
+ y: T;
146
+ width: T;
147
+ height: T;
148
+ };
149
+ radii: ScreenTransitionCornerRadii<T>;
150
+ sourceFit: 'top-left' | 'cover';
151
+ caster: {
152
+ translateX: T;
153
+ translateY: T;
154
+ scaleX: T;
155
+ scaleY: T;
156
+ radii: ScreenTransitionCornerRadii<T>;
157
+ };
158
+ }
159
+ export interface ScreenTransitionBarBackground {
160
+ tag: number;
161
+ opaque: boolean;
162
+ }
163
+ export interface ScreenTransitionCornerRadii<T = number> {
164
+ topLeft: T;
165
+ topRight: T;
166
+ bottomRight: T;
167
+ bottomLeft: T;
168
+ }
169
+ export declare function cornerRadiusStyle(radii: ScreenTransitionCornerRadii): {
170
+ borderTopLeftRadius: number;
171
+ borderTopRightRadius: number;
172
+ borderBottomRightRadius: number;
173
+ borderBottomLeftRadius: number;
174
+ };
175
+ export declare function iosZoomDurationMs(phase: ScreenTransitionPhase): number;
176
+ export declare function iosZoomProgress(fraction: number): number;
177
+ export declare function iosZoomPopProgress(fraction: number): number;
178
+ export declare function androidScreenTransitionProgress(progress: number): number;
179
+ export declare function androidAnimationKeepsPreviousTransform(animation: ScreenTransitionAnimation): boolean;
180
+ export interface ZoomInteraction {
181
+ touchX: number;
182
+ touchY: number;
183
+ anchorX: number;
184
+ anchorY: number;
185
+ contentScale: number;
186
+ boundsProgress: number;
187
+ sourceOpacity: number;
188
+ behindProgress: number;
189
+ }
190
+ export interface ZoomTargetRect {
191
+ x: number;
192
+ y: number;
193
+ width: number;
194
+ height: number;
195
+ }
196
+ export interface ZoomRelease {
197
+ commit: boolean;
198
+ from: ZoomInteraction;
199
+ velocity: {
200
+ x: number;
201
+ y: number;
202
+ contentScale: number;
203
+ boundsProgress: number;
204
+ };
205
+ durationMs: number;
206
+ scaleSpring: {
207
+ omega: number;
208
+ zeta: number;
209
+ };
210
+ }
211
+ export declare function zoomDragPose(touchX: number, touchY: number, dx: number, dy: number, target: ZoomTargetRect): ZoomInteraction;
212
+ export declare const ZOOM_PULL_RELEASE_VELOCITY: ZoomRelease['velocity'];
213
+ export declare function zoomDismissBegins(dx: number, dy: number): boolean;
214
+ export declare function zoomDismissCommits(dy: number, vy: number): boolean;
215
+ export declare const ZOOM_PAN_SLOP_PT = 10;
216
+ export interface SlideTrack {
217
+ drag: number;
218
+ velocity: number;
219
+ }
220
+ export declare function slideTrackFollow(track: SlideTrack, target: number, dtMs: number): SlideTrack;
221
+ export declare function slideTrackSettled(track: SlideTrack, target: number, screenWidth: number): boolean;
222
+ export interface ZoomEdgeDrag {
223
+ touchX: number;
224
+ touchY: number;
225
+ travel: number;
226
+ travelVelocity: number;
227
+ cross: number;
228
+ crossVelocity: number;
229
+ }
230
+ export declare function zoomEdgeFollow(drag: ZoomEdgeDrag, dx: number, dy: number, dtMs: number): ZoomEdgeDrag;
231
+ export declare function zoomEdgeFollowSettled(drag: ZoomEdgeDrag, dx: number, dy: number): boolean;
232
+ export declare function zoomEdgeDragPose(drag: ZoomEdgeDrag, target: ZoomTargetRect): ZoomInteraction;
233
+ export declare function zoomEdgeDismissCommits(translation: number, vx: number): boolean;
234
+ export declare function zoomEdgeRelease(drag: ZoomEdgeDrag, commit: boolean, vx: number, vy: number, target: ZoomTargetRect): ZoomRelease;
235
+ export declare const ZOOM_RELEASE_COMMIT_MS = 700;
236
+ export declare const ZOOM_PULL_COMMIT_SCALE_SPRING: {
237
+ omega: number;
238
+ zeta: number;
239
+ };
240
+ export declare const ZOOM_EDGE_COMMIT_SCALE_SPRING: {
241
+ omega: number;
242
+ zeta: number;
243
+ };
244
+ export declare const ZOOM_RELEASE_CANCEL_MS = 450;
245
+ export declare const ZOOM_RELEASE_PRESENTATION_LEAD_MS: number;
246
+ export declare function zoomReleasePose(release: ZoomRelease, source: ZoomSourceRect, target: ZoomTargetRect, elapsedMs: number): ZoomInteraction;
247
+ export declare function sheetStackTransform(width: number, height: number, depth: number, presenterTop?: number): {
248
+ scale: number;
249
+ factor: number;
250
+ translateY: number;
251
+ };
252
+ type ScreenZoomInput = Omit<ScreenSlideInput, 'p' | 'd' | 'barItemsMs'>;
253
+ export interface ScreenZoomState<T> extends ScreenSlideState<T> {
254
+ barCapsuleFlat?: boolean;
255
+ sharedBar?: {
256
+ titleOpacity: T;
257
+ incomingBar: boolean;
258
+ lifted: boolean;
259
+ };
260
+ zoomClip?: ZoomClip<T>;
261
+ }
262
+ export declare function screenZoomEase<T>(math: TransitionScalarMath<T>, elapsedMs: T, durationMs: number): T;
263
+ export declare function screenZoomTimedState<T>(math: TransitionScalarMath<T>, input: ScreenZoomInput, p: T, barItemsMs?: T): ScreenZoomState<T>;
264
+ export declare function computeScreenTransition(input: ScreenSlideInput): ScreenSlideTransforms;
265
+ export declare function computeScreenSlide(input: ScreenSlideInput): ScreenSlideTransforms;
266
+ export declare function easeOutCubic(t: number): number;
267
+ export interface SwipeBackSample {
268
+ x: number;
269
+ t: number;
270
+ }
271
+ export type SwipeBackInteractionState = 1 | 2;
272
+ export declare function resolveSwipeBackRelease(samples: readonly SwipeBackSample[], distance: number, interactionState: SwipeBackInteractionState): {
273
+ commit: boolean;
274
+ projected: number;
275
+ velocity: number;
276
+ completionVelocity: number;
277
+ };
278
+ export declare const SWIPE_BACK_SPRING_OMEGA: number;
279
+ export declare const SWIPE_BACK_SPRING_ZETA = 0.85;
280
+ export declare const SWIPE_BACK_RELEASE_LEAD_MS: number;
281
+ export declare function swipeBackCompletionMs(fromDrag: number, toDrag: number, velocity: number): number;
282
+ export declare function evaluateSwipeBackCompletion(fromDrag: number, toDrag: number, velocity: number, elapsedMs: number): {
283
+ drag: number;
284
+ done: boolean;
285
+ };
286
+ export declare function hasCustomSwipeContinuation(animation: ScreenTransitionAnimation, customSwipe: RnsCustomSwipe | null | undefined): boolean;
287
+ export declare function screenInteractiveCompletionMs(animation: ScreenTransitionAnimation, customSwipe: RnsCustomSwipe | null | undefined, fromDrag: number, toDrag: number, velocity: number): number;
288
+ export declare function evaluateScreenInteractiveCompletion(animation: ScreenTransitionAnimation, customSwipe: RnsCustomSwipe | null | undefined, fromDrag: number, toDrag: number, velocity: number, elapsedMs: number): {
289
+ drag: number;
290
+ done: boolean;
291
+ };
292
+ export declare const PUSH_CATCH_SETTLE_MS = 250;
293
+ export declare function pushCatchLead(elapsedMs: number): number;
294
+ export declare function swipeBackLabelHandoff(elapsedMs: number): number;
295
+ export declare function glassMaterialOpacity(alpha: number): number;
296
+ export declare function barCapsuleArrivalScale(alpha: number, width: number, height: number): {
297
+ scaleX: number;
298
+ scaleY: number;
299
+ };
300
+ export declare function screenTransitionDriveMs(descriptor: Pick<ScreenTransitionDescriptor, 'animation' | 'durationMs' | 'items'>): number;
301
+ export declare function swipeBackCommitDriveMs(items: readonly Pick<ScreenTransitionItem, 'capsuleMorphs'>[], cardMs: number): number;
302
+ export interface BarCapsuleBox {
303
+ x: number;
304
+ y: number;
305
+ width: number;
306
+ height: number;
307
+ glyphs: Array<{
308
+ x: number;
309
+ y: number;
310
+ }>;
311
+ }
312
+ export interface BarCapsuleGlyphPose<T = number> {
313
+ translateX: T;
314
+ translateY: T;
315
+ scaleX: T;
316
+ scaleY: T;
317
+ opacity: T;
318
+ blurPx: T;
319
+ }
320
+ export interface BarCapsuleMorph {
321
+ platter: {
322
+ x: number;
323
+ y: number;
324
+ width: number;
325
+ height: number;
326
+ };
327
+ leaving: BarCapsuleGlyphPose[];
328
+ arriving: BarCapsuleGlyphPose[];
329
+ leavingOthers: BarCapsuleGlyphPose[];
330
+ arrivingOthers: BarCapsuleGlyphPose[];
331
+ clipsArriving: boolean;
332
+ }
333
+ export interface BarItemClock<T = number> {
334
+ fromDrag: number;
335
+ elapsedMs: T;
336
+ timed?: boolean;
337
+ presentationMs?: T;
338
+ pulsePresentationMs?: T;
339
+ laidOut?: boolean;
340
+ flat?: boolean;
341
+ reveal?: boolean;
342
+ }
343
+ export declare function barCapsuleMorphState<T>(math: TransitionScalarMath<T>, side: 'leading' | 'trailing', leaving: BarCapsuleBox, arriving: BarCapsuleBox, screenWidth: number, d: T, release: BarItemClock<T> | null, others?: {
344
+ leaving: BarCapsuleBox[];
345
+ arriving: BarCapsuleBox[];
346
+ }, swap?: boolean): {
347
+ platter: {
348
+ x: T;
349
+ y: T;
350
+ width: T;
351
+ height: T;
352
+ };
353
+ clipsArriving: T;
354
+ leavingOthers: BarCapsuleGlyphPose<T>[];
355
+ arrivingOthers: BarCapsuleGlyphPose<T>[];
356
+ leaving: {
357
+ translateX: T;
358
+ translateY: T;
359
+ scaleX: T;
360
+ scaleY: T;
361
+ opacity: T;
362
+ blurPx: T;
363
+ }[];
364
+ arriving: {
365
+ translateX: T;
366
+ translateY: T;
367
+ scaleX: T;
368
+ scaleY: T;
369
+ opacity: T;
370
+ blurPx: T;
371
+ }[];
372
+ };
373
+ export declare function barCapsuleMorph(side: 'leading' | 'trailing', leaving: BarCapsuleBox, arriving: BarCapsuleBox, screenWidth: number, d: number, release: BarItemClock | null, others?: {
374
+ leaving: BarCapsuleBox[];
375
+ arriving: BarCapsuleBox[];
376
+ }, swap?: boolean): BarCapsuleMorph;
377
+ export interface BarCapsuleTags {
378
+ hostTag: number;
379
+ glassTag: number;
380
+ glyphTags: number[];
381
+ }
382
+ export interface ScreenTransitionItem {
383
+ role: ScreenSlideRole;
384
+ surfaceId: string;
385
+ generation: number;
386
+ wrapperTag: number;
387
+ headerTag?: number;
388
+ headerTitleTags?: number[];
389
+ headerHost?: {
390
+ tag: number;
391
+ restZ: number;
392
+ liftedZ: number;
393
+ };
394
+ largeTitleTag?: number;
395
+ largeTitleScrollAttached?: boolean;
396
+ barBackground?: ScreenTransitionBarBackground;
397
+ partnerBarBackground?: ScreenTransitionBarBackground;
398
+ pushOneBar?: boolean;
399
+ titleClip?: {
400
+ clipTag: number;
401
+ contentTag: number;
402
+ };
403
+ headerLabelTags?: number[];
404
+ headerCapsules?: Array<{
405
+ tag: number;
406
+ glassTag: number;
407
+ alone: boolean;
408
+ labelTags: number[];
409
+ }>;
410
+ headerHeldLabelTags?: number[];
411
+ backButtonTag?: number;
412
+ backGlassTag?: number;
413
+ backGlyphsTag?: number;
414
+ capsuleMorphs?: Array<{
415
+ side: 'leading';
416
+ systemBack: boolean;
417
+ swap: boolean;
418
+ hostTag: number;
419
+ glassTag: number;
420
+ glyphTags: number[];
421
+ partnerGlassTag: number;
422
+ partnerGlyphTags: number[];
423
+ } | {
424
+ side: 'trailing';
425
+ swap: boolean;
426
+ capsules: BarCapsuleTags[];
427
+ partnerCapsules: BarCapsuleTags[];
428
+ }>;
429
+ shadowTag?: number;
430
+ zoomClipTag?: number;
431
+ zoomContentTag?: number;
432
+ keepsPreviousVisible?: boolean;
433
+ behindDimEnabled?: boolean;
434
+ parentKeepsHeader?: boolean;
435
+ isPushPresentation?: boolean;
436
+ formSheetTravel?: boolean;
437
+ pushCornerRadius?: number;
438
+ sheetRestTop?: number;
439
+ sheetOpeningScale?: ScreenSlideInput['sheetOpeningScale'];
440
+ sheetStack?: ScreenSlideInput['sheetStack'];
441
+ sheetCornerRadii?: ScreenTransitionCornerRadii;
442
+ zoomSourceRect?: ZoomSourceRect;
443
+ zoomTargetRect?: ScreenSlideInput['zoomTargetRect'];
444
+ zoomRelease?: ZoomRelease;
445
+ }
446
+ export type ScreenTimedTransitionInputs = Pick<ScreenTransitionDescriptor, 'animation' | 'rtl' | 'durationMs' | 'screenWidth' | 'screenHeight'> & {
447
+ behindDimEnabled: boolean;
448
+ };
449
+ export interface ScreenTransitionDescriptor {
450
+ reanimatedSharedProgress?: boolean;
451
+ reportProgress?: boolean;
452
+ rtl: boolean;
453
+ surfaceId: string;
454
+ generation: number;
455
+ stackId: number;
456
+ transitionId: number;
457
+ releasedByTransitionId?: number;
458
+ animation: ScreenTransitionAnimation;
459
+ phase: 'presenting' | 'dismissing';
460
+ fromProgress: number;
461
+ toProgress: number;
462
+ durationMs: number;
463
+ screenWidth: number;
464
+ screenHeight: number;
465
+ items: ScreenTransitionItem[];
466
+ }
467
+ export interface RnsSwipeInput {
468
+ axis: 'horizontal' | 'vertical';
469
+ sign: 1 | -1;
470
+ }
471
+ export interface RnsCustomSwipe extends RnsSwipeInput {
472
+ edge: 'left' | 'right' | 'both';
473
+ rtl: boolean;
474
+ stackTag?: number;
475
+ durationMs: number;
476
+ }
477
+ export declare function rnsCustomSwipeRelease(translation: number, velocity: number, extent: number): {
478
+ commit: boolean;
479
+ projected: number;
480
+ velocity: number;
481
+ completionVelocity: number;
482
+ };
483
+ export interface ScreenInteractiveDescriptor {
484
+ customSwipe?: RnsCustomSwipe | null;
485
+ surfaceId: string;
486
+ generation: number;
487
+ stackId: number;
488
+ interactiveId: number;
489
+ animation: ScreenTransitionAnimation;
490
+ screenWidth: number;
491
+ screenHeight: number;
492
+ items: ScreenTransitionItem[];
493
+ }
494
+ export interface ScreenInteractiveCompletionDescriptor {
495
+ reanimatedSharedProgress?: boolean;
496
+ customSwipe?: RnsCustomSwipe | null;
497
+ surfaceId: string;
498
+ generation: number;
499
+ stackId: number;
500
+ transitionId: number;
501
+ animation: ScreenTransitionAnimation;
502
+ screenWidth: number;
503
+ screenHeight: number;
504
+ items: ScreenTransitionItem[];
505
+ fromDrag: number;
506
+ toDrag: number;
507
+ velocity: number;
508
+ durationMs: number;
509
+ cardMs: number;
510
+ }
511
+ export type ScreenTransitionDriveDescriptor = ScreenTransitionDescriptor | ScreenInteractiveCompletionDescriptor;
512
+ export declare const BAR_ITEMS_PRESENTATION_LAG_MS: number;
513
+ export interface BackCapsulePulseEntry {
514
+ surfaceId: string;
515
+ generation: number;
516
+ stackId: number;
517
+ transitionId: number;
518
+ startedAt: number;
519
+ wrapperTag: number;
520
+ headerHostTag: number;
521
+ glassTag: number;
522
+ hostTag: number;
523
+ }
524
+ export declare function backCapsulePulseEntry(descriptor: ScreenTransitionDriveDescriptor, startedAt: number | null): BackCapsulePulseEntry | null;
525
+ export declare function inheritedBackCapsulePulse(previous: BackCapsulePulseEntry | null | undefined, next: ScreenTransitionDriveDescriptor): number | null;
526
+ export interface ScreenGestureResponseDistance {
527
+ start: number;
528
+ end: number;
529
+ top: number;
530
+ bottom: number;
531
+ }
532
+ export declare function isRnsSwipeInResponseDistance(x: number, y: number, width: number, rtl: boolean, distance: ScreenGestureResponseDistance): boolean;
533
+ export interface ShellInteractiveEdgeSwipeSpec {
534
+ swipeInput: RnsSwipeInput;
535
+ customSwipe?: RnsCustomSwipe | null;
536
+ stackId: number;
537
+ surfaceId: string;
538
+ generation: number;
539
+ viewTag: number;
540
+ edgeSwipeWidth: number;
541
+ screenWidth: number;
542
+ screenHeight: number;
543
+ animation: ScreenTransitionAnimation;
544
+ items: ScreenTransitionItem[];
545
+ preventNativeDismiss: boolean;
546
+ contentSwipeEnabled: boolean;
547
+ contentSwipeRtl: boolean;
548
+ contentSwipeProgressWidth: number;
549
+ contentSwipe: (ScreenGestureResponseDistance & {
550
+ stackTag: number;
551
+ }) | null;
552
+ }
553
+ export interface ShellFormSheetDetent {
554
+ index: number;
555
+ top: number;
556
+ }
557
+ export interface ShellFormSheetChromeSpec {
558
+ undimmedTop: number | null;
559
+ fullDimTop: number | null;
560
+ fullDimAlpha: number;
561
+ explicitCornerRadius: number | null;
562
+ contentScale?: number;
563
+ systemCornerRadii?: FormSheetCornerRadii;
564
+ backdropTag?: number;
565
+ largeMorph?: FormSheetLargeMorph;
566
+ }
567
+ export interface FormSheetLargeMorph {
568
+ largeTop: number;
569
+ nextTop: number;
570
+ inset: number;
571
+ insetScale: number;
572
+ holdsSides?: boolean;
573
+ raisedBottom?: {
574
+ belowTop: number;
575
+ bottom: number;
576
+ };
577
+ clipTag?: number;
578
+ opaqueTag?: number;
579
+ }
580
+ export declare function formSheetLargeMorphShare(morph: FormSheetLargeMorph, sheetTop: number): number;
581
+ export interface FormSheetCornerRadii {
582
+ topLeft: number;
583
+ topRight: number;
584
+ bottomLeft: number;
585
+ bottomRight: number;
586
+ }
587
+ export interface ShellInteractiveFormSheetSpec {
588
+ stackId: number;
589
+ surfaceId: string;
590
+ generation: number;
591
+ viewTag: number;
592
+ contentTag?: number;
593
+ bodyTag?: number;
594
+ detents: ShellFormSheetDetent[];
595
+ selectedIndex: number;
596
+ expandsWhenScrolledToEdge: boolean;
597
+ preventNativeDismiss: boolean;
598
+ defersUserDismissal?: boolean;
599
+ screenHeight: number;
600
+ grabberVisible?: boolean;
601
+ keyboardPinsDetent?: boolean;
602
+ chrome?: ShellFormSheetChromeSpec;
603
+ barColumn?: {
604
+ tag: number;
605
+ top: number;
606
+ floor: number;
607
+ };
608
+ }
609
+ export type ShellFormSheetReleaseTarget = {
610
+ type: 'detent';
611
+ index: number;
612
+ top: number;
613
+ } | {
614
+ type: 'dismiss';
615
+ top: number;
616
+ };
617
+ import { FORM_SHEET_SETTLE_DAMPING, FORM_SHEET_SETTLE_FAST_DAMPING, FORM_SHEET_SETTLE_REST_DISTANCE, FORM_SHEET_SETTLE_REST_SPEED, FORM_SHEET_SETTLE_STIFFNESS, sampleFormSheetSpring } from './form-sheet-spring.d.ts';
618
+ export { FORM_SHEET_SETTLE_DAMPING, FORM_SHEET_SETTLE_FAST_DAMPING, FORM_SHEET_SETTLE_REST_DISTANCE, FORM_SHEET_SETTLE_REST_SPEED, FORM_SHEET_SETTLE_STIFFNESS, sampleFormSheetSpring, };
619
+ export declare function resolveFormSheetReleaseSpring(sourceVelocityY: number, constrainedVelocityY?: number): {
620
+ stiffness: number;
621
+ damping: number;
622
+ initialVelocity: number;
623
+ };
624
+ export declare const FORM_SHEET_OVER_DRAG_DIMENSION = 113;
625
+ export declare const FORM_SHEET_UNDER_DRAG_DIMENSION = 200;
626
+ export declare function isFormSheetDismissalAttempt(rawTop: number, smallestTop: number, prevented: boolean): boolean;
627
+ export declare const FORM_SHEET_TOUCH_SCALE_MAX_GROWTH = 4;
628
+ export declare const FORM_SHEET_TOUCH_SCALE_ONSET_MS = 100;
629
+ export declare const FORM_SHEET_TOUCH_SCALE_SHRINK_TRAVEL = 180;
630
+ export declare const FORM_SHEET_TOUCH_SCALE_RELEASE_MS = 135;
631
+ export interface FormSheetElasticScaleInput {
632
+ touchAgeMs: number;
633
+ travel: number;
634
+ sheetWidth: number;
635
+ sheetHeight: number;
636
+ releaseAgeMs?: number;
637
+ }
638
+ export declare function formSheetElasticScale(input: FormSheetElasticScaleInput): number;
639
+ export declare function consumeFormSheetPointerDelta(input: {
640
+ currentTop: number;
641
+ deltaY: number;
642
+ largestTop: number;
643
+ dismissalTop: number;
644
+ allowsUpward: boolean;
645
+ }): {
646
+ consumedY: number;
647
+ nextTop: number;
648
+ unconsumedY: number;
649
+ };
650
+ export declare function resolveFormSheetDetentIndex(detents: readonly ShellFormSheetDetent[], currentTop: number): number;
651
+ export declare function projectFormSheetReleaseTop(currentTop: number, velocityY: number): number;
652
+ export declare function resolveFormSheetReleaseTarget(input: {
653
+ detents: readonly ShellFormSheetDetent[];
654
+ currentTop: number;
655
+ velocityY: number;
656
+ dismissalTop: number;
657
+ preventNativeDismiss: boolean;
658
+ }): ShellFormSheetReleaseTarget;
659
+ export declare function evaluateFormSheetSettle(fromTop: number, toTop: number, elapsedMs: number, velocityY: number, stiffness?: number, damping?: number): {
660
+ top: number;
661
+ done: boolean;
662
+ };
663
+ export declare function rubberBandFormSheetTop(input: {
664
+ rawTop: number;
665
+ limitTop: number;
666
+ dimension: number;
667
+ }): number;
668
+ export declare const FORM_SHEET_LIGHT_DIM_ALPHA = 0.2;
669
+ export declare const FORM_SHEET_DARK_DIM_ALPHA = 0.48;
670
+ export declare const FORM_SHEET_STACKED_DIM_ALPHA = 0.12;
671
+ export declare const SHEET_DETENT_HORIZONTAL_INSET = 8;
672
+ export declare const FORM_SHEET_SYSTEM_CORNER_RADIUS = 38;
673
+ export declare const FORM_SHEET_SYSTEM_BOTTOM_CORNER_RADIUS = 54;
674
+ export declare const FORM_SHEET_INSET_CARD_TOP_CORNER_RADIUS = 40;
675
+ export declare function formSheetInsetCardCornerRadii(display: {
676
+ bottomLeft: number;
677
+ bottomRight: number;
678
+ }, inset: number): FormSheetCornerRadii;
679
+ export declare const FORM_SHEET_GRABBER_WIDTH = 60;
680
+ export declare const FORM_SHEET_GRABBER_HEIGHT = 4;
681
+ export declare const FORM_SHEET_GRABBER_TOP = 6;
682
+ export declare const FORM_SHEET_GRABBER_LIGHT = "rgb(196, 196, 199)";
683
+ export declare const FORM_SHEET_GRABBER_DARK = "rgb(71, 71, 73)";
684
+ export declare function formSheetChromeAtTop(input: ShellFormSheetChromeSpec & {
685
+ sheetTop: number;
686
+ }): {
687
+ dimAlpha: number;
688
+ topLeftCornerRadius: number;
689
+ topRightCornerRadius: number;
690
+ bottomLeftCornerRadius: number;
691
+ bottomRightCornerRadius: number;
692
+ dimmingViewInteractive: boolean;
693
+ largeMorph: {
694
+ cardInset: number;
695
+ contentScale: number;
696
+ opaqueAlpha: number;
697
+ } | null;
698
+ };
699
+ export declare function screenSlideEase<T>(math: TransitionScalarMath<T>, elapsedMs: T, durationMs: number): T;
700
+ export declare function screenSlideTranslation<T>(math: TransitionScalarMath<T>, input: {
701
+ role: ScreenSlideRole;
702
+ p: T;
703
+ d: T;
704
+ screenWidth: number;
705
+ keepsPreviousVisible?: boolean;
706
+ }): T;
707
+ export declare function screenSlideRelease<T>(math: TransitionScalarMath<T>, from: number, to: number, velocity: number, elapsedMs: T): T;
708
+ export declare function screenSlideHandoffSpring<T>(math: TransitionScalarMath<T>, elapsedMs: T): T;
709
+ export declare function screenSlideGlassOpacity<T>(math: TransitionScalarMath<T>, alpha: T): T;
710
+ export declare function screenSlideCapsuleScale<T>(math: TransitionScalarMath<T>, alpha: T, width: number, height: number): {
711
+ scaleX: T;
712
+ scaleY: T;
713
+ };
714
+ export declare function screenSlideShadow<T>(math: TransitionScalarMath<T>, p: T, d: T, phase: ScreenTransitionPhase): T;
715
+ export declare function screenSlideDim<T>(math: TransitionScalarMath<T>, p: T, d: T, phase: ScreenTransitionPhase): T;
716
+ export interface ScreenSlideState<T> {
717
+ translateX: T;
718
+ translateY: T;
719
+ scaleX: T;
720
+ scaleY: T;
721
+ opacity: T;
722
+ cornerRadii: {
723
+ topLeft: T;
724
+ topRight: T;
725
+ bottomRight: T;
726
+ bottomLeft: T;
727
+ } | undefined;
728
+ headerOpacity: T;
729
+ transitionShadowOpacity: T;
730
+ behindDimOpacity: T;
731
+ sourceContentOpacity: T;
732
+ labelOpacity?: T;
733
+ labelBlurPx?: T;
734
+ backOpacity?: T;
735
+ backBlurPx?: T;
736
+ barItemsElapsedMs?: T;
737
+ barBackReveal?: boolean;
738
+ barBackgroundLeaving?: boolean;
739
+ largeTitleLifted?: boolean;
740
+ }
741
+ export declare function screenSlideState<T>(math: TransitionScalarMath<T>, input: {
742
+ role: ScreenSlideRole;
743
+ phase: ScreenTransitionPhase;
744
+ p: T;
745
+ d: T;
746
+ screenWidth: number;
747
+ keepsPreviousVisible?: boolean;
748
+ isPushPresentation?: boolean;
749
+ pushCornerRadius?: number;
750
+ largeTitleScrollAttached?: boolean;
751
+ timed: boolean;
752
+ ownsBarItems: boolean;
753
+ itemsMs: T;
754
+ presentationMs?: T;
755
+ handoff: T;
756
+ }): ScreenSlideState<T>;