@spacefast/common 0.0.24 → 0.2.1

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 (320) hide show
  1. package/brand-assets/LICENSE-Haskoy.txt +93 -0
  2. package/brand-assets/haskoy-latin-variable.woff2 +0 -0
  3. package/brand-assets/spacefast-favicon.svg +4 -4
  4. package/brand-assets/spacefast-sf-full-bleed.svg +3 -3
  5. package/brand-assets/spacefast-wordmark.svg +2 -4
  6. package/dist/agents/connect-targets.d.ts +6 -146
  7. package/dist/agents/connect-targets.js +63 -295
  8. package/dist/agents/private-key-oauth.d.ts +31 -2
  9. package/dist/agents/private-key-oauth.js +166 -92
  10. package/dist/agents/registry/core.d.ts +292 -0
  11. package/dist/agents/registry/core.js +1388 -0
  12. package/dist/agents/registry/deeplink-probes.d.ts +23 -0
  13. package/dist/agents/registry/deeplink-probes.js +18 -0
  14. package/dist/agents/registry/node.d.ts +56 -0
  15. package/dist/agents/registry/node.js +339 -0
  16. package/dist/brand-assets-build.js +3 -6
  17. package/dist/brand-assets.d.ts +5 -15
  18. package/dist/brand-assets.js +12 -14
  19. package/dist/brand.d.ts +17 -0
  20. package/dist/brand.js +24 -4
  21. package/dist/config/domains.d.ts +79 -12
  22. package/dist/config/domains.js +128 -29
  23. package/dist/config/index.js +1 -2
  24. package/dist/contracts/abuse.js +9 -24
  25. package/dist/contracts/access-profiles.d.ts +86 -0
  26. package/dist/contracts/access-profiles.js +89 -0
  27. package/dist/contracts/access.d.ts +24 -30
  28. package/dist/contracts/access.js +33 -64
  29. package/dist/contracts/activity.d.ts +18 -1
  30. package/dist/contracts/activity.js +72 -26
  31. package/dist/contracts/analytics.js +8 -10
  32. package/dist/contracts/api-keys.d.ts +77 -52
  33. package/dist/contracts/api-keys.js +44 -24
  34. package/dist/contracts/application-journal.d.ts +216 -0
  35. package/dist/contracts/application-journal.js +167 -0
  36. package/dist/contracts/auth.d.ts +90 -17
  37. package/dist/contracts/auth.js +86 -17
  38. package/dist/contracts/beta.d.ts +9 -4
  39. package/dist/contracts/beta.js +20 -16
  40. package/dist/contracts/billing.d.ts +2 -1
  41. package/dist/contracts/billing.js +37 -11
  42. package/dist/contracts/bootstrap.d.ts +791 -0
  43. package/dist/contracts/bootstrap.js +51 -0
  44. package/dist/contracts/builds.d.ts +209 -18
  45. package/dist/contracts/builds.js +93 -27
  46. package/dist/contracts/channels.d.ts +43 -0
  47. package/dist/contracts/channels.js +25 -9
  48. package/dist/contracts/cli.d.ts +7 -0
  49. package/dist/contracts/cli.js +6 -0
  50. package/dist/contracts/collab-public.d.ts +1 -1
  51. package/dist/contracts/collab-public.js +5 -8
  52. package/dist/contracts/comments.d.ts +44 -34
  53. package/dist/contracts/comments.js +107 -77
  54. package/dist/contracts/commerce.d.ts +165 -0
  55. package/dist/contracts/commerce.js +146 -0
  56. package/dist/contracts/common.d.ts +3 -3
  57. package/dist/contracts/common.js +20 -31
  58. package/dist/contracts/content-contract-verification.d.ts +521 -0
  59. package/dist/contracts/content-contract-verification.js +320 -0
  60. package/dist/contracts/content-platform-fixture.d.ts +1278 -0
  61. package/dist/contracts/content-platform-fixture.js +44 -0
  62. package/dist/contracts/content-program.d.ts +994 -0
  63. package/dist/contracts/content-program.js +658 -0
  64. package/dist/contracts/content-sync.d.ts +290 -0
  65. package/dist/contracts/content-sync.js +167 -0
  66. package/dist/contracts/content.d.ts +432 -0
  67. package/dist/contracts/content.js +303 -0
  68. package/dist/contracts/continuation.d.ts +17 -1
  69. package/dist/contracts/continuation.js +23 -23
  70. package/dist/contracts/countries.js +3 -4
  71. package/dist/contracts/crons.d.ts +52 -0
  72. package/dist/contracts/crons.js +60 -0
  73. package/dist/contracts/dashboard-prefs.d.ts +56 -0
  74. package/dist/contracts/dashboard-prefs.js +51 -0
  75. package/dist/contracts/device-auth.d.ts +234 -37
  76. package/dist/contracts/device-auth.js +267 -53
  77. package/dist/contracts/docs.d.ts +1 -5
  78. package/dist/contracts/docs.js +7 -15
  79. package/dist/contracts/domains.d.ts +501 -93
  80. package/dist/contracts/domains.js +193 -55
  81. package/dist/contracts/email-preferences.d.ts +3 -3
  82. package/dist/contracts/email-preferences.js +6 -7
  83. package/dist/contracts/enums.d.ts +27 -26
  84. package/dist/contracts/enums.js +68 -61
  85. package/dist/contracts/error-code-meta.d.ts +283 -7
  86. package/dist/contracts/error-code-meta.js +97 -5
  87. package/dist/contracts/error-codes.d.ts +5 -5
  88. package/dist/contracts/error-codes.js +82 -17
  89. package/dist/contracts/events.d.ts +100 -20
  90. package/dist/contracts/events.js +107 -20
  91. package/dist/contracts/execution.d.ts +48 -64
  92. package/dist/contracts/execution.js +52 -62
  93. package/dist/contracts/feature-lifecycle.d.ts +73 -27
  94. package/dist/contracts/feature-lifecycle.js +86 -26
  95. package/dist/contracts/features.d.ts +68 -19
  96. package/dist/contracts/features.js +42 -41
  97. package/dist/contracts/fixtures/content-platform-v1.json +1108 -0
  98. package/dist/contracts/frame-session.d.ts +192 -0
  99. package/dist/contracts/frame-session.js +164 -0
  100. package/dist/contracts/functions.d.ts +338 -164
  101. package/dist/contracts/functions.js +367 -198
  102. package/dist/contracts/git.d.ts +27 -33
  103. package/dist/contracts/git.js +10 -11
  104. package/dist/contracts/grant-copy.d.ts +43 -0
  105. package/dist/contracts/grant-copy.js +44 -0
  106. package/dist/contracts/grants.d.ts +62 -54
  107. package/dist/contracts/grants.js +124 -23
  108. package/dist/contracts/ids.d.ts +4 -1
  109. package/dist/contracts/ids.js +6 -3
  110. package/dist/contracts/internal.d.ts +8 -18
  111. package/dist/contracts/internal.js +13 -14
  112. package/dist/contracts/mcp.d.ts +28 -0
  113. package/dist/contracts/mcp.js +28 -0
  114. package/dist/contracts/me.d.ts +6 -1
  115. package/dist/contracts/me.js +12 -6
  116. package/dist/contracts/notifications.d.ts +27 -29
  117. package/dist/contracts/notifications.js +9 -4
  118. package/dist/contracts/oauth-resources.d.ts +112 -10
  119. package/dist/contracts/oauth-resources.js +116 -11
  120. package/dist/contracts/oauth-scope-actions.d.ts +90 -0
  121. package/dist/contracts/oauth-scope-actions.js +126 -0
  122. package/dist/contracts/operations.d.ts +27 -4
  123. package/dist/contracts/operations.js +12 -6
  124. package/dist/contracts/pages.d.ts +31 -7
  125. package/dist/contracts/pages.js +22 -5
  126. package/dist/contracts/partner-notifications.d.ts +3 -0
  127. package/dist/contracts/partner-notifications.js +65 -0
  128. package/dist/contracts/{platform.d.ts → partner.d.ts} +29 -42
  129. package/dist/contracts/{platform.js → partner.js} +27 -40
  130. package/dist/contracts/plan-policy.js +1 -1
  131. package/dist/contracts/principal-assertion.d.ts +43 -0
  132. package/dist/contracts/principal-assertion.js +67 -0
  133. package/dist/contracts/principals.d.ts +73 -0
  134. package/dist/contracts/principals.js +59 -0
  135. package/dist/contracts/privacy.d.ts +11 -0
  136. package/dist/contracts/privacy.js +17 -0
  137. package/dist/contracts/problem-document.js +3 -4
  138. package/dist/contracts/publish-archive.d.ts +269 -161
  139. package/dist/contracts/publish-archive.js +11 -1
  140. package/dist/contracts/push-new.d.ts +8 -8
  141. package/dist/contracts/quotas.js +5 -5
  142. package/dist/contracts/realtime.d.ts +52 -0
  143. package/dist/contracts/realtime.js +54 -0
  144. package/dist/contracts/repository-connections.d.ts +44 -31
  145. package/dist/contracts/repository-connections.js +17 -5
  146. package/dist/contracts/resources.d.ts +105 -14
  147. package/dist/contracts/resources.js +150 -26
  148. package/dist/contracts/route-inventory.d.ts +358 -0
  149. package/dist/contracts/route-inventory.js +141 -0
  150. package/dist/contracts/runtime-api.d.ts +206 -82
  151. package/dist/contracts/runtime-api.js +131 -70
  152. package/dist/contracts/runtime-app.d.ts +13 -23
  153. package/dist/contracts/runtime-app.js +39 -24
  154. package/dist/contracts/runtime-components.d.ts +143 -0
  155. package/dist/contracts/runtime-components.js +199 -0
  156. package/dist/contracts/runtime-db.d.ts +49 -23
  157. package/dist/contracts/runtime-db.js +87 -22
  158. package/dist/contracts/runtime-purge.d.ts +8 -0
  159. package/dist/contracts/runtime-purge.js +5 -0
  160. package/dist/contracts/runtime-services.d.ts +43 -75
  161. package/dist/contracts/runtime-services.js +29 -49
  162. package/dist/contracts/runtime-storage.d.ts +15 -14
  163. package/dist/contracts/runtime-storage.js +30 -14
  164. package/dist/contracts/sf-config-v1.d.ts +48 -14
  165. package/dist/contracts/slugs.js +13 -4
  166. package/dist/contracts/space-config.d.ts +283 -19
  167. package/dist/contracts/space-config.js +430 -80
  168. package/dist/contracts/spaces.d.ts +376 -290
  169. package/dist/contracts/spaces.js +200 -135
  170. package/dist/contracts/superadmin-activity.d.ts +3 -43
  171. package/dist/contracts/superadmin-activity.js +6 -30
  172. package/dist/contracts/superadmin-emails.d.ts +1 -0
  173. package/dist/contracts/superadmin-emails.js +17 -1
  174. package/dist/contracts/superadmin-runtime.d.ts +199 -0
  175. package/dist/contracts/superadmin-runtime.js +141 -0
  176. package/dist/contracts/superadmin-search.d.ts +22 -2
  177. package/dist/contracts/superadmin-search.js +14 -6
  178. package/dist/contracts/superadmin-spaces.d.ts +438 -189
  179. package/dist/contracts/superadmin-spaces.js +131 -25
  180. package/dist/contracts/superadmin-teams.d.ts +5 -2
  181. package/dist/contracts/superadmin-teams.js +1 -2
  182. package/dist/contracts/superadmin-tenants.d.ts +627 -12
  183. package/dist/contracts/superadmin-tenants.js +32 -13
  184. package/dist/contracts/superadmin.d.ts +232 -37
  185. package/dist/contracts/superadmin.js +106 -22
  186. package/dist/contracts/tags.d.ts +85 -58
  187. package/dist/contracts/tags.js +47 -37
  188. package/dist/contracts/teams.d.ts +86 -26
  189. package/dist/contracts/teams.js +90 -31
  190. package/dist/contracts/tenants.d.ts +135 -0
  191. package/dist/contracts/tenants.js +120 -0
  192. package/dist/contracts/test-triggers.d.ts +70 -0
  193. package/dist/contracts/test-triggers.js +116 -0
  194. package/dist/contracts/theme-json.js +3 -8
  195. package/dist/contracts/transfers.d.ts +1 -0
  196. package/dist/contracts/transfers.js +3 -2
  197. package/dist/contracts/usage.d.ts +209 -0
  198. package/dist/contracts/usage.js +124 -12
  199. package/dist/contracts/variables.d.ts +2 -2
  200. package/dist/contracts/variables.js +9 -13
  201. package/dist/contracts/webhooks.d.ts +13 -5
  202. package/dist/contracts/webhooks.js +3 -1
  203. package/dist/contracts/zero.d.ts +72 -81
  204. package/dist/contracts/zero.js +80 -78
  205. package/dist/dashboard-paths/index.d.ts +24 -21
  206. package/dist/dashboard-paths/index.js +35 -47
  207. package/dist/dashboard-paths/route-reservations.generated.d.ts +2 -0
  208. package/dist/dashboard-paths/route-reservations.generated.js +36 -0
  209. package/dist/docs/agent-arrival.d.ts +92 -0
  210. package/dist/docs/agent-arrival.js +227 -0
  211. package/dist/docs/agent-output-policy.d.ts +6 -0
  212. package/dist/docs/agent-output-policy.js +22 -0
  213. package/dist/docs/agent-prose.d.ts +12 -18
  214. package/dist/docs/agent-prose.js +73 -51
  215. package/dist/docs/agent-setup.d.ts +72 -41
  216. package/dist/docs/agent-setup.js +339 -436
  217. package/dist/docs/catalog.d.ts +153 -95
  218. package/dist/docs/catalog.js +163 -48
  219. package/dist/docs/error-docs.d.ts +2098 -1
  220. package/dist/docs/error-docs.js +421 -144
  221. package/dist/docs/index-build.d.ts +0 -1
  222. package/dist/docs/index-build.js +2 -3
  223. package/dist/docs/page-context-prompt.d.ts +77 -0
  224. package/dist/docs/page-context-prompt.js +131 -0
  225. package/dist/docs/reference-urls.d.ts +46 -0
  226. package/dist/docs/reference-urls.js +79 -0
  227. package/dist/docs/search.d.ts +6 -8
  228. package/dist/docs/search.js +10 -13
  229. package/dist/docs/skill-distribution.d.ts +4 -1
  230. package/dist/docs/skill-distribution.js +10 -5
  231. package/dist/docs/skills.d.ts +120 -120
  232. package/dist/docs/skills.js +121 -73
  233. package/dist/docs/start-prompts.d.ts +45 -0
  234. package/dist/docs/start-prompts.js +62 -0
  235. package/dist/domain-exploration.js +9 -13
  236. package/dist/og-template.d.ts +56 -0
  237. package/dist/og-template.js +56 -0
  238. package/dist/slug-policy/index.js +5 -11
  239. package/dist/test-helpers/fetch-stub.js +1 -0
  240. package/dist/utils/browser-credential.d.ts +13 -6
  241. package/dist/utils/browser-credential.js +14 -7
  242. package/dist/utils/build-settings.d.ts +21 -1
  243. package/dist/utils/build-settings.js +133 -15
  244. package/dist/utils/canonical-json.d.ts +3 -5
  245. package/dist/utils/canonical-json.js +4 -5
  246. package/dist/utils/cast-transport.d.ts +5 -17
  247. package/dist/utils/cast-transport.js +6 -19
  248. package/dist/utils/claim-token.js +1 -2
  249. package/dist/utils/comment-avatars.js +4 -6
  250. package/dist/utils/concurrency.js +3 -3
  251. package/dist/utils/content-type.d.ts +7 -6
  252. package/dist/utils/content-type.js +73 -51
  253. package/dist/utils/credential-policy.d.ts +50 -6
  254. package/dist/utils/credential-policy.js +126 -59
  255. package/dist/utils/dns-instructions.js +9 -9
  256. package/dist/utils/egress-policy.fixtures.json +1 -1
  257. package/dist/utils/error-code.js +1 -0
  258. package/dist/utils/generate-space-name.d.ts +3 -8
  259. package/dist/utils/generate-space-name.js +3 -8
  260. package/dist/utils/grant-decision.fixtures.json +2 -2
  261. package/dist/utils/grants.d.ts +0 -1
  262. package/dist/utils/grants.js +7 -8
  263. package/dist/utils/gravatar.d.ts +2 -4
  264. package/dist/utils/gravatar.js +6 -12
  265. package/dist/utils/id-hints.js +14 -23
  266. package/dist/utils/idempotency.d.ts +3 -3
  267. package/dist/utils/idempotency.js +6 -7
  268. package/dist/utils/local-space-state.d.ts +23 -26
  269. package/dist/utils/local-space-state.js +46 -46
  270. package/dist/utils/oauth-signed-query.d.ts +3 -5
  271. package/dist/utils/oauth-signed-query.js +6 -9
  272. package/dist/utils/one-shot-replay.d.ts +7 -6
  273. package/dist/utils/one-shot-replay.js +3 -5
  274. package/dist/utils/page-colors.d.ts +15 -19
  275. package/dist/utils/page-colors.js +23 -45
  276. package/dist/utils/page-fonts.d.ts +1 -1
  277. package/dist/utils/page-fonts.js +8 -20
  278. package/dist/utils/page-preview.d.ts +0 -1
  279. package/dist/utils/page-preview.js +0 -1
  280. package/dist/utils/pages.d.ts +33 -3
  281. package/dist/utils/pages.js +83 -30
  282. package/dist/utils/privacy-regions.d.ts +19 -0
  283. package/dist/utils/privacy-regions.js +91 -0
  284. package/dist/utils/publish-form-data.d.ts +4 -5
  285. package/dist/utils/publish-form-data.js +2 -3
  286. package/dist/utils/publish-policy.d.ts +11 -17
  287. package/dist/utils/publish-policy.fixtures.json +11 -5
  288. package/dist/utils/publish-policy.js +65 -110
  289. package/dist/utils/query-client.d.ts +2 -0
  290. package/dist/utils/query-client.js +10 -1
  291. package/dist/utils/runtime-paths.d.ts +4 -4
  292. package/dist/utils/runtime-paths.js +6 -8
  293. package/dist/utils/runtime-upload.d.ts +9 -0
  294. package/dist/utils/runtime-upload.js +12 -0
  295. package/dist/utils/secure-local-file.d.ts +3 -3
  296. package/dist/utils/secure-local-file.js +23 -40
  297. package/dist/utils/space-config.d.ts +12 -15
  298. package/dist/utils/space-config.js +13 -16
  299. package/dist/utils/static-runtime-policy.d.ts +10 -7
  300. package/dist/utils/static-runtime-policy.fixtures.json +38 -41
  301. package/dist/utils/static-runtime-policy.generated.d.ts +16 -0
  302. package/dist/utils/static-runtime-policy.generated.js +70 -0
  303. package/dist/utils/static-runtime-policy.js +31 -132
  304. package/dist/utils/storage-policy.js +1 -2
  305. package/dist/utils/upload-session.d.ts +4 -1
  306. package/dist/utils/upload-session.js +41 -19
  307. package/dist/utils/version-path.js +11 -19
  308. package/dist/utils/wpcom-auth-redirects.d.ts +5 -14
  309. package/dist/utils/wpcom-auth-redirects.js +1 -4
  310. package/dist/vocabulary.d.ts +13 -13
  311. package/dist/vocabulary.js +52 -27
  312. package/package.json +15 -18
  313. package/dist/agents/client-registry.d.ts +0 -22
  314. package/dist/agents/client-registry.js +0 -41
  315. package/dist/docs/agent-handoff-document.d.ts +0 -15
  316. package/dist/docs/agent-handoff-document.js +0 -180
  317. package/dist/docs/agent-solutions.d.ts +0 -110
  318. package/dist/docs/agent-solutions.js +0 -183
  319. package/dist/utils/query-keys.d.ts +0 -84
  320. package/dist/utils/query-keys.js +0 -108
