peachsim 0.1.1644 → 0.1.1653

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (608) hide show
  1. package/README.md +12 -0
  2. package/cli/app-catalog.ts +1 -1
  3. package/cli/app-fonts.ts +11 -80
  4. package/cli/app-splash.ts +18 -12
  5. package/cli/bridge-flow-runner.ts +11 -7
  6. package/cli/cloud-client.ts +10 -13
  7. package/cli/command-registry.ts +13 -4
  8. package/cli/commands/box.ts +4 -4
  9. package/cli/commands/control.ts +93 -53
  10. package/cli/commands/coverage-parser.ts +67 -0
  11. package/cli/commands/coverage.ts +550 -0
  12. package/cli/commands/debug.ts +9 -18
  13. package/cli/commands/desktop.ts +19 -7
  14. package/cli/commands/device.ts +14 -9
  15. package/cli/commands/guest-host.ts +6 -10
  16. package/cli/commands/inspect/core.ts +81 -17
  17. package/cli/commands/inspect.ts +13 -8
  18. package/cli/commands/kotlin.ts +2 -2
  19. package/cli/commands/maestro-compare.ts +1 -1
  20. package/cli/commands/platform.ts +20 -11
  21. package/cli/commands/preview.ts +16 -18
  22. package/cli/commands/runtime.ts +3 -2
  23. package/cli/commands/screenshot-layers.ts +1 -1
  24. package/cli/commands/screenshot.ts +1 -1
  25. package/cli/commands/serve.ts +5 -1
  26. package/cli/commands/support.ts +4 -4
  27. package/cli/commands/three-mode.ts +22 -15
  28. package/cli/commands/upload.ts +44 -45
  29. package/cli/current-sim.ts +38 -0
  30. package/cli/desktop-companion.ts +36 -8
  31. package/cli/device-option.ts +1 -1
  32. package/cli/drivers/playwright.ts +1 -0
  33. package/cli/drivers/types.ts +4 -0
  34. package/cli/help-core.ts +1 -1
  35. package/cli/internal-child.ts +2 -1
  36. package/cli/main.ts +9 -3
  37. package/cli/outbound-endpoints.ts +11 -3
  38. package/cli/output-redaction.ts +39 -14
  39. package/cli/remote-simulators.ts +4 -1
  40. package/cli/scene-video.ts +5 -2
  41. package/cli/send-to-box.ts +7 -10
  42. package/cli/telemetry.ts +1 -1
  43. package/cli/ws-bridge.ts +8 -1
  44. package/detox/attempt-events.cjs +3 -1
  45. package/detox/attempt-events.d.cts +1 -1
  46. package/detox/expectations.ts +108 -99
  47. package/detox/frame-offset.d.mts +6 -0
  48. package/detox/frame-offset.mjs +35 -0
  49. package/detox/gestures.ts +6 -18
  50. package/detox/index.ts +169 -101
  51. package/detox/jest-preset.cjs +1 -3
  52. package/detox/jest-transform.cjs +4 -0
  53. package/detox/matchers.ts +3 -0
  54. package/detox/motion-change.cjs +46 -114
  55. package/detox/motion-change.d.cts +5 -27
  56. package/dist-lib/agent-daemon-client.cjs +1 -1
  57. package/dist-lib/agent-events.cjs +1 -1
  58. package/dist-lib/attached-projects.cjs +1 -1
  59. package/dist-lib/auth/shared-session.cjs +1 -1
  60. package/dist-lib/backend-origin.cjs +1 -1
  61. package/dist-lib/beta.cjs +1 -1
  62. package/dist-lib/beta.mjs +1 -1
  63. package/dist-lib/bridge-constants.cjs +1 -1
  64. package/dist-lib/bridge-contract-input.cjs +65 -1
  65. package/dist-lib/bridge-contract-input.mjs +63 -1
  66. package/dist-lib/bridge-contract.cjs +19 -1
  67. package/dist-lib/bridge-contract.mjs +17 -1
  68. package/dist-lib/bundle-channel.cjs +38091 -14846
  69. package/dist-lib/capture-contract.cjs +1 -1
  70. package/dist-lib/capture-contract.mjs +1 -1
  71. package/dist-lib/cloud-contract.cjs +1 -1
  72. package/dist-lib/cloud-contract.mjs +1 -1
  73. package/dist-lib/cloud-test-args.cjs +1 -1
  74. package/dist-lib/cloud-test-args.mjs +1 -1
  75. package/dist-lib/cloud.cjs +1 -1
  76. package/dist-lib/cloud.mjs +1 -1
  77. package/dist-lib/config.cjs +1 -1
  78. package/dist-lib/config.mjs +5 -3
  79. package/dist-lib/detox/index.cjs +1244 -4509
  80. package/dist-lib/detox/jest-preset.cjs +1 -3
  81. package/dist-lib/detox/jest-transform.cjs +4 -0
  82. package/dist-lib/dev-bundle-resolution.cjs +28 -24
  83. package/dist-lib/expo-swift-bundle.cjs +35049 -13125
  84. package/dist-lib/expo-swift-metadata.cjs +1 -1
  85. package/dist-lib/expo-swift-metadata.mjs +1 -1
  86. package/dist-lib/home-paths.cjs +1 -1
  87. package/dist-lib/host/bridge-host.cjs +45112 -63143
  88. package/dist-lib/host/fetch-proxy-handler.cjs +3544 -11
  89. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  90. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  91. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  92. package/dist-lib/host/websocket-proxy.cjs +1 -1
  93. package/dist-lib/index.cjs +1909 -2029
  94. package/dist-lib/jump-to-source-babel.cjs +1 -1
  95. package/dist-lib/jump-to-source-native.cjs +1 -1
  96. package/dist-lib/kotlin-host.cjs +2 -2
  97. package/dist-lib/menu.cjs +1 -1
  98. package/dist-lib/menu.mjs +1 -1
  99. package/dist-lib/metro-fingerprint-registry.cjs +1 -1
  100. package/dist-lib/metro-fingerprint-registry.mjs +1 -1
  101. package/dist-lib/metro-production-bundle.cjs +1 -1
  102. package/dist-lib/metro-production-bundle.mjs +1 -1
  103. package/dist-lib/metro.cjs +380 -522
  104. package/dist-lib/native-app-identity-project.cjs +39 -252
  105. package/dist-lib/native-app-identity-project.mjs +1174 -11
  106. package/dist-lib/native-app-identity.cjs +8 -3
  107. package/dist-lib/native-app-identity.mjs +8 -3
  108. package/dist-lib/native-firebase-metadata.cjs +1 -1
  109. package/dist-lib/native-firebase-metadata.mjs +1 -1
  110. package/dist-lib/plist.cjs +2 -244
  111. package/dist-lib/plist.mjs +1 -1
  112. package/dist-lib/profiles.cjs +1 -1
  113. package/dist-lib/public-brand.cjs +1 -1
  114. package/dist-lib/public-origins-lib-esm.json +290 -0
  115. package/dist-lib/public-origins-lib-static.json +1 -0
  116. package/dist-lib/public-origins-lib.json +1852 -0
  117. package/dist-lib/react-native-host-modules.cjs +1 -1
  118. package/dist-lib/react-native-host-modules.mjs +1 -1
  119. package/dist-lib/scripts/dev-server-scanner.cjs +14 -253
  120. package/dist-lib/sdk.cjs +83 -16
  121. package/dist-lib/sdk.mjs +81 -15
  122. package/dist-lib/skills.cjs +50546 -75098
  123. package/dist-lib/swift-compile.cjs +25897 -1070
  124. package/dist-lib/swift-compile.mjs +25866 -1033
  125. package/dist-lib/swift-package.cjs +79 -1
  126. package/dist-lib/swift-package.mjs +75 -1
  127. package/dist-lib/swift-submit.cjs +1 -1
  128. package/dist-lib/swift-submit.mjs +1 -1
  129. package/dist-lib/swift-toolchain.cjs +1 -1
  130. package/dist-lib/swift.cjs +1 -1
  131. package/dist-lib/vite-swift.cjs +34273 -12349
  132. package/dist-lib/vite.cjs +373 -298
  133. package/dist-lib/worklet-executable.cjs +1 -1
  134. package/dist-lib/worklet-executable.mjs +1 -1
  135. package/dist-types/packages/peach-compat/src/engine-config.d.ts +2 -0
  136. package/dist-types/packages/peach-compat/src/stubs/form-sheet-spring.d.ts +9 -0
  137. package/dist-types/packages/peach-compat/src/stubs/native-evaluation-lease.d.ts +47 -0
  138. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-cookies.d.ts +113 -0
  139. package/dist-types/packages/peach-compat/src/stubs/native-seams/react-native-gesture-handler.d.ts +154 -0
  140. package/dist-types/packages/peach-compat/src/stubs/screen-transition-math.d.ts +756 -0
  141. package/dist-types/packages/peach-compat/src/stubs/transition-scalar.d.ts +25 -0
  142. package/dist-types/packages/peach-engine/src/billing/plans.d.ts +64 -0
  143. package/dist-types/packages/peach-engine/src/browser-page-target.d.ts +2 -0
  144. package/dist-types/packages/peach-engine/src/bundle-platform-url.d.ts +3 -0
  145. package/dist-types/packages/peach-engine/src/capture/browser-accessibility-host.d.ts +3 -0
  146. package/dist-types/packages/peach-engine/src/capture/browser-composite.d.ts +55 -0
  147. package/dist-types/packages/peach-engine/src/capture/browserAccessibilityContract.d.ts +27 -0
  148. package/dist-types/packages/peach-engine/src/capture/nativeScreenCaptureContract.d.ts +22 -0
  149. package/dist-types/packages/peach-engine/src/cli-companion.d.ts +36 -0
  150. package/dist-types/packages/peach-engine/src/components/native-ui/webview-frame-bridge.d.ts +34 -0
  151. package/dist-types/packages/peach-engine/src/config.d.ts +5 -0
  152. package/dist-types/packages/peach-engine/src/engine/android-stretch-effect.d.ts +57 -0
  153. package/dist-types/packages/peach-engine/src/engine/animated-driven-style.d.ts +47 -0
  154. package/dist-types/packages/peach-engine/src/engine/animated-value.d.ts +5 -0
  155. package/dist-types/packages/peach-engine/src/engine/animated.d.ts +195 -0
  156. package/dist-types/packages/peach-engine/src/engine/animation-clockContract.d.ts +15 -0
  157. package/dist-types/packages/peach-engine/src/engine/animation-graph.d.ts +148 -0
  158. package/dist-types/packages/peach-engine/src/engine/app-catalog-wire.d.ts +10 -0
  159. package/dist-types/packages/peach-engine/src/engine/app-font-registry.d.ts +87 -0
  160. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph-paint.d.ts +7 -0
  161. package/dist-types/packages/peach-engine/src/engine/attributed-paragraph.d.ts +123 -0
  162. package/dist-types/packages/peach-engine/src/engine/audioContract.d.ts +16 -0
  163. package/dist-types/packages/peach-engine/src/engine/canvaskit-api.d.ts +93 -0
  164. package/dist-types/packages/peach-engine/src/engine/canvaskit-renderer.d.ts +216 -0
  165. package/dist-types/packages/peach-engine/src/engine/config-plugin-fonts.d.ts +40 -0
  166. package/dist-types/packages/peach-engine/src/engine/config-plugin-splash.d.ts +25 -0
  167. package/dist-types/packages/peach-engine/src/engine/cull-visibility.d.ts +44 -0
  168. package/dist-types/packages/peach-engine/src/engine/damage-rect.d.ts +19 -0
  169. package/dist-types/packages/peach-engine/src/engine/engine-resource.d.ts +6 -0
  170. package/dist-types/packages/peach-engine/src/engine/expo-manifest.d.ts +5 -0
  171. package/dist-types/packages/peach-engine/src/engine/fiber-debug-metadata.d.ts +30 -0
  172. package/dist-types/packages/peach-engine/src/engine/font-config.d.ts +139 -0
  173. package/dist-types/packages/peach-engine/src/engine/generated/sf-pro-font.d.ts +1 -0
  174. package/dist-types/packages/peach-engine/src/engine/glass-material.d.ts +31 -0
  175. package/dist-types/packages/peach-engine/src/engine/host-composite.d.ts +100 -0
  176. package/dist-types/packages/peach-engine/src/engine/hosted-semantics.d.ts +49 -0
  177. package/dist-types/packages/peach-engine/src/engine/image-audit.d.ts +70 -0
  178. package/dist-types/packages/peach-engine/src/engine/image-loader.d.ts +350 -0
  179. package/dist-types/packages/peach-engine/src/engine/inspect-info.d.ts +27 -0
  180. package/dist-types/packages/peach-engine/src/engine/inspect-outline.d.ts +14 -0
  181. package/dist-types/packages/peach-engine/src/engine/inspect-visibility.d.ts +33 -0
  182. package/dist-types/packages/peach-engine/src/engine/ios-fast-scroll.d.ts +16 -0
  183. package/dist-types/packages/peach-engine/src/engine/layout-sab.d.ts +43 -0
  184. package/dist-types/packages/peach-engine/src/engine/liquid-glass-rect.d.ts +23 -0
  185. package/dist-types/packages/peach-engine/src/engine/liquid-glass-shaders.d.ts +9 -0
  186. package/dist-types/packages/peach-engine/src/engine/liquid-glass.d.ts +283 -0
  187. package/dist-types/packages/peach-engine/src/engine/live-object-counts.d.ts +6 -0
  188. package/dist-types/packages/peach-engine/src/engine/lottie-runtime.d.ts +32 -0
  189. package/dist-types/packages/peach-engine/src/engine/lottie-types.d.ts +138 -0
  190. package/dist-types/packages/peach-engine/src/engine/memory-counts.d.ts +27 -0
  191. package/dist-types/packages/peach-engine/src/engine/metalDirectContract.d.ts +108 -0
  192. package/dist-types/packages/peach-engine/src/engine/metalShaderContract.d.ts +217 -0
  193. package/dist-types/packages/peach-engine/src/engine/native-animation-driver.d.ts +112 -0
  194. package/dist-types/packages/peach-engine/src/engine/native-animation-graph.d.ts +62 -0
  195. package/dist-types/packages/peach-engine/src/engine/native-layout.d.ts +133 -0
  196. package/dist-types/packages/peach-engine/src/engine/native-resources.d.ts +26 -0
  197. package/dist-types/packages/peach-engine/src/engine/nativeReanimatedContract.d.ts +25 -0
  198. package/dist-types/packages/peach-engine/src/engine/nativeReplayContract.d.ts +64 -0
  199. package/dist-types/packages/peach-engine/src/engine/node.d.ts +589 -0
  200. package/dist-types/packages/peach-engine/src/engine/paint-boundary-types.d.ts +112 -0
  201. package/dist-types/packages/peach-engine/src/engine/paint-boundary.d.ts +57 -0
  202. package/dist-types/packages/peach-engine/src/engine/portalContract.d.ts +21 -0
  203. package/dist-types/packages/peach-engine/src/engine/portals.d.ts +20 -0
  204. package/dist-types/packages/peach-engine/src/engine/render-damage.d.ts +107 -0
  205. package/dist-types/packages/peach-engine/src/engine/riveContract.d.ts +420 -0
  206. package/dist-types/packages/peach-engine/src/engine/rn-spring.d.ts +51 -0
  207. package/dist-types/packages/peach-engine/src/engine/scene-table.d.ts +379 -0
  208. package/dist-types/packages/peach-engine/src/engine/scroll-momentum-math.d.ts +152 -0
  209. package/dist-types/packages/peach-engine/src/engine/scroll-pan-contacts.d.ts +10 -0
  210. package/dist-types/packages/peach-engine/src/engine/scroll-platform.d.ts +75 -0
  211. package/dist-types/packages/peach-engine/src/engine/scroll-range.d.ts +14 -0
  212. package/dist-types/packages/peach-engine/src/engine/scroll-velocity.d.ts +14 -0
  213. package/dist-types/packages/peach-engine/src/engine/scroll.d.ts +320 -0
  214. package/dist-types/packages/peach-engine/src/engine/signal.d.ts +7 -0
  215. package/dist-types/packages/peach-engine/src/engine/snapshot-cache-policy.d.ts +6 -0
  216. package/dist-types/packages/peach-engine/src/engine/svg-geometry.d.ts +41 -0
  217. package/dist-types/packages/peach-engine/src/engine/text-attachment-paragraphs.d.ts +10 -0
  218. package/dist-types/packages/peach-engine/src/engine/text-decoration.d.ts +11 -0
  219. package/dist-types/packages/peach-engine/src/engine/text-line-break.d.ts +22 -0
  220. package/dist-types/packages/peach-engine/src/engine/text-paint-receipt.d.ts +98 -0
  221. package/dist-types/packages/peach-engine/src/engine/text-paragraph.d.ts +11 -0
  222. package/dist-types/packages/peach-engine/src/engine/text-paragraphContract.d.ts +34 -0
  223. package/dist-types/packages/peach-engine/src/engine/text-transform.d.ts +1 -0
  224. package/dist-types/packages/peach-engine/src/engine/types.d.ts +657 -0
  225. package/dist-types/packages/peach-engine/src/engine/visible-frame.d.ts +54 -0
  226. package/dist-types/packages/peach-engine/src/engine/webrtcContract.d.ts +74 -0
  227. package/dist-types/packages/peach-engine/src/graphite-stats-fields.d.ts +184 -0
  228. package/dist-types/packages/peach-engine/src/guest-import-meta.d.ts +12 -0
  229. package/dist-types/packages/peach-engine/src/guest-module-overrides.d.ts +7 -0
  230. package/dist-types/packages/peach-engine/src/ios/app-card-types.d.ts +7 -0
  231. package/dist-types/packages/peach-engine/src/ios/apps/canvas-map-data.d.ts +177 -0
  232. package/dist-types/packages/peach-engine/src/ios/aux-home-scene.d.ts +54 -0
  233. package/dist-types/packages/peach-engine/src/ios/chrome-metrics.d.ts +47 -0
  234. package/dist-types/packages/peach-engine/src/ios/constants.d.ts +21 -0
  235. package/dist-types/packages/peach-engine/src/ios/duo-housing.d.ts +37 -0
  236. package/dist-types/packages/peach-engine/src/ios/home/types.d.ts +29 -0
  237. package/dist-types/packages/peach-engine/src/ios/home-app-catalog.d.ts +43 -0
  238. package/dist-types/packages/peach-engine/src/ios/photo-store.d.ts +73 -0
  239. package/dist-types/packages/peach-engine/src/ios/photoLibraryContract.d.ts +166 -0
  240. package/dist-types/packages/peach-engine/src/ios/shell-controller-types.d.ts +21 -0
  241. package/dist-types/packages/peach-engine/src/ios/shell-transition-debug.d.ts +18 -0
  242. package/dist-types/packages/peach-engine/src/metro-asset-path.d.ts +21 -0
  243. package/dist-types/packages/peach-engine/src/metro-fingerprint-registry-client.d.ts +11 -0
  244. package/dist-types/packages/peach-engine/src/metro-fingerprint.d.ts +38 -0
  245. package/dist-types/packages/peach-engine/src/native-preview-bundle.d.ts +44 -0
  246. package/dist-types/packages/peach-engine/src/observability/types.d.ts +74 -0
  247. package/dist-types/packages/peach-engine/src/peach-warm-manifest.d.ts +32 -0
  248. package/dist-types/packages/peach-engine/src/permissions/app-settings-client.d.ts +25 -0
  249. package/dist-types/packages/peach-engine/src/permissions/system-permission-types.d.ts +20 -0
  250. package/dist-types/packages/peach-engine/src/platform/android-back-panel.d.ts +131 -0
  251. package/dist-types/packages/peach-engine/src/platform/android-gesture-exclusion.d.ts +28 -0
  252. package/dist-types/packages/peach-engine/src/platform/android-predictive-back.d.ts +33 -0
  253. package/dist-types/packages/peach-engine/src/platform/system-bars-state.d.ts +14 -0
  254. package/dist-types/packages/peach-engine/src/playwright-sim-host.d.ts +1 -0
  255. package/dist-types/packages/peach-engine/src/preview/bundle-layout.d.ts +8 -0
  256. package/dist-types/packages/peach-engine/src/preview/bundle-variantContract.d.ts +24 -0
  257. package/dist-types/packages/peach-engine/src/preview/capture-bundle.d.ts +26 -0
  258. package/dist-types/packages/peach-engine/src/preview/compress-node.d.ts +2 -0
  259. package/dist-types/packages/peach-engine/src/preview/compress.d.ts +2 -0
  260. package/dist-types/packages/peach-engine/src/preview/presigned-upload.d.ts +60 -0
  261. package/dist-types/packages/peach-engine/src/preview/trace.d.ts +144 -0
  262. package/dist-types/packages/peach-engine/src/preview/upload-protocol.d.ts +152 -0
  263. package/dist-types/packages/peach-engine/src/profiler/animation-recording-loader.d.ts +1 -0
  264. package/dist-types/packages/peach-engine/src/profiler/profile-trace.d.ts +4 -0
  265. package/dist-types/packages/peach-engine/src/react-bridge.d.ts +3 -0
  266. package/dist-types/packages/peach-engine/src/react-native/AppState.d.ts +45 -0
  267. package/dist-types/packages/peach-engine/src/react-native/Appearance.d.ts +34 -0
  268. package/dist-types/packages/peach-engine/src/react-native/framework-colors-data.d.ts +2 -0
  269. package/dist-types/packages/peach-engine/src/react-native/host-services.d.ts +42 -0
  270. package/dist-types/packages/peach-engine/src/react-native/layout-animation.d.ts +22 -0
  271. package/dist-types/packages/peach-engine/src/react-native/platform-colors.d.ts +17 -0
  272. package/dist-types/packages/peach-engine/src/remote-stream/client-config.d.ts +10 -0
  273. package/dist-types/packages/peach-engine/src/remote-stream/cloud-display.d.ts +58 -0
  274. package/dist-types/packages/peach-engine/src/remote-stream/scene-recording.d.ts +45 -0
  275. package/dist-types/packages/peach-engine/src/render-worker/animated-drive-output.d.ts +35 -0
  276. package/dist-types/packages/peach-engine/src/render-worker/app-load.d.ts +16 -0
  277. package/dist-types/packages/peach-engine/src/render-worker/aux-surface-types.d.ts +2 -0
  278. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-shared.d.ts +42 -0
  279. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-webgpu.d.ts +434 -0
  280. package/dist-types/packages/peach-engine/src/render-worker/canvaskit-worker-init.d.ts +12 -0
  281. package/dist-types/packages/peach-engine/src/render-worker/compositor-backend.d.ts +31 -0
  282. package/dist-types/packages/peach-engine/src/render-worker/compositor-gpu.d.ts +202 -0
  283. package/dist-types/packages/peach-engine/src/render-worker/compositor-protocol.d.ts +1945 -0
  284. package/dist-types/packages/peach-engine/src/render-worker/compositor-runtime/scroll-drag-resample.d.ts +44 -0
  285. package/dist-types/packages/peach-engine/src/render-worker/css-keyframes-drive.d.ts +36 -0
  286. package/dist-types/packages/peach-engine/src/render-worker/edit-menu-geometry.d.ts +8 -0
  287. package/dist-types/packages/peach-engine/src/render-worker/engine-resource-relay.d.ts +21 -0
  288. package/dist-types/packages/peach-engine/src/render-worker/expo-widgetContract.d.ts +16 -0
  289. package/dist-types/packages/peach-engine/src/render-worker/gesture-seam-protocol.d.ts +152 -0
  290. package/dist-types/packages/peach-engine/src/render-worker/graph-linked-value.d.ts +29 -0
  291. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler-contract.d.ts +49 -0
  292. package/dist-types/packages/peach-engine/src/render-worker/graphite-pipeline-compiler.d.ts +12 -0
  293. package/dist-types/packages/peach-engine/src/render-worker/host-service-protocol.d.ts +756 -0
  294. package/dist-types/packages/peach-engine/src/render-worker/image-lifecycle-event.d.ts +22 -0
  295. package/dist-types/packages/peach-engine/src/render-worker/image-pixel-contract.d.ts +48 -0
  296. package/dist-types/packages/peach-engine/src/render-worker/live-frame-mirror.d.ts +34 -0
  297. package/dist-types/packages/peach-engine/src/render-worker/map-command-channel.d.ts +189 -0
  298. package/dist-types/packages/peach-engine/src/render-worker/mapNativeContract.d.ts +101 -0
  299. package/dist-types/packages/peach-engine/src/render-worker/native-dynamic-synchronizable.d.ts +22 -0
  300. package/dist-types/packages/peach-engine/src/render-worker/native-menu-gesture.d.ts +9 -0
  301. package/dist-types/packages/peach-engine/src/render-worker/native-ui-commandContract.d.ts +23 -0
  302. package/dist-types/packages/peach-engine/src/render-worker/native-ui-protocol.d.ts +1087 -0
  303. package/dist-types/packages/peach-engine/src/render-worker/native-widgetContract.d.ts +100 -0
  304. package/dist-types/packages/peach-engine/src/render-worker/nativeAnimMirrorContract.d.ts +174 -0
  305. package/dist-types/packages/peach-engine/src/render-worker/nativeSyncReplyContract.d.ts +11 -0
  306. package/dist-types/packages/peach-engine/src/render-worker/one-native-contentContract.d.ts +54 -0
  307. package/dist-types/packages/peach-engine/src/render-worker/pointerSampleContract.d.ts +14 -0
  308. package/dist-types/packages/peach-engine/src/render-worker/protocol.d.ts +880 -0
  309. package/dist-types/packages/peach-engine/src/render-worker/reanimated-css-contract.d.ts +63 -0
  310. package/dist-types/packages/peach-engine/src/render-worker/reanimated-readiness.d.ts +29 -0
  311. package/dist-types/packages/peach-engine/src/render-worker/resilient-frame-clock.d.ts +22 -0
  312. package/dist-types/packages/peach-engine/src/render-worker/retained-app-load.d.ts +20 -0
  313. package/dist-types/packages/peach-engine/src/render-worker/screen-edge-swipe-commit-protocol.d.ts +1 -0
  314. package/dist-types/packages/peach-engine/src/render-worker/screen-form-sheet-commit-protocol.d.ts +26 -0
  315. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror-tenant.d.ts +37 -0
  316. package/dist-types/packages/peach-engine/src/render-worker/scroll-mirror.d.ts +164 -0
  317. package/dist-types/packages/peach-engine/src/render-worker/shell-event-registry.d.ts +119 -0
  318. package/dist-types/packages/peach-engine/src/render-worker/shell-gesture-regions.d.ts +41 -0
  319. package/dist-types/packages/peach-engine/src/render-worker/shell-protocol.d.ts +603 -0
  320. package/dist-types/packages/peach-engine/src/render-worker/shell-scene-schema.d.ts +101 -0
  321. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-inline-sources.d.ts +13 -0
  322. package/dist-types/packages/peach-engine/src/render-worker/shell-tree-wire.d.ts +87 -0
  323. package/dist-types/packages/peach-engine/src/render-worker/test-bridge-protocol.d.ts +47 -0
  324. package/dist-types/packages/peach-engine/src/render-worker/text-inputContract.d.ts +93 -0
  325. package/dist-types/packages/peach-engine/src/render-worker/tree-sync-port.d.ts +102 -0
  326. package/dist-types/packages/peach-engine/src/render-worker/webgpu-frame-transaction.d.ts +292 -0
  327. package/dist-types/packages/peach-engine/src/render-worker/webgpu-readback-scheduler.d.ts +107 -0
  328. package/dist-types/packages/peach-engine/src/render-worker/webview-capture-protocol.d.ts +16 -0
  329. package/dist-types/packages/peach-engine/src/render-worker/worker-input-runtime.d.ts +211 -0
  330. package/dist-types/packages/peach-engine/src/render-worker/worker-storage.d.ts +33 -0
  331. package/dist-types/packages/peach-engine/src/render-worker/worklet-runtime.d.ts +987 -0
  332. package/dist-types/packages/peach-engine/src/render-worker/worklet-sab.d.ts +24 -0
  333. package/dist-types/packages/peach-engine/src/rolldown-bundle-inventory.d.ts +84 -0
  334. package/dist-types/packages/peach-engine/src/rolldown-production-fingerprint.d.ts +31 -0
  335. package/dist-types/packages/peach-engine/src/screenshots/timeline-assets.d.ts +10 -0
  336. package/dist-types/packages/peach-engine/src/screenshots/tokens.d.ts +9 -0
  337. package/dist-types/packages/peach-engine/src/settings/devices.d.ts +70 -0
  338. package/dist-types/packages/peach-engine/src/settings/duo-fold-bus.d.ts +87 -0
  339. package/dist-types/packages/peach-engine/src/settings/interface-rotation.d.ts +30 -0
  340. package/dist-types/packages/peach-engine/src/settings/react-native-configuration.d.ts +12 -0
  341. package/dist-types/packages/peach-engine/src/settings/scene-geometryContract.d.ts +40 -0
  342. package/dist-types/packages/peach-engine/src/settings/store.d.ts +37 -0
  343. package/dist-types/packages/peach-engine/src/shell-events.d.ts +203 -0
  344. package/dist-types/packages/peach-engine/src/shell-intent.d.ts +68 -0
  345. package/dist-types/packages/peach-engine/src/sootsim-event.d.ts +35 -0
  346. package/dist-types/packages/peach-engine/src/top-overlay-state.d.ts +5 -0
  347. package/dist-types/packages/peach-engine/src/web-authentication-automation-host.d.ts +2 -0
  348. package/dist-types/packages/peach-engine/src/webAuthenticationContract.d.ts +34 -0
  349. package/dist-types/packages/peach-engine/src/webview-automation-host.d.ts +180 -0
  350. package/dist-types/packages/peach-engine/src/wireframe-mode.d.ts +16 -0
  351. package/dist-types/packages/peach-globals/src/frameBreakdownContract.d.ts +16 -0
  352. package/dist-types/packages/peach-globals/src/index.d.ts +3311 -0
  353. package/dist-types/packages/peach-globals/src/nativeSurfaceContract.d.ts +76 -0
  354. package/dist-types/packages/peach-globals/src/pointerSourceEventContract.d.ts +8 -0
  355. package/dist-types/packages/peach-globals/src/profileTrace.d.ts +11 -0
  356. package/dist-types/packages/peach-globals/src/profilerContract.d.ts +223 -0
  357. package/dist-types/packages/peach-kit/src/capabilities.d.ts +721 -0
  358. package/dist-types/packages/peach-kit/src/internal.d.ts +4 -0
  359. package/dist-types/packages/peach-kit/src/materials/types.d.ts +27 -0
  360. package/dist-types/packages/peach-kit/src/materials/uikit-blur-material.d.ts +14 -0
  361. package/dist-types/packages/peach-kit/src/navigation-types.d.ts +11 -0
  362. package/dist-types/packages/peach-kit/src/react-bridge.d.ts +53 -0
  363. package/dist-types/packages/peach-kit/src/runtime.d.ts +26 -0
  364. package/dist-types/packages/peach-kit/src/ui/hosting-safe-area.d.ts +24 -0
  365. package/dist-types/packages/peach-kit/src/ui/popover-placement.d.ts +53 -0
  366. package/dist-types/packages/peach-kit/src/ui/presentationContract.d.ts +17 -0
  367. package/kotlin/ComposeSources/PeachComposeHost.kt +1 -1
  368. package/kotlin/JniSources/com/facebook/jni/HybridData.kt +0 -2
  369. package/kotlin/JniSources/dev/peach/jni/NativeBindings.kt +0 -2
  370. package/kotlin/JniTransportSources/dev/peach/jni/integration/JniTransport.kt +0 -2
  371. package/kotlin/README.md +6 -0
  372. package/package.json +22 -2
  373. package/runtime-companion.json +1 -0
  374. package/skills/contrast/SKILL.md +1 -0
  375. package/src/assetCatalogContract.ts +21 -0
  376. package/src/bridge-contract-input.ts +84 -0
  377. package/src/bridge-contract.ts +35 -3
  378. package/src/browser-launch-policy.ts +1 -0
  379. package/src/bundle-channel.mjs +4 -2
  380. package/src/cli-runtime.ts +55 -0
  381. package/src/crash-fingerprint.ts +26 -0
  382. package/src/dev-bundle-resolution.ts +50 -23
  383. package/src/device-catalog.ts +1159 -0
  384. package/src/host/bridge-host.ts +3 -26
  385. package/src/host/browser-pointer.ts +71 -0
  386. package/src/host/dev-server-package-versions.ts +23 -0
  387. package/src/host/fetch-proxy-handler.ts +17 -4
  388. package/src/installed-package-versions.ts +142 -38
  389. package/src/kotlin-host.ts +1 -1
  390. package/src/metro-plugin.ts +4 -4
  391. package/src/metro-project-root.ts +68 -0
  392. package/src/nitro-adapter.lock.json +26 -0
  393. package/src/nitro-adapter.ts +103 -0
  394. package/src/nitro-bundle.ts +24 -10
  395. package/src/nitro-compile.ts +33 -51
  396. package/src/nitro-source.ts +177 -96
  397. package/src/nitroAdapterContract.ts +217 -0
  398. package/src/nitroContract.ts +24 -11
  399. package/src/process-group.ts +41 -34
  400. package/src/react-bridge-importers.ts +28 -0
  401. package/src/reactNativeConfigurationContract.ts +36 -0
  402. package/src/runtime-assets.ts +7 -2
  403. package/src/runtime-delivery.ts +2 -0
  404. package/src/runtimePlatformContract.ts +70 -0
  405. package/src/screenshots/frame-compose.ts +42 -43
  406. package/src/screenshots/org-deck.ts +9 -4
  407. package/src/screenshots/preset-names.ts +29 -0
  408. package/src/screenshots/registry.ts +5 -5
  409. package/src/screenshots/schema.ts +1 -1
  410. package/src/screenshots/screenshotContract.ts +971 -0
  411. package/src/settings-flags.ts +107 -0
  412. package/src/settingsContract.ts +609 -0
  413. package/src/storageSnapshotContract.ts +344 -0
  414. package/src/stub-pattern-matcher.ts +550 -0
  415. package/src/swift-compile.ts +908 -40
  416. package/src/swift-compiler-digest.ts +13 -1
  417. package/src/swift-distribution.lock.json +49 -22
  418. package/src/swift-host.ts +167 -52
  419. package/src/swift-objc-compile.ts +54 -24
  420. package/src/swift-objc-export.ts +532 -0
  421. package/src/swift-objc-import.ts +769 -0
  422. package/src/swift-objc-metadata.ts +285 -10
  423. package/src/swift-objc-sdk.ts +13970 -158
  424. package/src/swift-objc-standin.ts +137 -1
  425. package/src/swift-package.ts +94 -0
  426. package/src/swift-packages.ts +5 -5
  427. package/src/swift-submit.ts +6 -0
  428. package/src/swiftContract.ts +99 -0
  429. package/src/target-matcher.ts +6 -1
  430. package/src/vite-plugin.ts +14 -40
  431. package/src/worker-system-chunks.ts +1 -1
  432. package/src/workerChunkContract.ts +5 -0
  433. package/src/worklets-babel.ts +24 -5
  434. package/src/xcode-project.ts +36 -7
  435. package/src/xcode-target-members.ts +10 -3
  436. package/cli/drivers/playwright-sim-host.ts +0 -825
  437. package/kotlin/fixtures/counter/Counter.d.kt.ts +0 -17
  438. package/kotlin/fixtures/counter/Counter.kt +0 -51
  439. package/kotlin/fixtures/counter/CounterApp.native.tsx +0 -61
  440. package/kotlin/fixtures/counter/CounterApp.tsx +0 -3
  441. package/kotlin/fixtures/counter/CounterScreen.d.kt.ts +0 -8
  442. package/kotlin/fixtures/counter/CounterScreen.kt +0 -56
  443. package/kotlin/fixtures/counter/app/_layout.tsx +0 -4
  444. package/kotlin/fixtures/counter/app/index+spa.tsx +0 -1
  445. package/kotlin/fixtures/counter/app/routes.d.ts +0 -18
  446. package/kotlin/fixtures/counter/package.json +0 -20
  447. package/kotlin/fixtures/counter/tsconfig.json +0 -19
  448. package/kotlin/fixtures/counter/vite.config.ts +0 -20
  449. package/kotlin/fixtures/headless-counter/Headless.kt +0 -234
  450. package/kotlin/fixtures/import-animation/Animation.d.kt.ts +0 -7
  451. package/kotlin/fixtures/import-animation/Animation.kt +0 -80
  452. package/kotlin/fixtures/import-animation/ImportAnimation.native.tsx +0 -13
  453. package/kotlin/fixtures/import-animation/README.md +0 -24
  454. package/kotlin/fixtures/import-animation/app/_layout.tsx +0 -4
  455. package/kotlin/fixtures/import-animation/app/index+spa.tsx +0 -1
  456. package/kotlin/fixtures/import-animation/app/routes.d.ts +0 -18
  457. package/kotlin/fixtures/import-animation/package.json +0 -23
  458. package/kotlin/fixtures/import-animation/tsconfig.json +0 -20
  459. package/kotlin/fixtures/import-animation/vite.config.ts +0 -20
  460. package/kotlin/fixtures/import-drawing/Drawing.d.kt.ts +0 -7
  461. package/kotlin/fixtures/import-drawing/Drawing.kt +0 -101
  462. package/kotlin/fixtures/import-drawing/ImportDrawing.native.tsx +0 -18
  463. package/kotlin/fixtures/import-drawing/README.md +0 -34
  464. package/kotlin/fixtures/import-drawing/app/_layout.tsx +0 -4
  465. package/kotlin/fixtures/import-drawing/app/index+spa.tsx +0 -1
  466. package/kotlin/fixtures/import-drawing/package.json +0 -23
  467. package/kotlin/fixtures/import-drawing/tsconfig.json +0 -20
  468. package/kotlin/fixtures/import-drawing/vite.config.ts +0 -20
  469. package/kotlin/fixtures/import-editor/Editor.d.kt.ts +0 -7
  470. package/kotlin/fixtures/import-editor/Editor.kt +0 -59
  471. package/kotlin/fixtures/import-editor/ImportEditor.native.tsx +0 -23
  472. package/kotlin/fixtures/import-editor/README.md +0 -27
  473. package/kotlin/fixtures/import-editor/app/_layout.tsx +0 -4
  474. package/kotlin/fixtures/import-editor/app/index+spa.tsx +0 -1
  475. package/kotlin/fixtures/import-editor/package.json +0 -23
  476. package/kotlin/fixtures/import-editor/tsconfig.json +0 -20
  477. package/kotlin/fixtures/import-editor/vite.config.ts +0 -20
  478. package/kotlin/fixtures/import-effects/Effects.d.kt.ts +0 -7
  479. package/kotlin/fixtures/import-effects/Effects.kt +0 -87
  480. package/kotlin/fixtures/import-effects/ImportEffects.native.tsx +0 -13
  481. package/kotlin/fixtures/import-effects/README.md +0 -19
  482. package/kotlin/fixtures/import-effects/app/_layout.tsx +0 -4
  483. package/kotlin/fixtures/import-effects/app/index+spa.tsx +0 -1
  484. package/kotlin/fixtures/import-effects/package.json +0 -23
  485. package/kotlin/fixtures/import-effects/tsconfig.json +0 -20
  486. package/kotlin/fixtures/import-effects/vite.config.ts +0 -20
  487. package/kotlin/fixtures/import-layout/ImportLayout.native.tsx +0 -13
  488. package/kotlin/fixtures/import-layout/Layout.d.kt.ts +0 -7
  489. package/kotlin/fixtures/import-layout/Layout.kt +0 -72
  490. package/kotlin/fixtures/import-layout/README.md +0 -24
  491. package/kotlin/fixtures/import-layout/app/_layout.tsx +0 -4
  492. package/kotlin/fixtures/import-layout/app/index+spa.tsx +0 -1
  493. package/kotlin/fixtures/import-layout/package.json +0 -23
  494. package/kotlin/fixtures/import-layout/tsconfig.json +0 -20
  495. package/kotlin/fixtures/import-layout/vite.config.ts +0 -20
  496. package/kotlin/fixtures/import-navigation/ImportNavigation.native.tsx +0 -18
  497. package/kotlin/fixtures/import-navigation/Navigation.d.kt.ts +0 -7
  498. package/kotlin/fixtures/import-navigation/Navigation.kt +0 -104
  499. package/kotlin/fixtures/import-navigation/README.md +0 -31
  500. package/kotlin/fixtures/import-navigation/app/_layout.tsx +0 -4
  501. package/kotlin/fixtures/import-navigation/app/index+spa.tsx +0 -1
  502. package/kotlin/fixtures/import-navigation/package.json +0 -23
  503. package/kotlin/fixtures/import-navigation/tsconfig.json +0 -20
  504. package/kotlin/fixtures/import-navigation/vite.config.ts +0 -20
  505. package/kotlin/fixtures/import-overlays/ImportOverlays.native.tsx +0 -29
  506. package/kotlin/fixtures/import-overlays/Overlays.d.kt.ts +0 -7
  507. package/kotlin/fixtures/import-overlays/Overlays.kt +0 -93
  508. package/kotlin/fixtures/import-overlays/README.md +0 -34
  509. package/kotlin/fixtures/import-overlays/app/_layout.tsx +0 -4
  510. package/kotlin/fixtures/import-overlays/app/index+spa.tsx +0 -1
  511. package/kotlin/fixtures/import-overlays/package.json +0 -23
  512. package/kotlin/fixtures/import-overlays/tsconfig.json +0 -20
  513. package/kotlin/fixtures/import-overlays/vite.config.ts +0 -20
  514. package/kotlin/fixtures/import-resources/ImportResources.native.tsx +0 -18
  515. package/kotlin/fixtures/import-resources/README.md +0 -26
  516. package/kotlin/fixtures/import-resources/Resources.d.kt.ts +0 -6
  517. package/kotlin/fixtures/import-resources/Resources.kt +0 -72
  518. package/kotlin/fixtures/import-resources/app/_layout.tsx +0 -4
  519. package/kotlin/fixtures/import-resources/app/index+spa.tsx +0 -1
  520. package/kotlin/fixtures/import-resources/package.json +0 -23
  521. package/kotlin/fixtures/import-resources/tsconfig.json +0 -20
  522. package/kotlin/fixtures/import-resources/vite.config.ts +0 -20
  523. package/kotlin/fixtures/import-scroll/ImportNested.native.tsx +0 -10
  524. package/kotlin/fixtures/import-scroll/ImportScroll.native.tsx +0 -13
  525. package/kotlin/fixtures/import-scroll/Nested.d.kt.ts +0 -4
  526. package/kotlin/fixtures/import-scroll/Nested.kt +0 -64
  527. package/kotlin/fixtures/import-scroll/README.md +0 -38
  528. package/kotlin/fixtures/import-scroll/Scroll.d.kt.ts +0 -7
  529. package/kotlin/fixtures/import-scroll/Scroll.kt +0 -91
  530. package/kotlin/fixtures/import-scroll/app/_layout.tsx +0 -4
  531. package/kotlin/fixtures/import-scroll/app/index+spa.tsx +0 -1
  532. package/kotlin/fixtures/import-scroll/app/nested+spa.tsx +0 -1
  533. package/kotlin/fixtures/import-scroll/package.json +0 -23
  534. package/kotlin/fixtures/import-scroll/tsconfig.json +0 -20
  535. package/kotlin/fixtures/import-scroll/vite.config.ts +0 -20
  536. package/kotlin/fixtures/import-selection/ImportSelection.native.tsx +0 -44
  537. package/kotlin/fixtures/import-selection/README.md +0 -32
  538. package/kotlin/fixtures/import-selection/Selection.d.kt.ts +0 -8
  539. package/kotlin/fixtures/import-selection/Selection.kt +0 -78
  540. package/kotlin/fixtures/import-selection/app/_layout.tsx +0 -4
  541. package/kotlin/fixtures/import-selection/app/index+spa.tsx +0 -1
  542. package/kotlin/fixtures/import-selection/package.json +0 -23
  543. package/kotlin/fixtures/import-selection/tsconfig.json +0 -20
  544. package/kotlin/fixtures/import-selection/vite.config.ts +0 -20
  545. package/kotlin/fixtures/import-surfaces/ImportSurfaces.native.tsx +0 -13
  546. package/kotlin/fixtures/import-surfaces/README.md +0 -22
  547. package/kotlin/fixtures/import-surfaces/Surfaces.d.kt.ts +0 -7
  548. package/kotlin/fixtures/import-surfaces/Surfaces.kt +0 -64
  549. package/kotlin/fixtures/import-surfaces/app/_layout.tsx +0 -4
  550. package/kotlin/fixtures/import-surfaces/app/index+spa.tsx +0 -1
  551. package/kotlin/fixtures/import-surfaces/package.json +0 -23
  552. package/kotlin/fixtures/import-surfaces/tsconfig.json +0 -20
  553. package/kotlin/fixtures/import-surfaces/vite.config.ts +0 -20
  554. package/kotlin/fixtures/import-values/ImportValues.native.tsx +0 -61
  555. package/kotlin/fixtures/import-values/README.md +0 -28
  556. package/kotlin/fixtures/import-values/Values.d.kt.ts +0 -15
  557. package/kotlin/fixtures/import-values/Values.kt +0 -84
  558. package/kotlin/fixtures/import-values/app/_layout.tsx +0 -4
  559. package/kotlin/fixtures/import-values/app/index+spa.tsx +0 -1
  560. package/kotlin/fixtures/import-values/package.json +0 -23
  561. package/kotlin/fixtures/import-values/tsconfig.json +0 -20
  562. package/kotlin/fixtures/import-values/vite.config.ts +0 -20
  563. package/kotlin/fixtures/kotlin-app/app/build.gradle.kts +0 -30
  564. package/kotlin/fixtures/kotlin-app/app/src/main/AndroidManifest.xml +0 -13
  565. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/MainActivity.kt +0 -60
  566. package/kotlin/fixtures/kotlin-app/app/src/main/java/dev/contrast/kotlinapp/ProbeApplication.kt +0 -18
  567. package/kotlin/fixtures/kotlin-app/build.gradle.kts +0 -5
  568. package/kotlin/fixtures/kotlin-app/gradle.properties +0 -4
  569. package/kotlin/fixtures/kotlin-app/settings.gradle.kts +0 -4
  570. package/kotlin/fixtures/kotlin-app-variants/Anim.kt +0 -62
  571. package/kotlin/fixtures/kotlin-app-variants/BarBehavior.kt +0 -38
  572. package/kotlin/fixtures/kotlin-app-variants/BarVisibility.kt +0 -36
  573. package/kotlin/fixtures/kotlin-app-variants/Bitmaps.kt +0 -50
  574. package/kotlin/fixtures/kotlin-app-variants/Browse.kt +0 -73
  575. package/kotlin/fixtures/kotlin-app-variants/Colors.kt +0 -41
  576. package/kotlin/fixtures/kotlin-app-variants/Controls.kt +0 -62
  577. package/kotlin/fixtures/kotlin-app-variants/Drag.kt +0 -56
  578. package/kotlin/fixtures/kotlin-app-variants/Draw.kt +0 -74
  579. package/kotlin/fixtures/kotlin-app-variants/Drawables.kt +0 -53
  580. package/kotlin/fixtures/kotlin-app-variants/Focus.kt +0 -62
  581. package/kotlin/fixtures/kotlin-app-variants/Form.kt +0 -47
  582. package/kotlin/fixtures/kotlin-app-variants/Icons.kt +0 -59
  583. package/kotlin/fixtures/kotlin-app-variants/Ime.kt +0 -53
  584. package/kotlin/fixtures/kotlin-app-variants/Lists.kt +0 -57
  585. package/kotlin/fixtures/kotlin-app-variants/Nav.kt +0 -47
  586. package/kotlin/fixtures/kotlin-app-variants/Note.kt +0 -40
  587. package/kotlin/fixtures/kotlin-app-variants/Overlays.kt +0 -56
  588. package/kotlin/fixtures/kotlin-app-variants/Pan.kt +0 -38
  589. package/kotlin/fixtures/kotlin-app-variants/Pickers.kt +0 -44
  590. package/kotlin/fixtures/kotlin-app-variants/Press.kt +0 -43
  591. package/kotlin/fixtures/kotlin-app-variants/Scroll.kt +0 -63
  592. package/kotlin/fixtures/kotlin-app-variants/Sheet.kt +0 -43
  593. package/kotlin/fixtures/kotlin-app-variants/Strings.kt +0 -49
  594. package/kotlin/fixtures/kotlin-app-variants/Tabs.kt +0 -47
  595. package/kotlin/fixtures/kotlin-app-variants/TextWidth.kt +0 -45
  596. package/kotlin/fixtures/kotlin-app-variants/TransientInsets.kt +0 -50
  597. package/kotlin/fixtures/kotlin-app-variants/Transition.kt +0 -69
  598. package/kotlin/fixtures/kotlin-app-variants/ViewConfig.kt +0 -22
  599. package/kotlin/fixtures/kotlin-app-variants/Widgets.kt +0 -67
  600. package/kotlin/fixtures/runtime-state/RuntimeState.kt +0 -200
  601. package/kotlin/fork/README.md +0 -97
  602. package/kotlin/fork/build.sh +0 -176
  603. package/kotlin/fork/compose-worker-globals.patch +0 -1247
  604. package/kotlin/fork/fork.json +0 -46
  605. package/kotlin/fork/publish.ts +0 -99
  606. package/kotlin/fork/skia-android-shaping.patch +0 -189
  607. package/kotlin/fork/skiko-local.init.gradle +0 -10
  608. package/kotlin/fork/skiko-worker-clock.patch +0 -122
