@plumix/core 0.1.0

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 (1553) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +12 -0
  3. package/dist/admin/index.d.ts +2 -0
  4. package/dist/admin/index.d.ts.map +1 -0
  5. package/dist/admin/index.js +2 -0
  6. package/dist/admin/index.js.map +1 -0
  7. package/dist/admin/runtime.d.ts +23 -0
  8. package/dist/admin/runtime.d.ts.map +1 -0
  9. package/dist/admin/runtime.js +46 -0
  10. package/dist/admin/runtime.js.map +1 -0
  11. package/dist/admin-bar/build-tree.d.ts +3 -0
  12. package/dist/admin-bar/build-tree.d.ts.map +1 -0
  13. package/dist/admin-bar/build-tree.js +35 -0
  14. package/dist/admin-bar/build-tree.js.map +1 -0
  15. package/dist/admin-bar/collect.d.ts +4 -0
  16. package/dist/admin-bar/collect.d.ts.map +1 -0
  17. package/dist/admin-bar/collect.js +29 -0
  18. package/dist/admin-bar/collect.js.map +1 -0
  19. package/dist/admin-bar/component.d.ts +15 -0
  20. package/dist/admin-bar/component.d.ts.map +1 -0
  21. package/dist/admin-bar/component.js +65 -0
  22. package/dist/admin-bar/component.js.map +1 -0
  23. package/dist/admin-bar/core-contributors.d.ts +12 -0
  24. package/dist/admin-bar/core-contributors.d.ts.map +1 -0
  25. package/dist/admin-bar/core-contributors.js +147 -0
  26. package/dist/admin-bar/core-contributors.js.map +1 -0
  27. package/dist/admin-bar/i18n.d.ts +34 -0
  28. package/dist/admin-bar/i18n.d.ts.map +1 -0
  29. package/dist/admin-bar/i18n.js +85 -0
  30. package/dist/admin-bar/i18n.js.map +1 -0
  31. package/dist/admin-bar/styles.d.ts +5 -0
  32. package/dist/admin-bar/styles.d.ts.map +1 -0
  33. package/dist/admin-bar/styles.js +252 -0
  34. package/dist/admin-bar/styles.js.map +1 -0
  35. package/dist/admin-bar/types.d.ts +64 -0
  36. package/dist/admin-bar/types.d.ts.map +1 -0
  37. package/dist/admin-bar/types.js +8 -0
  38. package/dist/admin-bar/types.js.map +1 -0
  39. package/dist/auth/api-tokens.d.ts +84 -0
  40. package/dist/auth/api-tokens.d.ts.map +1 -0
  41. package/dist/auth/api-tokens.js +121 -0
  42. package/dist/auth/api-tokens.js.map +1 -0
  43. package/dist/auth/authenticator.d.ts +109 -0
  44. package/dist/auth/authenticator.d.ts.map +1 -0
  45. package/dist/auth/authenticator.js +98 -0
  46. package/dist/auth/authenticator.js.map +1 -0
  47. package/dist/auth/bearer.d.ts +9 -0
  48. package/dist/auth/bearer.d.ts.map +1 -0
  49. package/dist/auth/bearer.js +28 -0
  50. package/dist/auth/bearer.js.map +1 -0
  51. package/dist/auth/bootstrap.d.ts +14 -0
  52. package/dist/auth/bootstrap.d.ts.map +1 -0
  53. package/dist/auth/bootstrap.js +27 -0
  54. package/dist/auth/bootstrap.js.map +1 -0
  55. package/dist/auth/config.d.ts +96 -0
  56. package/dist/auth/config.d.ts.map +1 -0
  57. package/dist/auth/config.js +98 -0
  58. package/dist/auth/config.js.map +1 -0
  59. package/dist/auth/cookies.d.ts +29 -0
  60. package/dist/auth/cookies.d.ts.map +1 -0
  61. package/dist/auth/cookies.js +70 -0
  62. package/dist/auth/cookies.js.map +1 -0
  63. package/dist/auth/csrf.d.ts +42 -0
  64. package/dist/auth/csrf.d.ts.map +1 -0
  65. package/dist/auth/csrf.js +80 -0
  66. package/dist/auth/csrf.js.map +1 -0
  67. package/dist/auth/device-flow-routes.d.ts +28 -0
  68. package/dist/auth/device-flow-routes.d.ts.map +1 -0
  69. package/dist/auth/device-flow-routes.js +90 -0
  70. package/dist/auth/device-flow-routes.js.map +1 -0
  71. package/dist/auth/device-flow.d.ts +111 -0
  72. package/dist/auth/device-flow.d.ts.map +1 -0
  73. package/dist/auth/device-flow.js +221 -0
  74. package/dist/auth/device-flow.js.map +1 -0
  75. package/dist/auth/email/messages.d.ts +21 -0
  76. package/dist/auth/email/messages.d.ts.map +1 -0
  77. package/dist/auth/email/messages.js +91 -0
  78. package/dist/auth/email/messages.js.map +1 -0
  79. package/dist/auth/email-change/cancel.d.ts +15 -0
  80. package/dist/auth/email-change/cancel.d.ts.map +1 -0
  81. package/dist/auth/email-change/cancel.js +18 -0
  82. package/dist/auth/email-change/cancel.js.map +1 -0
  83. package/dist/auth/email-change/errors.d.ts +13 -0
  84. package/dist/auth/email-change/errors.d.ts.map +1 -0
  85. package/dist/auth/email-change/errors.js +45 -0
  86. package/dist/auth/email-change/errors.js.map +1 -0
  87. package/dist/auth/email-change/index.d.ts +5 -0
  88. package/dist/auth/email-change/index.d.ts.map +1 -0
  89. package/dist/auth/email-change/index.js +5 -0
  90. package/dist/auth/email-change/index.js.map +1 -0
  91. package/dist/auth/email-change/request.d.ts +55 -0
  92. package/dist/auth/email-change/request.d.ts.map +1 -0
  93. package/dist/auth/email-change/request.js +93 -0
  94. package/dist/auth/email-change/request.js.map +1 -0
  95. package/dist/auth/email-change/routes.d.ts +17 -0
  96. package/dist/auth/email-change/routes.d.ts.map +1 -0
  97. package/dist/auth/email-change/routes.js +63 -0
  98. package/dist/auth/email-change/routes.js.map +1 -0
  99. package/dist/auth/email-change/verify.d.ts +30 -0
  100. package/dist/auth/email-change/verify.d.ts.map +1 -0
  101. package/dist/auth/email-change/verify.js +81 -0
  102. package/dist/auth/email-change/verify.js.map +1 -0
  103. package/dist/auth/flow-routes.d.ts +15 -0
  104. package/dist/auth/flow-routes.d.ts.map +1 -0
  105. package/dist/auth/flow-routes.js +15 -0
  106. package/dist/auth/flow-routes.js.map +1 -0
  107. package/dist/auth/identity.d.ts +96 -0
  108. package/dist/auth/identity.d.ts.map +1 -0
  109. package/dist/auth/identity.js +145 -0
  110. package/dist/auth/identity.js.map +1 -0
  111. package/dist/auth/index.d.ts +16 -0
  112. package/dist/auth/index.d.ts.map +1 -0
  113. package/dist/auth/index.js +16 -0
  114. package/dist/auth/index.js.map +1 -0
  115. package/dist/auth/invite.d.ts +25 -0
  116. package/dist/auth/invite.d.ts.map +1 -0
  117. package/dist/auth/invite.js +53 -0
  118. package/dist/auth/invite.js.map +1 -0
  119. package/dist/auth/magic-link/errors.d.ts +13 -0
  120. package/dist/auth/magic-link/errors.d.ts.map +1 -0
  121. package/dist/auth/magic-link/errors.js +40 -0
  122. package/dist/auth/magic-link/errors.js.map +1 -0
  123. package/dist/auth/magic-link/index.d.ts +4 -0
  124. package/dist/auth/magic-link/index.d.ts.map +1 -0
  125. package/dist/auth/magic-link/index.js +6 -0
  126. package/dist/auth/magic-link/index.js.map +1 -0
  127. package/dist/auth/magic-link/request.d.ts +57 -0
  128. package/dist/auth/magic-link/request.d.ts.map +1 -0
  129. package/dist/auth/magic-link/request.js +119 -0
  130. package/dist/auth/magic-link/request.js.map +1 -0
  131. package/dist/auth/magic-link/routes.d.ts +20 -0
  132. package/dist/auth/magic-link/routes.d.ts.map +1 -0
  133. package/dist/auth/magic-link/routes.js +121 -0
  134. package/dist/auth/magic-link/routes.js.map +1 -0
  135. package/dist/auth/magic-link/verify.d.ts +43 -0
  136. package/dist/auth/magic-link/verify.d.ts.map +1 -0
  137. package/dist/auth/magic-link/verify.js +80 -0
  138. package/dist/auth/magic-link/verify.js.map +1 -0
  139. package/dist/auth/mailer/console.d.ts +22 -0
  140. package/dist/auth/mailer/console.d.ts.map +1 -0
  141. package/dist/auth/mailer/console.js +24 -0
  142. package/dist/auth/mailer/console.js.map +1 -0
  143. package/dist/auth/mailer/index.d.ts +4 -0
  144. package/dist/auth/mailer/index.d.ts.map +1 -0
  145. package/dist/auth/mailer/index.js +2 -0
  146. package/dist/auth/mailer/index.js.map +1 -0
  147. package/dist/auth/mailer/resolve.d.ts +12 -0
  148. package/dist/auth/mailer/resolve.d.ts.map +1 -0
  149. package/dist/auth/mailer/resolve.js +5 -0
  150. package/dist/auth/mailer/resolve.js.map +1 -0
  151. package/dist/auth/mailer/types.d.ts +25 -0
  152. package/dist/auth/mailer/types.d.ts.map +1 -0
  153. package/dist/auth/mailer/types.js +1 -0
  154. package/dist/auth/mailer/types.js.map +1 -0
  155. package/dist/auth/oauth/consumer.d.ts +37 -0
  156. package/dist/auth/oauth/consumer.d.ts.map +1 -0
  157. package/dist/auth/oauth/consumer.js +136 -0
  158. package/dist/auth/oauth/consumer.js.map +1 -0
  159. package/dist/auth/oauth/errors.d.ts +22 -0
  160. package/dist/auth/oauth/errors.d.ts.map +1 -0
  161. package/dist/auth/oauth/errors.js +57 -0
  162. package/dist/auth/oauth/errors.js.map +1 -0
  163. package/dist/auth/oauth/index.d.ts +7 -0
  164. package/dist/auth/oauth/index.d.ts.map +1 -0
  165. package/dist/auth/oauth/index.js +22 -0
  166. package/dist/auth/oauth/index.js.map +1 -0
  167. package/dist/auth/oauth/match.d.ts +19 -0
  168. package/dist/auth/oauth/match.d.ts.map +1 -0
  169. package/dist/auth/oauth/match.js +28 -0
  170. package/dist/auth/oauth/match.js.map +1 -0
  171. package/dist/auth/oauth/pkce.d.ts +3 -0
  172. package/dist/auth/oauth/pkce.d.ts.map +1 -0
  173. package/dist/auth/oauth/pkce.js +13 -0
  174. package/dist/auth/oauth/pkce.js.map +1 -0
  175. package/dist/auth/oauth/providers/github.d.ts +3 -0
  176. package/dist/auth/oauth/providers/github.d.ts.map +1 -0
  177. package/dist/auth/oauth/providers/github.js +39 -0
  178. package/dist/auth/oauth/providers/github.js.map +1 -0
  179. package/dist/auth/oauth/providers/google.d.ts +3 -0
  180. package/dist/auth/oauth/providers/google.d.ts.map +1 -0
  181. package/dist/auth/oauth/providers/google.js +26 -0
  182. package/dist/auth/oauth/providers/google.js.map +1 -0
  183. package/dist/auth/oauth/providers/index.d.ts +3 -0
  184. package/dist/auth/oauth/providers/index.d.ts.map +1 -0
  185. package/dist/auth/oauth/providers/index.js +3 -0
  186. package/dist/auth/oauth/providers/index.js.map +1 -0
  187. package/dist/auth/oauth/routes.d.ts +5 -0
  188. package/dist/auth/oauth/routes.d.ts.map +1 -0
  189. package/dist/auth/oauth/routes.js +134 -0
  190. package/dist/auth/oauth/routes.js.map +1 -0
  191. package/dist/auth/oauth/signup.d.ts +40 -0
  192. package/dist/auth/oauth/signup.d.ts.map +1 -0
  193. package/dist/auth/oauth/signup.js +92 -0
  194. package/dist/auth/oauth/signup.js.map +1 -0
  195. package/dist/auth/oauth/state.d.ts +19 -0
  196. package/dist/auth/oauth/state.d.ts.map +1 -0
  197. package/dist/auth/oauth/state.js +48 -0
  198. package/dist/auth/oauth/state.js.map +1 -0
  199. package/dist/auth/oauth/types.d.ts +81 -0
  200. package/dist/auth/oauth/types.d.ts.map +1 -0
  201. package/dist/auth/oauth/types.js +6 -0
  202. package/dist/auth/oauth/types.js.map +1 -0
  203. package/dist/auth/passkey/authenticate.d.ts +26 -0
  204. package/dist/auth/passkey/authenticate.d.ts.map +1 -0
  205. package/dist/auth/passkey/authenticate.js +124 -0
  206. package/dist/auth/passkey/authenticate.js.map +1 -0
  207. package/dist/auth/passkey/challenges.d.ts +31 -0
  208. package/dist/auth/passkey/challenges.d.ts.map +1 -0
  209. package/dist/auth/passkey/challenges.js +57 -0
  210. package/dist/auth/passkey/challenges.js.map +1 -0
  211. package/dist/auth/passkey/config.d.ts +18 -0
  212. package/dist/auth/passkey/config.d.ts.map +1 -0
  213. package/dist/auth/passkey/config.js +14 -0
  214. package/dist/auth/passkey/config.js.map +1 -0
  215. package/dist/auth/passkey/errors.d.ts +41 -0
  216. package/dist/auth/passkey/errors.d.ts.map +1 -0
  217. package/dist/auth/passkey/errors.js +85 -0
  218. package/dist/auth/passkey/errors.js.map +1 -0
  219. package/dist/auth/passkey/index.d.ts +7 -0
  220. package/dist/auth/passkey/index.d.ts.map +1 -0
  221. package/dist/auth/passkey/index.js +7 -0
  222. package/dist/auth/passkey/index.js.map +1 -0
  223. package/dist/auth/passkey/register.d.ts +39 -0
  224. package/dist/auth/passkey/register.d.ts.map +1 -0
  225. package/dist/auth/passkey/register.js +175 -0
  226. package/dist/auth/passkey/register.js.map +1 -0
  227. package/dist/auth/passkey/routes.d.ts +10 -0
  228. package/dist/auth/passkey/routes.d.ts.map +1 -0
  229. package/dist/auth/passkey/routes.js +450 -0
  230. package/dist/auth/passkey/routes.js.map +1 -0
  231. package/dist/auth/passkey/types.d.ts +59 -0
  232. package/dist/auth/passkey/types.d.ts.map +1 -0
  233. package/dist/auth/passkey/types.js +1 -0
  234. package/dist/auth/passkey/types.js.map +1 -0
  235. package/dist/auth/preview-token.d.ts +21 -0
  236. package/dist/auth/preview-token.d.ts.map +1 -0
  237. package/dist/auth/preview-token.js +43 -0
  238. package/dist/auth/preview-token.js.map +1 -0
  239. package/dist/auth/rbac.d.ts +81 -0
  240. package/dist/auth/rbac.d.ts.map +1 -0
  241. package/dist/auth/rbac.js +166 -0
  242. package/dist/auth/rbac.js.map +1 -0
  243. package/dist/auth/sessions.d.ts +69 -0
  244. package/dist/auth/sessions.d.ts.map +1 -0
  245. package/dist/auth/sessions.js +147 -0
  246. package/dist/auth/sessions.js.map +1 -0
  247. package/dist/auth/sign-in.d.ts +21 -0
  248. package/dist/auth/sign-in.d.ts.map +1 -0
  249. package/dist/auth/sign-in.js +26 -0
  250. package/dist/auth/sign-in.js.map +1 -0
  251. package/dist/auth/tokens.d.ts +9 -0
  252. package/dist/auth/tokens.d.ts.map +1 -0
  253. package/dist/auth/tokens.js +23 -0
  254. package/dist/auth/tokens.js.map +1 -0
  255. package/dist/base-path.d.ts +36 -0
  256. package/dist/base-path.d.ts.map +1 -0
  257. package/dist/base-path.js +57 -0
  258. package/dist/base-path.js.map +1 -0
  259. package/dist/cache/decision.d.ts +34 -0
  260. package/dist/cache/decision.d.ts.map +1 -0
  261. package/dist/cache/decision.js +47 -0
  262. package/dist/cache/decision.js.map +1 -0
  263. package/dist/cache/purge.d.ts +17 -0
  264. package/dist/cache/purge.d.ts.map +1 -0
  265. package/dist/cache/purge.js +82 -0
  266. package/dist/cache/purge.js.map +1 -0
  267. package/dist/cache/read-through.d.ts +30 -0
  268. package/dist/cache/read-through.d.ts.map +1 -0
  269. package/dist/cache/read-through.js +28 -0
  270. package/dist/cache/read-through.js.map +1 -0
  271. package/dist/cache/tags.d.ts +30 -0
  272. package/dist/cache/tags.d.ts.map +1 -0
  273. package/dist/cache/tags.js +46 -0
  274. package/dist/cache/tags.js.map +1 -0
  275. package/dist/cli/errors.d.ts +75 -0
  276. package/dist/cli/errors.d.ts.map +1 -0
  277. package/dist/cli/errors.js +85 -0
  278. package/dist/cli/errors.js.map +1 -0
  279. package/dist/cli/index.d.ts +7 -0
  280. package/dist/cli/index.d.ts.map +1 -0
  281. package/dist/cli/index.js +5 -0
  282. package/dist/cli/index.js.map +1 -0
  283. package/dist/cli/schema-codegen.d.ts +8 -0
  284. package/dist/cli/schema-codegen.d.ts.map +1 -0
  285. package/dist/cli/schema-codegen.js +21 -0
  286. package/dist/cli/schema-codegen.js.map +1 -0
  287. package/dist/cli/spawn.d.ts +7 -0
  288. package/dist/cli/spawn.d.ts.map +1 -0
  289. package/dist/cli/spawn.js +22 -0
  290. package/dist/cli/spawn.js.map +1 -0
  291. package/dist/cli/worker-codegen.d.ts +5 -0
  292. package/dist/cli/worker-codegen.d.ts.map +1 -0
  293. package/dist/cli/worker-codegen.js +41 -0
  294. package/dist/cli/worker-codegen.js.map +1 -0
  295. package/dist/config.d.ts +141 -0
  296. package/dist/config.d.ts.map +1 -0
  297. package/dist/config.errors.d.ts +13 -0
  298. package/dist/config.errors.d.ts.map +1 -0
  299. package/dist/config.errors.js +20 -0
  300. package/dist/config.errors.js.map +1 -0
  301. package/dist/config.js +36 -0
  302. package/dist/config.js.map +1 -0
  303. package/dist/context/app.d.ts +260 -0
  304. package/dist/context/app.d.ts.map +1 -0
  305. package/dist/context/app.js +149 -0
  306. package/dist/context/app.js.map +1 -0
  307. package/dist/context/errors.d.ts +16 -0
  308. package/dist/context/errors.d.ts.map +1 -0
  309. package/dist/context/errors.js +27 -0
  310. package/dist/context/errors.js.map +1 -0
  311. package/dist/context/index.d.ts +3 -0
  312. package/dist/context/index.d.ts.map +1 -0
  313. package/dist/context/index.js +3 -0
  314. package/dist/context/index.js.map +1 -0
  315. package/dist/context/stores.d.ts +19 -0
  316. package/dist/context/stores.d.ts.map +1 -0
  317. package/dist/context/stores.js +19 -0
  318. package/dist/context/stores.js.map +1 -0
  319. package/dist/db/errors.d.ts +2 -0
  320. package/dist/db/errors.d.ts.map +1 -0
  321. package/dist/db/errors.js +69 -0
  322. package/dist/db/errors.js.map +1 -0
  323. package/dist/db/index.d.ts +4 -0
  324. package/dist/db/index.d.ts.map +1 -0
  325. package/dist/db/index.js +3 -0
  326. package/dist/db/index.js.map +1 -0
  327. package/dist/db/libsql.d.ts +30 -0
  328. package/dist/db/libsql.d.ts.map +1 -0
  329. package/dist/db/libsql.js +33 -0
  330. package/dist/db/libsql.js.map +1 -0
  331. package/dist/db/schema/allowed_domains.d.ts +230 -0
  332. package/dist/db/schema/allowed_domains.d.ts.map +1 -0
  333. package/dist/db/schema/allowed_domains.js +16 -0
  334. package/dist/db/schema/allowed_domains.js.map +1 -0
  335. package/dist/db/schema/api_tokens.d.ts +497 -0
  336. package/dist/db/schema/api_tokens.d.ts.map +1 -0
  337. package/dist/db/schema/api_tokens.js +72 -0
  338. package/dist/db/schema/api_tokens.js.map +1 -0
  339. package/dist/db/schema/auth_tokens.d.ts +505 -0
  340. package/dist/db/schema/auth_tokens.d.ts.map +1 -0
  341. package/dist/db/schema/auth_tokens.js +36 -0
  342. package/dist/db/schema/auth_tokens.js.map +1 -0
  343. package/dist/db/schema/credentials.d.ts +551 -0
  344. package/dist/db/schema/credentials.d.ts.map +1 -0
  345. package/dist/db/schema/credentials.js +32 -0
  346. package/dist/db/schema/credentials.js.map +1 -0
  347. package/dist/db/schema/device_codes.d.ts +454 -0
  348. package/dist/db/schema/device_codes.d.ts.map +1 -0
  349. package/dist/db/schema/device_codes.js +96 -0
  350. package/dist/db/schema/device_codes.js.map +1 -0
  351. package/dist/db/schema/entries.d.ts +779 -0
  352. package/dist/db/schema/entries.d.ts.map +1 -0
  353. package/dist/db/schema/entries.js +53 -0
  354. package/dist/db/schema/entries.js.map +1 -0
  355. package/dist/db/schema/entry_term.d.ts +167 -0
  356. package/dist/db/schema/entry_term.d.ts.map +1 -0
  357. package/dist/db/schema/entry_term.js +21 -0
  358. package/dist/db/schema/entry_term.js.map +1 -0
  359. package/dist/db/schema/index.d.ts +13 -0
  360. package/dist/db/schema/index.d.ts.map +1 -0
  361. package/dist/db/schema/index.js +13 -0
  362. package/dist/db/schema/index.js.map +1 -0
  363. package/dist/db/schema/oauth_accounts.d.ts +230 -0
  364. package/dist/db/schema/oauth_accounts.d.ts.map +1 -0
  365. package/dist/db/schema/oauth_accounts.js +22 -0
  366. package/dist/db/schema/oauth_accounts.js.map +1 -0
  367. package/dist/db/schema/sessions.d.ts +338 -0
  368. package/dist/db/schema/sessions.d.ts.map +1 -0
  369. package/dist/db/schema/sessions.js +24 -0
  370. package/dist/db/schema/sessions.js.map +1 -0
  371. package/dist/db/schema/settings.d.ts +185 -0
  372. package/dist/db/schema/settings.d.ts.map +1 -0
  373. package/dist/db/schema/settings.js +16 -0
  374. package/dist/db/schema/settings.js.map +1 -0
  375. package/dist/db/schema/terms.d.ts +452 -0
  376. package/dist/db/schema/terms.d.ts.map +1 -0
  377. package/dist/db/schema/terms.js +28 -0
  378. package/dist/db/schema/terms.js.map +1 -0
  379. package/dist/db/schema/users.d.ts +556 -0
  380. package/dist/db/schema/users.d.ts.map +1 -0
  381. package/dist/db/schema/users.js +36 -0
  382. package/dist/db/schema/users.js.map +1 -0
  383. package/dist/document-merge.d.ts +21 -0
  384. package/dist/document-merge.d.ts.map +1 -0
  385. package/dist/document-merge.js +51 -0
  386. package/dist/document-merge.js.map +1 -0
  387. package/dist/entries/errors.d.ts +22 -0
  388. package/dist/entries/errors.d.ts.map +1 -0
  389. package/dist/entries/errors.js +26 -0
  390. package/dist/entries/errors.js.map +1 -0
  391. package/dist/entries/read-service.d.ts +25 -0
  392. package/dist/entries/read-service.d.ts.map +1 -0
  393. package/dist/entries/read-service.js +159 -0
  394. package/dist/entries/read-service.js.map +1 -0
  395. package/dist/hooks/block-render.d.ts +30 -0
  396. package/dist/hooks/block-render.d.ts.map +1 -0
  397. package/dist/hooks/block-render.js +11 -0
  398. package/dist/hooks/block-render.js.map +1 -0
  399. package/dist/hooks/errors.d.ts +9 -0
  400. package/dist/hooks/errors.d.ts.map +1 -0
  401. package/dist/hooks/errors.js +19 -0
  402. package/dist/hooks/errors.js.map +1 -0
  403. package/dist/hooks/index.d.ts +5 -0
  404. package/dist/hooks/index.d.ts.map +1 -0
  405. package/dist/hooks/index.js +4 -0
  406. package/dist/hooks/index.js.map +1 -0
  407. package/dist/hooks/registry.d.ts +51 -0
  408. package/dist/hooks/registry.d.ts.map +1 -0
  409. package/dist/hooks/registry.js +104 -0
  410. package/dist/hooks/registry.js.map +1 -0
  411. package/dist/hooks/types.d.ts +17 -0
  412. package/dist/hooks/types.d.ts.map +1 -0
  413. package/dist/hooks/types.js +8 -0
  414. package/dist/hooks/types.js.map +1 -0
  415. package/dist/i18n/accept-language.d.ts +3 -0
  416. package/dist/i18n/accept-language.d.ts.map +1 -0
  417. package/dist/i18n/accept-language.js +61 -0
  418. package/dist/i18n/accept-language.js.map +1 -0
  419. package/dist/i18n/context.d.ts +10 -0
  420. package/dist/i18n/context.d.ts.map +1 -0
  421. package/dist/i18n/context.js +9 -0
  422. package/dist/i18n/context.js.map +1 -0
  423. package/dist/i18n/cookie.d.ts +8 -0
  424. package/dist/i18n/cookie.d.ts.map +1 -0
  425. package/dist/i18n/cookie.js +27 -0
  426. package/dist/i18n/cookie.js.map +1 -0
  427. package/dist/i18n/errors.d.ts +16 -0
  428. package/dist/i18n/errors.d.ts.map +1 -0
  429. package/dist/i18n/errors.js +28 -0
  430. package/dist/i18n/errors.js.map +1 -0
  431. package/dist/i18n/format.d.ts +13 -0
  432. package/dist/i18n/format.d.ts.map +1 -0
  433. package/dist/i18n/format.js +37 -0
  434. package/dist/i18n/format.js.map +1 -0
  435. package/dist/i18n/generic-type-labels.d.ts +209 -0
  436. package/dist/i18n/generic-type-labels.d.ts.map +1 -0
  437. package/dist/i18n/generic-type-labels.js +125 -0
  438. package/dist/i18n/generic-type-labels.js.map +1 -0
  439. package/dist/i18n/index.d.ts +10 -0
  440. package/dist/i18n/index.d.ts.map +1 -0
  441. package/dist/i18n/index.js +19 -0
  442. package/dist/i18n/index.js.map +1 -0
  443. package/dist/i18n/label.d.ts +15 -0
  444. package/dist/i18n/label.d.ts.map +1 -0
  445. package/dist/i18n/label.js +25 -0
  446. package/dist/i18n/label.js.map +1 -0
  447. package/dist/i18n/load-catalog.d.ts +26 -0
  448. package/dist/i18n/load-catalog.d.ts.map +1 -0
  449. package/dist/i18n/load-catalog.js +54 -0
  450. package/dist/i18n/load-catalog.js.map +1 -0
  451. package/dist/i18n/locale-registry.d.ts +33 -0
  452. package/dist/i18n/locale-registry.d.ts.map +1 -0
  453. package/dist/i18n/locale-registry.js +72 -0
  454. package/dist/i18n/locale-registry.js.map +1 -0
  455. package/dist/i18n/resolve-locale.d.ts +10 -0
  456. package/dist/i18n/resolve-locale.d.ts.map +1 -0
  457. package/dist/i18n/resolve-locale.js +29 -0
  458. package/dist/i18n/resolve-locale.js.map +1 -0
  459. package/dist/index.d.ts +43 -0
  460. package/dist/index.d.ts.map +1 -0
  461. package/dist/index.js +29 -0
  462. package/dist/index.js.map +1 -0
  463. package/dist/mcp/content-tools.d.ts +182 -0
  464. package/dist/mcp/content-tools.d.ts.map +1 -0
  465. package/dist/mcp/content-tools.js +67 -0
  466. package/dist/mcp/content-tools.js.map +1 -0
  467. package/dist/mcp/dispatch.d.ts +12 -0
  468. package/dist/mcp/dispatch.d.ts.map +1 -0
  469. package/dist/mcp/dispatch.js +30 -0
  470. package/dist/mcp/dispatch.js.map +1 -0
  471. package/dist/mcp/errors.d.ts +29 -0
  472. package/dist/mcp/errors.d.ts.map +1 -0
  473. package/dist/mcp/errors.js +36 -0
  474. package/dist/mcp/errors.js.map +1 -0
  475. package/dist/mcp/index.d.ts +3 -0
  476. package/dist/mcp/index.d.ts.map +1 -0
  477. package/dist/mcp/index.js +2 -0
  478. package/dist/mcp/index.js.map +1 -0
  479. package/dist/mcp/registry.d.ts +13 -0
  480. package/dist/mcp/registry.d.ts.map +1 -0
  481. package/dist/mcp/registry.js +28 -0
  482. package/dist/mcp/registry.js.map +1 -0
  483. package/dist/mcp/schema-describe.d.ts +13 -0
  484. package/dist/mcp/schema-describe.d.ts.map +1 -0
  485. package/dist/mcp/schema-describe.js +49 -0
  486. package/dist/mcp/schema-describe.js.map +1 -0
  487. package/dist/mcp/schema-projection.d.ts +5 -0
  488. package/dist/mcp/schema-projection.d.ts.map +1 -0
  489. package/dist/mcp/schema-projection.js +11 -0
  490. package/dist/mcp/schema-projection.js.map +1 -0
  491. package/dist/mcp/server.d.ts +7 -0
  492. package/dist/mcp/server.d.ts.map +1 -0
  493. package/dist/mcp/server.js +40 -0
  494. package/dist/mcp/server.js.map +1 -0
  495. package/dist/mcp/term-tools.d.ts +59 -0
  496. package/dist/mcp/term-tools.d.ts.map +1 -0
  497. package/dist/mcp/term-tools.js +77 -0
  498. package/dist/mcp/term-tools.js.map +1 -0
  499. package/dist/mcp/tool.d.ts +20 -0
  500. package/dist/mcp/tool.d.ts.map +1 -0
  501. package/dist/mcp/tool.js +1 -0
  502. package/dist/mcp/tool.js.map +1 -0
  503. package/dist/plugin/define.d.ts +77 -0
  504. package/dist/plugin/define.d.ts.map +1 -0
  505. package/dist/plugin/define.js +74 -0
  506. package/dist/plugin/define.js.map +1 -0
  507. package/dist/plugin/errors.d.ts +265 -0
  508. package/dist/plugin/errors.d.ts.map +1 -0
  509. package/dist/plugin/errors.js +330 -0
  510. package/dist/plugin/errors.js.map +1 -0
  511. package/dist/plugin/fields/checkbox.d.ts +19 -0
  512. package/dist/plugin/fields/checkbox.d.ts.map +1 -0
  513. package/dist/plugin/fields/checkbox.js +20 -0
  514. package/dist/plugin/fields/checkbox.js.map +1 -0
  515. package/dist/plugin/fields/color.d.ts +28 -0
  516. package/dist/plugin/fields/color.d.ts.map +1 -0
  517. package/dist/plugin/fields/color.js +30 -0
  518. package/dist/plugin/fields/color.js.map +1 -0
  519. package/dist/plugin/fields/date.d.ts +24 -0
  520. package/dist/plugin/fields/date.d.ts.map +1 -0
  521. package/dist/plugin/fields/date.js +23 -0
  522. package/dist/plugin/fields/date.js.map +1 -0
  523. package/dist/plugin/fields/datetime.d.ts +26 -0
  524. package/dist/plugin/fields/datetime.d.ts.map +1 -0
  525. package/dist/plugin/fields/datetime.js +25 -0
  526. package/dist/plugin/fields/datetime.js.map +1 -0
  527. package/dist/plugin/fields/email.d.ts +17 -0
  528. package/dist/plugin/fields/email.d.ts.map +1 -0
  529. package/dist/plugin/fields/email.js +18 -0
  530. package/dist/plugin/fields/email.js.map +1 -0
  531. package/dist/plugin/fields/entry-list.d.ts +28 -0
  532. package/dist/plugin/fields/entry-list.d.ts.map +1 -0
  533. package/dist/plugin/fields/entry-list.js +31 -0
  534. package/dist/plugin/fields/entry-list.js.map +1 -0
  535. package/dist/plugin/fields/entry.d.ts +40 -0
  536. package/dist/plugin/fields/entry.d.ts.map +1 -0
  537. package/dist/plugin/fields/entry.js +25 -0
  538. package/dist/plugin/fields/entry.js.map +1 -0
  539. package/dist/plugin/fields/errors.d.ts +35 -0
  540. package/dist/plugin/fields/errors.d.ts.map +1 -0
  541. package/dist/plugin/fields/errors.js +41 -0
  542. package/dist/plugin/fields/errors.js.map +1 -0
  543. package/dist/plugin/fields/index.d.ts +50 -0
  544. package/dist/plugin/fields/index.d.ts.map +1 -0
  545. package/dist/plugin/fields/index.js +37 -0
  546. package/dist/plugin/fields/index.js.map +1 -0
  547. package/dist/plugin/fields/json.d.ts +19 -0
  548. package/dist/plugin/fields/json.d.ts.map +1 -0
  549. package/dist/plugin/fields/json.js +20 -0
  550. package/dist/plugin/fields/json.js.map +1 -0
  551. package/dist/plugin/fields/multiselect.d.ts +21 -0
  552. package/dist/plugin/fields/multiselect.d.ts.map +1 -0
  553. package/dist/plugin/fields/multiselect.js +43 -0
  554. package/dist/plugin/fields/multiselect.js.map +1 -0
  555. package/dist/plugin/fields/number.d.ts +23 -0
  556. package/dist/plugin/fields/number.d.ts.map +1 -0
  557. package/dist/plugin/fields/number.js +24 -0
  558. package/dist/plugin/fields/number.js.map +1 -0
  559. package/dist/plugin/fields/parse-date.d.ts +7 -0
  560. package/dist/plugin/fields/parse-date.d.ts.map +1 -0
  561. package/dist/plugin/fields/parse-date.js +42 -0
  562. package/dist/plugin/fields/parse-date.js.map +1 -0
  563. package/dist/plugin/fields/password.d.ts +24 -0
  564. package/dist/plugin/fields/password.d.ts.map +1 -0
  565. package/dist/plugin/fields/password.js +25 -0
  566. package/dist/plugin/fields/password.js.map +1 -0
  567. package/dist/plugin/fields/radio.d.ts +16 -0
  568. package/dist/plugin/fields/radio.d.ts.map +1 -0
  569. package/dist/plugin/fields/radio.js +17 -0
  570. package/dist/plugin/fields/radio.js.map +1 -0
  571. package/dist/plugin/fields/range.d.ts +28 -0
  572. package/dist/plugin/fields/range.d.ts.map +1 -0
  573. package/dist/plugin/fields/range.js +46 -0
  574. package/dist/plugin/fields/range.js.map +1 -0
  575. package/dist/plugin/fields/repeater-validate.d.ts +34 -0
  576. package/dist/plugin/fields/repeater-validate.d.ts.map +1 -0
  577. package/dist/plugin/fields/repeater-validate.js +104 -0
  578. package/dist/plugin/fields/repeater-validate.js.map +1 -0
  579. package/dist/plugin/fields/repeater.d.ts +16 -0
  580. package/dist/plugin/fields/repeater.d.ts.map +1 -0
  581. package/dist/plugin/fields/repeater.js +68 -0
  582. package/dist/plugin/fields/repeater.js.map +1 -0
  583. package/dist/plugin/fields/richtext-validate.d.ts +61 -0
  584. package/dist/plugin/fields/richtext-validate.d.ts.map +1 -0
  585. package/dist/plugin/fields/richtext-validate.js +190 -0
  586. package/dist/plugin/fields/richtext-validate.js.map +1 -0
  587. package/dist/plugin/fields/richtext.d.ts +25 -0
  588. package/dist/plugin/fields/richtext.d.ts.map +1 -0
  589. package/dist/plugin/fields/richtext.js +31 -0
  590. package/dist/plugin/fields/richtext.js.map +1 -0
  591. package/dist/plugin/fields/select.d.ts +20 -0
  592. package/dist/plugin/fields/select.d.ts.map +1 -0
  593. package/dist/plugin/fields/select.js +21 -0
  594. package/dist/plugin/fields/select.js.map +1 -0
  595. package/dist/plugin/fields/term-list.d.ts +27 -0
  596. package/dist/plugin/fields/term-list.d.ts.map +1 -0
  597. package/dist/plugin/fields/term-list.js +30 -0
  598. package/dist/plugin/fields/term-list.js.map +1 -0
  599. package/dist/plugin/fields/term.d.ts +34 -0
  600. package/dist/plugin/fields/term.d.ts.map +1 -0
  601. package/dist/plugin/fields/term.js +24 -0
  602. package/dist/plugin/fields/term.js.map +1 -0
  603. package/dist/plugin/fields/text.d.ts +37 -0
  604. package/dist/plugin/fields/text.d.ts.map +1 -0
  605. package/dist/plugin/fields/text.js +31 -0
  606. package/dist/plugin/fields/text.js.map +1 -0
  607. package/dist/plugin/fields/textarea.d.ts +20 -0
  608. package/dist/plugin/fields/textarea.d.ts.map +1 -0
  609. package/dist/plugin/fields/textarea.js +21 -0
  610. package/dist/plugin/fields/textarea.js.map +1 -0
  611. package/dist/plugin/fields/time.d.ts +24 -0
  612. package/dist/plugin/fields/time.d.ts.map +1 -0
  613. package/dist/plugin/fields/time.js +23 -0
  614. package/dist/plugin/fields/time.js.map +1 -0
  615. package/dist/plugin/fields/url.d.ts +17 -0
  616. package/dist/plugin/fields/url.d.ts.map +1 -0
  617. package/dist/plugin/fields/url.js +18 -0
  618. package/dist/plugin/fields/url.js.map +1 -0
  619. package/dist/plugin/fields/user-list.d.ts +29 -0
  620. package/dist/plugin/fields/user-list.d.ts.map +1 -0
  621. package/dist/plugin/fields/user-list.js +31 -0
  622. package/dist/plugin/fields/user-list.js.map +1 -0
  623. package/dist/plugin/fields/user.d.ts +43 -0
  624. package/dist/plugin/fields/user.d.ts.map +1 -0
  625. package/dist/plugin/fields/user.js +30 -0
  626. package/dist/plugin/fields/user.js.map +1 -0
  627. package/dist/plugin/index.d.ts +7 -0
  628. package/dist/plugin/index.d.ts.map +1 -0
  629. package/dist/plugin/index.js +7 -0
  630. package/dist/plugin/index.js.map +1 -0
  631. package/dist/plugin/lookup.d.ts +92 -0
  632. package/dist/plugin/lookup.d.ts.map +1 -0
  633. package/dist/plugin/lookup.js +1 -0
  634. package/dist/plugin/lookup.js.map +1 -0
  635. package/dist/plugin/manifest.d.ts +1539 -0
  636. package/dist/plugin/manifest.d.ts.map +1 -0
  637. package/dist/plugin/manifest.js +913 -0
  638. package/dist/plugin/manifest.js.map +1 -0
  639. package/dist/plugin/provides-context.d.ts +26 -0
  640. package/dist/plugin/provides-context.d.ts.map +1 -0
  641. package/dist/plugin/provides-context.js +77 -0
  642. package/dist/plugin/provides-context.js.map +1 -0
  643. package/dist/plugin/register.d.ts +24 -0
  644. package/dist/plugin/register.d.ts.map +1 -0
  645. package/dist/plugin/register.js +45 -0
  646. package/dist/plugin/register.js.map +1 -0
  647. package/dist/plugin/setup-context.d.ts +224 -0
  648. package/dist/plugin/setup-context.d.ts.map +1 -0
  649. package/dist/plugin/setup-context.js +386 -0
  650. package/dist/plugin/setup-context.js.map +1 -0
  651. package/dist/plugin/validation/component-ref.d.ts +2 -0
  652. package/dist/plugin/validation/component-ref.d.ts.map +1 -0
  653. package/dist/plugin/validation/component-ref.js +7 -0
  654. package/dist/plugin/validation/component-ref.js.map +1 -0
  655. package/dist/plugin/validation/identifiers.d.ts +7 -0
  656. package/dist/plugin/validation/identifiers.d.ts.map +1 -0
  657. package/dist/plugin/validation/identifiers.js +92 -0
  658. package/dist/plugin/validation/identifiers.js.map +1 -0
  659. package/dist/plugin/validation/index.d.ts +7 -0
  660. package/dist/plugin/validation/index.d.ts.map +1 -0
  661. package/dist/plugin/validation/index.js +7 -0
  662. package/dist/plugin/validation/index.js.map +1 -0
  663. package/dist/plugin/validation/login-link.d.ts +3 -0
  664. package/dist/plugin/validation/login-link.d.ts.map +1 -0
  665. package/dist/plugin/validation/login-link.js +43 -0
  666. package/dist/plugin/validation/login-link.js.map +1 -0
  667. package/dist/plugin/validation/meta-box-fields.d.ts +6 -0
  668. package/dist/plugin/validation/meta-box-fields.d.ts.map +1 -0
  669. package/dist/plugin/validation/meta-box-fields.js +52 -0
  670. package/dist/plugin/validation/meta-box-fields.js.map +1 -0
  671. package/dist/plugin/validation/paths.d.ts +4 -0
  672. package/dist/plugin/validation/paths.d.ts.map +1 -0
  673. package/dist/plugin/validation/paths.js +44 -0
  674. package/dist/plugin/validation/paths.js.map +1 -0
  675. package/dist/plugin/validation/scheduled-task.d.ts +3 -0
  676. package/dist/plugin/validation/scheduled-task.d.ts.map +1 -0
  677. package/dist/plugin/validation/scheduled-task.js +14 -0
  678. package/dist/plugin/validation/scheduled-task.js.map +1 -0
  679. package/dist/rest/base.d.ts +27 -0
  680. package/dist/rest/base.d.ts.map +1 -0
  681. package/dist/rest/base.js +4 -0
  682. package/dist/rest/base.js.map +1 -0
  683. package/dist/rest/build-handler.d.ts +11 -0
  684. package/dist/rest/build-handler.d.ts.map +1 -0
  685. package/dist/rest/build-handler.js +53 -0
  686. package/dist/rest/build-handler.js.map +1 -0
  687. package/dist/rest/cors.d.ts +11 -0
  688. package/dist/rest/cors.d.ts.map +1 -0
  689. package/dist/rest/cors.js +58 -0
  690. package/dist/rest/cors.js.map +1 -0
  691. package/dist/rest/entries-resource.d.ts +44 -0
  692. package/dist/rest/entries-resource.d.ts.map +1 -0
  693. package/dist/rest/entries-resource.js +79 -0
  694. package/dist/rest/entries-resource.js.map +1 -0
  695. package/dist/rest/envelope.d.ts +18 -0
  696. package/dist/rest/envelope.d.ts.map +1 -0
  697. package/dist/rest/envelope.js +20 -0
  698. package/dist/rest/envelope.js.map +1 -0
  699. package/dist/rest/errors.d.ts +21 -0
  700. package/dist/rest/errors.d.ts.map +1 -0
  701. package/dist/rest/errors.js +16 -0
  702. package/dist/rest/errors.js.map +1 -0
  703. package/dist/rest/openapi.d.ts +4 -0
  704. package/dist/rest/openapi.d.ts.map +1 -0
  705. package/dist/rest/openapi.js +13 -0
  706. package/dist/rest/openapi.js.map +1 -0
  707. package/dist/rest/plugin-resources.d.ts +3 -0
  708. package/dist/rest/plugin-resources.d.ts.map +1 -0
  709. package/dist/rest/plugin-resources.js +37 -0
  710. package/dist/rest/plugin-resources.js.map +1 -0
  711. package/dist/rest/principal.d.ts +19 -0
  712. package/dist/rest/principal.d.ts.map +1 -0
  713. package/dist/rest/principal.js +27 -0
  714. package/dist/rest/principal.js.map +1 -0
  715. package/dist/rest/projection.d.ts +22 -0
  716. package/dist/rest/projection.d.ts.map +1 -0
  717. package/dist/rest/projection.js +99 -0
  718. package/dist/rest/projection.js.map +1 -0
  719. package/dist/rest/rest-base.d.ts +14 -0
  720. package/dist/rest/rest-base.d.ts.map +1 -0
  721. package/dist/rest/rest-base.js +36 -0
  722. package/dist/rest/rest-base.js.map +1 -0
  723. package/dist/rest/rest-routes.d.ts +14 -0
  724. package/dist/rest/rest-routes.d.ts.map +1 -0
  725. package/dist/rest/rest-routes.js +32 -0
  726. package/dist/rest/rest-routes.js.map +1 -0
  727. package/dist/rest/router.d.ts +117 -0
  728. package/dist/rest/router.d.ts.map +1 -0
  729. package/dist/rest/router.js +47 -0
  730. package/dist/rest/router.js.map +1 -0
  731. package/dist/rest/schemas.d.ts +102 -0
  732. package/dist/rest/schemas.d.ts.map +1 -0
  733. package/dist/rest/schemas.js +72 -0
  734. package/dist/rest/schemas.js.map +1 -0
  735. package/dist/rest/terms-resource.d.ts +22 -0
  736. package/dist/rest/terms-resource.d.ts.map +1 -0
  737. package/dist/rest/terms-resource.js +44 -0
  738. package/dist/rest/terms-resource.js.map +1 -0
  739. package/dist/revisions/errors.d.ts +6 -0
  740. package/dist/revisions/errors.d.ts.map +1 -0
  741. package/dist/revisions/errors.js +14 -0
  742. package/dist/revisions/errors.js.map +1 -0
  743. package/dist/revisions/repository.d.ts +55 -0
  744. package/dist/revisions/repository.d.ts.map +1 -0
  745. package/dist/revisions/repository.js +212 -0
  746. package/dist/revisions/repository.js.map +1 -0
  747. package/dist/revisions/slug-codec.d.ts +19 -0
  748. package/dist/revisions/slug-codec.d.ts.map +1 -0
  749. package/dist/revisions/slug-codec.js +61 -0
  750. package/dist/revisions/slug-codec.js.map +1 -0
  751. package/dist/revisions/snapshot-envelope.d.ts +20 -0
  752. package/dist/revisions/snapshot-envelope.d.ts.map +1 -0
  753. package/dist/revisions/snapshot-envelope.js +44 -0
  754. package/dist/revisions/snapshot-envelope.js.map +1 -0
  755. package/dist/route/compile.d.ts +15 -0
  756. package/dist/route/compile.d.ts.map +1 -0
  757. package/dist/route/compile.js +205 -0
  758. package/dist/route/compile.js.map +1 -0
  759. package/dist/route/current.d.ts +56 -0
  760. package/dist/route/current.d.ts.map +1 -0
  761. package/dist/route/current.js +50 -0
  762. package/dist/route/current.js.map +1 -0
  763. package/dist/route/edit-mode.d.ts +20 -0
  764. package/dist/route/edit-mode.d.ts.map +1 -0
  765. package/dist/route/edit-mode.js +22 -0
  766. package/dist/route/edit-mode.js.map +1 -0
  767. package/dist/route/errors.d.ts +19 -0
  768. package/dist/route/errors.d.ts.map +1 -0
  769. package/dist/route/errors.js +32 -0
  770. package/dist/route/errors.js.map +1 -0
  771. package/dist/route/intent.d.ts +35 -0
  772. package/dist/route/intent.d.ts.map +1 -0
  773. package/dist/route/intent.js +1 -0
  774. package/dist/route/intent.js.map +1 -0
  775. package/dist/route/match.d.ts +7 -0
  776. package/dist/route/match.d.ts.map +1 -0
  777. package/dist/route/match.js +18 -0
  778. package/dist/route/match.js.map +1 -0
  779. package/dist/route/paginate.d.ts +25 -0
  780. package/dist/route/paginate.d.ts.map +1 -0
  781. package/dist/route/paginate.js +24 -0
  782. package/dist/route/paginate.js.map +1 -0
  783. package/dist/route/path-chain.d.ts +22 -0
  784. package/dist/route/path-chain.d.ts.map +1 -0
  785. package/dist/route/path-chain.js +77 -0
  786. package/dist/route/path-chain.js.map +1 -0
  787. package/dist/route/permalink.d.ts +70 -0
  788. package/dist/route/permalink.d.ts.map +1 -0
  789. package/dist/route/permalink.js +163 -0
  790. package/dist/route/permalink.js.map +1 -0
  791. package/dist/route/preview.d.ts +12 -0
  792. package/dist/route/preview.d.ts.map +1 -0
  793. package/dist/route/preview.js +20 -0
  794. package/dist/route/preview.js.map +1 -0
  795. package/dist/route/render/archive-props.d.ts +39 -0
  796. package/dist/route/render/archive-props.d.ts.map +1 -0
  797. package/dist/route/render/archive-props.js +32 -0
  798. package/dist/route/render/archive-props.js.map +1 -0
  799. package/dist/route/render/asset-manifest.d.ts +23 -0
  800. package/dist/route/render/asset-manifest.d.ts.map +1 -0
  801. package/dist/route/render/asset-manifest.js +62 -0
  802. package/dist/route/render/asset-manifest.js.map +1 -0
  803. package/dist/route/render/build-resolved-entries.d.ts +11 -0
  804. package/dist/route/render/build-resolved-entries.d.ts.map +1 -0
  805. package/dist/route/render/build-resolved-entries.js +66 -0
  806. package/dist/route/render/build-resolved-entries.js.map +1 -0
  807. package/dist/route/render/inject-editor-bootstrap.d.ts +3 -0
  808. package/dist/route/render/inject-editor-bootstrap.d.ts.map +1 -0
  809. package/dist/route/render/inject-editor-bootstrap.js +13 -0
  810. package/dist/route/render/inject-editor-bootstrap.js.map +1 -0
  811. package/dist/route/render/inject-islands-bootstrap.d.ts +3 -0
  812. package/dist/route/render/inject-islands-bootstrap.d.ts.map +1 -0
  813. package/dist/route/render/inject-islands-bootstrap.js +34 -0
  814. package/dist/route/render/inject-islands-bootstrap.js.map +1 -0
  815. package/dist/route/render/render-template.d.ts +47 -0
  816. package/dist/route/render/render-template.d.ts.map +1 -0
  817. package/dist/route/render/render-template.js +370 -0
  818. package/dist/route/render/render-template.js.map +1 -0
  819. package/dist/route/render/resolved-entry.d.ts +58 -0
  820. package/dist/route/render/resolved-entry.d.ts.map +1 -0
  821. package/dist/route/render/resolved-entry.js +1 -0
  822. package/dist/route/render/resolved-entry.js.map +1 -0
  823. package/dist/route/render/template-hierarchy.d.ts +68 -0
  824. package/dist/route/render/template-hierarchy.d.ts.map +1 -0
  825. package/dist/route/render/template-hierarchy.js +88 -0
  826. package/dist/route/render/template-hierarchy.js.map +1 -0
  827. package/dist/route/render/tiptap.d.ts +8 -0
  828. package/dist/route/render/tiptap.d.ts.map +1 -0
  829. package/dist/route/render/tiptap.js +134 -0
  830. package/dist/route/render/tiptap.js.map +1 -0
  831. package/dist/route/resolve.d.ts +17 -0
  832. package/dist/route/resolve.d.ts.map +1 -0
  833. package/dist/route/resolve.js +408 -0
  834. package/dist/route/resolve.js.map +1 -0
  835. package/dist/rpc/authenticated.d.ts +2 -0
  836. package/dist/rpc/authenticated.d.ts.map +1 -0
  837. package/dist/rpc/authenticated.js +18 -0
  838. package/dist/rpc/authenticated.js.map +1 -0
  839. package/dist/rpc/base.d.ts +60 -0
  840. package/dist/rpc/base.d.ts.map +1 -0
  841. package/dist/rpc/base.js +4 -0
  842. package/dist/rpc/base.js.map +1 -0
  843. package/dist/rpc/build-handler.d.ts +12 -0
  844. package/dist/rpc/build-handler.d.ts.map +1 -0
  845. package/dist/rpc/build-handler.js +20 -0
  846. package/dist/rpc/build-handler.js.map +1 -0
  847. package/dist/rpc/errors.d.ts +59 -0
  848. package/dist/rpc/errors.d.ts.map +1 -0
  849. package/dist/rpc/errors.js +62 -0
  850. package/dist/rpc/errors.js.map +1 -0
  851. package/dist/rpc/hooks.d.ts +422 -0
  852. package/dist/rpc/hooks.d.ts.map +1 -0
  853. package/dist/rpc/hooks.js +2 -0
  854. package/dist/rpc/hooks.js.map +1 -0
  855. package/dist/rpc/index.d.ts +32 -0
  856. package/dist/rpc/index.d.ts.map +1 -0
  857. package/dist/rpc/index.js +20 -0
  858. package/dist/rpc/index.js.map +1 -0
  859. package/dist/rpc/meta/core.d.ts +132 -0
  860. package/dist/rpc/meta/core.d.ts.map +1 -0
  861. package/dist/rpc/meta/core.js +795 -0
  862. package/dist/rpc/meta/core.js.map +1 -0
  863. package/dist/rpc/meta/errors.d.ts +16 -0
  864. package/dist/rpc/meta/errors.d.ts.map +1 -0
  865. package/dist/rpc/meta/errors.js +26 -0
  866. package/dist/rpc/meta/errors.js.map +1 -0
  867. package/dist/rpc/namespaces.d.ts +2 -0
  868. package/dist/rpc/namespaces.d.ts.map +1 -0
  869. package/dist/rpc/namespaces.js +16 -0
  870. package/dist/rpc/namespaces.js.map +1 -0
  871. package/dist/rpc/procedures/auth/allowed-domains/create.d.ts +72 -0
  872. package/dist/rpc/procedures/auth/allowed-domains/create.d.ts.map +1 -0
  873. package/dist/rpc/procedures/auth/allowed-domains/create.js +35 -0
  874. package/dist/rpc/procedures/auth/allowed-domains/create.js.map +1 -0
  875. package/dist/rpc/procedures/auth/allowed-domains/delete.d.ts +70 -0
  876. package/dist/rpc/procedures/auth/allowed-domains/delete.d.ts.map +1 -0
  877. package/dist/rpc/procedures/auth/allowed-domains/delete.js +25 -0
  878. package/dist/rpc/procedures/auth/allowed-domains/delete.js.map +1 -0
  879. package/dist/rpc/procedures/auth/allowed-domains/index.d.ts +281 -0
  880. package/dist/rpc/procedures/auth/allowed-domains/index.d.ts.map +1 -0
  881. package/dist/rpc/procedures/auth/allowed-domains/index.js +11 -0
  882. package/dist/rpc/procedures/auth/allowed-domains/index.js.map +1 -0
  883. package/dist/rpc/procedures/auth/allowed-domains/list.d.ts +68 -0
  884. package/dist/rpc/procedures/auth/allowed-domains/list.d.ts.map +1 -0
  885. package/dist/rpc/procedures/auth/allowed-domains/list.js +19 -0
  886. package/dist/rpc/procedures/auth/allowed-domains/list.js.map +1 -0
  887. package/dist/rpc/procedures/auth/allowed-domains/schemas.d.ts +16 -0
  888. package/dist/rpc/procedures/auth/allowed-domains/schemas.d.ts.map +1 -0
  889. package/dist/rpc/procedures/auth/allowed-domains/schemas.js +23 -0
  890. package/dist/rpc/procedures/auth/allowed-domains/schemas.js.map +1 -0
  891. package/dist/rpc/procedures/auth/allowed-domains/update.d.ts +72 -0
  892. package/dist/rpc/procedures/auth/allowed-domains/update.d.ts.map +1 -0
  893. package/dist/rpc/procedures/auth/allowed-domains/update.js +34 -0
  894. package/dist/rpc/procedures/auth/allowed-domains/update.js.map +1 -0
  895. package/dist/rpc/procedures/auth/api-tokens/admin-list.d.ts +101 -0
  896. package/dist/rpc/procedures/auth/api-tokens/admin-list.d.ts.map +1 -0
  897. package/dist/rpc/procedures/auth/api-tokens/admin-list.js +69 -0
  898. package/dist/rpc/procedures/auth/api-tokens/admin-list.js.map +1 -0
  899. package/dist/rpc/procedures/auth/api-tokens/admin-revoke.d.ts +64 -0
  900. package/dist/rpc/procedures/auth/api-tokens/admin-revoke.d.ts.map +1 -0
  901. package/dist/rpc/procedures/auth/api-tokens/admin-revoke.js +35 -0
  902. package/dist/rpc/procedures/auth/api-tokens/admin-revoke.js.map +1 -0
  903. package/dist/rpc/procedures/auth/api-tokens/create.d.ts +84 -0
  904. package/dist/rpc/procedures/auth/api-tokens/create.d.ts.map +1 -0
  905. package/dist/rpc/procedures/auth/api-tokens/create.js +50 -0
  906. package/dist/rpc/procedures/auth/api-tokens/create.js.map +1 -0
  907. package/dist/rpc/procedures/auth/api-tokens/index.d.ts +385 -0
  908. package/dist/rpc/procedures/auth/api-tokens/index.d.ts.map +1 -0
  909. package/dist/rpc/procedures/auth/api-tokens/index.js +13 -0
  910. package/dist/rpc/procedures/auth/api-tokens/index.js.map +1 -0
  911. package/dist/rpc/procedures/auth/api-tokens/list.d.ts +74 -0
  912. package/dist/rpc/procedures/auth/api-tokens/list.d.ts.map +1 -0
  913. package/dist/rpc/procedures/auth/api-tokens/list.js +32 -0
  914. package/dist/rpc/procedures/auth/api-tokens/list.js.map +1 -0
  915. package/dist/rpc/procedures/auth/api-tokens/revoke.d.ts +64 -0
  916. package/dist/rpc/procedures/auth/api-tokens/revoke.d.ts.map +1 -0
  917. package/dist/rpc/procedures/auth/api-tokens/revoke.js +27 -0
  918. package/dist/rpc/procedures/auth/api-tokens/revoke.js.map +1 -0
  919. package/dist/rpc/procedures/auth/api-tokens/schemas.d.ts +27 -0
  920. package/dist/rpc/procedures/auth/api-tokens/schemas.d.ts.map +1 -0
  921. package/dist/rpc/procedures/auth/api-tokens/schemas.js +68 -0
  922. package/dist/rpc/procedures/auth/api-tokens/schemas.js.map +1 -0
  923. package/dist/rpc/procedures/auth/credentials/delete.d.ts +64 -0
  924. package/dist/rpc/procedures/auth/credentials/delete.d.ts.map +1 -0
  925. package/dist/rpc/procedures/auth/credentials/delete.js +44 -0
  926. package/dist/rpc/procedures/auth/credentials/delete.js.map +1 -0
  927. package/dist/rpc/procedures/auth/credentials/index.d.ts +203 -0
  928. package/dist/rpc/procedures/auth/credentials/index.d.ts.map +1 -0
  929. package/dist/rpc/procedures/auth/credentials/index.js +9 -0
  930. package/dist/rpc/procedures/auth/credentials/index.js.map +1 -0
  931. package/dist/rpc/procedures/auth/credentials/list.d.ts +72 -0
  932. package/dist/rpc/procedures/auth/credentials/list.d.ts.map +1 -0
  933. package/dist/rpc/procedures/auth/credentials/list.js +27 -0
  934. package/dist/rpc/procedures/auth/credentials/list.js.map +1 -0
  935. package/dist/rpc/procedures/auth/credentials/rename.d.ts +67 -0
  936. package/dist/rpc/procedures/auth/credentials/rename.d.ts.map +1 -0
  937. package/dist/rpc/procedures/auth/credentials/rename.js +27 -0
  938. package/dist/rpc/procedures/auth/credentials/rename.js.map +1 -0
  939. package/dist/rpc/procedures/auth/credentials/schemas.d.ts +10 -0
  940. package/dist/rpc/procedures/auth/credentials/schemas.d.ts.map +1 -0
  941. package/dist/rpc/procedures/auth/credentials/schemas.js +20 -0
  942. package/dist/rpc/procedures/auth/credentials/schemas.js.map +1 -0
  943. package/dist/rpc/procedures/auth/device-flow/approve.d.ts +66 -0
  944. package/dist/rpc/procedures/auth/device-flow/approve.d.ts.map +1 -0
  945. package/dist/rpc/procedures/auth/device-flow/approve.js +42 -0
  946. package/dist/rpc/procedures/auth/device-flow/approve.js.map +1 -0
  947. package/dist/rpc/procedures/auth/device-flow/deny.d.ts +64 -0
  948. package/dist/rpc/procedures/auth/device-flow/deny.d.ts.map +1 -0
  949. package/dist/rpc/procedures/auth/device-flow/deny.js +27 -0
  950. package/dist/rpc/procedures/auth/device-flow/deny.js.map +1 -0
  951. package/dist/rpc/procedures/auth/device-flow/index.d.ts +194 -0
  952. package/dist/rpc/procedures/auth/device-flow/index.d.ts.map +1 -0
  953. package/dist/rpc/procedures/auth/device-flow/index.js +9 -0
  954. package/dist/rpc/procedures/auth/device-flow/index.js.map +1 -0
  955. package/dist/rpc/procedures/auth/device-flow/lookup-helpers.d.ts +19 -0
  956. package/dist/rpc/procedures/auth/device-flow/lookup-helpers.d.ts.map +1 -0
  957. package/dist/rpc/procedures/auth/device-flow/lookup-helpers.js +17 -0
  958. package/dist/rpc/procedures/auth/device-flow/lookup-helpers.js.map +1 -0
  959. package/dist/rpc/procedures/auth/device-flow/lookup.d.ts +64 -0
  960. package/dist/rpc/procedures/auth/device-flow/lookup.d.ts.map +1 -0
  961. package/dist/rpc/procedures/auth/device-flow/lookup.js +23 -0
  962. package/dist/rpc/procedures/auth/device-flow/lookup.js.map +1 -0
  963. package/dist/rpc/procedures/auth/device-flow/schemas.d.ts +13 -0
  964. package/dist/rpc/procedures/auth/device-flow/schemas.d.ts.map +1 -0
  965. package/dist/rpc/procedures/auth/device-flow/schemas.js +45 -0
  966. package/dist/rpc/procedures/auth/device-flow/schemas.js.map +1 -0
  967. package/dist/rpc/procedures/auth/index.d.ts +1524 -0
  968. package/dist/rpc/procedures/auth/index.d.ts.map +1 -0
  969. package/dist/rpc/procedures/auth/index.js +21 -0
  970. package/dist/rpc/procedures/auth/index.js.map +1 -0
  971. package/dist/rpc/procedures/auth/login-links.d.ts +66 -0
  972. package/dist/rpc/procedures/auth/login-links.d.ts.map +1 -0
  973. package/dist/rpc/procedures/auth/login-links.js +14 -0
  974. package/dist/rpc/procedures/auth/login-links.js.map +1 -0
  975. package/dist/rpc/procedures/auth/mailer/index.d.ts +66 -0
  976. package/dist/rpc/procedures/auth/mailer/index.d.ts.map +1 -0
  977. package/dist/rpc/procedures/auth/mailer/index.js +5 -0
  978. package/dist/rpc/procedures/auth/mailer/index.js.map +1 -0
  979. package/dist/rpc/procedures/auth/mailer/schemas.d.ts +5 -0
  980. package/dist/rpc/procedures/auth/mailer/schemas.d.ts.map +1 -0
  981. package/dist/rpc/procedures/auth/mailer/schemas.js +5 -0
  982. package/dist/rpc/procedures/auth/mailer/schemas.js.map +1 -0
  983. package/dist/rpc/procedures/auth/mailer/test-send.d.ts +64 -0
  984. package/dist/rpc/procedures/auth/mailer/test-send.d.ts.map +1 -0
  985. package/dist/rpc/procedures/auth/mailer/test-send.js +44 -0
  986. package/dist/rpc/procedures/auth/mailer/test-send.js.map +1 -0
  987. package/dist/rpc/procedures/auth/oauth-providers.d.ts +59 -0
  988. package/dist/rpc/procedures/auth/oauth-providers.d.ts.map +1 -0
  989. package/dist/rpc/procedures/auth/oauth-providers.js +8 -0
  990. package/dist/rpc/procedures/auth/oauth-providers.js.map +1 -0
  991. package/dist/rpc/procedures/auth/schemas.d.ts +27 -0
  992. package/dist/rpc/procedures/auth/schemas.d.ts.map +1 -0
  993. package/dist/rpc/procedures/auth/schemas.js +28 -0
  994. package/dist/rpc/procedures/auth/schemas.js.map +1 -0
  995. package/dist/rpc/procedures/auth/session.d.ts +78 -0
  996. package/dist/rpc/procedures/auth/session.d.ts.map +1 -0
  997. package/dist/rpc/procedures/auth/session.js +32 -0
  998. package/dist/rpc/procedures/auth/session.js.map +1 -0
  999. package/dist/rpc/procedures/auth/sessions/index.d.ts +198 -0
  1000. package/dist/rpc/procedures/auth/sessions/index.d.ts.map +1 -0
  1001. package/dist/rpc/procedures/auth/sessions/index.js +9 -0
  1002. package/dist/rpc/procedures/auth/sessions/index.js.map +1 -0
  1003. package/dist/rpc/procedures/auth/sessions/list.d.ts +72 -0
  1004. package/dist/rpc/procedures/auth/sessions/list.d.ts.map +1 -0
  1005. package/dist/rpc/procedures/auth/sessions/list.js +47 -0
  1006. package/dist/rpc/procedures/auth/sessions/list.js.map +1 -0
  1007. package/dist/rpc/procedures/auth/sessions/revoke-others.d.ts +62 -0
  1008. package/dist/rpc/procedures/auth/sessions/revoke-others.d.ts.map +1 -0
  1009. package/dist/rpc/procedures/auth/sessions/revoke-others.js +47 -0
  1010. package/dist/rpc/procedures/auth/sessions/revoke-others.js.map +1 -0
  1011. package/dist/rpc/procedures/auth/sessions/revoke.d.ts +64 -0
  1012. package/dist/rpc/procedures/auth/sessions/revoke.d.ts.map +1 -0
  1013. package/dist/rpc/procedures/auth/sessions/revoke.js +39 -0
  1014. package/dist/rpc/procedures/auth/sessions/revoke.js.map +1 -0
  1015. package/dist/rpc/procedures/auth/sessions/schemas.d.ts +7 -0
  1016. package/dist/rpc/procedures/auth/sessions/schemas.d.ts.map +1 -0
  1017. package/dist/rpc/procedures/auth/sessions/schemas.js +11 -0
  1018. package/dist/rpc/procedures/auth/sessions/schemas.js.map +1 -0
  1019. package/dist/rpc/procedures/entry/activity.d.ts +75 -0
  1020. package/dist/rpc/procedures/entry/activity.d.ts.map +1 -0
  1021. package/dist/rpc/procedures/entry/activity.js +76 -0
  1022. package/dist/rpc/procedures/entry/activity.js.map +1 -0
  1023. package/dist/rpc/procedures/entry/bulk.d.ts +190 -0
  1024. package/dist/rpc/procedures/entry/bulk.d.ts.map +1 -0
  1025. package/dist/rpc/procedures/entry/bulk.js +72 -0
  1026. package/dist/rpc/procedures/entry/bulk.js.map +1 -0
  1027. package/dist/rpc/procedures/entry/concurrency.d.ts +4 -0
  1028. package/dist/rpc/procedures/entry/concurrency.d.ts.map +1 -0
  1029. package/dist/rpc/procedures/entry/concurrency.js +13 -0
  1030. package/dist/rpc/procedures/entry/concurrency.js.map +1 -0
  1031. package/dist/rpc/procedures/entry/content.d.ts +20 -0
  1032. package/dist/rpc/procedures/entry/content.d.ts.map +1 -0
  1033. package/dist/rpc/procedures/entry/content.js +27 -0
  1034. package/dist/rpc/procedures/entry/content.js.map +1 -0
  1035. package/dist/rpc/procedures/entry/create-preview-link.d.ts +66 -0
  1036. package/dist/rpc/procedures/entry/create-preview-link.d.ts.map +1 -0
  1037. package/dist/rpc/procedures/entry/create-preview-link.js +38 -0
  1038. package/dist/rpc/procedures/entry/create-preview-link.js.map +1 -0
  1039. package/dist/rpc/procedures/entry/create.d.ts +107 -0
  1040. package/dist/rpc/procedures/entry/create.d.ts.map +1 -0
  1041. package/dist/rpc/procedures/entry/create.js +115 -0
  1042. package/dist/rpc/procedures/entry/create.js.map +1 -0
  1043. package/dist/rpc/procedures/entry/dashboard.d.ts +140 -0
  1044. package/dist/rpc/procedures/entry/dashboard.d.ts.map +1 -0
  1045. package/dist/rpc/procedures/entry/dashboard.js +82 -0
  1046. package/dist/rpc/procedures/entry/dashboard.js.map +1 -0
  1047. package/dist/rpc/procedures/entry/delete-permanent.d.ts +90 -0
  1048. package/dist/rpc/procedures/entry/delete-permanent.d.ts.map +1 -0
  1049. package/dist/rpc/procedures/entry/delete-permanent.js +28 -0
  1050. package/dist/rpc/procedures/entry/delete-permanent.js.map +1 -0
  1051. package/dist/rpc/procedures/entry/discard-draft.d.ts +65 -0
  1052. package/dist/rpc/procedures/entry/discard-draft.d.ts.map +1 -0
  1053. package/dist/rpc/procedures/entry/discard-draft.js +43 -0
  1054. package/dist/rpc/procedures/entry/discard-draft.js.map +1 -0
  1055. package/dist/rpc/procedures/entry/duplicate.d.ts +90 -0
  1056. package/dist/rpc/procedures/entry/duplicate.d.ts.map +1 -0
  1057. package/dist/rpc/procedures/entry/duplicate.js +86 -0
  1058. package/dist/rpc/procedures/entry/duplicate.js.map +1 -0
  1059. package/dist/rpc/procedures/entry/get.d.ts +105 -0
  1060. package/dist/rpc/procedures/entry/get.d.ts.map +1 -0
  1061. package/dist/rpc/procedures/entry/get.js +56 -0
  1062. package/dist/rpc/procedures/entry/get.js.map +1 -0
  1063. package/dist/rpc/procedures/entry/helpers.d.ts +2 -0
  1064. package/dist/rpc/procedures/entry/helpers.d.ts.map +1 -0
  1065. package/dist/rpc/procedures/entry/helpers.js +10 -0
  1066. package/dist/rpc/procedures/entry/helpers.js.map +1 -0
  1067. package/dist/rpc/procedures/entry/index.d.ts +1811 -0
  1068. package/dist/rpc/procedures/entry/index.d.ts.map +1 -0
  1069. package/dist/rpc/procedures/entry/index.js +38 -0
  1070. package/dist/rpc/procedures/entry/index.js.map +1 -0
  1071. package/dist/rpc/procedures/entry/lifecycle.d.ts +77 -0
  1072. package/dist/rpc/procedures/entry/lifecycle.d.ts.map +1 -0
  1073. package/dist/rpc/procedures/entry/lifecycle.js +223 -0
  1074. package/dist/rpc/procedures/entry/lifecycle.js.map +1 -0
  1075. package/dist/rpc/procedures/entry/list.d.ts +114 -0
  1076. package/dist/rpc/procedures/entry/list.d.ts.map +1 -0
  1077. package/dist/rpc/procedures/entry/list.js +19 -0
  1078. package/dist/rpc/procedures/entry/list.js.map +1 -0
  1079. package/dist/rpc/procedures/entry/lookup.d.ts +4 -0
  1080. package/dist/rpc/procedures/entry/lookup.d.ts.map +1 -0
  1081. package/dist/rpc/procedures/entry/lookup.js +120 -0
  1082. package/dist/rpc/procedures/entry/lookup.js.map +1 -0
  1083. package/dist/rpc/procedures/entry/meta.d.ts +64 -0
  1084. package/dist/rpc/procedures/entry/meta.d.ts.map +1 -0
  1085. package/dist/rpc/procedures/entry/meta.js +65 -0
  1086. package/dist/rpc/procedures/entry/meta.js.map +1 -0
  1087. package/dist/rpc/procedures/entry/publish-scheduled.d.ts +21 -0
  1088. package/dist/rpc/procedures/entry/publish-scheduled.d.ts.map +1 -0
  1089. package/dist/rpc/procedures/entry/publish-scheduled.js +50 -0
  1090. package/dist/rpc/procedures/entry/publish-scheduled.js.map +1 -0
  1091. package/dist/rpc/procedures/entry/publish.d.ts +92 -0
  1092. package/dist/rpc/procedures/entry/publish.d.ts.map +1 -0
  1093. package/dist/rpc/procedures/entry/publish.js +111 -0
  1094. package/dist/rpc/procedures/entry/publish.js.map +1 -0
  1095. package/dist/rpc/procedures/entry/read-errors.d.ts +29 -0
  1096. package/dist/rpc/procedures/entry/read-errors.d.ts.map +1 -0
  1097. package/dist/rpc/procedures/entry/read-errors.js +23 -0
  1098. package/dist/rpc/procedures/entry/read-errors.js.map +1 -0
  1099. package/dist/rpc/procedures/entry/refresh-block-loader.d.ts +65 -0
  1100. package/dist/rpc/procedures/entry/refresh-block-loader.d.ts.map +1 -0
  1101. package/dist/rpc/procedures/entry/refresh-block-loader.js +42 -0
  1102. package/dist/rpc/procedures/entry/refresh-block-loader.js.map +1 -0
  1103. package/dist/rpc/procedures/entry/restore.d.ts +90 -0
  1104. package/dist/rpc/procedures/entry/restore.d.ts.map +1 -0
  1105. package/dist/rpc/procedures/entry/restore.js +27 -0
  1106. package/dist/rpc/procedures/entry/restore.js.map +1 -0
  1107. package/dist/rpc/procedures/entry/revisions.d.ts +672 -0
  1108. package/dist/rpc/procedures/entry/revisions.d.ts.map +1 -0
  1109. package/dist/rpc/procedures/entry/revisions.js +305 -0
  1110. package/dist/rpc/procedures/entry/revisions.js.map +1 -0
  1111. package/dist/rpc/procedures/entry/schemas.d.ts +172 -0
  1112. package/dist/rpc/procedures/entry/schemas.d.ts.map +1 -0
  1113. package/dist/rpc/procedures/entry/schemas.js +171 -0
  1114. package/dist/rpc/procedures/entry/schemas.js.map +1 -0
  1115. package/dist/rpc/procedures/entry/search-terms.d.ts +45 -0
  1116. package/dist/rpc/procedures/entry/search-terms.d.ts.map +1 -0
  1117. package/dist/rpc/procedures/entry/search-terms.js +79 -0
  1118. package/dist/rpc/procedures/entry/search-terms.js.map +1 -0
  1119. package/dist/rpc/procedures/entry/terms.d.ts +61 -0
  1120. package/dist/rpc/procedures/entry/terms.d.ts.map +1 -0
  1121. package/dist/rpc/procedures/entry/terms.js +128 -0
  1122. package/dist/rpc/procedures/entry/terms.js.map +1 -0
  1123. package/dist/rpc/procedures/entry/trash.d.ts +90 -0
  1124. package/dist/rpc/procedures/entry/trash.d.ts.map +1 -0
  1125. package/dist/rpc/procedures/entry/trash.js +27 -0
  1126. package/dist/rpc/procedures/entry/trash.js.map +1 -0
  1127. package/dist/rpc/procedures/entry/update.d.ts +110 -0
  1128. package/dist/rpc/procedures/entry/update.d.ts.map +1 -0
  1129. package/dist/rpc/procedures/entry/update.js +268 -0
  1130. package/dist/rpc/procedures/entry/update.js.map +1 -0
  1131. package/dist/rpc/procedures/lookup/index.d.ts +135 -0
  1132. package/dist/rpc/procedures/lookup/index.d.ts.map +1 -0
  1133. package/dist/rpc/procedures/lookup/index.js +7 -0
  1134. package/dist/rpc/procedures/lookup/index.js.map +1 -0
  1135. package/dist/rpc/procedures/lookup/list.d.ts +68 -0
  1136. package/dist/rpc/procedures/lookup/list.d.ts.map +1 -0
  1137. package/dist/rpc/procedures/lookup/list.js +23 -0
  1138. package/dist/rpc/procedures/lookup/list.js.map +1 -0
  1139. package/dist/rpc/procedures/lookup/resolve.d.ts +66 -0
  1140. package/dist/rpc/procedures/lookup/resolve.d.ts.map +1 -0
  1141. package/dist/rpc/procedures/lookup/resolve.js +18 -0
  1142. package/dist/rpc/procedures/lookup/resolve.js.map +1 -0
  1143. package/dist/rpc/procedures/lookup/schemas.d.ts +31 -0
  1144. package/dist/rpc/procedures/lookup/schemas.d.ts.map +1 -0
  1145. package/dist/rpc/procedures/lookup/schemas.js +55 -0
  1146. package/dist/rpc/procedures/lookup/schemas.js.map +1 -0
  1147. package/dist/rpc/procedures/lookup-adapters.d.ts +3 -0
  1148. package/dist/rpc/procedures/lookup-adapters.d.ts.map +1 -0
  1149. package/dist/rpc/procedures/lookup-adapters.js +36 -0
  1150. package/dist/rpc/procedures/lookup-adapters.js.map +1 -0
  1151. package/dist/rpc/procedures/lookup.errors.d.ts +15 -0
  1152. package/dist/rpc/procedures/lookup.errors.d.ts.map +1 -0
  1153. package/dist/rpc/procedures/lookup.errors.js +23 -0
  1154. package/dist/rpc/procedures/lookup.errors.js.map +1 -0
  1155. package/dist/rpc/procedures/search/index.d.ts +64 -0
  1156. package/dist/rpc/procedures/search/index.d.ts.map +1 -0
  1157. package/dist/rpc/procedures/search/index.js +25 -0
  1158. package/dist/rpc/procedures/search/index.js.map +1 -0
  1159. package/dist/rpc/procedures/settings/get.d.ts +60 -0
  1160. package/dist/rpc/procedures/settings/get.d.ts.map +1 -0
  1161. package/dist/rpc/procedures/settings/get.js +35 -0
  1162. package/dist/rpc/procedures/settings/get.js.map +1 -0
  1163. package/dist/rpc/procedures/settings/index.d.ts +125 -0
  1164. package/dist/rpc/procedures/settings/index.d.ts.map +1 -0
  1165. package/dist/rpc/procedures/settings/index.js +7 -0
  1166. package/dist/rpc/procedures/settings/index.js.map +1 -0
  1167. package/dist/rpc/procedures/settings/schemas.d.ts +15 -0
  1168. package/dist/rpc/procedures/settings/schemas.d.ts.map +1 -0
  1169. package/dist/rpc/procedures/settings/schemas.js +33 -0
  1170. package/dist/rpc/procedures/settings/schemas.js.map +1 -0
  1171. package/dist/rpc/procedures/settings/upsert.d.ts +63 -0
  1172. package/dist/rpc/procedures/settings/upsert.d.ts.map +1 -0
  1173. package/dist/rpc/procedures/settings/upsert.js +84 -0
  1174. package/dist/rpc/procedures/settings/upsert.js.map +1 -0
  1175. package/dist/rpc/procedures/term/create.d.ts +85 -0
  1176. package/dist/rpc/procedures/term/create.d.ts.map +1 -0
  1177. package/dist/rpc/procedures/term/create.js +73 -0
  1178. package/dist/rpc/procedures/term/create.js.map +1 -0
  1179. package/dist/rpc/procedures/term/delete.d.ts +78 -0
  1180. package/dist/rpc/procedures/term/delete.d.ts.map +1 -0
  1181. package/dist/rpc/procedures/term/delete.js +33 -0
  1182. package/dist/rpc/procedures/term/delete.js.map +1 -0
  1183. package/dist/rpc/procedures/term/get.d.ts +78 -0
  1184. package/dist/rpc/procedures/term/get.d.ts.map +1 -0
  1185. package/dist/rpc/procedures/term/get.js +18 -0
  1186. package/dist/rpc/procedures/term/get.js.map +1 -0
  1187. package/dist/rpc/procedures/term/helpers.d.ts +13 -0
  1188. package/dist/rpc/procedures/term/helpers.d.ts.map +1 -0
  1189. package/dist/rpc/procedures/term/helpers.js +33 -0
  1190. package/dist/rpc/procedures/term/helpers.js.map +1 -0
  1191. package/dist/rpc/procedures/term/index.d.ts +407 -0
  1192. package/dist/rpc/procedures/term/index.d.ts.map +1 -0
  1193. package/dist/rpc/procedures/term/index.js +13 -0
  1194. package/dist/rpc/procedures/term/index.js.map +1 -0
  1195. package/dist/rpc/procedures/term/list.d.ts +82 -0
  1196. package/dist/rpc/procedures/term/list.d.ts.map +1 -0
  1197. package/dist/rpc/procedures/term/list.js +19 -0
  1198. package/dist/rpc/procedures/term/list.js.map +1 -0
  1199. package/dist/rpc/procedures/term/lookup.d.ts +4 -0
  1200. package/dist/rpc/procedures/term/lookup.d.ts.map +1 -0
  1201. package/dist/rpc/procedures/term/lookup.js +111 -0
  1202. package/dist/rpc/procedures/term/lookup.js.map +1 -0
  1203. package/dist/rpc/procedures/term/meta.d.ts +33 -0
  1204. package/dist/rpc/procedures/term/meta.d.ts.map +1 -0
  1205. package/dist/rpc/procedures/term/meta.js +37 -0
  1206. package/dist/rpc/procedures/term/meta.js.map +1 -0
  1207. package/dist/rpc/procedures/term/read-errors.d.ts +23 -0
  1208. package/dist/rpc/procedures/term/read-errors.d.ts.map +1 -0
  1209. package/dist/rpc/procedures/term/read-errors.js +24 -0
  1210. package/dist/rpc/procedures/term/read-errors.js.map +1 -0
  1211. package/dist/rpc/procedures/term/schemas.d.ts +40 -0
  1212. package/dist/rpc/procedures/term/schemas.d.ts.map +1 -0
  1213. package/dist/rpc/procedures/term/schemas.js +32 -0
  1214. package/dist/rpc/procedures/term/schemas.js.map +1 -0
  1215. package/dist/rpc/procedures/term/update.d.ts +85 -0
  1216. package/dist/rpc/procedures/term/update.d.ts.map +1 -0
  1217. package/dist/rpc/procedures/term/update.js +95 -0
  1218. package/dist/rpc/procedures/term/update.js.map +1 -0
  1219. package/dist/rpc/procedures/user/cancel-email-change.d.ts +64 -0
  1220. package/dist/rpc/procedures/user/cancel-email-change.d.ts.map +1 -0
  1221. package/dist/rpc/procedures/user/cancel-email-change.js +35 -0
  1222. package/dist/rpc/procedures/user/cancel-email-change.js.map +1 -0
  1223. package/dist/rpc/procedures/user/delete.d.ts +83 -0
  1224. package/dist/rpc/procedures/user/delete.d.ts.map +1 -0
  1225. package/dist/rpc/procedures/user/delete.js +70 -0
  1226. package/dist/rpc/procedures/user/delete.js.map +1 -0
  1227. package/dist/rpc/procedures/user/disable.d.ts +82 -0
  1228. package/dist/rpc/procedures/user/disable.d.ts.map +1 -0
  1229. package/dist/rpc/procedures/user/disable.js +51 -0
  1230. package/dist/rpc/procedures/user/disable.js.map +1 -0
  1231. package/dist/rpc/procedures/user/enable.d.ts +82 -0
  1232. package/dist/rpc/procedures/user/enable.d.ts.map +1 -0
  1233. package/dist/rpc/procedures/user/enable.js +44 -0
  1234. package/dist/rpc/procedures/user/enable.js.map +1 -0
  1235. package/dist/rpc/procedures/user/get.d.ts +82 -0
  1236. package/dist/rpc/procedures/user/get.d.ts.map +1 -0
  1237. package/dist/rpc/procedures/user/get.js +27 -0
  1238. package/dist/rpc/procedures/user/get.js.map +1 -0
  1239. package/dist/rpc/procedures/user/helpers.d.ts +10 -0
  1240. package/dist/rpc/procedures/user/helpers.d.ts.map +1 -0
  1241. package/dist/rpc/procedures/user/helpers.js +16 -0
  1242. package/dist/rpc/procedures/user/helpers.js.map +1 -0
  1243. package/dist/rpc/procedures/user/index.d.ts +834 -0
  1244. package/dist/rpc/procedures/user/index.d.ts.map +1 -0
  1245. package/dist/rpc/procedures/user/index.js +25 -0
  1246. package/dist/rpc/procedures/user/index.js.map +1 -0
  1247. package/dist/rpc/procedures/user/invite.d.ts +68 -0
  1248. package/dist/rpc/procedures/user/invite.d.ts.map +1 -0
  1249. package/dist/rpc/procedures/user/invite.js +62 -0
  1250. package/dist/rpc/procedures/user/invite.js.map +1 -0
  1251. package/dist/rpc/procedures/user/list.d.ts +89 -0
  1252. package/dist/rpc/procedures/user/list.d.ts.map +1 -0
  1253. package/dist/rpc/procedures/user/list.js +75 -0
  1254. package/dist/rpc/procedures/user/list.js.map +1 -0
  1255. package/dist/rpc/procedures/user/lookup.d.ts +4 -0
  1256. package/dist/rpc/procedures/user/lookup.d.ts.map +1 -0
  1257. package/dist/rpc/procedures/user/lookup.js +95 -0
  1258. package/dist/rpc/procedures/user/lookup.js.map +1 -0
  1259. package/dist/rpc/procedures/user/meta.d.ts +32 -0
  1260. package/dist/rpc/procedures/user/meta.d.ts.map +1 -0
  1261. package/dist/rpc/procedures/user/meta.js +38 -0
  1262. package/dist/rpc/procedures/user/meta.js.map +1 -0
  1263. package/dist/rpc/procedures/user/pending-email-change.d.ts +76 -0
  1264. package/dist/rpc/procedures/user/pending-email-change.d.ts.map +1 -0
  1265. package/dist/rpc/procedures/user/pending-email-change.js +62 -0
  1266. package/dist/rpc/procedures/user/pending-email-change.js.map +1 -0
  1267. package/dist/rpc/procedures/user/request-email-change.d.ts +67 -0
  1268. package/dist/rpc/procedures/user/request-email-change.d.ts.map +1 -0
  1269. package/dist/rpc/procedures/user/request-email-change.js +86 -0
  1270. package/dist/rpc/procedures/user/request-email-change.js.map +1 -0
  1271. package/dist/rpc/procedures/user/schemas.d.ts +52 -0
  1272. package/dist/rpc/procedures/user/schemas.d.ts.map +1 -0
  1273. package/dist/rpc/procedures/user/schemas.js +44 -0
  1274. package/dist/rpc/procedures/user/schemas.js.map +1 -0
  1275. package/dist/rpc/procedures/user/set-locale.d.ts +61 -0
  1276. package/dist/rpc/procedures/user/set-locale.d.ts.map +1 -0
  1277. package/dist/rpc/procedures/user/set-locale.js +31 -0
  1278. package/dist/rpc/procedures/user/set-locale.js.map +1 -0
  1279. package/dist/rpc/procedures/user/update.d.ts +89 -0
  1280. package/dist/rpc/procedures/user/update.d.ts.map +1 -0
  1281. package/dist/rpc/procedures/user/update.js +137 -0
  1282. package/dist/rpc/procedures/user/update.js.map +1 -0
  1283. package/dist/rpc/router.d.ts +4893 -0
  1284. package/dist/rpc/router.d.ts.map +1 -0
  1285. package/dist/rpc/router.js +17 -0
  1286. package/dist/rpc/router.js.map +1 -0
  1287. package/dist/rpc/schemas.d.ts +3 -0
  1288. package/dist/rpc/schemas.d.ts.map +1 -0
  1289. package/dist/rpc/schemas.js +9 -0
  1290. package/dist/rpc/schemas.js.map +1 -0
  1291. package/dist/rpc/validation.d.ts +58 -0
  1292. package/dist/rpc/validation.d.ts.map +1 -0
  1293. package/dist/rpc/validation.js +72 -0
  1294. package/dist/rpc/validation.js.map +1 -0
  1295. package/dist/rpc/vmessage.d.ts +21 -0
  1296. package/dist/rpc/vmessage.d.ts.map +1 -0
  1297. package/dist/rpc/vmessage.js +20 -0
  1298. package/dist/rpc/vmessage.js.map +1 -0
  1299. package/dist/runtime/adapter.d.ts +38 -0
  1300. package/dist/runtime/adapter.d.ts.map +1 -0
  1301. package/dist/runtime/adapter.js +1 -0
  1302. package/dist/runtime/adapter.js.map +1 -0
  1303. package/dist/runtime/admin-shell.d.ts +11 -0
  1304. package/dist/runtime/admin-shell.d.ts.map +1 -0
  1305. package/dist/runtime/admin-shell.js +14 -0
  1306. package/dist/runtime/admin-shell.js.map +1 -0
  1307. package/dist/runtime/app.d.ts +165 -0
  1308. package/dist/runtime/app.d.ts.map +1 -0
  1309. package/dist/runtime/app.js +232 -0
  1310. package/dist/runtime/app.js.map +1 -0
  1311. package/dist/runtime/bindings.d.ts +6 -0
  1312. package/dist/runtime/bindings.d.ts.map +1 -0
  1313. package/dist/runtime/bindings.js +1 -0
  1314. package/dist/runtime/bindings.js.map +1 -0
  1315. package/dist/runtime/dispatcher.d.ts +11 -0
  1316. package/dist/runtime/dispatcher.d.ts.map +1 -0
  1317. package/dist/runtime/dispatcher.js +560 -0
  1318. package/dist/runtime/dispatcher.js.map +1 -0
  1319. package/dist/runtime/env-input.d.ts +19 -0
  1320. package/dist/runtime/env-input.d.ts.map +1 -0
  1321. package/dist/runtime/env-input.js +13 -0
  1322. package/dist/runtime/env-input.js.map +1 -0
  1323. package/dist/runtime/errors.d.ts +29 -0
  1324. package/dist/runtime/errors.d.ts.map +1 -0
  1325. package/dist/runtime/errors.js +32 -0
  1326. package/dist/runtime/errors.js.map +1 -0
  1327. package/dist/runtime/http.d.ts +10 -0
  1328. package/dist/runtime/http.d.ts.map +1 -0
  1329. package/dist/runtime/http.js +51 -0
  1330. package/dist/runtime/http.js.map +1 -0
  1331. package/dist/runtime/load-user-for-public-request.d.ts +3 -0
  1332. package/dist/runtime/load-user-for-public-request.d.ts.map +1 -0
  1333. package/dist/runtime/load-user-for-public-request.js +13 -0
  1334. package/dist/runtime/load-user-for-public-request.js.map +1 -0
  1335. package/dist/runtime/memory-storage.d.ts +8 -0
  1336. package/dist/runtime/memory-storage.d.ts.map +1 -0
  1337. package/dist/runtime/memory-storage.js +166 -0
  1338. package/dist/runtime/memory-storage.js.map +1 -0
  1339. package/dist/runtime/register-core-scheduled-tasks.d.ts +7 -0
  1340. package/dist/runtime/register-core-scheduled-tasks.d.ts.map +1 -0
  1341. package/dist/runtime/register-core-scheduled-tasks.js +38 -0
  1342. package/dist/runtime/register-core-scheduled-tasks.js.map +1 -0
  1343. package/dist/runtime/scheduled.d.ts +17 -0
  1344. package/dist/runtime/scheduled.d.ts.map +1 -0
  1345. package/dist/runtime/scheduled.js +33 -0
  1346. package/dist/runtime/scheduled.js.map +1 -0
  1347. package/dist/runtime/shortcode-registry.d.ts +10 -0
  1348. package/dist/runtime/shortcode-registry.d.ts.map +1 -0
  1349. package/dist/runtime/shortcode-registry.js +15 -0
  1350. package/dist/runtime/shortcode-registry.js.map +1 -0
  1351. package/dist/runtime/slots.d.ts +203 -0
  1352. package/dist/runtime/slots.d.ts.map +1 -0
  1353. package/dist/runtime/slots.js +1 -0
  1354. package/dist/runtime/slots.js.map +1 -0
  1355. package/dist/search/admin-search.d.ts +37 -0
  1356. package/dist/search/admin-search.d.ts.map +1 -0
  1357. package/dist/search/admin-search.js +24 -0
  1358. package/dist/search/admin-search.js.map +1 -0
  1359. package/dist/search/entries-handler.d.ts +10 -0
  1360. package/dist/search/entries-handler.d.ts.map +1 -0
  1361. package/dist/search/entries-handler.js +77 -0
  1362. package/dist/search/entries-handler.js.map +1 -0
  1363. package/dist/search/register-core-handlers.d.ts +8 -0
  1364. package/dist/search/register-core-handlers.d.ts.map +1 -0
  1365. package/dist/search/register-core-handlers.js +20 -0
  1366. package/dist/search/register-core-handlers.js.map +1 -0
  1367. package/dist/search/terms-handler.d.ts +9 -0
  1368. package/dist/search/terms-handler.d.ts.map +1 -0
  1369. package/dist/search/terms-handler.js +61 -0
  1370. package/dist/search/terms-handler.js.map +1 -0
  1371. package/dist/search/users-handler.d.ts +9 -0
  1372. package/dist/search/users-handler.d.ts.map +1 -0
  1373. package/dist/search/users-handler.js +49 -0
  1374. package/dist/search/users-handler.js.map +1 -0
  1375. package/dist/seo/canonical.d.ts +31 -0
  1376. package/dist/seo/canonical.d.ts.map +1 -0
  1377. package/dist/seo/canonical.js +81 -0
  1378. package/dist/seo/canonical.js.map +1 -0
  1379. package/dist/seo/feed.d.ts +73 -0
  1380. package/dist/seo/feed.d.ts.map +1 -0
  1381. package/dist/seo/feed.js +254 -0
  1382. package/dist/seo/feed.js.map +1 -0
  1383. package/dist/seo/head-defaults.d.ts +27 -0
  1384. package/dist/seo/head-defaults.d.ts.map +1 -0
  1385. package/dist/seo/head-defaults.js +82 -0
  1386. package/dist/seo/head-defaults.js.map +1 -0
  1387. package/dist/seo/register-sitemap-invalidator.d.ts +7 -0
  1388. package/dist/seo/register-sitemap-invalidator.d.ts.map +1 -0
  1389. package/dist/seo/register-sitemap-invalidator.js +43 -0
  1390. package/dist/seo/register-sitemap-invalidator.js.map +1 -0
  1391. package/dist/seo/robots.d.ts +20 -0
  1392. package/dist/seo/robots.d.ts.map +1 -0
  1393. package/dist/seo/robots.js +18 -0
  1394. package/dist/seo/robots.js.map +1 -0
  1395. package/dist/seo/site-settings.d.ts +6 -0
  1396. package/dist/seo/site-settings.d.ts.map +1 -0
  1397. package/dist/seo/site-settings.js +11 -0
  1398. package/dist/seo/site-settings.js.map +1 -0
  1399. package/dist/seo/sitemap-cache.d.ts +20 -0
  1400. package/dist/seo/sitemap-cache.d.ts.map +1 -0
  1401. package/dist/seo/sitemap-cache.js +96 -0
  1402. package/dist/seo/sitemap-cache.js.map +1 -0
  1403. package/dist/seo/sitemap.d.ts +26 -0
  1404. package/dist/seo/sitemap.d.ts.map +1 -0
  1405. package/dist/seo/sitemap.js +151 -0
  1406. package/dist/seo/sitemap.js.map +1 -0
  1407. package/dist/seo/xml.d.ts +3 -0
  1408. package/dist/seo/xml.d.ts.map +1 -0
  1409. package/dist/seo/xml.js +12 -0
  1410. package/dist/seo/xml.js.map +1 -0
  1411. package/dist/settings-core.d.ts +49 -0
  1412. package/dist/settings-core.d.ts.map +1 -0
  1413. package/dist/settings-core.js +113 -0
  1414. package/dist/settings-core.js.map +1 -0
  1415. package/dist/slugify.d.ts +14 -0
  1416. package/dist/slugify.d.ts.map +1 -0
  1417. package/dist/slugify.js +17 -0
  1418. package/dist/slugify.js.map +1 -0
  1419. package/dist/template-deps-core.d.ts +19 -0
  1420. package/dist/template-deps-core.d.ts.map +1 -0
  1421. package/dist/template-deps-core.js +35 -0
  1422. package/dist/template-deps-core.js.map +1 -0
  1423. package/dist/template-deps.d.ts +41 -0
  1424. package/dist/template-deps.d.ts.map +1 -0
  1425. package/dist/template-deps.js +90 -0
  1426. package/dist/template-deps.js.map +1 -0
  1427. package/dist/template.d.ts +84 -0
  1428. package/dist/template.d.ts.map +1 -0
  1429. package/dist/template.js +54 -0
  1430. package/dist/template.js.map +1 -0
  1431. package/dist/terms/errors.d.ts +22 -0
  1432. package/dist/terms/errors.d.ts.map +1 -0
  1433. package/dist/terms/errors.js +25 -0
  1434. package/dist/terms/errors.js.map +1 -0
  1435. package/dist/terms/read-service.d.ts +20 -0
  1436. package/dist/terms/read-service.d.ts.map +1 -0
  1437. package/dist/terms/read-service.js +53 -0
  1438. package/dist/terms/read-service.js.map +1 -0
  1439. package/dist/test/default-theme.d.ts +2 -0
  1440. package/dist/test/default-theme.d.ts.map +1 -0
  1441. package/dist/test/default-theme.js +28 -0
  1442. package/dist/test/default-theme.js.map +1 -0
  1443. package/dist/test/defer.d.ts +19 -0
  1444. package/dist/test/defer.d.ts.map +1 -0
  1445. package/dist/test/defer.js +22 -0
  1446. package/dist/test/defer.js.map +1 -0
  1447. package/dist/test/dispatcher.d.ts +139 -0
  1448. package/dist/test/dispatcher.d.ts.map +1 -0
  1449. package/dist/test/dispatcher.js +125 -0
  1450. package/dist/test/dispatcher.js.map +1 -0
  1451. package/dist/test/factories.d.ts +707 -0
  1452. package/dist/test/factories.d.ts.map +1 -0
  1453. package/dist/test/factories.js +336 -0
  1454. package/dist/test/factories.js.map +1 -0
  1455. package/dist/test/fixtures/webauthn.d.ts +40 -0
  1456. package/dist/test/fixtures/webauthn.d.ts.map +1 -0
  1457. package/dist/test/fixtures/webauthn.js +209 -0
  1458. package/dist/test/fixtures/webauthn.js.map +1 -0
  1459. package/dist/test/harness.d.ts +10 -0
  1460. package/dist/test/harness.d.ts.map +1 -0
  1461. package/dist/test/harness.js +34 -0
  1462. package/dist/test/harness.js.map +1 -0
  1463. package/dist/test/index.d.ts +17 -0
  1464. package/dist/test/index.d.ts.map +1 -0
  1465. package/dist/test/index.js +16 -0
  1466. package/dist/test/index.js.map +1 -0
  1467. package/dist/test/mailer.d.ts +26 -0
  1468. package/dist/test/mailer.d.ts.map +1 -0
  1469. package/dist/test/mailer.js +14 -0
  1470. package/dist/test/mailer.js.map +1 -0
  1471. package/dist/test/match.d.ts +14 -0
  1472. package/dist/test/match.d.ts.map +1 -0
  1473. package/dist/test/match.js +83 -0
  1474. package/dist/test/match.js.map +1 -0
  1475. package/dist/test/playwright/acting-as.d.ts +45 -0
  1476. package/dist/test/playwright/acting-as.d.ts.map +1 -0
  1477. package/dist/test/playwright/acting-as.js +50 -0
  1478. package/dist/test/playwright/acting-as.js.map +1 -0
  1479. package/dist/test/playwright/build-admin-chunk.d.ts +24 -0
  1480. package/dist/test/playwright/build-admin-chunk.d.ts.map +1 -0
  1481. package/dist/test/playwright/build-admin-chunk.js +61 -0
  1482. package/dist/test/playwright/build-admin-chunk.js.map +1 -0
  1483. package/dist/test/playwright/index.d.ts +78 -0
  1484. package/dist/test/playwright/index.d.ts.map +1 -0
  1485. package/dist/test/playwright/index.js +155 -0
  1486. package/dist/test/playwright/index.js.map +1 -0
  1487. package/dist/test/playwright/open-playground-db.d.ts +32 -0
  1488. package/dist/test/playwright/open-playground-db.d.ts.map +1 -0
  1489. package/dist/test/playwright/open-playground-db.js +49 -0
  1490. package/dist/test/playwright/open-playground-db.js.map +1 -0
  1491. package/dist/test/playwright/playwright-config.d.ts +84 -0
  1492. package/dist/test/playwright/playwright-config.d.ts.map +1 -0
  1493. package/dist/test/playwright/playwright-config.js +91 -0
  1494. package/dist/test/playwright/playwright-config.js.map +1 -0
  1495. package/dist/test/request.d.ts +66 -0
  1496. package/dist/test/request.d.ts.map +1 -0
  1497. package/dist/test/request.js +110 -0
  1498. package/dist/test/request.js.map +1 -0
  1499. package/dist/test/rpc.d.ts +86 -0
  1500. package/dist/test/rpc.d.ts.map +1 -0
  1501. package/dist/test/rpc.js +91 -0
  1502. package/dist/test/rpc.js.map +1 -0
  1503. package/dist/test/spies.d.ts +68 -0
  1504. package/dist/test/spies.d.ts.map +1 -0
  1505. package/dist/test/spies.js +144 -0
  1506. package/dist/test/spies.js.map +1 -0
  1507. package/dist/theme-errors.d.ts +37 -0
  1508. package/dist/theme-errors.d.ts.map +1 -0
  1509. package/dist/theme-errors.js +87 -0
  1510. package/dist/theme-errors.js.map +1 -0
  1511. package/dist/theme.d.ts +91 -0
  1512. package/dist/theme.d.ts.map +1 -0
  1513. package/dist/theme.js +74 -0
  1514. package/dist/theme.js.map +1 -0
  1515. package/dist/welcome/i18n.d.ts +9 -0
  1516. package/dist/welcome/i18n.d.ts.map +1 -0
  1517. package/dist/welcome/i18n.js +51 -0
  1518. package/dist/welcome/i18n.js.map +1 -0
  1519. package/dist/welcome-theme.d.ts +10 -0
  1520. package/dist/welcome-theme.d.ts.map +1 -0
  1521. package/dist/welcome-theme.js +165 -0
  1522. package/dist/welcome-theme.js.map +1 -0
  1523. package/locales/admin-bar-ar.d.mts +1 -0
  1524. package/locales/admin-bar-ar.mjs +1 -0
  1525. package/locales/admin-bar-ar.po +49 -0
  1526. package/locales/admin-bar-de.d.mts +1 -0
  1527. package/locales/admin-bar-de.mjs +1 -0
  1528. package/locales/admin-bar-de.po +49 -0
  1529. package/locales/admin-bar-en.d.mts +1 -0
  1530. package/locales/admin-bar-en.mjs +1 -0
  1531. package/locales/admin-bar-en.po +49 -0
  1532. package/locales/admin-bar-uk.d.mts +1 -0
  1533. package/locales/admin-bar-uk.mjs +1 -0
  1534. package/locales/admin-bar-uk.po +49 -0
  1535. package/locales/admin-bar-zh-CN.d.mts +1 -0
  1536. package/locales/admin-bar-zh-CN.mjs +1 -0
  1537. package/locales/admin-bar-zh-CN.po +49 -0
  1538. package/locales/welcome-ar.d.mts +1 -0
  1539. package/locales/welcome-ar.mjs +1 -0
  1540. package/locales/welcome-ar.po +33 -0
  1541. package/locales/welcome-de.d.mts +1 -0
  1542. package/locales/welcome-de.mjs +1 -0
  1543. package/locales/welcome-de.po +33 -0
  1544. package/locales/welcome-en.d.mts +1 -0
  1545. package/locales/welcome-en.mjs +1 -0
  1546. package/locales/welcome-en.po +33 -0
  1547. package/locales/welcome-uk.d.mts +1 -0
  1548. package/locales/welcome-uk.mjs +1 -0
  1549. package/locales/welcome-uk.po +33 -0
  1550. package/locales/welcome-zh-CN.d.mts +1 -0
  1551. package/locales/welcome-zh-CN.mjs +1 -0
  1552. package/locales/welcome-zh-CN.po +33 -0
  1553. package/package.json +150 -0