@@ -3,10 +3,9 @@ export declare const SPACE_CONFIG_CANONICAL_FILE = "sf.jsonc";
3
3
  export declare const SPACE_CONFIG_ALIAS_FILES: readonly ["spacefast.jsonc", "spacefast.json", "sf.json", ".sf/sf.json", ".sf/config.jsonc", ".sf/config.json"];
4
4
  export declare const SPACE_CONFIG_ACCEPTED_FILES: readonly ["sf.jsonc", "spacefast.jsonc", "spacefast.json", "sf.json", ".sf/sf.json", ".sf/config.jsonc", ".sf/config.json"];
5
5
  /**
6
- * Accepted config filenames in read precedence order, highest first. Kept in
7
- * step with the finalizer's `CONFIG_PRECEDENCE` (crates/stattic-runtime-core
8
- * protocol.rs) the runtime compile is the selection authority, and a local
9
- * read choosing a different file than the publish serves is a split brain.
6
+ * Accepted config filenames in read precedence order, highest first. Must stay
7
+ * in step with the finalizer's `CONFIG_ACCEPTED_FILES`
8
+ * (crates/stattic-runtime-core protocol.rs), which is the selection authority.
10
9
  */
11
10
  export declare const SPACE_CONFIG_PRECEDENCE: readonly ["sf.jsonc", "spacefast.jsonc", "spacefast.json", "sf.json", ".sf/sf.json", ".sf/config.jsonc", ".sf/config.json"];