@@ -0,0 +1,434 @@
1
+ import { type SceneNativeBinding } from '../engine/scene-table.d.ts';
2
+ import { buildGraphiteNativeProfileReport } from '../graphite-stats-fields.d.ts';
3
+ import { GraphitePipelineCompiler } from './graphite-pipeline-compiler.d.ts';
4
+ import type { CanvasKitRenderingApi } from '../engine/canvaskit-api.d.ts';
5
+ import type { PipelineCompilerStats } from './graphite-pipeline-compiler-contract.d.ts';
6
+ import type { CanvasKitInitOptions, Image as SkImage, RuntimeEffect, Surface } from 'canvaskit-wasm';
7
+ export type WebGpuErrorScopeFilter = 'validation' | 'out-of-memory';
8
+ export type CanvasKitGraphiteInitOptions = CanvasKitInitOptions;
9
+ export interface GraphitePipelinePrecompileResult {
10
+ readonly status: 'seeded' | 'partial' | 'rejected' | 'absent';
11
+ readonly seeded: number;
12
+ readonly rejected: number;
13
+ readonly reason?: string;
14
+ }
15
+ export declare function initCanvasKitGraphiteModule(options: CanvasKitGraphiteInitOptions): Promise<GraphiteCanvasKitModule>;
16
+ export type WebGpuErrorPort = GPUError;
17
+ export type WebGpuDeviceLostInfoPort = unknown;
18
+ export type WebGpuUncapturedErrorListener = (error: GPUError) => void;
19
+ export type WebGpuTexturePort = GPUTexture;
20
+ export type WebGpuBufferPort = GPUBuffer;
21
+ export type WebGpuExternalImageSourcePort = GPUCopyExternalImageSource;
22
+ export interface WebGpuExtent3DPort {
23
+ readonly width: number;
24
+ readonly height: number;
25
+ readonly depthOrArrayLayers?: number;
26
+ }
27
+ export interface WebGpuOrigin3DPort {
28
+ readonly x?: number;
29
+ readonly y?: number;
30
+ readonly z?: number;
31
+ }
32
+ export interface WebGpuImageCopyTexturePort {
33
+ readonly texture: GPUTexture;
34
+ readonly mipLevel?: number;
35
+ readonly origin?: WebGpuOrigin3DPort;
36
+ }
37
+ export interface WebGpuImageCopyBufferPort {
38
+ readonly buffer: GPUBuffer;
39
+ readonly offset?: number;
40
+ readonly bytesPerRow: number;
41
+ readonly rowsPerImage?: number;
42
+ }
43
+ export interface WebGpuImageCopyExternalImagePort {
44
+ readonly source: GPUCopyExternalImageSource;
45
+ readonly origin?: {
46
+ readonly x?: number;
47
+ readonly y?: number;
48
+ };
49
+ readonly flipY?: boolean;
50
+ }
51
+ export interface WebGpuImageCopyTextureTaggedPort extends WebGpuImageCopyTexturePort {
52
+ readonly colorSpace?: 'srgb';
53
+ readonly premultipliedAlpha?: boolean;
54
+ }
55
+ export type WebGpuCommandEncoderPort = Pick<GPUCommandEncoder, 'copyTextureToTexture' | 'copyTextureToBuffer' | 'finish'>;
56
+ export type WebGpuQueuePort = Pick<GPUQueue, 'copyExternalImageToTexture' | 'writeTexture' | 'submit' | 'onSubmittedWorkDone'>;
57
+ export interface WebGpuTextureDescriptorPort {
58
+ readonly label?: string;
59
+ readonly size: WebGpuExtent3DPort;
60
+ readonly format: GPUTextureFormat;
61
+ readonly usage: GPUTextureUsageFlags;
62
+ readonly sampleCount?: number;
63
+ readonly mipLevelCount?: number;
64
+ readonly dimension?: GPUTextureDimension;
65
+ }
66
+ export interface WebGpuBufferDescriptorPort {
67
+ readonly label?: string;
68
+ readonly size: number;
69
+ readonly usage: GPUBufferUsageFlags;
70
+ readonly mappedAtCreation?: boolean;
71
+ }
72
+ export interface WebGpuCommandEncoderDescriptorPort {
73
+ readonly label?: string;
74
+ }
75
+ export interface WebGpuDevicePort {
76
+ readonly queue: WebGpuQueuePort;
77
+ readonly lost: Promise<WebGpuDeviceLostInfoPort>;
78
+ createTexture(descriptor: WebGpuTextureDescriptorPort): GPUTexture;
79
+ createBuffer(descriptor: WebGpuBufferDescriptorPort): GPUBuffer;
80
+ createCommandEncoder(descriptor?: WebGpuCommandEncoderDescriptorPort): WebGpuCommandEncoderPort;
81
+ pushErrorScope(filter: WebGpuErrorScopeFilter): void;
82
+ popErrorScope(): Promise<GPUError | null>;
83
+ configureCanvas(context: WebGpuCanvasContextPort, configuration: WebGpuCanvasConfigurationPort): void;
84
+ addUncapturedErrorListener(listener: WebGpuUncapturedErrorListener): void;
85
+ removeUncapturedErrorListener(listener: WebGpuUncapturedErrorListener): void;
86
+ }
87
+ export type WebGpuCanvasConfigurationPort = Omit<GPUCanvasConfiguration, 'device'>;
88
+ export type WebGpuCanvasContextPort = Pick<GPUCanvasContext, 'configure' | 'unconfigure' | 'getCurrentTexture'>;
89
+ export type GraphiteNativeSurfacePort = Surface;
90
+ export interface GraphiteResourceCacheStats {
91
+ readonly currentBudgetedBytes: number;
92
+ readonly currentPurgeableBytes: number;
93
+ readonly maxBudgetedBytes: number;
94
+ readonly contextCurrentBudgetedBytes: number;
95
+ readonly contextCurrentPurgeableBytes: number;
96
+ readonly contextMaxBudgetedBytes: number;
97
+ readonly recorderCurrentBudgetedBytes: number;
98
+ readonly recorderCurrentPurgeableBytes: number;
99
+ readonly recorderMaxBudgetedBytes: number;
100
+ readonly imageCacheMaxBytes: number;
101
+ }
102
+ export interface GraphiteResidencyBucket {
103
+ readonly type: string;
104
+ readonly label: string;
105
+ readonly count: number;
106
+ readonly bytes: number;
107
+ readonly bytesHeldByGpu: number;
108
+ readonly bytesHeldByClient: number;
109
+ readonly bytesHeldByBoth: number;
110
+ readonly bytesUnreferenced: number;
111
+ }
112
+ export interface GraphiteResidencyPool {
113
+ readonly buckets: readonly GraphiteResidencyBucket[];
114
+ readonly nonpurgeableBytes: number;
115
+ readonly purgeableBytes: number;
116
+ readonly budgetedBytes: number;
117
+ readonly maxBytes: number;
118
+ readonly nonpurgeableCount: number;
119
+ readonly purgeableCount: number;
120
+ }
121
+ export interface GraphiteResidencyReport {
122
+ readonly context: GraphiteResidencyPool;
123
+ readonly recorder: GraphiteResidencyPool;
124
+ }
125
+ export interface GraphiteNativeDeviceStats extends GraphiteResourceCacheStats {
126
+ readonly deviceIdentityChecks: number;
127
+ readonly queueIdentityChecks: number;
128
+ readonly recordingSnapshots: number;
129
+ readonly recorderSnapCpuMicros: number;
130
+ readonly recordingInsertions: number;
131
+ readonly recordingInsertionCpuMicros: number;
132
+ readonly recordingSubmissions: number;
133
+ readonly commandBufferFinishes: number;
134
+ readonly commandBufferFinishCpuMicros: number;
135
+ readonly queueSubmissions: number;
136
+ readonly queueSubmissionCpuMicros: number;
137
+ readonly encodedRenderPasses: number;
138
+ readonly encodedRenderPassCommands: number;
139
+ readonly encodedDrawCommands: number;
140
+ readonly submitFailures: number;
141
+ readonly cleanupRequests: number;
142
+ readonly cleanupFreedBytes: number;
143
+ readonly freeGpuResourcesCalls: number;
144
+ readonly imageCacheHits: number;
145
+ readonly imageCacheMisses: number;
146
+ readonly imageCacheUploads: number;
147
+ readonly imageCacheEvictions: number;
148
+ readonly imageCacheBytes: number;
149
+ readonly imageCacheEntries: number;
150
+ readonly shaderModuleCreations: number;
151
+ readonly renderPipelineCreations: number;
152
+ readonly shaderModuleCreationCpuMicros: number;
153
+ readonly renderPipelineCreationCpuMicros: number;
154
+ readonly pipelineCacheHits: number;
155
+ readonly pipelineCacheMisses: number;
156
+ readonly precompiledPipelineHits: number;
157
+ readonly capturedPipelines: number;
158
+ readonly unserializablePipelines: number;
159
+ readonly precompiledPipelinesLoaded: number;
160
+ readonly precompiledPipelinesRejected: number;
161
+ readonly asyncPipelineCompilesStarted: number;
162
+ readonly asyncPipelineCompilesFinished: number;
163
+ readonly asyncPipelineCompilesFailed: number;
164
+ readonly asyncPipelineCompilesPending: number;
165
+ readonly pendingPipelineFallbacks: number;
166
+ readonly pipelineCreationCpuMicros: number;
167
+ readonly submissionsCompleted: number;
168
+ readonly submissionGpuLatencyMicros: number;
169
+ readonly submissionGpuLatencyMaxMicros: number;
170
+ readonly submissionsRetired: number;
171
+ readonly submissionRetireLagMicros: number;
172
+ readonly submissionRetireLagMaxMicros: number;
173
+ readonly submissionGpuLatencyUnder1Ms: number;
174
+ readonly submissionGpuLatencyUnder2Ms: number;
175
+ readonly submissionGpuLatencyUnder4Ms: number;
176
+ readonly submissionGpuLatencyUnder8Ms: number;
177
+ readonly submissionGpuLatencyUnder17Ms: number;
178
+ readonly submissionGpuLatencyUnder33Ms: number;
179
+ readonly submissionGpuLatencyOver33Ms: number;
180
+ readonly submissionDepthSamples: number;
181
+ readonly submissionDepthSum: number;
182
+ readonly submissionDepthMax: number;
183
+ readonly submissionDepth0: number;
184
+ readonly submissionDepth1: number;
185
+ readonly submissionDepth2: number;
186
+ readonly submissionDepth3: number;
187
+ readonly submissionDepth4: number;
188
+ readonly submissionDepth5: number;
189
+ readonly submissionDepth6Plus: number;
190
+ readonly insertCommandBufferSetupCpuMicros: number;
191
+ readonly insertDeferredTargetSetupCpuMicros: number;
192
+ readonly insertLazyProxyInstantiationCpuMicros: number;
193
+ readonly insertAddCommandsCpuMicros: number;
194
+ readonly replayBeginRenderPassCalls: number;
195
+ readonly replayBeginRenderPassCpuMicros: number;
196
+ readonly replayPipelineLookupCalls: number;
197
+ readonly replayPipelineLookupCpuMicros: number;
198
+ readonly replayTextureBindGroupCalls: number;
199
+ readonly replayTextureBindGroupCpuMicros: number;
200
+ readonly replayUniformBindGroupCalls: number;
201
+ readonly replayUniformBindGroupCpuMicros: number;
202
+ readonly replayDynamicBufferWriteCalls: number;
203
+ readonly replayDynamicBufferWriteCpuMicros: number;
204
+ readonly replayInstrumentationEnabled: boolean;
205
+ readonly deviceLost: boolean;
206
+ readonly sameDeviceVerified: boolean;
207
+ readonly sameQueueVerified: boolean;
208
+ }
209
+ export interface GraphiteNativeOutstandingSubmissionPoll {
210
+ readonly outstandingDepth: number;
211
+ readonly submissionsCompleted: number;
212
+ readonly submissionsRetired: number;
213
+ readonly deviceLost: boolean;
214
+ }
215
+ export interface GraphiteNativeProfileMaxima {
216
+ readonly submissionGpuLatencyMaxMicros: number;
217
+ readonly submissionRetireLagMaxMicros: number;
218
+ readonly submissionDepthMax: number;
219
+ }
220
+ declare const graphiteNativeProfileCounterNames: ("asyncPipelineCompilesFailed" | "asyncPipelineCompilesFinished" | "asyncPipelineCompilesStarted" | "capturedPipelines" | "cleanupFreedBytes" | "cleanupRequests" | "commandBufferFinishCpuMicros" | "commandBufferFinishes" | "deviceIdentityChecks" | "encodedDrawCommands" | "encodedRenderPassCommands" | "encodedRenderPasses" | "freeGpuResourcesCalls" | "imageCacheEvictions" | "imageCacheHits" | "imageCacheMisses" | "imageCacheUploads" | "insertAddCommandsCpuMicros" | "insertCommandBufferSetupCpuMicros" | "insertDeferredTargetSetupCpuMicros" | "insertLazyProxyInstantiationCpuMicros" | "pipelineCacheHits" | "pipelineCacheMisses" | "pipelineCreationCpuMicros" | "precompiledPipelineHits" | "precompiledPipelinesLoaded" | "precompiledPipelinesRejected" | "queueIdentityChecks" | "queueSubmissionCpuMicros" | "queueSubmissions" | "recorderSnapCpuMicros" | "recordingInsertionCpuMicros" | "recordingInsertions" | "recordingSnapshots" | "recordingSubmissions" | "renderPipelineCreationCpuMicros" | "renderPipelineCreations" | "replayBeginRenderPassCalls" | "replayBeginRenderPassCpuMicros" | "replayDynamicBufferWriteCalls" | "replayDynamicBufferWriteCpuMicros" | "replayPipelineLookupCalls" | "replayPipelineLookupCpuMicros" | "replayTextureBindGroupCalls" | "replayTextureBindGroupCpuMicros" | "replayUniformBindGroupCalls" | "replayUniformBindGroupCpuMicros" | "shaderModuleCreationCpuMicros" | "shaderModuleCreations" | "submissionDepth0" | "submissionDepth1" | "submissionDepth2" | "submissionDepth3" | "submissionDepth4" | "submissionDepth5" | "submissionDepth6Plus" | "submissionDepthSamples" | "submissionDepthSum" | "submissionGpuLatencyMicros" | "submissionGpuLatencyOver33Ms" | "submissionGpuLatencyUnder17Ms" | "submissionGpuLatencyUnder1Ms" | "submissionGpuLatencyUnder2Ms" | "submissionGpuLatencyUnder33Ms" | "submissionGpuLatencyUnder4Ms" | "submissionGpuLatencyUnder8Ms" | "submissionRetireLagMicros" | "submissionsCompleted" | "submissionsRetired" | "submitFailures" | "unserializablePipelines")[];
221
+ export type GraphiteNativeProfileCounters = Pick<GraphiteNativeDeviceStats, (typeof graphiteNativeProfileCounterNames)[number]>;
222
+ export interface GraphiteNativeProfileBoundary {
223
+ readonly deviceIdentity: number;
224
+ readonly outstandingDepth: number;
225
+ readonly submissionsCompleted: number;
226
+ readonly submissionsRetired: number;
227
+ readonly pollCpuMs: number;
228
+ }
229
+ export interface GraphiteNativeProfileMeasurement {
230
+ readonly activeAtStop: true;
231
+ readonly sameDevice: true;
232
+ readonly window: {
233
+ readonly counters: GraphiteNativeProfileCounters;
234
+ readonly maxima: GraphiteNativeProfileMaxima & {
235
+ readonly polledOutstandingDepth: number;
236
+ };
237
+ readonly start: GraphiteNativeProfileBoundary;
238
+ readonly end: GraphiteNativeProfileBoundary;
239
+ readonly pollCpu: {
240
+ readonly count: number;
241
+ readonly totalMs: number;
242
+ readonly p50Ms: number;
243
+ readonly p95Ms: number;
244
+ readonly maxMs: number;
245
+ };
246
+ readonly pollDepthHistogram: {
247
+ readonly d0: number;
248
+ readonly d1: number;
249
+ readonly d2: number;
250
+ readonly d3: number;
251
+ readonly d4: number;
252
+ readonly d5: number;
253
+ readonly d6Plus: number;
254
+ };
255
+ readonly pollFailures: number;
256
+ readonly pollsWithCompletedUnretired: number;
257
+ readonly maxCompletedMinusRetired: number;
258
+ };
259
+ readonly lifetime: GraphiteNativeDeviceStats;
260
+ }
261
+ export interface GraphiteOutstandingSubmissionPoll {
262
+ readonly outstandingDepth: number;
263
+ readonly submissionsCompleted: number;
264
+ readonly submissionsRetired: number;
265
+ readonly cpuMs: number;
266
+ }
267
+ export { buildGraphiteNativeProfileReport };
268
+ export interface GraphiteRecordingSubmission {
269
+ readonly submitted: boolean;
270
+ readonly insertedRecordings: number;
271
+ readonly approximateMaskDraws: number;
272
+ }
273
+ export interface GraphiteNativeTextureSurfaceOptions {
274
+ readonly width: number;
275
+ readonly height: number;
276
+ readonly format: GPUTextureFormat;
277
+ readonly colorSpace: 'srgb';
278
+ readonly alphaType: 'premul';
279
+ readonly sampleCount: 1;
280
+ }
281
+ export interface GraphiteNativeDeviceContextPort {
282
+ submitRecording(): GraphiteRecordingSubmission;
283
+ setWholeMaskResampling(enabled: boolean): void;
284
+ getStats(): GraphiteNativeDeviceStats;
285
+ residencyReport(): GraphiteResidencyReport;
286
+ setReplayInstrumentationEnabled(enabled: boolean): void;
287
+ checkAsyncWorkCompletion(): boolean;
288
+ hasPendingPipelineCompiles(): boolean;
289
+ pollOutstandingSubmissionDepth(): GraphiteNativeOutstandingSubmissionPoll;
290
+ beginProfileMeasurement(): void;
291
+ finishProfileMeasurement(): GraphiteNativeProfileMaxima;
292
+ setResourceCacheMaxBytes(bytes: number): void;
293
+ performDeferredCleanup(ageMs: number): void;
294
+ freeGpuResources(): void;
295
+ isDeviceLost(): boolean;
296
+ capturePipelineBlobs(): Uint8Array;
297
+ precompilePipelines(data: Uint8Array): number;
298
+ warmPipelines(data: Uint8Array): number;
299
+ delete(): void;
300
+ }
301
+ export interface GraphiteCanvasKitApi extends SceneNativeBinding {
302
+ MakeGraphiteDeviceContext(device: GPUDevice, knownRuntimeEffects: readonly RuntimeEffect[]): GraphiteNativeDeviceContextPort | null;
303
+ MakeGPUTextureSurface(context: GraphiteNativeDeviceContextPort, texture: WebGpuTexturePort, format: GPUTextureFormat, width: number, height: number): Surface | null;
304
+ MakeGPUTextureImage(context: GraphiteNativeDeviceContextPort, texture: WebGpuTexturePort, format: GPUTextureFormat, width: number, height: number, opaque: boolean, onRelease?: () => void): SkImage | null;
305
+ }
306
+ export type GraphiteCanvasKitModule = CanvasKitRenderingApi & GraphiteCanvasKitApi;
307
+ export declare function requireGraphiteCanvasKitModule(value: unknown): GraphiteCanvasKitModule;
308
+ export type GraphiteTextureKind = 'backing' | 'presentation' | 'snapshot' | 'readback-source' | 'sample';
309
+ export interface GraphiteTextureIdentity {
310
+ readonly surfaceId: string;
311
+ readonly generation: number;
312
+ readonly textureEpoch: number;
313
+ }
314
+ export interface GraphiteOwnedTexture {
315
+ readonly texture: WebGpuTexturePort;
316
+ readonly kind: GraphiteTextureKind;
317
+ readonly identity: GraphiteTextureIdentity;
318
+ readonly metadata: GraphiteTextureMetadata;
319
+ }
320
+ export interface GraphiteTextureMetadata {
321
+ readonly width: number;
322
+ readonly height: number;
323
+ readonly depthOrArrayLayers: number;
324
+ readonly format: GPUTextureFormat;
325
+ readonly usage: GPUTextureUsageFlags;
326
+ readonly sampleCount: number;
327
+ }
328
+ export interface GraphiteOwnedBuffer {
329
+ readonly buffer: WebGpuBufferPort;
330
+ readonly identity: GraphiteTextureIdentity;
331
+ }
332
+ export interface GraphiteTextureSurface {
333
+ readonly texture: GraphiteOwnedTexture;
334
+ readonly surface: GraphiteNativeSurfacePort;
335
+ readonly byteSize: number;
336
+ dispose(): void;
337
+ }
338
+ export interface GraphiteDeviceContextStats {
339
+ readonly state: 'active' | 'lost' | 'disposed';
340
+ readonly pipelineCompiler: PipelineCompilerStats;
341
+ readonly texturesCreated: number;
342
+ readonly presentationTexturesAcquired: number;
343
+ readonly buffersCreated: number;
344
+ readonly textureSurfacesCreated: number;
345
+ readonly textureSurfaceCreateFailures: number;
346
+ readonly recordingSubmitCalls: number;
347
+ readonly recordingSubmissions: number;
348
+ readonly insertedRecordings: number;
349
+ readonly budgetChanges: number;
350
+ readonly budgetMaintenanceRequests: number;
351
+ readonly freeGpuResourceRequests: number;
352
+ readonly uncapturedErrors: number;
353
+ readonly lastUncapturedError: string | null;
354
+ readonly cache: GraphiteResourceCacheStats;
355
+ readonly native: GraphiteNativeDeviceStats;
356
+ readonly nativeProfile: {
357
+ readonly active: boolean;
358
+ readonly completed: GraphiteNativeProfileMeasurement | null;
359
+ };
360
+ }
361
+ export interface WebGpuTextureUsageContract {
362
+ readonly copySource: number;
363
+ readonly copyDestination: number;
364
+ }
365
+ export interface GraphiteDeviceContextOptions {
366
+ readonly device: WebGpuDevicePort;
367
+ readonly programDevice: GPUDevice;
368
+ readonly pipelineCompiler: GraphitePipelineCompiler;
369
+ readonly nativeContext: GraphiteNativeDeviceContextPort;
370
+ readonly makeTextureSurface: (options: GraphiteNativeTextureSurfaceOptions & {
371
+ readonly texture: WebGpuTexturePort;
372
+ }) => Surface | null;
373
+ readonly textureUsage: WebGpuTextureUsageContract;
374
+ }
375
+ export declare class GraphiteDeviceContext {
376
+ #private;
377
+ readonly device: WebGpuDevicePort;
378
+ readonly programDevice: GPUDevice;
379
+ readonly nativeContext: GraphiteNativeDeviceContextPort;
380
+ readonly textureUsage: WebGpuTextureUsageContract;
381
+ constructor(options: GraphiteDeviceContextOptions);
382
+ get state(): 'active' | 'lost' | 'disposed';
383
+ assertActive(): void;
384
+ configurePresentationCanvas(canvasContext: WebGpuCanvasContextPort, configuration: WebGpuCanvasConfigurationPort): void;
385
+ acquirePresentationTexture(canvasContext: WebGpuCanvasContextPort, identity: GraphiteTextureIdentity, metadata: GraphiteTextureMetadata): GraphiteOwnedTexture;
386
+ currentPresentationTexture(canvasContext: WebGpuCanvasContextPort): GPUTexture;
387
+ createTexture(descriptor: WebGpuTextureDescriptorPort, kind: Exclude<GraphiteTextureKind, 'presentation'>, identity: GraphiteTextureIdentity): GraphiteOwnedTexture;
388
+ createBuffer(descriptor: WebGpuBufferDescriptorPort, identity: GraphiteTextureIdentity): GraphiteOwnedBuffer;
389
+ createTextureSurface(options: {
390
+ readonly kind?: 'snapshot';
391
+ readonly descriptor: WebGpuTextureDescriptorPort;
392
+ readonly identity: GraphiteTextureIdentity;
393
+ readonly width: number;
394
+ readonly height: number;
395
+ readonly format: GPUTextureFormat;
396
+ readonly byteSize: number;
397
+ }): GraphiteTextureSurface;
398
+ createPresentationSurface(texture: GraphiteOwnedTexture): GraphiteNativeSurfacePort;
399
+ assertOwnsTexture(texture: GraphiteOwnedTexture): void;
400
+ assertOwnsBuffer(buffer: GraphiteOwnedBuffer): void;
401
+ submitRecording(): GraphiteRecordingSubmission;
402
+ setResourceCacheMaxBytes(bytes: number): void;
403
+ enforceResourceCacheBudget(): void;
404
+ performDeferredCleanup(ageMs: number): void;
405
+ beginProfileMeasurement(): void;
406
+ pollOutstandingSubmissionDepth(): GraphiteOutstandingSubmissionPoll;
407
+ finishProfileMeasurement(): GraphiteNativeProfileMeasurement;
408
+ waitForSubmittedQueueCompletion(): Promise<boolean>;
409
+ displayPipelinesSettled(): Promise<void> | null;
410
+ pipelineCompilesPending(): boolean;
411
+ waitForPipelineCompiles(): Promise<boolean>;
412
+ waitForSubmittedWorkCompletion(): Promise<boolean>;
413
+ freeGpuResources(): void;
414
+ residencyReport(): GraphiteResidencyReport;
415
+ setReplayInstrumentationEnabled(enabled: boolean): void;
416
+ setWholeMaskResampling(enabled: boolean): void;
417
+ capturePipelineBlobs(): Uint8Array;
418
+ precompilePipelines(data: Uint8Array, priority?: 'foreground' | 'background'): Promise<GraphitePipelinePrecompileResult>;
419
+ releasePipelineCompiler(): void;
420
+ warmPipelines(data: Uint8Array): Promise<{
421
+ readonly warmed: number;
422
+ readonly rejected: number;
423
+ readonly reason?: string;
424
+ }>;
425
+ getStats(): GraphiteDeviceContextStats;
426
+ dispose(): void;
427
+ }
428
+ export interface CreateGraphiteDeviceContextOptions {
429
+ readonly canvasKit: GraphiteCanvasKitApi;
430
+ readonly device: GPUDevice;
431
+ readonly knownRuntimeEffects: readonly RuntimeEffect[];
432
+ readonly textureUsage: WebGpuTextureUsageContract;
433
+ }
434
+ export declare function createGraphiteDeviceContext(options: CreateGraphiteDeviceContextOptions): GraphiteDeviceContext;
@@ -0,0 +1,12 @@
1
+ import { configureNativeResources, type NativeResourceSuppliers } from '../engine/native-resources.d.ts';
2
+ import type { CanvasKit, CanvasKitInitOptions } from 'canvaskit-wasm';
3
+ export interface SharedCanvasKitInitOptions {
4
+ locateFile(file: string): string;
5
+ canvasKitWasmModule: WebAssembly.Module;
6
+ onWasmInstance?: (instance: WebAssembly.Instance) => void;
7
+ nativeResources: NativeResourceSuppliers;
8
+ reportSite?: boolean;
9
+ }
10
+ export type CanvasKitInitializer<T> = (opts: CanvasKitInitOptions) => Promise<T>;
11
+ export declare function isCanvasKitRuntime(value: unknown): value is CanvasKit;
12
+ export declare function initializeCanvasKit<T extends Pick<CanvasKit, '_peachSetIosTextMask' | '_peach_site_policy' | '_peach_site_unlisted' | 'Malloc' | 'Free'> & Parameters<typeof configureNativeResources>[0]>(initialize: CanvasKitInitializer<T>, opts: SharedCanvasKitInitOptions): Promise<T>;
@@ -0,0 +1,31 @@
1
+ export type CompositorBackend = 'ganesh' | 'graphite';
2
+ export type CompositorBackendOverride = CompositorBackend | null;
3
+ export interface CompositorBackendAdmission {
4
+ readonly backend: CompositorBackend;
5
+ readonly requestedOverride: CompositorBackendOverride;
6
+ readonly webGpuApiAvailable: boolean;
7
+ readonly adapterAvailable: boolean | null;
8
+ readonly reason: 'adapter-available' | 'adapter-error' | 'adapter-unavailable' | 'forced-ganesh' | 'forced-graphite' | 'native-host-graphite' | 'webgpu-unavailable';
9
+ readonly adapterError?: string;
10
+ }
11
+ export type CompositorDeviceProbe = {
12
+ readonly webGpu: false;
13
+ } | {
14
+ readonly webGpu: true;
15
+ readonly device: boolean;
16
+ readonly error?: string;
17
+ };
18
+ export interface CompositorBackendEnvironment {
19
+ readonly webGpuApiAvailable: boolean;
20
+ readonly nativeHost: boolean;
21
+ readonly probeDevice: () => Promise<CompositorDeviceProbe>;
22
+ readonly search: string;
23
+ }
24
+
25
+ export declare function readCompositorBackendOverride(search: string): CompositorBackendOverride;
26
+ export declare function selectCompositorBackend(environment: CompositorBackendEnvironment): Promise<CompositorBackendAdmission>;
27
+ export declare function renderCurrentCompositorBackendAdmissionExpression(): string;
28
+ export declare function getCurrentCompositorBackendAdmission(): Promise<CompositorBackendAdmission>;
29
+ export declare function selectCurrentCompositorBackend(): Promise<CompositorBackend>;
30
+ export declare function admitSelectedCompositorWorkerBackend(backend: CompositorBackend): Promise<void>;
31
+ export declare function takeAdmittedCompositorWorkerAdapter(): GPUAdapter;