@@ -0,0 +1,1539 @@
1
+ import type { BlockNode, BlockPattern, BlockSpec, BlockVariation, MarkSpec, PatternInsertMode, PatternPreview, PatternTarget, ShortcodeSpec, ThemeBreakpoints, ThemeTokens } from "@plumix/blocks";
2
+ import type { EntryTypeCapabilityOverrides, TermTaxonomyCapabilityOverrides } from "../auth/rbac.js";
3
+ import type { AppContext } from "../context/app.js";
4
+ import type { UserRole } from "../db/schema/users.js";
5
+ import type { Label } from "../i18n/label.js";
6
+ import type { ResolvedI18n, ResolvedLocale } from "../i18n/locale-registry.js";
7
+ import type { McpTool } from "../mcp/tool.js";
8
+ import type { RouteIntent } from "../route/intent.js";
9
+ import type { RegisteredTemplateDep } from "../template-deps.js";
10
+ import type { PluginI18nSlot } from "./define.js";
11
+ import type { RegisteredLookupAdapter } from "./lookup.js";
12
+ /**
13
+ * WP-style per-type chrome labels shared between `EntryTypeOptions.labels`
14
+ * and `EntryTypeManifestEntry.labels`. Every field is optional on the
15
+ * options side; `buildManifest` resolves the cascade server-side so the
16
+ * projection (`ResolvedEntryTypeLabels`) ships every key fully populated.
17
+ * Consumers read `entry.labels.editItem` directly — no per-call-site
18
+ * fallback boilerplate.
19
+ *
20
+ * Key set mirrors WP's `register_post_type()` labels table where the
21
+ * mental model carries (`searchItems`, `notFound`, `addNewItem`, etc.)
22
+ * plus plumix-specific SPA chrome (`loadingItems`, `loadErrorItems`,
23
+ * `untitledItem`, `noMatch`) that PHP-WP doesn't need. Deliberately
24
+ * excludes `menu_name` (already covered by `label`/`plural`),
25
+ * `name_admin_bar` (plumix has no admin bar), media-specific keys
26
+ * (`featured_image`, `insert_into_item`, …) that belong on the media
27
+ * plugin, and tag-cloud affordances (`popular_items`, `most_used`)
28
+ * that plumix's picker UX doesn't surface.
29
+ */
30
+ export interface EntryTypeLabels {
31
+ readonly singular?: Label;
32
+ readonly plural?: Label;
33
+ /** "Add New" — short-form CTA for the admin bar quick-create overflow. */
34
+ readonly addNew?: Label;
35
+ /** "Add Post" — primary create CTA on list pages and slash menu. */
36
+ readonly addNewItem?: Label;
37
+ /** "Edit Post" — list-table row action and editor heading. */
38
+ readonly editItem?: Label;
39
+ /** "New Post" — quick-create affordance distinct from `addNewItem`. */
40
+ readonly newItem?: Label;
41
+ /** "View Post" — list-table row action and post-save toast link. */
42
+ readonly viewItem?: Label;
43
+ /** "View Posts" — plural archive-link variant of `viewItem`. */
44
+ readonly viewItems?: Label;
45
+ /** "Search Posts…" — list-page search input placeholder. */
46
+ readonly searchItems?: Label;
47
+ /** "No posts yet" — list-page empty state title (no rows registered). */
48
+ readonly notFound?: Label;
49
+ /** "No posts found in Trash" — trash view empty state. */
50
+ readonly notFoundInTrash?: Label;
51
+ /** "Loading posts" — aria-busy state during list fetch. */
52
+ readonly loadingItems?: Label;
53
+ /** "Couldn't load posts. Try again." — list-page fetch-failure banner. */
54
+ readonly loadErrorItems?: Label;
55
+ /** "All posts" — "all-types" filter chip label. */
56
+ readonly allItems?: Label;
57
+ /** "No posts match" — empty state after a search returns zero rows. */
58
+ readonly noMatch?: Label;
59
+ /** "Parent Post" — hierarchical parent picker option label. */
60
+ readonly parentItem?: Label;
61
+ /** "Parent Post:" — colon-suffixed variant for form labels. */
62
+ readonly parentItemColon?: Label;
63
+ /** "Untitled Post" — reference-picker label when an entry has no title. */
64
+ readonly untitledItem?: Label;
65
+ /** "Move post to trash?" — confirmation prompt on trash action. */
66
+ readonly moveToTrash?: Label;
67
+ /** "Post updated" — toast after autosave or explicit save. */
68
+ readonly itemUpdated?: Label;
69
+ /** "Post published" — toast after first publish. */
70
+ readonly itemPublished?: Label;
71
+ /** "Post published privately" — toast for private visibility. */
72
+ readonly itemPublishedPrivately?: Label;
73
+ /** "Post scheduled" — toast after scheduling a future publish. */
74
+ readonly itemScheduled?: Label;
75
+ /** "Post moved to trash" — toast after trash action completes. */
76
+ readonly itemTrashed?: Label;
77
+ /** "Post reverted to draft" — toast after unpublish. */
78
+ readonly itemRevertedToDraft?: Label;
79
+ /** "Posts list" — SR-only region label for the data table. */
80
+ readonly itemsList?: Label;
81
+ /** "Posts list navigation" — SR-only region label for pagination. */
82
+ readonly itemsListNavigation?: Label;
83
+ /** "Filter posts list" — SR-only label for the filter row. */
84
+ readonly filterItemsList?: Label;
85
+ }
86
+ export interface EntryTypeOptions {
87
+ readonly label: Label;
88
+ /**
89
+ * Human-readable label variants. `plural` also drives the admin URL slug
90
+ * (`/entries/<slugified-plural>`) unless overridden; omit it and the slug
91
+ * falls back to `${name}s`, which is acceptable for English-named types
92
+ * but surfaces an "anglos" for `name: "angle"` etc. — plugins with
93
+ * irregular plurals should set `labels.plural` explicitly.
94
+ *
95
+ * The other keys mirror WordPress's `register_post_type()` labels table:
96
+ * per-type chrome strings the admin would otherwise produce by
97
+ * lowercase-noun substitution. Substitution breaks in languages with
98
+ * gender/case agreement (DE, RU, PL, UK, AR), and lowercasing translated
99
+ * nouns is wrong in DE (Beiträge → beiträge is a typo). Each label is
100
+ * optional and the admin falls back to a generic noun-less catalog
101
+ * string when missing.
102
+ */
103
+ readonly labels?: EntryTypeLabels;
104
+ readonly description?: string;
105
+ readonly supports?: readonly string[];
106
+ readonly termTaxonomies?: readonly string[];
107
+ readonly isHierarchical?: boolean;
108
+ /** Master visibility switch; defaults to `true`. Cascades to `showUI`/`showInSidebar`/`excludeFromGenericRpc`/`excludeFromSearch` when those are unset. */
109
+ readonly isPublic?: boolean;
110
+ readonly showUI?: boolean;
111
+ readonly showInSidebar?: boolean;
112
+ readonly excludeFromGenericRpc?: boolean;
113
+ readonly excludeFromSearch?: boolean;
114
+ readonly hasArchive?: boolean | string;
115
+ readonly rewrite?: {
116
+ readonly slug?: string;
117
+ readonly isHierarchical?: boolean;
118
+ };
119
+ readonly capabilityType?: string;
120
+ readonly capabilities?: EntryTypeCapabilityOverrides;
121
+ readonly priority?: number;
122
+ readonly menuIcon?: string;
123
+ /** Synonyms the command palette matches in addition to the sidebar label. */
124
+ readonly keywords?: readonly Label[];
125
+ /**
126
+ * Per-type versioning policy. Only honored when `supports` includes
127
+ * `"revisions"`. `maxRevisions` caps how many revision rows are
128
+ * retained per live entry (default 25); `autosaveIntervalSeconds`
129
+ * shapes the editor's autosave cadence (default 60).
130
+ */
131
+ readonly versioning?: {
132
+ readonly maxRevisions?: number;
133
+ readonly autosaveIntervalSeconds?: number;
134
+ };
135
+ /** Page size for this type's archive route. Default 20. */
136
+ readonly archivePerPage?: number;
137
+ }
138
+ /**
139
+ * WP-style per-type chrome labels for term taxonomies. Same cascade
140
+ * semantics as `EntryTypeLabels` — `buildManifest` resolves into
141
+ * `ResolvedTermTaxonomyLabels` server-side. Terms always have a
142
+ * server-supplied `name` so `untitledItem` doesn't apply here.
143
+ */
144
+ export interface TermTaxonomyLabels {
145
+ readonly singular?: Label;
146
+ /** "Categories" — plural form (symmetric with `EntryTypeLabels.plural`). */
147
+ readonly plural?: Label;
148
+ /** "Add New" — short-form CTA paired with `addNewItem`. */
149
+ readonly addNew?: Label;
150
+ /** "Add Category" — primary create CTA. */
151
+ readonly addNewItem?: Label;
152
+ /** "Edit Category" — term-edit form heading. */
153
+ readonly editItem?: Label;
154
+ /** "View Category" — list-table row action linking to the public archive. */
155
+ readonly viewItem?: Label;
156
+ /** "Update Category" — save-button text on the term edit form. */
157
+ readonly updateItem?: Label;
158
+ /** "New Category Name" — placeholder for the create-form name input. */
159
+ readonly newItemName?: Label;
160
+ /** "Search categories…" — list-page search input placeholder. */
161
+ readonly searchItems?: Label;
162
+ /** "No categories yet" — list-page empty state title. */
163
+ readonly notFound?: Label;
164
+ /** "Loading categories" — aria-busy state during fetch. */
165
+ readonly loadingItems?: Label;
166
+ /** "Couldn't load categories. Try again." — fetch-failure banner. */
167
+ readonly loadErrorItems?: Label;
168
+ /** "All categories" — filter chip label. */
169
+ readonly allItems?: Label;
170
+ /** "No categories match" — empty state after zero-match search. */
171
+ readonly noMatch?: Label;
172
+ /** "Parent Category" — hierarchical parent picker option label. */
173
+ readonly parentItem?: Label;
174
+ /** "Parent Category:" — colon-suffixed variant for form labels. */
175
+ readonly parentItemColon?: Label;
176
+ /** "No categories" — entry-list cell empty placeholder. */
177
+ readonly noTerms?: Label;
178
+ /** "Filter by category" — SR-only label on filter dropdown. */
179
+ readonly filterByItem?: Label;
180
+ /** "← Go to Categories" — back-link from term edit to list. */
181
+ readonly backToItems?: Label;
182
+ /** "Categories list" — SR-only region label for the data table. */
183
+ readonly itemsList?: Label;
184
+ /** "Categories list navigation" — SR-only region label for pagination. */
185
+ readonly itemsListNavigation?: Label;
186
+ /** "Separate tags with commas" — help text for chip-style multi-input
187
+ * pickers (non-hierarchical only; categories don't use it). */
188
+ readonly separateItemsWithCommas?: Label;
189
+ /** "Add or remove tags" — help text for chip-style picker controls. */
190
+ readonly addOrRemoveItems?: Label;
191
+ }
192
+ export interface TermTaxonomyOptions {
193
+ readonly label: Label;
194
+ readonly labels?: TermTaxonomyLabels;
195
+ readonly description?: string;
196
+ readonly isHierarchical?: boolean;
197
+ readonly entryTypes?: readonly string[];
198
+ readonly isPublic?: boolean;
199
+ readonly showUI?: boolean;
200
+ readonly showInSidebar?: boolean;
201
+ readonly excludeFromGenericRpc?: boolean;
202
+ readonly isInQuickEdit?: boolean;
203
+ readonly hasAdminColumn?: boolean;
204
+ readonly rewrite?: {
205
+ readonly slug?: string;
206
+ readonly isHierarchical?: boolean;
207
+ };
208
+ readonly capabilities?: TermTaxonomyCapabilityOverrides;
209
+ readonly menuIcon?: string;
210
+ /** Synonyms the command palette matches in addition to the sidebar label. */
211
+ readonly keywords?: readonly Label[];
212
+ /** Page size for this taxonomy's term archives. Default 20. */
213
+ readonly archivePerPage?: number;
214
+ }
215
+ export declare function resolveEntryTypeVisibility(options: EntryTypeOptions): {
216
+ readonly isPublic: boolean;
217
+ readonly showUI: boolean;
218
+ readonly showInSidebar: boolean;
219
+ readonly excludeFromGenericRpc: boolean;
220
+ readonly excludeFromSearch: boolean;
221
+ };
222
+ export declare function resolveTermTaxonomyVisibility(options: TermTaxonomyOptions): {
223
+ readonly isPublic: boolean;
224
+ readonly showUI: boolean;
225
+ readonly showInSidebar: boolean;
226
+ readonly excludeFromGenericRpc: boolean;
227
+ };
228
+ export declare function manifestEntryVisibility(entry: Pick<EntryTypeManifestEntry, "isPublic" | "showUI" | "showInSidebar"> | Pick<TermTaxonomyManifestEntry, "isPublic" | "showUI" | "showInSidebar">): {
229
+ readonly isPublic: boolean;
230
+ readonly showUI: boolean;
231
+ readonly showInSidebar: boolean;
232
+ };
233
+ export type MetaScalarType = "string" | "number" | "boolean" | "json";
234
+ export interface MetaBoxFieldOption {
235
+ readonly value: string;
236
+ readonly label: Label;
237
+ }
238
+ /**
239
+ * Column span for a field within its meta box's 12-column grid. A plain
240
+ * number applies from the smallest breakpoint up. The object form is
241
+ * mobile-first: `base` is the default, `sm` / `md` / `lg` override upward.
242
+ * Breakpoints key off the card's own width (Tailwind container queries,
243
+ * `@sm` / `@md` / `@lg`) so the same `span` renders consistently whether
244
+ * the box lands in a full-width route or a narrow sidebar. Values outside
245
+ * 1..12 are clamped at render time. Omitted span means full width (12).
246
+ */
247
+ export type MetaBoxFieldSpan = number | {
248
+ readonly base?: number;
249
+ readonly sm?: number;
250
+ readonly md?: number;
251
+ readonly lg?: number;
252
+ };
253
+ /**
254
+ * Shared shape for every meta-box field variant — properties carried
255
+ * regardless of `inputType`. Each narrowed variant of `MetaBoxField`
256
+ * extends this with input-specific options.
257
+ */
258
+ export interface MetaBoxFieldBase {
259
+ readonly key: string;
260
+ readonly label: Label;
261
+ /**
262
+ * Storage type. Drives server-side sanitization on write and
263
+ * coercion on read (`entry.meta` / `term.meta` columns store JSON,
264
+ * but the type informs the expected shape). `json` accepts any
265
+ * JSON-serialisable value.
266
+ */
267
+ readonly type: MetaScalarType;
268
+ /**
269
+ * Applied after type coercion, before persistence. Returning a
270
+ * sanitized value replaces the caller's input — ideal for trimming,
271
+ * whitelisting, or normalising shape.
272
+ */
273
+ readonly sanitize?: (value: unknown) => unknown;
274
+ /** Default surfaced in the admin form when the key has no saved value. */
275
+ readonly default?: unknown;
276
+ /** Optional help text rendered under the label on every input type. */
277
+ readonly description?: Label;
278
+ /** Renders `required` on the native input; server validation is separate. */
279
+ readonly required?: boolean;
280
+ /**
281
+ * Column span within the meta box's 12-column grid. Defaults to full
282
+ * width. See `MetaBoxFieldSpan` for the responsive object form.
283
+ */
284
+ readonly span?: MetaBoxFieldSpan;
285
+ /**
286
+ * Capability gate for the individual field. When set, the admin hides
287
+ * the field from viewers whose capability set lacks it. The server
288
+ * rejects entry/term/user writes that include the field's key — both
289
+ * upserts and deletes count, so a viewer can't blank a value they
290
+ * can't see. Gating applies at the top-level field only; capabilities
291
+ * on repeater subfields are ignored (a row's gate is the parent
292
+ * repeater field's gate). Defaults to no gating.
293
+ */
294
+ readonly capability?: string;
295
+ /**
296
+ * Expose this field's value on the public REST API. Default-deny: meta is
297
+ * hidden from REST responses unless a field opts in with `showInApi: true`,
298
+ * so internal fields never leak by default. Has no effect on the admin RPC.
299
+ */
300
+ readonly showInApi?: boolean;
301
+ }
302
+ /**
303
+ * The narrowed `text` field variant produced by the `text()` builder
304
+ * helper exported from `plumix/fields`. The builder rejects options
305
+ * that don't apply to a text input (e.g. `min`, `step`, `options`) at
306
+ * the type level; downstream consumers can rely on the narrowed shape
307
+ * via the `inputType` discriminator.
308
+ */
309
+ export interface TextMetaBoxField extends MetaBoxFieldBase {
310
+ readonly inputType: "text";
311
+ readonly type: "string";
312
+ readonly placeholder?: Label;
313
+ readonly maxLength?: number;
314
+ }
315
+ /** Multi-line text input. Storage shape mirrors `text`. */
316
+ export interface TextareaMetaBoxField extends MetaBoxFieldBase {
317
+ readonly inputType: "textarea";
318
+ readonly type: "string";
319
+ readonly placeholder?: Label;
320
+ readonly maxLength?: number;
321
+ }
322
+ /** Numeric input with optional `min` / `max` / `step` bounds. */
323
+ export interface NumberMetaBoxField extends MetaBoxFieldBase {
324
+ readonly inputType: "number";
325
+ readonly type: "number";
326
+ readonly placeholder?: Label;
327
+ readonly min?: number;
328
+ readonly max?: number;
329
+ readonly step?: number;
330
+ }
331
+ /** RFC-5322-shaped email input. */
332
+ export interface EmailMetaBoxField extends MetaBoxFieldBase {
333
+ readonly inputType: "email";
334
+ readonly type: "string";
335
+ readonly placeholder?: Label;
336
+ readonly maxLength?: number;
337
+ }
338
+ /** URL input. */
339
+ export interface UrlMetaBoxField extends MetaBoxFieldBase {
340
+ readonly inputType: "url";
341
+ readonly type: "string";
342
+ readonly placeholder?: Label;
343
+ readonly maxLength?: number;
344
+ }
345
+ /**
346
+ * Masked-input password field. Visually hides characters in the admin
347
+ * so values aren't shoulder-surfable in shared sessions; storage
348
+ * shape mirrors `text`.
349
+ */
350
+ export interface PasswordMetaBoxField extends MetaBoxFieldBase {
351
+ readonly inputType: "password";
352
+ readonly type: "string";
353
+ readonly placeholder?: Label;
354
+ readonly maxLength?: number;
355
+ }
356
+ /**
357
+ * Date-only field. Stored as `YYYY-MM-DD` (ISO 8601 calendar date,
358
+ * no time, no timezone). Optional `min` / `max` bounds use the same
359
+ * format and are enforced as registration-time validation only —
360
+ * server-side bound enforcement is deferred to a later release.
361
+ */
362
+ export interface DateMetaBoxField extends MetaBoxFieldBase {
363
+ readonly inputType: "date";
364
+ readonly type: "string";
365
+ readonly min?: string;
366
+ readonly max?: string;
367
+ }
368
+ /**
369
+ * Date + time field. Stored as a partial ISO 8601 string
370
+ * (`YYYY-MM-DDTHH:MM` with optional `:SS`) reflecting whatever the
371
+ * author's browser produced via `<input type="datetime-local">`. A
372
+ * future iteration may bake in the browser's timezone offset so the
373
+ * wall-clock semantics survive cross-region reads; today's storage is
374
+ * naive local time and consumers anchor to a timezone explicitly via
375
+ * `parseMetaDate` + their own `Temporal.ZonedDateTime` shaping if
376
+ * needed.
377
+ */
378
+ export interface DateTimeMetaBoxField extends MetaBoxFieldBase {
379
+ readonly inputType: "datetime";
380
+ readonly type: "string";
381
+ readonly min?: string;
382
+ readonly max?: string;
383
+ }
384
+ /**
385
+ * Time-only field. Stored as `HH:MM` (with optional `:SS`). No date
386
+ * anchor, no timezone — useful for "open at 09:00" style values where
387
+ * the calendar date is supplied separately.
388
+ */
389
+ export interface TimeMetaBoxField extends MetaBoxFieldBase {
390
+ readonly inputType: "time";
391
+ readonly type: "string";
392
+ readonly min?: string;
393
+ readonly max?: string;
394
+ }
395
+ /**
396
+ * Hex color picker. Stored as a `#xxxxxx` string (the format the
397
+ * native `<input type="color">` produces). The builder injects a
398
+ * default sanitizer that rejects values that don't match the hex
399
+ * shape on write.
400
+ */
401
+ export interface ColorMetaBoxField extends MetaBoxFieldBase {
402
+ readonly inputType: "color";
403
+ readonly type: "string";
404
+ }
405
+ /**
406
+ * Bounded numeric slider. Renders as `<input type="range">`. `min` /
407
+ * `max` are required so the slider has a concrete range; `step`
408
+ * defaults to `1`. The builder injects a default sanitizer that
409
+ * enforces the bounds on write.
410
+ */
411
+ export interface RangeMetaBoxField extends MetaBoxFieldBase {
412
+ readonly inputType: "range";
413
+ readonly type: "number";
414
+ readonly min: number;
415
+ readonly max: number;
416
+ readonly step?: number;
417
+ }
418
+ /**
419
+ * Multi-value picker over a fixed option list. Storage is a JSON
420
+ * array of option `value` strings. Renders as a toggle group in the
421
+ * admin so authors see all options at once. The builder ships a
422
+ * default sanitizer that rejects values outside the declared
423
+ * options.
424
+ */
425
+ export interface MultiselectMetaBoxField extends MetaBoxFieldBase {
426
+ readonly inputType: "multiselect";
427
+ readonly type: "json";
428
+ readonly options: readonly MetaBoxFieldOption[];
429
+ }
430
+ /**
431
+ * Free-form JSON value. Storage round-trips through the JSON
432
+ * serializer so any structure that survives `JSON.stringify`
433
+ * survives the wire.
434
+ */
435
+ export interface JsonMetaBoxField extends MetaBoxFieldBase {
436
+ readonly inputType: "json";
437
+ readonly type: "json";
438
+ }
439
+ /**
440
+ * Reference target descriptor carried on every reference field
441
+ * variant (`user`, `entry`, `term`, `media`, plugin-registered
442
+ * custom kinds). The `kind` matches a registered `LookupAdapter`;
443
+ * the adapter interprets `scope` according to its own contract.
444
+ *
445
+ * Reading the manifest, the admin dispatches to a generic picker
446
+ * that calls the lookup RPC with `{ kind, scope }` — picker UI is
447
+ * one component, target-specific knowledge lives in the adapter.
448
+ */
449
+ export interface ReferenceTarget<TScope = unknown> {
450
+ readonly kind: string;
451
+ readonly scope?: TScope;
452
+ /**
453
+ * Storage cardinality. `false`/absent → single value (string or
454
+ * cached object). `true` → array (of strings or cached objects).
455
+ * The server-side write validator and read-side orphan filter
456
+ * dispatch on this flag to handle both shapes uniformly.
457
+ */
458
+ readonly multiple?: boolean;
459
+ /**
460
+ * Storage shape per item. `"id"` (default) → bare id string —
461
+ * every read needs a join/resolve to get a label. `"object"` →
462
+ * `{ id, ...cachedFields, ...userFields }` — the meta pipeline
463
+ * normalizes cached fields from the adapter on every write so
464
+ * reads can render without a join. Used by `media` (where the
465
+ * thumbnail/mime/filename are needed on every render and a
466
+ * resolve per render is wasteful on the edge).
467
+ *
468
+ * The cached fields come from `LookupResult.cached` returned by
469
+ * the adapter; user-supplied keys (e.g. per-usage `alt`) survive
470
+ * the merge so editors can override per-usage metadata.
471
+ */
472
+ readonly valueShape?: "id" | "object";
473
+ }
474
+ /**
475
+ * Single user reference. Storage is the bare user id as a string
476
+ * (`"42"` → `users.id = 42`); reads return `null` when the user is
477
+ * gone or no longer matches scope. The `referenceTarget.scope`
478
+ * accepts the user adapter's scope shape (roles + disabled-state).
479
+ */
480
+ export interface UserMetaBoxField extends MetaBoxFieldBase {
481
+ readonly inputType: "user";
482
+ readonly type: "string";
483
+ readonly referenceTarget: ReferenceTarget;
484
+ }
485
+ /**
486
+ * Multi user reference. Storage is a JSON array of bare user ids
487
+ * (`["42", "43"]`); reads filter out orphans (the bag's array stays
488
+ * dense — missing IDs are dropped, not nulled, so consumers iterate
489
+ * without branching). `referenceTarget.multiple` is `true`; `max`
490
+ * caps the array length at write time.
491
+ */
492
+ export interface UserListMetaBoxField extends MetaBoxFieldBase {
493
+ readonly inputType: "userList";
494
+ readonly type: "json";
495
+ readonly referenceTarget: ReferenceTarget;
496
+ /** Max items allowed in the array. Omitted = unbounded. */
497
+ readonly max?: number;
498
+ }
499
+ /**
500
+ * Single entry reference. Storage is the bare entry id as a string;
501
+ * reads return `null` when the entry is gone, scope-mismatched, or
502
+ * trashed. `referenceTarget.scope` carries `entryTypes` (the only
503
+ * entry-type names this field accepts).
504
+ *
505
+ * Naming note: the `Reference` infix avoids the collision with
506
+ * `EntryMetaBoxField` further down — the latter is the per-variant
507
+ * Omit-distributive union for fields inside an entry meta box.
508
+ */
509
+ export interface EntryReferenceMetaBoxField extends MetaBoxFieldBase {
510
+ readonly inputType: "entry";
511
+ readonly type: "string";
512
+ readonly referenceTarget: ReferenceTarget;
513
+ }
514
+ /**
515
+ * Multi entry reference. Storage is a JSON array of bare entry ids;
516
+ * reads filter out orphans (the array stays dense — missing IDs are
517
+ * dropped, not nulled). `referenceTarget.multiple` is `true`; `max`
518
+ * caps the array length at write time. Scope rules match
519
+ * `EntryReferenceMetaBoxField` — `entryTypes` is required.
520
+ */
521
+ export interface EntryListMetaBoxField extends MetaBoxFieldBase {
522
+ readonly inputType: "entryList";
523
+ readonly type: "json";
524
+ readonly referenceTarget: ReferenceTarget;
525
+ /** Max items allowed in the array. Omitted = unbounded. */
526
+ readonly max?: number;
527
+ }
528
+ /**
529
+ * Single term reference. Storage is the bare term id as a string;
530
+ * reads return `null` for orphans / scope mismatches.
531
+ * `referenceTarget.scope` carries `termTaxonomies` (the taxonomy
532
+ * names this field accepts).
533
+ */
534
+ export interface TermReferenceMetaBoxField extends MetaBoxFieldBase {
535
+ readonly inputType: "term";
536
+ readonly type: "string";
537
+ readonly referenceTarget: ReferenceTarget;
538
+ }
539
+ /**
540
+ * Multi term reference. Storage is a JSON array of bare term ids;
541
+ * reads filter out orphans the same way `EntryListMetaBoxField`
542
+ * does. `referenceTarget.multiple` is `true`; `max` caps array
543
+ * length. Scope rules match `TermReferenceMetaBoxField` —
544
+ * `termTaxonomies` is required.
545
+ */
546
+ export interface TermListMetaBoxField extends MetaBoxFieldBase {
547
+ readonly inputType: "termList";
548
+ readonly type: "json";
549
+ readonly referenceTarget: ReferenceTarget;
550
+ /** Max items allowed in the array. Omitted = unbounded. */
551
+ readonly max?: number;
552
+ }
553
+ /**
554
+ * Single media reference with cached metadata. Storage is the
555
+ * `MediaValue` object — `{ id, mime?, filename?, alt? }` — not a
556
+ * bare id, so admin renders show a thumbnail + filename without an
557
+ * extra resolve round-trip per render. `referenceTarget.valueShape`
558
+ * is `"object"`; the meta pipeline overwrites the cached fields
559
+ * (mime/filename) from the lookup adapter on every write but lets
560
+ * user-supplied keys (e.g. per-usage `alt`) survive the merge.
561
+ *
562
+ * Lives in core so the typed builder narrows correctly at call
563
+ * sites — same convention as `entry` / `term`. The actual builder
564
+ * + adapter are in `@plumix/plugin-media`.
565
+ */
566
+ export interface MediaMetaBoxField extends MetaBoxFieldBase {
567
+ readonly inputType: "media";
568
+ readonly type: "json";
569
+ readonly referenceTarget: ReferenceTarget;
570
+ }
571
+ /**
572
+ * Multi media reference. Storage is a JSON array of `MediaValue`
573
+ * objects — `[{ id, mime?, filename? }, ...]` — extending the cached-
574
+ * object pattern from `MediaMetaBoxField` to the array shape. The
575
+ * meta pipeline rewrites each entry's cached fields on every write,
576
+ * so admin renders thumbnails for every item without a per-item
577
+ * resolve. `referenceTarget.multiple` is `true`, `valueShape` is
578
+ * `"object"`; `max` caps the array length at write time.
579
+ */
580
+ export interface MediaListMetaBoxField extends MetaBoxFieldBase {
581
+ readonly inputType: "mediaList";
582
+ readonly type: "json";
583
+ readonly referenceTarget: ReferenceTarget;
584
+ /** Max items allowed in the array. Omitted = unbounded. */
585
+ readonly max?: number;
586
+ }
587
+ /**
588
+ * Richtext field — Tiptap ProseMirror JSON storage. `marks`, `nodes`,
589
+ * and `blocks` are strict allowlists: omitted entries are denied even
590
+ * if they're standard Tiptap extensions. `doc`/`paragraph`/`text` are
591
+ * always included implicitly because ProseMirror requires them for
592
+ * any document to parse.
593
+ *
594
+ * `marks` are inline formatters (`bold`, `italic`, `link`, …).
595
+ * `nodes` are block-level Tiptap nodes (`heading`, `bulletList`,
596
+ * `codeBlock`, …). `blocks` is a forward-compatible allowlist of
597
+ * custom node names — the validator accepts documents containing them,
598
+ * leaving the theme-side block render registry (planned) responsible
599
+ * for actually drawing them.
600
+ *
601
+ * Server-side validator (`walkRichtextDoc`) walks the saved doc and
602
+ * rejects any node/mark/block name outside the allowlist. The admin
603
+ * toolbar surfaces only the buttons that match the allowlist.
604
+ *
605
+ * Replaces the dropped `markdown` and `code` standalone field types —
606
+ * `richtext({ nodes: ["codeBlock"] })` covers code-in-meta;
607
+ * `richtext({ marks: ["bold","italic","link"], nodes: ["bulletList","orderedList"] })`
608
+ * covers markdown-shaped formatting.
609
+ */
610
+ export interface RichtextMetaBoxField extends MetaBoxFieldBase {
611
+ readonly inputType: "richtext";
612
+ readonly type: "json";
613
+ readonly marks?: readonly string[];
614
+ readonly nodes?: readonly string[];
615
+ readonly blocks?: readonly string[];
616
+ }
617
+ /**
618
+ * Flat list of structured rows. Each row carries the same fixed schema
619
+ * declared via `subFields`; mixed-row "flexible content" is explicitly
620
+ * out of scope. Subfields may be any registered field type *except*
621
+ * another repeater — nesting is rejected at registration time so v0.1
622
+ * doesn't ship recursive UX (lift later non-breakingly if a real use
623
+ * case appears).
624
+ *
625
+ * Storage rides on the `json` primitive so any JSON-serialisable row
626
+ * shape survives the wire. The auto-injected sanitizer drops rows
627
+ * where every subfield value is empty (`null` / `undefined` / `""`),
628
+ * then enforces optional `min` / `max` row counts. "Empty" is strictly
629
+ * those three: a row whose only populated subfield is `0` (number) or
630
+ * `false` (checkbox) survives — those are real values.
631
+ */
632
+ export interface RepeaterMetaBoxField extends MetaBoxFieldBase {
633
+ readonly inputType: "repeater";
634
+ readonly type: "json";
635
+ readonly subFields: readonly MetaBoxField[];
636
+ readonly min?: number;
637
+ readonly max?: number;
638
+ }
639
+ /** Single-value dropdown picker; `options` is required. */
640
+ export interface SelectMetaBoxField extends MetaBoxFieldBase {
641
+ readonly inputType: "select";
642
+ readonly type: "string";
643
+ readonly options: readonly MetaBoxFieldOption[];
644
+ }
645
+ /** Single-value radio group; `options` is required. */
646
+ export interface RadioMetaBoxField extends MetaBoxFieldBase {
647
+ readonly inputType: "radio";
648
+ readonly type: "string";
649
+ readonly options: readonly MetaBoxFieldOption[];
650
+ }
651
+ /** Boolean checkbox — storage type pinned to `boolean`. */
652
+ export interface CheckboxMetaBoxField extends MetaBoxFieldBase {
653
+ readonly inputType: "checkbox";
654
+ readonly type: "boolean";
655
+ }
656
+ /**
657
+ * Catch-all variant for any `inputType` not narrowed into a dedicated
658
+ * variant above — primarily plugin-registered custom types arriving via
659
+ * `registerFieldType`. Object-literal registrations using built-in
660
+ * input-type strings (e.g. `inputType: "text"`) still type-check
661
+ * against the narrowed variant when their option shape matches; this
662
+ * variant exists so authoring patterns and plugin extensions don't
663
+ * regress.
664
+ */
665
+ export interface LegacyMetaBoxField extends MetaBoxFieldBase {
666
+ readonly inputType: string;
667
+ readonly placeholder?: Label;
668
+ readonly maxLength?: number;
669
+ readonly min?: number;
670
+ readonly max?: number;
671
+ readonly step?: number;
672
+ readonly options?: readonly MetaBoxFieldOption[];
673
+ }
674
+ /**
675
+ * A field inside a meta box — the single source of truth for both the
676
+ * admin UI renderer and the server-side storage contract. Declaring a
677
+ * meta box is the only way to register a meta key; there is no separate
678
+ * `registerMeta` step.
679
+ *
680
+ * Modelled as a discriminated union keyed on `inputType`. Each built-in
681
+ * input type has its own narrowed variant produced by a builder helper
682
+ * exported from `plumix/fields`; `LegacyMetaBoxField` keeps custom
683
+ * `registerFieldType` registrations and broad object-literal authoring
684
+ * compiling unchanged.
685
+ */
686
+ export type MetaBoxField = TextMetaBoxField | TextareaMetaBoxField | NumberMetaBoxField | EmailMetaBoxField | UrlMetaBoxField | PasswordMetaBoxField | DateMetaBoxField | DateTimeMetaBoxField | TimeMetaBoxField | ColorMetaBoxField | RangeMetaBoxField | MultiselectMetaBoxField | JsonMetaBoxField | UserMetaBoxField | UserListMetaBoxField | EntryReferenceMetaBoxField | EntryListMetaBoxField | TermReferenceMetaBoxField | TermListMetaBoxField | MediaMetaBoxField | MediaListMetaBoxField | RichtextMetaBoxField | RepeaterMetaBoxField | SelectMetaBoxField | RadioMetaBoxField | CheckboxMetaBoxField | LegacyMetaBoxField;
687
+ /**
688
+ * Shared base for every "card of fields" registration surface — entry
689
+ * meta boxes, term meta boxes, user meta boxes, and settings groups.
690
+ * Each concrete surface extends this with its scope specifier (if any)
691
+ * and any surface-specific layout hints (`location` on entry boxes).
692
+ *
693
+ * Semantics shared across every extender:
694
+ * - `priority` orders cards within their region; lower first,
695
+ * unspecified sorts last, ties break by `id` / `name` alphabetical.
696
+ * - `capability` is a UI-only filter — the admin hides cards the
697
+ * viewer lacks the capability for. The server enforces only the
698
+ * entity-level write gate (`<entryType>:edit*`, `<termTaxonomy>:edit`,
699
+ * `user:edit`, `settings:manage`). Do NOT use `capability` for
700
+ * secrets; any user with the entity write gate can write any
701
+ * registered field via the raw RPC.
702
+ * - `fields` carry `MetaBoxField.sanitize` which runs server-side only
703
+ * — the manifest wire contract strips callbacks before shipping.
704
+ */
705
+ export interface MetaBoxBaseOptions {
706
+ readonly label: Label;
707
+ readonly description?: Label;
708
+ readonly priority?: number;
709
+ readonly capability?: string;
710
+ readonly fields: readonly MetaBoxField[];
711
+ }
712
+ /**
713
+ * Field shape for entry meta boxes. Drops `span` from the shared
714
+ * `MetaBoxField` — the editor's document rail is a fixed 256px column,
715
+ * so side-by-side layouts can't fit legibly. Compile-time signal to
716
+ * plugin authors that spans are a page-width affordance only (term,
717
+ * user, settings).
718
+ *
719
+ * `Omit<MetaBoxField, "span">` would normally distribute over the
720
+ * union, but TS's excess-property check across a many-variant
721
+ * distributed `Omit` gets pessimistic and starts rejecting options
722
+ * that exist only on a subset of variants. The explicit per-variant
723
+ * union below preserves the same shape with stable inference.
724
+ */
725
+ export type EntryMetaBoxField = Omit<TextMetaBoxField, "span"> | Omit<TextareaMetaBoxField, "span"> | Omit<NumberMetaBoxField, "span"> | Omit<EmailMetaBoxField, "span"> | Omit<UrlMetaBoxField, "span"> | Omit<PasswordMetaBoxField, "span"> | Omit<DateMetaBoxField, "span"> | Omit<DateTimeMetaBoxField, "span"> | Omit<TimeMetaBoxField, "span"> | Omit<ColorMetaBoxField, "span"> | Omit<RangeMetaBoxField, "span"> | Omit<MultiselectMetaBoxField, "span"> | Omit<JsonMetaBoxField, "span"> | Omit<UserMetaBoxField, "span"> | Omit<UserListMetaBoxField, "span"> | Omit<EntryReferenceMetaBoxField, "span"> | Omit<EntryListMetaBoxField, "span"> | Omit<TermReferenceMetaBoxField, "span"> | Omit<TermListMetaBoxField, "span"> | Omit<MediaMetaBoxField, "span"> | Omit<MediaListMetaBoxField, "span"> | Omit<RichtextMetaBoxField, "span"> | Omit<RepeaterMetaBoxField, "span"> | Omit<SelectMetaBoxField, "span"> | Omit<RadioMetaBoxField, "span"> | Omit<CheckboxMetaBoxField, "span"> | Omit<LegacyMetaBoxField, "span">;
726
+ /**
727
+ * Meta box shown on the entry editor. Scoped by `entryTypes`. Renders
728
+ * as a collapsible section in the editor's document rail, which is
729
+ * fixed at 256px — fields always occupy the full row.
730
+ */
731
+ export interface EntryMetaBoxOptions extends Omit<MetaBoxBaseOptions, "fields"> {
732
+ /**
733
+ * @deprecated The entry editor no longer partitions meta boxes by
734
+ * location — every registered box renders as a collapsible section in
735
+ * the right rail regardless of this flag. Declared for backward
736
+ * compatibility with plugins that still set it; safe to remove from
737
+ * new code.
738
+ */
739
+ readonly location?: "bottom" | "sidebar";
740
+ readonly entryTypes: readonly string[];
741
+ readonly fields: readonly EntryMetaBoxField[];
742
+ }
743
+ /** Meta box shown on the termTaxonomy term edit form. Scoped by `termTaxonomies`. */
744
+ export interface TermMetaBoxOptions extends MetaBoxBaseOptions {
745
+ readonly termTaxonomies: readonly string[];
746
+ }
747
+ /**
748
+ * Meta box shown on the user edit form. User meta is a flat keyspace
749
+ * (no scope analogue to entry types or termTaxonomies), so the base shape
750
+ * is everything an author needs.
751
+ */
752
+ export type UserMetaBoxOptions = MetaBoxBaseOptions;
753
+ /**
754
+ * A self-contained group of fields on a settings page — storage unit
755
+ * AND visual unit. Each group gets its own Save button (independent
756
+ * storage, unlike entity meta which rides the entity's single Save).
757
+ * Surfaced via `registerSettingsPage.groups: string[]`.
758
+ */
759
+ export type SettingsGroupOptions = MetaBoxBaseOptions;
760
+ /**
761
+ * A UI-level composition of groups rendered at `/settings/<page>` in the
762
+ * admin. Pages are not stored — they're pure registration metadata. A
763
+ * page lists the groups it wants to surface by name (each group can be
764
+ * referenced from multiple pages if useful).
765
+ */
766
+ export interface SettingsPageOptions {
767
+ readonly label: Label;
768
+ readonly description?: Label;
769
+ readonly groups: readonly string[];
770
+ /**
771
+ * Admin menu ordering. Unspecified positions sort last (in
772
+ * registration order). Mirrors `EntryTypeOptions.priority` so
773
+ * sidebar composition stays predictable across plugins.
774
+ */
775
+ readonly priority?: number;
776
+ }
777
+ export interface RegisteredEntryType extends EntryTypeOptions {
778
+ readonly name: string;
779
+ readonly registeredBy: string | null;
780
+ }
781
+ export interface RegisteredTermTaxonomy extends TermTaxonomyOptions {
782
+ readonly name: string;
783
+ readonly registeredBy: string | null;
784
+ }
785
+ export interface RegisteredEntryMetaBox extends EntryMetaBoxOptions {
786
+ readonly id: string;
787
+ readonly registeredBy: string | null;
788
+ }
789
+ export interface RegisteredTermMetaBox extends TermMetaBoxOptions {
790
+ readonly id: string;
791
+ readonly registeredBy: string | null;
792
+ }
793
+ export interface RegisteredUserMetaBox extends UserMetaBoxOptions {
794
+ readonly id: string;
795
+ readonly registeredBy: string | null;
796
+ }
797
+ export interface RegisteredSettingsGroup extends SettingsGroupOptions {
798
+ readonly name: string;
799
+ readonly registeredBy: string | null;
800
+ }
801
+ export interface RegisteredSettingsPage extends SettingsPageOptions {
802
+ readonly name: string;
803
+ readonly registeredBy: string | null;
804
+ }
805
+ export interface RegisteredCapability {
806
+ readonly name: string;
807
+ readonly minRole: UserRole;
808
+ /**
809
+ * Additional roles explicitly granted the capability, independent of
810
+ * hierarchy. Complements `minRole`: a role satisfies the capability
811
+ * if it meets `minRole` OR appears here. Useful for non-contiguous
812
+ * grants ("editors and authors but not admins in between" stays
813
+ * impossible; "admin by hierarchy + author explicitly" becomes
814
+ * expressible). Sorted + deduped at registration.
815
+ */
816
+ readonly defaultGrants?: readonly UserRole[];
817
+ readonly registeredBy: string | null;
818
+ }
819
+ export interface RegisteredRewriteRule {
820
+ readonly pattern: string;
821
+ readonly intent: RouteIntent;
822
+ readonly priority: number;
823
+ readonly registeredBy: string | null;
824
+ }
825
+ /**
826
+ * Reference to a React component contributed by a plugin. The string is
827
+ * the export name on the plugin's `adminEntry` module — the plumix vite
828
+ * pipeline namespace-imports each plugin's entry and emits the matching
829
+ * `window.plumix.registerPlugin{Page,FieldType}` calls into the
830
+ * synthesised admin chunk, so plugin authors only need `export const
831
+ * MyComponent = ...` and a single registration call to `ctx.register*`.
832
+ *
833
+ * No `package` field is needed: the plugin id (implicit from
834
+ * registration context) keys the namespace import the export resolves
835
+ * against. Drop-in for the previous `{ package, export }` shape; bumped
836
+ * pre-release so consumers can update in one pass.
837
+ */
838
+ export type PluginComponentRef = string;
839
+ /**
840
+ * How an admin page slots into the sidebar. `group` is either a bare
841
+ * id (string) or an object that declares group metadata inline — first
842
+ * page using a given id sets the label/priority for that group; later
843
+ * pages can use the bare-string form to attach to it. Core group ids
844
+ * (`overview` / `content` / `term-taxonomies` / `management`) carry
845
+ * their own label/priority and ignore inline metadata.
846
+ */
847
+ export type AdminNavGroupRef = string | {
848
+ readonly id: string;
849
+ readonly label?: Label;
850
+ readonly priority?: number;
851
+ };
852
+ export interface AdminPageOptions {
853
+ readonly path: string;
854
+ readonly title: Label;
855
+ readonly nav?: {
856
+ readonly group: AdminNavGroupRef;
857
+ readonly label: Label;
858
+ readonly icon?: PluginComponentRef;
859
+ readonly order?: number;
860
+ /** Synonyms the command palette matches in addition to `label`. */
861
+ readonly keywords?: readonly Label[];
862
+ };
863
+ readonly capability?: string;
864
+ readonly component: PluginComponentRef;
865
+ }
866
+ export interface RegisteredAdminPage extends AdminPageOptions {
867
+ readonly registeredBy: string | null;
868
+ }
869
+ export interface DashboardWidgetOptions {
870
+ /** Unique widget id, conventionally `<pluginId>:<name>`. */
871
+ readonly id: string;
872
+ readonly title: Label;
873
+ /** Hidden unless the viewer holds this capability (when set). */
874
+ readonly capability?: string;
875
+ /** Export name in the plugin's admin chunk, resolved at render. */
876
+ readonly component: PluginComponentRef;
877
+ /** Lower sorts first on the dashboard; unset sorts last. */
878
+ readonly priority?: number;
879
+ }
880
+ export interface RegisteredDashboardWidget extends DashboardWidgetOptions {
881
+ readonly registeredBy: string | null;
882
+ }
883
+ export interface DashboardWidgetManifestEntry {
884
+ readonly id: string;
885
+ readonly title: Label;
886
+ readonly capability?: string;
887
+ readonly component: PluginComponentRef;
888
+ readonly priority?: number;
889
+ }
890
+ /**
891
+ * Built-in nav-icon names that core nav items reference. The admin maps
892
+ * each value to a lucide component at render time — keeps the wire
893
+ * payload free of package identifiers and makes the union exhaustive at
894
+ * the type level.
895
+ */
896
+ export type CoreIconName = "dashboard" | "content" | "file-text" | "layout" | "image" | "calendar" | "tag" | "folder" | "users" | "settings" | "puzzle" | "mail" | "key";
897
+ /**
898
+ * Built-in nav groups core ships. Plugins target their items at these
899
+ * ids via `nav.group`, and can interleave their own groups by picking
900
+ * priorities between or around these defaults. Labels are
901
+ * `MessageDescriptor`s so the sidebar localizes at render time via
902
+ * the admin's `useLabel` hook.
903
+ *
904
+ * Convention: plugin-declared groups keep their label descriptor id
905
+ * under the same `core.adminNav.<groupId>` namespace (see
906
+ * `@plumix/plugin-menu` → `appearance`, `@plumix/plugin-media` →
907
+ * `library`, `@plumix/plugin-audit-log` → `tools`). The id space is
908
+ * the concept, not the owner — translators see one "Appearance"
909
+ * entry rather than one per plugin sharing the group.
910
+ */
911
+ export declare const CORE_NAV_GROUPS: readonly {
912
+ readonly id: string;
913
+ readonly label: Label;
914
+ readonly priority: number;
915
+ }[];
916
+ /**
917
+ * Plugin-contributed form field renderer. The admin's form dispatcher
918
+ * falls through to a plain text input on unknown `inputType` values
919
+ * (with a dev-mode warning); registering a type here swaps in a
920
+ * plugin React component that renders the custom UI.
921
+ *
922
+ * The `type` string must match a field's `inputType` — registering
923
+ * `type: "media_picker"` means any field (entry meta, term meta,
924
+ * user meta, settings group) with `inputType: "media_picker"`
925
+ * renders through the plugin's component.
926
+ */
927
+ export interface FieldTypeOptions {
928
+ readonly type: string;
929
+ readonly component: PluginComponentRef;
930
+ }
931
+ export interface RegisteredFieldType extends FieldTypeOptions {
932
+ readonly registeredBy: string | null;
933
+ }
934
+ export type PluginRouteMethod = "GET" | "HEAD" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "*";
935
+ export type PluginRouteAuth = "public" | "authenticated" | {
936
+ readonly capability: string;
937
+ };
938
+ export interface RegisteredRawRoute {
939
+ readonly pluginId: string;
940
+ readonly method: PluginRouteMethod;
941
+ readonly path: string;
942
+ readonly auth: PluginRouteAuth;
943
+ readonly handler: (request: Request, ctx: AppContext) => Response | Promise<Response>;
944
+ }
945
+ export type RestResourceMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
946
+ /**
947
+ * A REST resource a plugin contributes into the shared `/_plumix/api/v1/`
948
+ * namespace. `path` is relative to that prefix (e.g. `/{type}/{id}/comments`)
949
+ * and uses `{param}` segments. `auth` reuses the declarative route model; core
950
+ * enforces it before the handler runs. `input`/`output` are valibot schemas —
951
+ * the `output` schema is the public allowlist and feeds the generated spec.
952
+ */
953
+ export interface RestResourceOptions {
954
+ readonly method?: RestResourceMethod;
955
+ readonly path: string;
956
+ readonly auth: PluginRouteAuth;
957
+ readonly input?: any;
958
+ readonly output: any;
959
+ readonly handler: (args: {
960
+ input: any;
961
+ context: AppContext;
962
+ }) => any;
963
+ }
964
+ export interface RegisteredRestResource extends RestResourceOptions {
965
+ readonly pluginId: string;
966
+ readonly method: RestResourceMethod;
967
+ }
968
+ /**
969
+ * Tiny `{ key, label, href }` blob a plugin attaches so the standard
970
+ * login screen can render a button for the sign-in flow it ships. The
971
+ * actual flow (start route, callback route, identity resolution) is
972
+ * registered separately via `registerRoute` + `resolveExternalIdentity`;
973
+ * this is purely the UI affordance that points the user at it.
974
+ */
975
+ export interface LoginLinkOptions {
976
+ /**
977
+ * Stable key, scoped per-plugin. The wire id surfaced to the admin
978
+ * (and used as its React key) is `${pluginId}:${key}`, so the bare
979
+ * `key` you pass only needs to be unique within your own plugin —
980
+ * two different plugins can both register a `key: "default"`.
981
+ *
982
+ * Lowercase alphanum + dash/underscore, must start with a letter,
983
+ * 1–32 chars total. Same shape as `OAUTH_PROVIDER_KEY_PATTERN`.
984
+ */
985
+ readonly key: string;
986
+ /**
987
+ * Button text shown on the login screen ("Sign in with Microsoft",
988
+ * "Continue with Okta"). No CR/LF — see `siteName` for rationale.
989
+ */
990
+ readonly label: string;
991
+ /**
992
+ * URL the button points at — typically the plugin's own start route,
993
+ * e.g. `/_plumix/saml-microsoft/start`. Must be a relative path
994
+ * starting with `/` or an `https://` absolute URL; arbitrary schemes
995
+ * are rejected so a malicious or misconfigured plugin can't surface
996
+ * a `javascript:` link.
997
+ */
998
+ readonly href: string;
999
+ }
1000
+ export interface RegisteredLoginLink extends LoginLinkOptions {
1001
+ readonly registeredBy: string;
1002
+ }
1003
+ /**
1004
+ * Plugin-registered work that fires on the runtime's scheduled trigger
1005
+ * (Cloudflare cron, future Node/Bun timers). The handler receives a
1006
+ * synthetic-request `AppContext` — same `db` / `hooks` / `logger` /
1007
+ * `defer` as a normal request, but `user` is `null` and `request` is
1008
+ * an internal marker.
1009
+ *
1010
+ * A task with a `cron` runs only on the invocation whose fired schedule
1011
+ * (`event.cron`) byte-matches it; a task without one runs on every
1012
+ * invocation. The operator must declare a matching `wrangler` `triggers.crons`
1013
+ * entry for a `cron`-tagged task to ever fire — the strings must be identical.
1014
+ */
1015
+ export interface ScheduledTask {
1016
+ readonly id: string;
1017
+ /** Cron expression; must byte-match a `wrangler` `triggers.crons` entry. */
1018
+ readonly cron?: string;
1019
+ readonly handler: (ctx: AppContext) => void | Promise<void>;
1020
+ }
1021
+ export interface RegisteredScheduledTask extends ScheduledTask {
1022
+ readonly registeredBy: string;
1023
+ }
1024
+ export type PluginRpcRouter = Record<string, any>;
1025
+ export interface RegisteredMcpTool {
1026
+ readonly tool: McpTool;
1027
+ readonly registeredBy: string;
1028
+ }
1029
+ export interface RegisteredBlock {
1030
+ readonly spec: BlockSpec;
1031
+ readonly registeredBy: string;
1032
+ }
1033
+ export interface RegisteredMark {
1034
+ readonly spec: MarkSpec;
1035
+ readonly registeredBy: string;
1036
+ }
1037
+ export interface RegisteredPattern {
1038
+ readonly spec: BlockPattern;
1039
+ readonly registeredBy: string;
1040
+ }
1041
+ export interface RegisteredShortcode {
1042
+ readonly spec: ShortcodeSpec;
1043
+ readonly registeredBy: string;
1044
+ }
1045
+ export interface PluginRegistry {
1046
+ readonly entryTypes: ReadonlyMap<string, RegisteredEntryType>;
1047
+ readonly termTaxonomies: ReadonlyMap<string, RegisteredTermTaxonomy>;
1048
+ readonly entryMetaBoxes: ReadonlyMap<string, RegisteredEntryMetaBox>;
1049
+ readonly termMetaBoxes: ReadonlyMap<string, RegisteredTermMetaBox>;
1050
+ readonly userMetaBoxes: ReadonlyMap<string, RegisteredUserMetaBox>;
1051
+ readonly capabilities: ReadonlyMap<string, RegisteredCapability>;
1052
+ readonly settingsGroups: ReadonlyMap<string, RegisteredSettingsGroup>;
1053
+ readonly settingsPages: ReadonlyMap<string, RegisteredSettingsPage>;
1054
+ readonly rewriteRules: readonly RegisteredRewriteRule[];
1055
+ readonly rpcRouters: ReadonlyMap<string, PluginRpcRouter>;
1056
+ readonly mcpTools: ReadonlyMap<string, RegisteredMcpTool>;
1057
+ readonly rawRoutes: readonly RegisteredRawRoute[];
1058
+ readonly restResources: readonly RegisteredRestResource[];
1059
+ readonly loginLinks: readonly RegisteredLoginLink[];
1060
+ readonly adminPages: ReadonlyMap<string, RegisteredAdminPage>;
1061
+ readonly dashboardWidgets: ReadonlyMap<string, RegisteredDashboardWidget>;
1062
+ readonly fieldTypes: ReadonlyMap<string, RegisteredFieldType>;
1063
+ readonly blockSpecs: ReadonlyMap<string, RegisteredBlock>;
1064
+ readonly markSpecs: ReadonlyMap<string, RegisteredMark>;
1065
+ readonly patternSpecs: ReadonlyMap<string, RegisteredPattern>;
1066
+ readonly shortcodeSpecs: ReadonlyMap<string, RegisteredShortcode>;
1067
+ readonly lookupAdapters: ReadonlyMap<string, RegisteredLookupAdapter>;
1068
+ readonly scheduledTasks: readonly RegisteredScheduledTask[];
1069
+ readonly templateDeps: ReadonlyMap<string, RegisteredTemplateDep>;
1070
+ }
1071
+ export interface MutablePluginRegistry extends PluginRegistry {
1072
+ readonly entryTypes: Map<string, RegisteredEntryType>;
1073
+ readonly termTaxonomies: Map<string, RegisteredTermTaxonomy>;
1074
+ readonly entryMetaBoxes: Map<string, RegisteredEntryMetaBox>;
1075
+ readonly termMetaBoxes: Map<string, RegisteredTermMetaBox>;
1076
+ readonly userMetaBoxes: Map<string, RegisteredUserMetaBox>;
1077
+ readonly capabilities: Map<string, RegisteredCapability>;
1078
+ readonly settingsGroups: Map<string, RegisteredSettingsGroup>;
1079
+ readonly settingsPages: Map<string, RegisteredSettingsPage>;
1080
+ readonly rewriteRules: RegisteredRewriteRule[];
1081
+ readonly rpcRouters: Map<string, PluginRpcRouter>;
1082
+ readonly mcpTools: Map<string, RegisteredMcpTool>;
1083
+ readonly rawRoutes: RegisteredRawRoute[];
1084
+ readonly restResources: RegisteredRestResource[];
1085
+ readonly loginLinks: RegisteredLoginLink[];
1086
+ readonly adminPages: Map<string, RegisteredAdminPage>;
1087
+ readonly dashboardWidgets: Map<string, RegisteredDashboardWidget>;
1088
+ readonly fieldTypes: Map<string, RegisteredFieldType>;
1089
+ readonly blockSpecs: Map<string, RegisteredBlock>;
1090
+ readonly markSpecs: Map<string, RegisteredMark>;
1091
+ readonly patternSpecs: Map<string, RegisteredPattern>;
1092
+ readonly shortcodeSpecs: Map<string, RegisteredShortcode>;
1093
+ readonly lookupAdapters: Map<string, RegisteredLookupAdapter>;
1094
+ readonly scheduledTasks: RegisteredScheduledTask[];
1095
+ readonly templateDeps: Map<string, RegisteredTemplateDep>;
1096
+ }
1097
+ export declare function createPluginRegistry(): MutablePluginRegistry;
1098
+ /**
1099
+ * Look up the `MetaBoxField` declaration for a meta key within the
1100
+ * entry meta surface, scoped to a given entry type. Returns the first
1101
+ * matching field across all registered entry meta boxes — key
1102
+ * uniqueness per (entryType, key) is enforced at registration time,
1103
+ * so "first match" is the only match.
1104
+ */
1105
+ export declare function findEntryMetaField(registry: PluginRegistry, entryType: string, key: string): MetaBoxField | undefined;
1106
+ /**
1107
+ * Like `findEntryMetaField`, but for term meta. Scoped by termTaxonomy.
1108
+ */
1109
+ export declare function findTermMetaField(registry: PluginRegistry, termTaxonomy: string, key: string): MetaBoxField | undefined;
1110
+ /**
1111
+ * Like `findEntryMetaField`, but for user meta. Users have a flat
1112
+ * keyspace (no entry-type / termTaxonomy analogue), so no scope argument —
1113
+ * key uniqueness across all user meta boxes is enforced at manifest-
1114
+ * build time.
1115
+ */
1116
+ export declare function findUserMetaField(registry: PluginRegistry, key: string): MetaBoxField | undefined;
1117
+ /**
1118
+ * Shape serialised into the admin's `<script id="plumix-manifest">` payload.
1119
+ * Intentionally a strict subset of `RegisteredEntryType`: drops
1120
+ * `registeredBy` (plugin attribution is server-only debug metadata) and
1121
+ * `rewrite` (URL mapping is evaluated server-side). Add fields only when the
1122
+ * admin UI needs them.
1123
+ *
1124
+ * `adminSlug` is derived at build time (see `buildManifest`) and is what the
1125
+ * admin router uses for `/entries/$slug`. Keeping it in the manifest rather
1126
+ * than re-deriving client-side lets the collision check run once on the
1127
+ * server and ships the final routing key as authoritative.
1128
+ */
1129
+ export interface EntryTypeManifestEntry {
1130
+ readonly name: string;
1131
+ readonly adminSlug: string;
1132
+ readonly label: Label;
1133
+ /** Plugin-author-declared per-type labels. Admin consumers resolve
1134
+ * the cascade via `entryTypeLabel(entry, key)` which falls back to
1135
+ * `GENERIC_ENTRY_TYPE_LABELS[key]` when a key is unset — keeping
1136
+ * the wire shape narrow (only author-declared keys serialize). */
1137
+ readonly labels?: EntryTypeLabels;
1138
+ readonly description?: string;
1139
+ readonly supports?: readonly string[];
1140
+ readonly termTaxonomies?: readonly string[];
1141
+ readonly isHierarchical?: boolean;
1142
+ /**
1143
+ * Resolved visibility. `buildManifest` always emits these — consumers
1144
+ * should read them via `manifestEntryVisibility(entry)` which applies
1145
+ * the same cascade rules as `resolveEntryTypeVisibility` when they
1146
+ * happen to be missing (lets admin test fixtures stay terse without
1147
+ * the client ever branching on undefined).
1148
+ */
1149
+ readonly isPublic?: boolean;
1150
+ readonly showUI?: boolean;
1151
+ readonly showInSidebar?: boolean;
1152
+ readonly hasArchive?: boolean | string;
1153
+ readonly capabilityType?: string;
1154
+ readonly priority?: number;
1155
+ readonly menuIcon?: string;
1156
+ /** Synonyms the command palette matches in addition to the sidebar label. */
1157
+ readonly keywords?: readonly Label[];
1158
+ /**
1159
+ * Per-type versioning policy. Populated when the entry type opts
1160
+ * into `supports: ['revisions']`. `maxRevisions` caps how many
1161
+ * revision rows are retained per live entry — oldest pruned past
1162
+ * the cap on each successful update. `autosaveIntervalSeconds`
1163
+ * shapes the editor's autosave cadence in a later slice; defaults
1164
+ * to 60 here so themes can read it without nil-checking.
1165
+ */
1166
+ readonly versioning?: {
1167
+ readonly maxRevisions: number;
1168
+ readonly autosaveIntervalSeconds: number;
1169
+ };
1170
+ }
1171
+ /**
1172
+ * Client-safe field descriptor inside a meta box. Mirrors `MetaBoxField`
1173
+ * minus the server-only `sanitize` callback and `default` value (the
1174
+ * admin receives the default server-side and injects it into the form).
1175
+ */
1176
+ export interface MetaBoxFieldManifestEntry {
1177
+ readonly key: string;
1178
+ readonly label: Label;
1179
+ readonly type: MetaScalarType;
1180
+ readonly inputType: string;
1181
+ readonly description?: Label;
1182
+ readonly required?: boolean;
1183
+ readonly placeholder?: Label;
1184
+ readonly maxLength?: number;
1185
+ /**
1186
+ * Lower bound. `number` carries it as a number; `date` / `datetime`
1187
+ * / `time` carry it as the matching ISO string. Renderers branch on
1188
+ * `inputType` to pick the right interpretation.
1189
+ */
1190
+ readonly min?: number | string;
1191
+ /** Upper bound — see `min`. */
1192
+ readonly max?: number | string;
1193
+ readonly step?: number;
1194
+ readonly options?: readonly MetaBoxFieldOption[];
1195
+ readonly default?: unknown;
1196
+ readonly span?: MetaBoxFieldSpan;
1197
+ /**
1198
+ * Carried for reference field variants (`user`, `entry`, `term`,
1199
+ * `media`, plugin-registered kinds). The admin's generic picker
1200
+ * dispatches on `referenceTarget.kind` to call the matching
1201
+ * lookup RPC; `scope` rides along untouched.
1202
+ */
1203
+ readonly referenceTarget?: ReferenceTarget;
1204
+ /**
1205
+ * Richtext field allowlists — wire projection of
1206
+ * `RichtextMetaBoxField`'s `marks` / `nodes` / `blocks`. See that
1207
+ * type for semantics.
1208
+ */
1209
+ readonly marks?: readonly string[];
1210
+ readonly nodes?: readonly string[];
1211
+ readonly blocks?: readonly string[];
1212
+ /**
1213
+ * Repeater subfield manifest, keyed positionally — same shape as a
1214
+ * top-level field minus `span` (rows are full-width). Sanitize
1215
+ * callbacks are stripped from the wire shape; the admin recurses
1216
+ * through this list when rendering each row.
1217
+ */
1218
+ readonly subFields?: readonly EntryMetaBoxFieldManifestEntry[];
1219
+ /**
1220
+ * Capability gate for the individual field. See `MetaBoxFieldBase.capability`.
1221
+ */
1222
+ readonly capability?: string;
1223
+ }
1224
+ /**
1225
+ * Shared base for every "card of fields" serialised entry. Each
1226
+ * concrete projection extends with its identifier + any surface-
1227
+ * specific layout + scope fields.
1228
+ */
1229
+ export interface MetaBoxBaseManifestEntry {
1230
+ readonly label: Label;
1231
+ readonly description?: Label;
1232
+ readonly priority?: number;
1233
+ readonly capability?: string;
1234
+ readonly fields: readonly MetaBoxFieldManifestEntry[];
1235
+ }
1236
+ /**
1237
+ * Wire-side mirror of `EntryMetaBoxField` — drops `span` from the
1238
+ * shared `MetaBoxFieldManifestEntry`. See `EntryMetaBoxField` for why.
1239
+ */
1240
+ export type EntryMetaBoxFieldManifestEntry = Omit<MetaBoxFieldManifestEntry, "span">;
1241
+ export interface EntryMetaBoxManifestEntry extends Omit<MetaBoxBaseManifestEntry, "fields"> {
1242
+ readonly id: string;
1243
+ /**
1244
+ * @deprecated Ignored by the admin editor — all entry meta boxes
1245
+ * render in the document rail as collapsible sections. Kept on the
1246
+ * wire so older plugins that set it don't fail manifest validation.
1247
+ */
1248
+ readonly location?: "bottom" | "sidebar";
1249
+ readonly entryTypes: readonly string[];
1250
+ readonly fields: readonly EntryMetaBoxFieldManifestEntry[];
1251
+ }
1252
+ export interface TermMetaBoxManifestEntry extends MetaBoxBaseManifestEntry {
1253
+ readonly id: string;
1254
+ readonly termTaxonomies: readonly string[];
1255
+ }
1256
+ export interface UserMetaBoxManifestEntry extends MetaBoxBaseManifestEntry {
1257
+ readonly id: string;
1258
+ }
1259
+ /**
1260
+ * Shape serialised for termTaxonomies in the manifest. Strict allowlist
1261
+ * projection of `RegisteredTermTaxonomy` — drops `registeredBy` (server-only
1262
+ * debug metadata) and server-only operational flags (`isInQuickEdit`,
1263
+ * `hasAdminColumn`, `rewrite`) that don't affect the admin UI today.
1264
+ * `entryTypes` is kept so future admin surfaces (term-picker on post
1265
+ * editor) can filter by post type without a second round-trip.
1266
+ */
1267
+ export interface TermTaxonomyManifestEntry {
1268
+ readonly name: string;
1269
+ readonly label: Label;
1270
+ /** Plugin-author-declared per-type labels — see
1271
+ * `EntryTypeManifestEntry.labels` for the cascade contract. */
1272
+ readonly labels?: TermTaxonomyLabels;
1273
+ readonly description?: string;
1274
+ readonly isHierarchical?: boolean;
1275
+ readonly entryTypes?: readonly string[];
1276
+ /** Resolved visibility — see `EntryTypeManifestEntry`. */
1277
+ readonly isPublic?: boolean;
1278
+ readonly showUI?: boolean;
1279
+ readonly showInSidebar?: boolean;
1280
+ readonly menuIcon?: string;
1281
+ /** Synonyms the command palette matches in addition to the sidebar label. */
1282
+ readonly keywords?: readonly Label[];
1283
+ }
1284
+ /**
1285
+ * Shape serialised for settings groups in the manifest. Same shared
1286
+ * shape as every other meta surface; the storage key `name` replaces
1287
+ * the meta-box `id`. Fields use the same `MetaBoxFieldManifestEntry`
1288
+ * type — one field contract for plugin authors.
1289
+ */
1290
+ export interface SettingsGroupManifestEntry extends MetaBoxBaseManifestEntry {
1291
+ readonly name: string;
1292
+ }
1293
+ /**
1294
+ * Shape serialised for settings pages in the manifest. Pages are pure
1295
+ * admin-UI composition: `groups` names registered groups in render
1296
+ * order, one shadcn `<Card>` per group in the admin route.
1297
+ */
1298
+ export interface SettingsPageManifestEntry {
1299
+ readonly name: string;
1300
+ readonly label: Label;
1301
+ readonly description?: Label;
1302
+ readonly groups: readonly string[];
1303
+ readonly priority?: number;
1304
+ }
1305
+ /**
1306
+ * One row in the assembled admin sidebar tree. Sources contributing
1307
+ * items: core (Dashboard, Users, Settings), entry types (auto-projected
1308
+ * to the `content` group), term taxonomies (auto-projected to the
1309
+ * `term-taxonomies` group), and plugin-registered admin pages with
1310
+ * `nav` set.
1311
+ *
1312
+ * Exactly one of `icon` (plugin-supplied React component ref) or
1313
+ * `coreIcon` (built-in lucide name) is set per item; admin picks a
1314
+ * generic fallback when neither is provided.
1315
+ *
1316
+ * `component` is set only for plugin-rendered routes — the admin's
1317
+ * `/p/$` catch-all looks up this ref to render the page. Items that
1318
+ * point at core admin routes (`/`, `/users`, `/settings`,
1319
+ * `/entries/<slug>`, etc.) leave it undefined.
1320
+ */
1321
+ export interface AdminNavItem {
1322
+ readonly to: string;
1323
+ readonly label: Label;
1324
+ readonly order?: number;
1325
+ readonly capability?: string;
1326
+ readonly icon?: PluginComponentRef;
1327
+ readonly coreIcon?: CoreIconName;
1328
+ readonly component?: PluginComponentRef;
1329
+ readonly exact?: boolean;
1330
+ /** Synonyms the command palette matches in addition to `label`. */
1331
+ readonly keywords?: readonly Label[];
1332
+ }
1333
+ export interface AdminNavGroup {
1334
+ readonly id: string;
1335
+ readonly label: Label;
1336
+ readonly priority?: number;
1337
+ readonly icon?: PluginComponentRef;
1338
+ readonly coreIcon?: CoreIconName;
1339
+ readonly items: readonly AdminNavItem[];
1340
+ }
1341
+ export interface FieldTypeManifestEntry {
1342
+ readonly type: string;
1343
+ readonly component: PluginComponentRef;
1344
+ }
1345
+ export interface BlockManifestEntry {
1346
+ readonly name: string;
1347
+ readonly title: Label;
1348
+ readonly category?: string;
1349
+ readonly icon?: string;
1350
+ readonly description?: Label;
1351
+ readonly keywords?: readonly Label[];
1352
+ readonly inserter?: boolean;
1353
+ readonly variations?: readonly BlockVariation[];
1354
+ }
1355
+ export interface MarkManifestEntry {
1356
+ readonly name: string;
1357
+ readonly title: string;
1358
+ readonly description?: string;
1359
+ readonly keyboardShortcut?: string;
1360
+ readonly bubbleMenuLabel?: string;
1361
+ readonly bubbleMenuIcon?: string;
1362
+ /** Export name on the plugin's `adminEntry` module — see `MarkSpec.adminSchema`. */
1363
+ readonly adminSchema?: string;
1364
+ }
1365
+ export interface PatternManifestEntry {
1366
+ readonly name: string;
1367
+ readonly title: Label;
1368
+ readonly category?: string;
1369
+ readonly keywords?: readonly Label[];
1370
+ readonly insert?: PatternInsertMode;
1371
+ readonly preview?: PatternPreview;
1372
+ readonly target?: PatternTarget;
1373
+ readonly entryTypes?: readonly string[];
1374
+ readonly priority?: number;
1375
+ readonly content: readonly BlockNode[];
1376
+ }
1377
+ /**
1378
+ * Wire-shipped manifest payload. Every field is optional on the type
1379
+ * so test fixtures can declare just the slice they exercise; the
1380
+ * server's `buildManifest` always populates all of them and consumers
1381
+ * coerce missing fields to `[]` at the read site.
1382
+ */
1383
+ export interface PlumixManifest {
1384
+ readonly entryTypes?: readonly EntryTypeManifestEntry[];
1385
+ readonly termTaxonomies?: readonly TermTaxonomyManifestEntry[];
1386
+ readonly entryMetaBoxes?: readonly EntryMetaBoxManifestEntry[];
1387
+ readonly termMetaBoxes?: readonly TermMetaBoxManifestEntry[];
1388
+ readonly userMetaBoxes?: readonly UserMetaBoxManifestEntry[];
1389
+ readonly settingsGroups?: readonly SettingsGroupManifestEntry[];
1390
+ readonly settingsPages?: readonly SettingsPageManifestEntry[];
1391
+ readonly adminNav?: readonly AdminNavGroup[];
1392
+ readonly dashboardWidgets?: readonly DashboardWidgetManifestEntry[];
1393
+ readonly fieldTypes?: readonly FieldTypeManifestEntry[];
1394
+ readonly blocks?: readonly BlockManifestEntry[];
1395
+ readonly marks?: readonly MarkManifestEntry[];
1396
+ readonly patterns?: readonly PatternManifestEntry[];
1397
+ /**
1398
+ * Theme tokens from `defineTheme({ tokens })`. Routed through the
1399
+ * manifest channel because the precompiled admin shell can't import
1400
+ * `plumix.config.ts` at build time.
1401
+ */
1402
+ readonly tokens?: ThemeTokens;
1403
+ /**
1404
+ * Theme responsive breakpoints from `defineTheme({ breakpoints })`. Same
1405
+ * manifest-channel reason as `tokens`: the precompiled admin shell can't
1406
+ * import the user's config, but the editor needs them for device widths.
1407
+ */
1408
+ readonly breakpoints?: ThemeBreakpoints;
1409
+ /**
1410
+ * Site i18n config — populates the locale-switcher dropdown and gives
1411
+ * admin components access to the active default. Same channel reason as
1412
+ * `tokens`: the precompiled admin shell can't import the user's config.
1413
+ */
1414
+ readonly i18n?: I18nManifest;
1415
+ /**
1416
+ * Per-plugin catalog URL maps for the i18n runtime registry (#697).
1417
+ * Admin fetches `pluginI18n[id].catalogs[locale]` at boot, merges the
1418
+ * loaded `messages` into the active Lingui instance. The source
1419
+ * locale never has an entry (Lingui returns `descriptor.message`
1420
+ * when active === source). Locales are intersected with the site's
1421
+ * enabled list before emission. Plugins without an `i18n` slot
1422
+ * don't appear here.
1423
+ */
1424
+ readonly pluginI18n?: PluginI18nManifest;
1425
+ }
1426
+ /** Per-plugin catalog URL maps. Flat record keyed by plugin id so
1427
+ * `manifest.pluginI18n[id]` is direct lookup; admin reads this
1428
+ * shape verbatim. */
1429
+ export type PluginI18nManifest = Readonly<Record<string, {
1430
+ readonly catalogs: Readonly<Record<string, string>>;
1431
+ }>>;
1432
+ /** URL the admin runtime fetches to load a plugin's compiled catalog
1433
+ * for a given locale. Same-origin under `/_plumix/admin/...` so the
1434
+ * default CSP `script-src 'self'` covers the dynamic import. Widening
1435
+ * to absolute URLs (CDN-hosted catalogs) would need a CSP review.
1436
+ *
1437
+ * Paired with `pluginCatalogStagedPath` — the plumix Vite plugin stages
1438
+ * each plugin's `.mjs` at that filesystem path so the URL resolves. */
1439
+ export declare function pluginCatalogUrl(pluginId: string, locale: string): string;
1440
+ /** Filesystem path (relative to the admin asset root) where the plumix
1441
+ * Vite plugin must stage `<plugin.i18n.catalogPath>/<locale>.mjs`.
1442
+ * Mirrors `pluginCatalogUrl` so a single edit retargets both ends of
1443
+ * the runtime fetch. */
1444
+ export declare function pluginCatalogStagedPath(pluginId: string, locale: string): string;
1445
+ export interface I18nManifest {
1446
+ readonly defaultLocale: string;
1447
+ readonly locales: readonly ResolvedLocale[];
1448
+ }
1449
+ /**
1450
+ * Strict manifest shape — every slice is populated. `buildManifest`
1451
+ * returns this; tests reading from it don't need `?.` everywhere. The
1452
+ * wider `PlumixManifest` (all-optional) is what flows over the wire
1453
+ * and what test fixtures construct.
1454
+ */
1455
+ export type BuiltManifest = {
1456
+ readonly [K in keyof PlumixManifest]-?: NonNullable<PlumixManifest[K]>;
1457
+ };
1458
+ /** Script tag id that carries the JSON-encoded manifest in the admin HTML. */
1459
+ export declare const MANIFEST_SCRIPT_ID = "plumix-manifest";
1460
+ export declare function emptyManifest(): PlumixManifest;
1461
+ /**
1462
+ * Project a registry snapshot into its manifest form — the subset that ships
1463
+ * to the admin bundle. Every surface with a `priority?: number` field —
1464
+ * entry types, entry/term/user meta boxes, settings pages, settings groups —
1465
+ * is sorted by `priority` ascending; ties break by `name` / `id`
1466
+ * alphabetical so the shipped order is deterministic regardless of
1467
+ * plugin install order.
1468
+ *
1469
+ * Throws `DuplicateAdminSlugError` if two post types resolve to the same
1470
+ * admin slug — the admin router can't disambiguate `/entries/$slug` in that
1471
+ * case, and catching it at build time is cheaper than a 404 at runtime.
1472
+ */
1473
+ export declare function buildManifest(registry: PluginRegistry, options?: {
1474
+ readonly tokens?: ThemeTokens;
1475
+ readonly breakpoints?: ThemeBreakpoints;
1476
+ readonly i18n?: ResolvedI18n;
1477
+ readonly plugins?: readonly {
1478
+ readonly id: string;
1479
+ readonly i18n?: PluginI18nSlot;
1480
+ }[];
1481
+ /** Plugin ids whose catalogs admin already bakes into its bundle
1482
+ * via `import.meta.glob("../../../plugins/*"/locales/*.mjs")` —
1483
+ * emitting URLs for them double-loads at runtime. The plumix
1484
+ * vite plugin computes this set by inspecting which plugins
1485
+ * resolve through the `@plumix/plugin-<id>` convention against
1486
+ * the consumer's `node_modules`. Empty / omitted means every
1487
+ * i18n-slot plugin gets a URL. Only consulted alongside
1488
+ * `plugins`; passing this set without `plugins` is a no-op. */
1489
+ readonly adminBundledPluginIds?: ReadonlySet<string>;
1490
+ }): BuiltManifest;
1491
+ /**
1492
+ * Shared comparator: `priority` ascending (unspecified sorts last),
1493
+ * ties broken by a caller-supplied stable key (id / name) in
1494
+ * alphabetical order. Used by `buildManifest` server-side AND the
1495
+ * admin's in-memory filter helpers so the shipped manifest and the
1496
+ * admin filter paths agree on order regardless of registration
1497
+ * sequence.
1498
+ */
1499
+ export declare function byPriorityThen<T extends {
1500
+ readonly priority?: number;
1501
+ }>(getKey: (item: T) => string): (a: T, b: T) => number;
1502
+ /**
1503
+ * Seed per-field values from a server meta bag, falling back to each
1504
+ * field's registered `default`. Shared by every admin form that owns
1505
+ * meta state (entry editor, term edit route, user edit route, settings
1506
+ * group card) — one shape, one behaviour.
1507
+ */
1508
+ export declare function seedFromMetaBoxes(boxes: readonly {
1509
+ readonly fields: readonly {
1510
+ readonly key: string;
1511
+ readonly default?: unknown;
1512
+ }[];
1513
+ }[], stored: Readonly<Record<string, unknown>> | null | undefined): Record<string, unknown>;
1514
+ /**
1515
+ * Derive the URL-safe admin slug for a post type. Prefers `plural` when
1516
+ * set (allows "fish" → `fish`, "children" → `children`, etc.), falls back
1517
+ * to `${name}s` which is English-biased but matches the common case.
1518
+ * Non-alphanumerics collapse to single dashes; leading/trailing dashes
1519
+ * are trimmed. Empty results throw — an empty slug would shadow
1520
+ * `/entries/` itself in TanStack Router.
1521
+ */
1522
+ export declare function deriveAdminSlug(name: string, plural?: string): string;
1523
+ /**
1524
+ * Serialise a manifest into the `<script>` markup injected into the admin
1525
+ * `index.html`. The payload lives inside a `type="application/json"` block,
1526
+ * so it isn't executed — but a stray `</script>` sequence would still end
1527
+ * the tag and leak the remainder into the document. Escape the slash to
1528
+ * neutralise that, which is the standard JSON-in-HTML-script hardening.
1529
+ */
1530
+ export declare function serializeManifestScript(manifest: PlumixManifest): string;
1531
+ /**
1532
+ * Replace the `<script id="plumix-manifest">` placeholder in the admin's
1533
+ * `index.html` with a freshly serialised manifest. Throws if the placeholder
1534
+ * is missing — that's an indicator that the admin bundle is out of date
1535
+ * (was built without the placeholder), and silently appending would mask
1536
+ * the staleness.
1537
+ */
1538
+ export declare function injectManifestIntoHtml(html: string, manifest: PlumixManifest): string;
1539
+ //# sourceMappingURL=manifest.d.ts.map