12
11
  export declare const SPACE_CONFIG_PRIVATE_FILES: readonly ["sf.jsonc", "spacefast.jsonc", "spacefast.json", "sf.json", ".sf/sf.json", ".sf/config.jsonc", ".sf/config.json"];
@@ -35,6 +34,42 @@ export declare const SPACE_CONFIG_CAPS: {
35
34
  readonly themeNameChars: 120;
36
35
  /** Max top-level `name` (space display name) length. Matches the stored column. */
37
36
  readonly nameChars: 255;
37
+ /** Max `crons` entries. One provider crontab slot each, so the cap is small and hard. */
38
+ readonly crons: 8;
39
+ /** Max `crons[].path` length. */
40
+ readonly cronPathChars: 512;
41
+ /** Max `system.presentation.name` display-name length. */
42
+ readonly systemNameChars: 255;
43
+ /** Max length of any https URL or origin in the `system` manifest. */
44
+ readonly systemUrlChars: 2048;
45
+ /** Max `system.hostnames.apex` length (a DNS name never exceeds 253). */
46
+ readonly systemHostnameChars: 253;
47
+ /** Max `system.presentation.contacts` entries. */
48
+ readonly systemContacts: 32;
49
+ /** Max length of a `system.presentation.contacts` key. */
50
+ readonly systemContactKeyChars: 64;
51
+ /** Max length of a `system.presentation.contacts` value. */
52
+ readonly systemContactValueChars: 2048;
53
+ /** Max `system.api.allowedOrigins` entries. */
54
+ readonly systemApiAllowedOrigins: 32;
55
+ /** Max `system.tokenIssuers` entries. */
56
+ readonly systemTokenIssuers: 16;
57
+ /** Max `system.tokenIssuers[].issuer` length. */
58
+ readonly systemIssuerChars: 512;
59
+ /** Max `system.tokenIssuers[].keys` entries. */
60
+ readonly systemIssuerKeys: 16;
61
+ /** Max `system.tokenIssuers[].keys[].kid` length. */
62
+ readonly systemKeyIdChars: 64;
63
+ /** Exact raw Ed25519 public-key length after base64url encoding. */
64
+ readonly systemPublicKeyChars: 43;
65
+ /** Max `system.tokenIssuers[].proof` length. */
66
+ readonly systemProofChars: 4096;
67
+ /** Max `system.subscriptions` entries. */
68
+ readonly systemSubscriptions: 32;
69
+ /** Max `system.subscriptions[].events` entries. */
70
+ readonly systemSubscriptionEvents: 64;
71
+ /** Max length of a `system.subscriptions[].events` name. */
72
+ readonly systemEventChars: 128;
38
73
  };
39
74
  /** Published JSON Schema URL for `sf.jsonc` ($schema autocomplete). */
40
75
  export declare const SPACE_CONFIG_SCHEMA_URL: string;
@@ -71,7 +106,6 @@ export declare const wordpressDataSourceSchema: z.ZodObject<{
71
106
  kind: z.ZodLiteral<"wordpress">;
72
107
  url: z.ZodString;
73
108
  }, z.core.$strict>;
74
- export type WordPressDataSource = z.infer<typeof wordpressDataSourceSchema>;
75
109
  export declare const spaceDataSourcesSchema: z.ZodPipe<z.ZodUnknown, z.ZodRecord<z.ZodString, z.ZodObject<{
76
110
  kind: z.ZodLiteral<"wordpress">;
77
111
  url: z.ZodString;
@@ -166,14 +200,13 @@ export declare const spaceConfigFileAccessSchema: z.ZodUnion<readonly [z.ZodPipe
166
200
  }, "public">>, z.ZodObject<{
167
201
  public: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
168
202
  }, z.core.$strict>]>;
169
- export type SpaceConfigFileAccess = z.infer<typeof spaceConfigFileAccessSchema>;
170
203
  /**
171
204
  * Zero: a transactional app with its own database.
172
205
  *
173
- * Both entries are required because Zero is never inferred. A runtime that owns
174
- * a database must not spring into existence from a directory shape, so the only
175
- * way to get one is to say so — and once said, a server or client that cannot
176
- * be resolved fails the publish rather than degrading to static files.
206
+ * Both entries are required because Zero is never inferred: a runtime that owns
207
+ * a database must not spring into existence from a directory shape. Once
208
+ * declared, a server or client that cannot be resolved fails the publish rather
209
+ * than degrading to static files.
177
210
  */
178
211
  export declare const spaceRuntimeZeroSchema: z.ZodObject<{
179
212
  kind: z.ZodLiteral<"zero">;
@@ -184,24 +217,23 @@ export declare const spaceRuntimeZeroSchema: z.ZodObject<{
184
217
  * Functions: the worker `sf publish` compiles.
185
218
  *
186
219
  * Every field beyond `kind` is optional because the normal case is detection: a
187
- * project with `handler.ts` or an OpenNext build needs no configuration at all.
188
- * These exist for the layouts detection cannot guess — a worker somewhere
189
- * unusual, or a compatibility date the author wants pinned rather than
190
- * defaulted.
220
+ * project with `handler.ts` or an OpenNext build needs no configuration. These
221
+ * exist for the layouts detection cannot guess.
191
222
  */
192
223
  export declare const spaceRuntimeFunctionsSchema: z.ZodObject<{
193
224
  kind: z.ZodLiteral<"functions">;
194
225
  entry: z.ZodOptional<z.ZodString>;
195
226
  database: z.ZodDefault<z.ZodBoolean>;
227
+ fetch: z.ZodOptional<z.ZodBoolean>;
196
228
  compatibilityDate: z.ZodOptional<z.ZodString>;
197
229
  }, z.core.$strip>;
198
230
  /**
199
- * The one runtime declaration, discriminated on `kind`.
231
+ * The one runtime declaration, discriminated on `kind`. A version cannot
232
+ * express two runtimes at once.
200
233
  *
201
- * One block, one kind a version cannot express two runtimes at once, so the
202
- * ambiguity never has to be resolved downstream. File-only on purpose: a
203
- * runtime is a fact about the content of a version, so it rolls forward and
204
- * back with the version instead of being set through the API config overlay.
234
+ * File-only on purpose: a runtime is a fact about the content of a version, so
235
+ * it rolls forward and back with the version instead of being set through the
236
+ * API config overlay.
205
237
  */
206
238
  export declare const spaceRuntimeSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
207
239
  kind: z.ZodLiteral<"zero">;
@@ -211,11 +243,173 @@ export declare const spaceRuntimeSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
211
243
  kind: z.ZodLiteral<"functions">;
212
244
  entry: z.ZodOptional<z.ZodString>;
213
245
  database: z.ZodDefault<z.ZodBoolean>;
246
+ fetch: z.ZodOptional<z.ZodBoolean>;
214
247
  compatibilityDate: z.ZodOptional<z.ZodString>;
215
248
  }, z.core.$strip>], "kind">;
216
249
  export type SpaceRuntimeZeroConfig = z.infer<typeof spaceRuntimeZeroSchema>;
217
250
  export type SpaceRuntimeFunctionsConfig = z.infer<typeof spaceRuntimeFunctionsSchema>;
218
251
  export type SpaceRuntimeConfig = z.infer<typeof spaceRuntimeSchema>;
252
+ /**
253
+ * Scheduled requests: the provider crontab asks this space for these paths on
254
+ * these schedules. File-only for the same reason `runtime` is.
255
+ *
256
+ * The Rust config compiler is the selection authority for both fields; this
257
+ * schema exists so an editor and an agent get the same answer before publish.
258
+ */
259
+ export declare const SPACE_CRON_NAMED_SCHEDULES: readonly ["hourly", "daily", "twicedaily", "weekly"];
260
+ /**
261
+ * The wp.cloud schedule grammar: a named interval, an `Nh`/`Nd`/`Nw` count, or
262
+ * a five-field crontab expression. No `@daily` macros and no month/day names.
263
+ * The provider does not accept them either.
264
+ */
265
+ export declare function isSpaceCronSchedule(schedule: string): boolean;
266
+ /**
267
+ * The artifact key for a cron path — the shared slug normalizer, so an accented
268
+ * path folds the same way it does everywhere else. Two paths that produce one
269
+ * key are rejected, so a key names exactly one schedule.
270
+ */
271
+ export declare function spaceCronKey(path: string): string;
272
+ /** Generated runtime file the serving engine reads, written only when a version declares a cron. */
273
+ export declare const SPACE_CRONS_ARTIFACT_PATH = "__spacefast/crons.json";
274
+ export declare const SPACE_CRONS_ARTIFACT_VERSION = 1;
275
+ /** One compiled cron, as the artifact carries it. */
276
+ export type SpaceCronEntry = {
277
+ /** Slug of `path`; unique within a version. */
278
+ key: string;
279
+ path: string;
280
+ /** Verbatim as declared, never normalized or expanded. */
281
+ schedule: string;
282
+ };
283
+ export type SpaceCronsArtifact = {
284
+ version: typeof SPACE_CRONS_ARTIFACT_VERSION;
285
+ crons: SpaceCronEntry[];
286
+ };
287
+ export declare const spaceCronSchema: z.ZodObject<{
288
+ path: z.ZodString;
289
+ schedule: z.ZodString;
290
+ }, z.core.$strip>;
291
+ export declare const spaceCronsSchema: z.ZodArray<z.ZodObject<{
292
+ path: z.ZodString;
293
+ schedule: z.ZodString;
294
+ }, z.core.$strip>>;
295
+ export type SpaceCronConfig = z.infer<typeof spaceCronSchema>;
296
+ export declare const systemPresentationSchema: z.ZodObject<{
297
+ name: z.ZodOptional<z.ZodString>;
298
+ logo: z.ZodOptional<z.ZodString>;
299
+ supportUrl: z.ZodOptional<z.ZodString>;
300
+ claimOrigin: z.ZodOptional<z.ZodString>;
301
+ accessHandoffOrigin: z.ZodOptional<z.ZodString>;
302
+ problemDocsBaseUrl: z.ZodOptional<z.ZodString>;
303
+ contacts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
304
+ }, z.core.$strict>;
305
+ export declare const systemHostnamesSchema: z.ZodObject<{
306
+ apex: z.ZodOptional<z.ZodString>;
307
+ }, z.core.$strict>;
308
+ export declare const systemApiSchema: z.ZodObject<{
309
+ origin: z.ZodOptional<z.ZodString>;
310
+ allowedOrigins: z.ZodOptional<z.ZodArray<z.ZodString>>;
311
+ }, z.core.$strict>;
312
+ export declare const systemTokenIssuerSchema: z.ZodObject<{
313
+ issuer: z.ZodString;
314
+ keys: z.ZodArray<z.ZodObject<{
315
+ kid: z.ZodString;
316
+ publicKey: z.ZodString;
317
+ }, z.core.$strict>>;
318
+ proof: z.ZodOptional<z.ZodString>;
319
+ }, z.core.$strict>;
320
+ export declare const systemSubscriptionSchema: z.ZodObject<{
321
+ url: z.ZodString;
322
+ events: z.ZodArray<z.ZodString>;
323
+ }, z.core.$strict>;
324
+ export declare const spaceSystemManifestSchema: z.ZodObject<{
325
+ presentation: z.ZodOptional<z.ZodObject<{
326
+ name: z.ZodOptional<z.ZodString>;
327
+ logo: z.ZodOptional<z.ZodString>;
328
+ supportUrl: z.ZodOptional<z.ZodString>;
329
+ claimOrigin: z.ZodOptional<z.ZodString>;
330
+ accessHandoffOrigin: z.ZodOptional<z.ZodString>;
331
+ problemDocsBaseUrl: z.ZodOptional<z.ZodString>;
332
+ contacts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
333
+ }, z.core.$strict>>;
334
+ hostnames: z.ZodOptional<z.ZodObject<{
335
+ apex: z.ZodOptional<z.ZodString>;
336
+ }, z.core.$strict>>;
337
+ api: z.ZodOptional<z.ZodObject<{
338
+ origin: z.ZodOptional<z.ZodString>;
339
+ allowedOrigins: z.ZodOptional<z.ZodArray<z.ZodString>>;
340
+ }, z.core.$strict>>;
341
+ tokenIssuers: z.ZodOptional<z.ZodArray<z.ZodObject<{
342
+ issuer: z.ZodString;
343
+ keys: z.ZodArray<z.ZodObject<{
344
+ kid: z.ZodString;
345
+ publicKey: z.ZodString;
346
+ }, z.core.$strict>>;
347
+ proof: z.ZodOptional<z.ZodString>;
348
+ }, z.core.$strict>>>;
349
+ subscriptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
350
+ url: z.ZodString;
351
+ events: z.ZodArray<z.ZodString>;
352
+ }, z.core.$strict>>>;
353
+ plans: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
354
+ features: z.ZodArray<z.ZodEnum<{
355
+ zero: "zero";
356
+ "plans.paid.available": "plans.paid.available";
357
+ "anonymous.publishing": "anonymous.publishing";
358
+ "beta.enrollment_gate": "beta.enrollment_gate";
359
+ "domains.search": "domains.search";
360
+ "domains.registration": "domains.registration";
361
+ "domains.dns_management": "domains.dns_management";
362
+ "domains.wpcom_dns": "domains.wpcom_dns";
363
+ "domains.domain_connect": "domains.domain_connect";
364
+ "domains.proxy_bindings": "domains.proxy_bindings";
365
+ "collab.notices": "collab.notices";
366
+ "collab.comments": "collab.comments";
367
+ "content.managed": "content.managed";
368
+ "sites.dedicated_runtime": "sites.dedicated_runtime";
369
+ "collab.drawing": "collab.drawing";
370
+ tags: "tags";
371
+ functions: "functions";
372
+ "spaces.slug_rename": "spaces.slug_rename";
373
+ "pages.templates": "pages.templates";
374
+ "branding.hide": "branding.hide";
375
+ }>>;
376
+ quotas: z.ZodObject<{
377
+ spaces: z.ZodOptional<z.ZodNumber>;
378
+ storageBytes: z.ZodOptional<z.ZodNumber>;
379
+ buildMinutesPerMonth: z.ZodOptional<z.ZodNumber>;
380
+ customDomains: z.ZodOptional<z.ZodNumber>;
381
+ }, z.core.$strict>;
382
+ quotaPolicy: z.ZodOptional<z.ZodEnum<{
383
+ warn: "warn";
384
+ block: "block";
385
+ }>>;
386
+ }, z.core.$strict>>>;
387
+ defaultPlan: z.ZodOptional<z.ZodString>;
388
+ }, z.core.$strict>;
389
+ export type SpaceSystemManifest = z.infer<typeof spaceSystemManifestSchema>;
390
+ /**
391
+ * The presentation slice of the system manifest, as a standalone schema.
392
+ * The presentation materializer re-parses the frozen declaration through this
393
+ * before storing it, so origins-https and within-schema bounds are re-asserted
394
+ * defensively at reconcile time and not just trusted from finalize.
395
+ */
396
+ export type SpaceSystemPresentation = z.infer<typeof systemPresentationSchema>;
397
+ /**
398
+ * A single declared token issuer / event subscription, as standalone schemas.
399
+ * The issuer and subscription materializers re-parse the frozen declaration
400
+ * through these before materializing — key shape, issuer https, subscription
401
+ * url https, and within-schema bounds re-asserted defensively at reconcile
402
+ * time, not trusted from finalize.
403
+ */
404
+ export type SpaceSystemTokenIssuer = z.infer<typeof systemTokenIssuerSchema>;
405
+ export type SpaceSystemSubscription = z.infer<typeof systemSubscriptionSchema>;
406
+ /**
407
+ * The `api` slice of the system manifest, as a standalone schema. The api-origin
408
+ * materializer re-parses the frozen declaration through this before storing it
409
+ * to `tenants.api_origins_json` — origins https and within-schema bounds
410
+ * re-asserted defensively at reconcile time, not trusted from finalize.
411
+ */
412
+ export type SpaceSystemApi = z.infer<typeof systemApiSchema>;
219
413
  export declare const spaceConfigFileSchema: z.ZodObject<{
220
414
  index: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<false>]>>;
221
415
  fallback: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
@@ -307,8 +501,78 @@ export declare const spaceConfigFileSchema: z.ZodObject<{
307
501
  kind: z.ZodLiteral<"functions">;
308
502
  entry: z.ZodOptional<z.ZodString>;
309
503
  database: z.ZodDefault<z.ZodBoolean>;
504
+ fetch: z.ZodOptional<z.ZodBoolean>;
310
505
  compatibilityDate: z.ZodOptional<z.ZodString>;
311
506
  }, z.core.$strip>], "kind">>;
507
+ crons: z.ZodOptional<z.ZodArray<z.ZodObject<{
508
+ path: z.ZodString;
509
+ schedule: z.ZodString;
510
+ }, z.core.$strip>>>;
511
+ system: z.ZodOptional<z.ZodObject<{
512
+ presentation: z.ZodOptional<z.ZodObject<{
513
+ name: z.ZodOptional<z.ZodString>;
514
+ logo: z.ZodOptional<z.ZodString>;
515
+ supportUrl: z.ZodOptional<z.ZodString>;
516
+ claimOrigin: z.ZodOptional<z.ZodString>;
517
+ accessHandoffOrigin: z.ZodOptional<z.ZodString>;
518
+ problemDocsBaseUrl: z.ZodOptional<z.ZodString>;
519
+ contacts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
520
+ }, z.core.$strict>>;
521
+ hostnames: z.ZodOptional<z.ZodObject<{
522
+ apex: z.ZodOptional<z.ZodString>;
523
+ }, z.core.$strict>>;
524
+ api: z.ZodOptional<z.ZodObject<{
525
+ origin: z.ZodOptional<z.ZodString>;
526
+ allowedOrigins: z.ZodOptional<z.ZodArray<z.ZodString>>;
527
+ }, z.core.$strict>>;
528
+ tokenIssuers: z.ZodOptional<z.ZodArray<z.ZodObject<{
529
+ issuer: z.ZodString;
530
+ keys: z.ZodArray<z.ZodObject<{
531
+ kid: z.ZodString;
532
+ publicKey: z.ZodString;
533
+ }, z.core.$strict>>;
534
+ proof: z.ZodOptional<z.ZodString>;
535
+ }, z.core.$strict>>>;
536
+ subscriptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
537
+ url: z.ZodString;
538
+ events: z.ZodArray<z.ZodString>;
539
+ }, z.core.$strict>>>;
540
+ plans: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
541
+ features: z.ZodArray<z.ZodEnum<{
542
+ zero: "zero";
543
+ "plans.paid.available": "plans.paid.available";
544
+ "anonymous.publishing": "anonymous.publishing";
545
+ "beta.enrollment_gate": "beta.enrollment_gate";
546
+ "domains.search": "domains.search";
547
+ "domains.registration": "domains.registration";
548
+ "domains.dns_management": "domains.dns_management";
549
+ "domains.wpcom_dns": "domains.wpcom_dns";
550
+ "domains.domain_connect": "domains.domain_connect";
551
+ "domains.proxy_bindings": "domains.proxy_bindings";
552
+ "collab.notices": "collab.notices";
553
+ "collab.comments": "collab.comments";
554
+ "content.managed": "content.managed";
555
+ "sites.dedicated_runtime": "sites.dedicated_runtime";
556
+ "collab.drawing": "collab.drawing";
557
+ tags: "tags";
558
+ functions: "functions";
559
+ "spaces.slug_rename": "spaces.slug_rename";
560
+ "pages.templates": "pages.templates";
561
+ "branding.hide": "branding.hide";
562
+ }>>;
563
+ quotas: z.ZodObject<{
564
+ spaces: z.ZodOptional<z.ZodNumber>;
565
+ storageBytes: z.ZodOptional<z.ZodNumber>;
566
+ buildMinutesPerMonth: z.ZodOptional<z.ZodNumber>;
567
+ customDomains: z.ZodOptional<z.ZodNumber>;
568
+ }, z.core.$strict>;
569
+ quotaPolicy: z.ZodOptional<z.ZodEnum<{
570
+ warn: "warn";
571
+ block: "block";
572
+ }>>;
573
+ }, z.core.$strict>>>;
574
+ defaultPlan: z.ZodOptional<z.ZodString>;
575
+ }, z.core.$strict>>;
312
576
  }, z.core.$strip>;
313
577
  export type SpaceConfigFile = z.infer<typeof spaceConfigFileSchema>;
314
578
  /**