convex-cms 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (379) hide show
  1. package/dist/cli/commands/admin.d.ts +16 -0
  2. package/dist/cli/commands/admin.d.ts.map +1 -0
  3. package/dist/cli/commands/admin.js +88 -0
  4. package/dist/cli/commands/admin.js.map +1 -0
  5. package/dist/cli/index.d.ts +3 -0
  6. package/dist/cli/index.d.ts.map +1 -0
  7. package/dist/cli/index.js +18 -0
  8. package/dist/cli/index.js.map +1 -0
  9. package/dist/cli/utils/detectConvexUrl.d.ts +13 -0
  10. package/dist/cli/utils/detectConvexUrl.d.ts.map +1 -0
  11. package/dist/cli/utils/detectConvexUrl.js +48 -0
  12. package/dist/cli/utils/detectConvexUrl.js.map +1 -0
  13. package/dist/cli/utils/openBrowser.d.ts +7 -0
  14. package/dist/cli/utils/openBrowser.d.ts.map +1 -0
  15. package/dist/cli/utils/openBrowser.js +17 -0
  16. package/dist/cli/utils/openBrowser.js.map +1 -0
  17. package/dist/client/admin-config.d.ts +126 -0
  18. package/dist/client/admin-config.d.ts.map +1 -0
  19. package/dist/client/admin-config.js +117 -0
  20. package/dist/client/admin-config.js.map +1 -0
  21. package/dist/client/adminApi.d.ts +2273 -0
  22. package/dist/client/adminApi.d.ts.map +1 -0
  23. package/dist/client/adminApi.js +716 -0
  24. package/dist/client/adminApi.js.map +1 -0
  25. package/dist/client/agentTools.d.ts +933 -0
  26. package/dist/client/agentTools.d.ts.map +1 -0
  27. package/dist/client/agentTools.js +1004 -0
  28. package/dist/client/agentTools.js.map +1 -0
  29. package/dist/client/argTypes.d.ts +212 -0
  30. package/dist/client/argTypes.d.ts.map +1 -0
  31. package/dist/client/argTypes.js +5 -0
  32. package/dist/client/argTypes.js.map +1 -0
  33. package/dist/client/field-types.d.ts +55 -0
  34. package/dist/client/field-types.d.ts.map +1 -0
  35. package/dist/client/field-types.js +152 -0
  36. package/dist/client/field-types.js.map +1 -0
  37. package/dist/client/index.d.ts +189 -0
  38. package/dist/client/index.d.ts.map +1 -0
  39. package/dist/client/index.js +668 -0
  40. package/dist/client/index.js.map +1 -0
  41. package/dist/client/queryBuilder.d.ts +765 -0
  42. package/dist/client/queryBuilder.d.ts.map +1 -0
  43. package/dist/client/queryBuilder.js +970 -0
  44. package/dist/client/queryBuilder.js.map +1 -0
  45. package/dist/client/schema/codegen.d.ts +128 -0
  46. package/dist/client/schema/codegen.d.ts.map +1 -0
  47. package/dist/client/schema/codegen.js +318 -0
  48. package/dist/client/schema/codegen.js.map +1 -0
  49. package/dist/client/schema/defineContentType.d.ts +221 -0
  50. package/dist/client/schema/defineContentType.d.ts.map +1 -0
  51. package/dist/client/schema/defineContentType.js +380 -0
  52. package/dist/client/schema/defineContentType.js.map +1 -0
  53. package/dist/client/schema/index.d.ts +85 -0
  54. package/dist/client/schema/index.d.ts.map +1 -0
  55. package/dist/client/schema/index.js +92 -0
  56. package/dist/client/schema/index.js.map +1 -0
  57. package/dist/client/schema/schemaDrift.d.ts +199 -0
  58. package/dist/client/schema/schemaDrift.d.ts.map +1 -0
  59. package/dist/client/schema/schemaDrift.js +340 -0
  60. package/dist/client/schema/schemaDrift.js.map +1 -0
  61. package/dist/client/schema/typedClient.d.ts +401 -0
  62. package/dist/client/schema/typedClient.d.ts.map +1 -0
  63. package/dist/client/schema/typedClient.js +269 -0
  64. package/dist/client/schema/typedClient.js.map +1 -0
  65. package/dist/client/schema/types.d.ts +477 -0
  66. package/dist/client/schema/types.d.ts.map +1 -0
  67. package/dist/client/schema/types.js +39 -0
  68. package/dist/client/schema/types.js.map +1 -0
  69. package/dist/client/types.d.ts +449 -0
  70. package/dist/client/types.d.ts.map +1 -0
  71. package/dist/client/types.js +149 -0
  72. package/dist/client/types.js.map +1 -0
  73. package/dist/client/workflows.d.ts +51 -0
  74. package/dist/client/workflows.d.ts.map +1 -0
  75. package/dist/client/workflows.js +103 -0
  76. package/dist/client/workflows.js.map +1 -0
  77. package/dist/client/wrapper.d.ts +2198 -0
  78. package/dist/client/wrapper.d.ts.map +1 -0
  79. package/dist/client/wrapper.js +2651 -0
  80. package/dist/client/wrapper.js.map +1 -0
  81. package/dist/component/_generated/api.d.ts +124 -0
  82. package/dist/component/_generated/api.d.ts.map +1 -0
  83. package/dist/component/_generated/api.js +31 -0
  84. package/dist/component/_generated/api.js.map +1 -0
  85. package/dist/component/_generated/component.d.ts +4321 -0
  86. package/dist/component/_generated/component.d.ts.map +1 -0
  87. package/dist/component/_generated/component.js +11 -0
  88. package/dist/component/_generated/component.js.map +1 -0
  89. package/dist/component/_generated/dataModel.d.ts +46 -0
  90. package/dist/component/_generated/dataModel.d.ts.map +1 -0
  91. package/dist/component/_generated/dataModel.js +11 -0
  92. package/dist/component/_generated/dataModel.js.map +1 -0
  93. package/dist/component/_generated/server.d.ts +121 -0
  94. package/dist/component/_generated/server.d.ts.map +1 -0
  95. package/dist/component/_generated/server.js +78 -0
  96. package/dist/component/_generated/server.js.map +1 -0
  97. package/dist/component/auditLog.d.ts +410 -0
  98. package/dist/component/auditLog.d.ts.map +1 -0
  99. package/dist/component/auditLog.js +607 -0
  100. package/dist/component/auditLog.js.map +1 -0
  101. package/dist/component/authorization.d.ts +323 -0
  102. package/dist/component/authorization.d.ts.map +1 -0
  103. package/dist/component/authorization.js +464 -0
  104. package/dist/component/authorization.js.map +1 -0
  105. package/dist/component/authorizationHooks.d.ts +184 -0
  106. package/dist/component/authorizationHooks.d.ts.map +1 -0
  107. package/dist/component/authorizationHooks.js +521 -0
  108. package/dist/component/authorizationHooks.js.map +1 -0
  109. package/dist/component/bulkOperations.d.ts +200 -0
  110. package/dist/component/bulkOperations.d.ts.map +1 -0
  111. package/dist/component/bulkOperations.js +568 -0
  112. package/dist/component/bulkOperations.js.map +1 -0
  113. package/dist/component/contentEntries.d.ts +719 -0
  114. package/dist/component/contentEntries.d.ts.map +1 -0
  115. package/dist/component/contentEntries.js +1617 -0
  116. package/dist/component/contentEntries.js.map +1 -0
  117. package/dist/component/contentEntryMutations.d.ts +505 -0
  118. package/dist/component/contentEntryMutations.d.ts.map +1 -0
  119. package/dist/component/contentEntryMutations.js +1009 -0
  120. package/dist/component/contentEntryMutations.js.map +1 -0
  121. package/dist/component/contentEntryValidation.d.ts +115 -0
  122. package/dist/component/contentEntryValidation.d.ts.map +1 -0
  123. package/dist/component/contentEntryValidation.js +546 -0
  124. package/dist/component/contentEntryValidation.js.map +1 -0
  125. package/dist/component/contentLock.d.ts +328 -0
  126. package/dist/component/contentLock.d.ts.map +1 -0
  127. package/dist/component/contentLock.js +471 -0
  128. package/dist/component/contentLock.js.map +1 -0
  129. package/dist/component/contentTypeMigration.d.ts +411 -0
  130. package/dist/component/contentTypeMigration.d.ts.map +1 -0
  131. package/dist/component/contentTypeMigration.js +805 -0
  132. package/dist/component/contentTypeMigration.js.map +1 -0
  133. package/dist/component/contentTypeMutations.d.ts +975 -0
  134. package/dist/component/contentTypeMutations.d.ts.map +1 -0
  135. package/dist/component/contentTypeMutations.js +768 -0
  136. package/dist/component/contentTypeMutations.js.map +1 -0
  137. package/dist/component/contentTypes.d.ts +538 -0
  138. package/dist/component/contentTypes.d.ts.map +1 -0
  139. package/dist/component/contentTypes.js +304 -0
  140. package/dist/component/contentTypes.js.map +1 -0
  141. package/dist/component/convex.config.d.ts +42 -0
  142. package/dist/component/convex.config.d.ts.map +1 -0
  143. package/dist/component/convex.config.js +43 -0
  144. package/dist/component/convex.config.js.map +1 -0
  145. package/dist/component/documentTypes.d.ts +186 -0
  146. package/dist/component/documentTypes.d.ts.map +1 -0
  147. package/dist/component/documentTypes.js +23 -0
  148. package/dist/component/documentTypes.js.map +1 -0
  149. package/dist/component/eventEmitter.d.ts +281 -0
  150. package/dist/component/eventEmitter.d.ts.map +1 -0
  151. package/dist/component/eventEmitter.js +300 -0
  152. package/dist/component/eventEmitter.js.map +1 -0
  153. package/dist/component/exportImport.d.ts +1120 -0
  154. package/dist/component/exportImport.d.ts.map +1 -0
  155. package/dist/component/exportImport.js +931 -0
  156. package/dist/component/exportImport.js.map +1 -0
  157. package/dist/component/index.d.ts +28 -0
  158. package/dist/component/index.d.ts.map +1 -0
  159. package/dist/component/index.js +142 -0
  160. package/dist/component/index.js.map +1 -0
  161. package/dist/component/lib/deepReferenceResolver.d.ts +252 -0
  162. package/dist/component/lib/deepReferenceResolver.d.ts.map +1 -0
  163. package/dist/component/lib/deepReferenceResolver.js +601 -0
  164. package/dist/component/lib/deepReferenceResolver.js.map +1 -0
  165. package/dist/component/lib/errors.d.ts +306 -0
  166. package/dist/component/lib/errors.d.ts.map +1 -0
  167. package/dist/component/lib/errors.js +407 -0
  168. package/dist/component/lib/errors.js.map +1 -0
  169. package/dist/component/lib/index.d.ts +10 -0
  170. package/dist/component/lib/index.d.ts.map +1 -0
  171. package/dist/component/lib/index.js +33 -0
  172. package/dist/component/lib/index.js.map +1 -0
  173. package/dist/component/lib/mediaReferenceResolver.d.ts +217 -0
  174. package/dist/component/lib/mediaReferenceResolver.d.ts.map +1 -0
  175. package/dist/component/lib/mediaReferenceResolver.js +326 -0
  176. package/dist/component/lib/mediaReferenceResolver.js.map +1 -0
  177. package/dist/component/lib/metadataExtractor.d.ts +245 -0
  178. package/dist/component/lib/metadataExtractor.d.ts.map +1 -0
  179. package/dist/component/lib/metadataExtractor.js +548 -0
  180. package/dist/component/lib/metadataExtractor.js.map +1 -0
  181. package/dist/component/lib/mutationAuth.d.ts +95 -0
  182. package/dist/component/lib/mutationAuth.d.ts.map +1 -0
  183. package/dist/component/lib/mutationAuth.js +146 -0
  184. package/dist/component/lib/mutationAuth.js.map +1 -0
  185. package/dist/component/lib/queries.d.ts +17 -0
  186. package/dist/component/lib/queries.d.ts.map +1 -0
  187. package/dist/component/lib/queries.js +49 -0
  188. package/dist/component/lib/queries.js.map +1 -0
  189. package/dist/component/lib/ragContentChunker.d.ts +423 -0
  190. package/dist/component/lib/ragContentChunker.d.ts.map +1 -0
  191. package/dist/component/lib/ragContentChunker.js +897 -0
  192. package/dist/component/lib/ragContentChunker.js.map +1 -0
  193. package/dist/component/lib/referenceResolver.d.ts +175 -0
  194. package/dist/component/lib/referenceResolver.d.ts.map +1 -0
  195. package/dist/component/lib/referenceResolver.js +293 -0
  196. package/dist/component/lib/referenceResolver.js.map +1 -0
  197. package/dist/component/lib/slugGenerator.d.ts +71 -0
  198. package/dist/component/lib/slugGenerator.d.ts.map +1 -0
  199. package/dist/component/lib/slugGenerator.js +207 -0
  200. package/dist/component/lib/slugGenerator.js.map +1 -0
  201. package/dist/component/lib/slugUniqueness.d.ts +131 -0
  202. package/dist/component/lib/slugUniqueness.d.ts.map +1 -0
  203. package/dist/component/lib/slugUniqueness.js +229 -0
  204. package/dist/component/lib/slugUniqueness.js.map +1 -0
  205. package/dist/component/lib/softDelete.d.ts +18 -0
  206. package/dist/component/lib/softDelete.d.ts.map +1 -0
  207. package/dist/component/lib/softDelete.js +29 -0
  208. package/dist/component/lib/softDelete.js.map +1 -0
  209. package/dist/component/localeFallbackChain.d.ts +410 -0
  210. package/dist/component/localeFallbackChain.d.ts.map +1 -0
  211. package/dist/component/localeFallbackChain.js +467 -0
  212. package/dist/component/localeFallbackChain.js.map +1 -0
  213. package/dist/component/localeFields.d.ts +508 -0
  214. package/dist/component/localeFields.d.ts.map +1 -0
  215. package/dist/component/localeFields.js +592 -0
  216. package/dist/component/localeFields.js.map +1 -0
  217. package/dist/component/mediaAssetMutations.d.ts +235 -0
  218. package/dist/component/mediaAssetMutations.d.ts.map +1 -0
  219. package/dist/component/mediaAssetMutations.js +558 -0
  220. package/dist/component/mediaAssetMutations.js.map +1 -0
  221. package/dist/component/mediaAssets.d.ts +168 -0
  222. package/dist/component/mediaAssets.d.ts.map +1 -0
  223. package/dist/component/mediaAssets.js +618 -0
  224. package/dist/component/mediaAssets.js.map +1 -0
  225. package/dist/component/mediaFolderMutations.d.ts +642 -0
  226. package/dist/component/mediaFolderMutations.d.ts.map +1 -0
  227. package/dist/component/mediaFolderMutations.js +849 -0
  228. package/dist/component/mediaFolderMutations.js.map +1 -0
  229. package/dist/component/mediaUploadMutations.d.ts +136 -0
  230. package/dist/component/mediaUploadMutations.d.ts.map +1 -0
  231. package/dist/component/mediaUploadMutations.js +205 -0
  232. package/dist/component/mediaUploadMutations.js.map +1 -0
  233. package/dist/component/mediaVariantMutations.d.ts +468 -0
  234. package/dist/component/mediaVariantMutations.d.ts.map +1 -0
  235. package/dist/component/mediaVariantMutations.js +737 -0
  236. package/dist/component/mediaVariantMutations.js.map +1 -0
  237. package/dist/component/mediaVariants.d.ts +525 -0
  238. package/dist/component/mediaVariants.d.ts.map +1 -0
  239. package/dist/component/mediaVariants.js +661 -0
  240. package/dist/component/mediaVariants.js.map +1 -0
  241. package/dist/component/ragContentIndexer.d.ts +595 -0
  242. package/dist/component/ragContentIndexer.d.ts.map +1 -0
  243. package/dist/component/ragContentIndexer.js +794 -0
  244. package/dist/component/ragContentIndexer.js.map +1 -0
  245. package/dist/component/rateLimitHooks.d.ts +266 -0
  246. package/dist/component/rateLimitHooks.d.ts.map +1 -0
  247. package/dist/component/rateLimitHooks.js +412 -0
  248. package/dist/component/rateLimitHooks.js.map +1 -0
  249. package/dist/component/roles.d.ts +649 -0
  250. package/dist/component/roles.d.ts.map +1 -0
  251. package/dist/component/roles.js +884 -0
  252. package/dist/component/roles.js.map +1 -0
  253. package/dist/component/scheduledPublish.d.ts +182 -0
  254. package/dist/component/scheduledPublish.d.ts.map +1 -0
  255. package/dist/component/scheduledPublish.js +304 -0
  256. package/dist/component/scheduledPublish.js.map +1 -0
  257. package/dist/component/schema.d.ts +4114 -0
  258. package/dist/component/schema.d.ts.map +1 -0
  259. package/dist/component/schema.js +469 -0
  260. package/dist/component/schema.js.map +1 -0
  261. package/dist/component/taxonomies.d.ts +476 -0
  262. package/dist/component/taxonomies.d.ts.map +1 -0
  263. package/dist/component/taxonomies.js +785 -0
  264. package/dist/component/taxonomies.js.map +1 -0
  265. package/dist/component/taxonomyMutations.d.ts +206 -0
  266. package/dist/component/taxonomyMutations.d.ts.map +1 -0
  267. package/dist/component/taxonomyMutations.js +1001 -0
  268. package/dist/component/taxonomyMutations.js.map +1 -0
  269. package/dist/component/trash.d.ts +265 -0
  270. package/dist/component/trash.d.ts.map +1 -0
  271. package/dist/component/trash.js +621 -0
  272. package/dist/component/trash.js.map +1 -0
  273. package/dist/component/types.d.ts +4 -0
  274. package/dist/component/types.d.ts.map +1 -0
  275. package/dist/component/types.js +2 -0
  276. package/dist/component/types.js.map +1 -0
  277. package/dist/component/userContext.d.ts +508 -0
  278. package/dist/component/userContext.d.ts.map +1 -0
  279. package/dist/component/userContext.js +615 -0
  280. package/dist/component/userContext.js.map +1 -0
  281. package/dist/component/validation.d.ts +387 -0
  282. package/dist/component/validation.d.ts.map +1 -0
  283. package/dist/component/validation.js +1052 -0
  284. package/dist/component/validation.js.map +1 -0
  285. package/dist/component/validators.d.ts +4645 -0
  286. package/dist/component/validators.d.ts.map +1 -0
  287. package/dist/component/validators.js +641 -0
  288. package/dist/component/validators.js.map +1 -0
  289. package/dist/component/versionMutations.d.ts +216 -0
  290. package/dist/component/versionMutations.d.ts.map +1 -0
  291. package/dist/component/versionMutations.js +321 -0
  292. package/dist/component/versionMutations.js.map +1 -0
  293. package/dist/component/webhookTrigger.d.ts +770 -0
  294. package/dist/component/webhookTrigger.d.ts.map +1 -0
  295. package/dist/component/webhookTrigger.js +1413 -0
  296. package/dist/component/webhookTrigger.js.map +1 -0
  297. package/dist/react/index.d.ts +316 -0
  298. package/dist/react/index.d.ts.map +1 -0
  299. package/dist/react/index.js +558 -0
  300. package/dist/react/index.js.map +1 -0
  301. package/dist/test.d.ts +2230 -0
  302. package/dist/test.d.ts.map +1 -0
  303. package/dist/test.js +1107 -0
  304. package/dist/test.js.map +1 -0
  305. package/package.json +95 -0
  306. package/src/cli/commands/admin.ts +104 -0
  307. package/src/cli/index.ts +21 -0
  308. package/src/cli/utils/detectConvexUrl.ts +54 -0
  309. package/src/cli/utils/openBrowser.ts +16 -0
  310. package/src/client/admin-config.ts +138 -0
  311. package/src/client/adminApi.ts +942 -0
  312. package/src/client/agentTools.ts +1311 -0
  313. package/src/client/argTypes.ts +316 -0
  314. package/src/client/field-types.ts +187 -0
  315. package/src/client/index.ts +1301 -0
  316. package/src/client/queryBuilder.ts +1100 -0
  317. package/src/client/schema/codegen.ts +500 -0
  318. package/src/client/schema/defineContentType.ts +501 -0
  319. package/src/client/schema/index.ts +169 -0
  320. package/src/client/schema/schemaDrift.ts +574 -0
  321. package/src/client/schema/typedClient.ts +688 -0
  322. package/src/client/schema/types.ts +666 -0
  323. package/src/client/types.ts +723 -0
  324. package/src/client/workflows.ts +141 -0
  325. package/src/client/wrapper.ts +4304 -0
  326. package/src/component/_generated/api.ts +140 -0
  327. package/src/component/_generated/component.ts +5029 -0
  328. package/src/component/_generated/dataModel.ts +60 -0
  329. package/src/component/_generated/server.ts +156 -0
  330. package/src/component/authorization.ts +647 -0
  331. package/src/component/authorizationHooks.ts +668 -0
  332. package/src/component/bulkOperations.ts +687 -0
  333. package/src/component/contentEntries.ts +1976 -0
  334. package/src/component/contentEntryMutations.ts +1223 -0
  335. package/src/component/contentEntryValidation.ts +707 -0
  336. package/src/component/contentLock.ts +550 -0
  337. package/src/component/contentTypeMigration.ts +1064 -0
  338. package/src/component/contentTypeMutations.ts +969 -0
  339. package/src/component/contentTypes.ts +346 -0
  340. package/src/component/convex.config.ts +44 -0
  341. package/src/component/documentTypes.ts +240 -0
  342. package/src/component/eventEmitter.ts +485 -0
  343. package/src/component/exportImport.ts +1169 -0
  344. package/src/component/index.ts +491 -0
  345. package/src/component/lib/deepReferenceResolver.ts +999 -0
  346. package/src/component/lib/errors.ts +816 -0
  347. package/src/component/lib/index.ts +145 -0
  348. package/src/component/lib/mediaReferenceResolver.ts +495 -0
  349. package/src/component/lib/metadataExtractor.ts +792 -0
  350. package/src/component/lib/mutationAuth.ts +199 -0
  351. package/src/component/lib/queries.ts +79 -0
  352. package/src/component/lib/ragContentChunker.ts +1371 -0
  353. package/src/component/lib/referenceResolver.ts +430 -0
  354. package/src/component/lib/slugGenerator.ts +262 -0
  355. package/src/component/lib/slugUniqueness.ts +333 -0
  356. package/src/component/lib/softDelete.ts +44 -0
  357. package/src/component/localeFallbackChain.ts +673 -0
  358. package/src/component/localeFields.ts +896 -0
  359. package/src/component/mediaAssetMutations.ts +725 -0
  360. package/src/component/mediaAssets.ts +932 -0
  361. package/src/component/mediaFolderMutations.ts +1046 -0
  362. package/src/component/mediaUploadMutations.ts +224 -0
  363. package/src/component/mediaVariantMutations.ts +900 -0
  364. package/src/component/mediaVariants.ts +793 -0
  365. package/src/component/ragContentIndexer.ts +1067 -0
  366. package/src/component/rateLimitHooks.ts +572 -0
  367. package/src/component/roles.ts +1360 -0
  368. package/src/component/scheduledPublish.ts +358 -0
  369. package/src/component/schema.ts +617 -0
  370. package/src/component/taxonomies.ts +949 -0
  371. package/src/component/taxonomyMutations.ts +1210 -0
  372. package/src/component/trash.ts +724 -0
  373. package/src/component/userContext.ts +898 -0
  374. package/src/component/validation.ts +1388 -0
  375. package/src/component/validators.ts +949 -0
  376. package/src/component/versionMutations.ts +392 -0
  377. package/src/component/webhookTrigger.ts +1922 -0
  378. package/src/react/index.ts +898 -0
  379. package/src/test.ts +1580 -0
@@ -0,0 +1,1120 @@
1
+ /**
2
+ * Content Export/Import Functions
3
+ *
4
+ * Provides functions to export content entries to JSON format and import from JSON.
5
+ * Supports selective export by type or filter, handles reference resolution, and
6
+ * validates imports against schemas.
7
+ *
8
+ * ## Export Features
9
+ * - Export all entries or filter by content type
10
+ * - Optionally resolve references to include related content
11
+ * - Support for status filtering (export only published, etc.)
12
+ * - Include content type definitions for schema validation during import
13
+ *
14
+ * ## Import Features
15
+ * - Validate all entries against content type schemas before import
16
+ * - Handle reference ID mapping (old IDs to new IDs)
17
+ * - Support for skip, update, or error on duplicate slugs
18
+ * - Dry-run mode to validate without making changes
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * // Export all published blog posts
23
+ * const exportData = await ctx.runQuery(api.exportImport.exportEntries, {
24
+ * contentTypeName: "blog_post",
25
+ * status: "published",
26
+ * includeReferences: true,
27
+ * });
28
+ *
29
+ * // Import entries with conflict resolution
30
+ * const result = await ctx.runMutation(api.exportImport.importEntries, {
31
+ * data: exportData,
32
+ * onConflict: "skip",
33
+ * importedBy: currentUserId,
34
+ * });
35
+ * ```
36
+ */
37
+ import { Id } from "./_generated/dataModel.js";
38
+ import { FieldDefinition } from "./validation.js";
39
+ /**
40
+ * Structure for a single exported content entry.
41
+ * Includes all data needed to recreate the entry on import.
42
+ */
43
+ export declare const exportedEntryValidator: import("convex/values").VObject<{
44
+ createdBy?: string | undefined;
45
+ locale?: string | undefined;
46
+ scheduledPublishAt?: number | undefined;
47
+ firstPublishedAt?: number | undefined;
48
+ lastPublishedAt?: number | undefined;
49
+ slug: string;
50
+ status: string;
51
+ data: any;
52
+ version: number;
53
+ createdAt: number;
54
+ contentTypeName: string;
55
+ _originalId: string;
56
+ }, {
57
+ /** Original entry ID (for reference mapping) */
58
+ _originalId: import("convex/values").VString<string, "required">;
59
+ /** Content type name (machine-readable) */
60
+ contentTypeName: import("convex/values").VString<string, "required">;
61
+ /** URL-friendly slug */
62
+ slug: import("convex/values").VString<string, "required">;
63
+ /** Entry status at time of export */
64
+ status: import("convex/values").VString<string, "required">;
65
+ /** Content data */
66
+ data: import("convex/values").VAny<any, "required", string>;
67
+ /** Locale code if localized */
68
+ locale: import("convex/values").VString<string | undefined, "optional">;
69
+ /** Version number at time of export */
70
+ version: import("convex/values").VFloat64<number, "required">;
71
+ /** First published timestamp */
72
+ firstPublishedAt: import("convex/values").VFloat64<number | undefined, "optional">;
73
+ /** Last published timestamp */
74
+ lastPublishedAt: import("convex/values").VFloat64<number | undefined, "optional">;
75
+ /** Scheduled publish timestamp */
76
+ scheduledPublishAt: import("convex/values").VFloat64<number | undefined, "optional">;
77
+ /** User who created the entry */
78
+ createdBy: import("convex/values").VString<string | undefined, "optional">;
79
+ /** Original creation timestamp */
80
+ createdAt: import("convex/values").VFloat64<number, "required">;
81
+ }, "required", "createdBy" | "slug" | "status" | "data" | "locale" | "version" | "scheduledPublishAt" | "firstPublishedAt" | "lastPublishedAt" | `data.${string}` | "createdAt" | "contentTypeName" | "_originalId">;
82
+ export type ExportedEntry = {
83
+ _originalId: string;
84
+ contentTypeName: string;
85
+ slug: string;
86
+ /** Content status (supports custom workflow states) */
87
+ status: string;
88
+ data: Record<string, unknown>;
89
+ locale?: string;
90
+ version: number;
91
+ firstPublishedAt?: number;
92
+ lastPublishedAt?: number;
93
+ scheduledPublishAt?: number;
94
+ createdBy?: string;
95
+ createdAt: number;
96
+ };
97
+ /**
98
+ * Structure for an exported content type definition.
99
+ * Allows importing schemas along with content.
100
+ * Uses exportedFieldDefinitionValidator which has string taxonomyId
101
+ * for portability across Convex deployments.
102
+ */
103
+ export declare const exportedContentTypeValidator: import("convex/values").VObject<{
104
+ description?: string | undefined;
105
+ icon?: string | undefined;
106
+ singleton?: boolean | undefined;
107
+ slugField?: string | undefined;
108
+ titleField?: string | undefined;
109
+ fields: {
110
+ options?: {
111
+ options?: {
112
+ label: string;
113
+ value: string;
114
+ }[] | undefined;
115
+ minLength?: number | undefined;
116
+ maxLength?: number | undefined;
117
+ pattern?: string | undefined;
118
+ min?: number | undefined;
119
+ max?: number | undefined;
120
+ step?: number | undefined;
121
+ precision?: number | undefined;
122
+ allowedBlocks?: string[] | undefined;
123
+ allowedMarks?: string[] | undefined;
124
+ allowedMimeTypes?: string[] | undefined;
125
+ maxFileSize?: number | undefined;
126
+ multiple?: boolean | undefined;
127
+ taxonomyId?: string | undefined;
128
+ allowCreate?: boolean | undefined;
129
+ maxTags?: number | undefined;
130
+ minTags?: number | undefined;
131
+ allowMultiple?: boolean | undefined;
132
+ allowedContentTypes?: string[] | undefined;
133
+ minItems?: number | undefined;
134
+ } | undefined;
135
+ searchable?: boolean | undefined;
136
+ localized?: boolean | undefined;
137
+ description?: string | undefined;
138
+ defaultValue?: any;
139
+ required: boolean;
140
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
141
+ name: string;
142
+ label: string;
143
+ }[];
144
+ name: string;
145
+ displayName: string;
146
+ }, {
147
+ /** Content type name (machine-readable) */
148
+ name: import("convex/values").VString<string, "required">;
149
+ /** Display name */
150
+ displayName: import("convex/values").VString<string, "required">;
151
+ /** Description */
152
+ description: import("convex/values").VString<string | undefined, "optional">;
153
+ /** Field definitions with portable types */
154
+ fields: import("convex/values").VArray<{
155
+ options?: {
156
+ options?: {
157
+ label: string;
158
+ value: string;
159
+ }[] | undefined;
160
+ minLength?: number | undefined;
161
+ maxLength?: number | undefined;
162
+ pattern?: string | undefined;
163
+ min?: number | undefined;
164
+ max?: number | undefined;
165
+ step?: number | undefined;
166
+ precision?: number | undefined;
167
+ allowedBlocks?: string[] | undefined;
168
+ allowedMarks?: string[] | undefined;
169
+ allowedMimeTypes?: string[] | undefined;
170
+ maxFileSize?: number | undefined;
171
+ multiple?: boolean | undefined;
172
+ taxonomyId?: string | undefined;
173
+ allowCreate?: boolean | undefined;
174
+ maxTags?: number | undefined;
175
+ minTags?: number | undefined;
176
+ allowMultiple?: boolean | undefined;
177
+ allowedContentTypes?: string[] | undefined;
178
+ minItems?: number | undefined;
179
+ } | undefined;
180
+ searchable?: boolean | undefined;
181
+ localized?: boolean | undefined;
182
+ description?: string | undefined;
183
+ defaultValue?: any;
184
+ required: boolean;
185
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
186
+ name: string;
187
+ label: string;
188
+ }[], import("convex/values").VObject<{
189
+ options?: {
190
+ options?: {
191
+ label: string;
192
+ value: string;
193
+ }[] | undefined;
194
+ minLength?: number | undefined;
195
+ maxLength?: number | undefined;
196
+ pattern?: string | undefined;
197
+ min?: number | undefined;
198
+ max?: number | undefined;
199
+ step?: number | undefined;
200
+ precision?: number | undefined;
201
+ allowedBlocks?: string[] | undefined;
202
+ allowedMarks?: string[] | undefined;
203
+ allowedMimeTypes?: string[] | undefined;
204
+ maxFileSize?: number | undefined;
205
+ multiple?: boolean | undefined;
206
+ taxonomyId?: string | undefined;
207
+ allowCreate?: boolean | undefined;
208
+ maxTags?: number | undefined;
209
+ minTags?: number | undefined;
210
+ allowMultiple?: boolean | undefined;
211
+ allowedContentTypes?: string[] | undefined;
212
+ minItems?: number | undefined;
213
+ } | undefined;
214
+ searchable?: boolean | undefined;
215
+ localized?: boolean | undefined;
216
+ description?: string | undefined;
217
+ defaultValue?: any;
218
+ required: boolean;
219
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
220
+ name: string;
221
+ label: string;
222
+ }, {
223
+ name: import("convex/values").VString<string, "required">;
224
+ label: import("convex/values").VString<string, "required">;
225
+ type: import("convex/values").VUnion<"number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category", [import("convex/values").VLiteral<"text", "required">, import("convex/values").VLiteral<"richText", "required">, import("convex/values").VLiteral<"number", "required">, import("convex/values").VLiteral<"boolean", "required">, import("convex/values").VLiteral<"date", "required">, import("convex/values").VLiteral<"datetime", "required">, import("convex/values").VLiteral<"reference", "required">, import("convex/values").VLiteral<"media", "required">, import("convex/values").VLiteral<"json", "required">, import("convex/values").VLiteral<"select", "required">, import("convex/values").VLiteral<"multiSelect", "required">, import("convex/values").VLiteral<"tags", "required">, import("convex/values").VLiteral<"category", "required">], "required", never>;
226
+ required: import("convex/values").VBoolean<boolean, "required">;
227
+ searchable: import("convex/values").VBoolean<boolean | undefined, "optional">;
228
+ localized: import("convex/values").VBoolean<boolean | undefined, "optional">;
229
+ description: import("convex/values").VString<string | undefined, "optional">;
230
+ defaultValue: import("convex/values").VAny<any, "optional", string>;
231
+ options: import("convex/values").VObject<{
232
+ options?: {
233
+ label: string;
234
+ value: string;
235
+ }[] | undefined;
236
+ minLength?: number | undefined;
237
+ maxLength?: number | undefined;
238
+ pattern?: string | undefined;
239
+ min?: number | undefined;
240
+ max?: number | undefined;
241
+ step?: number | undefined;
242
+ precision?: number | undefined;
243
+ allowedBlocks?: string[] | undefined;
244
+ allowedMarks?: string[] | undefined;
245
+ allowedMimeTypes?: string[] | undefined;
246
+ maxFileSize?: number | undefined;
247
+ multiple?: boolean | undefined;
248
+ taxonomyId?: string | undefined;
249
+ allowCreate?: boolean | undefined;
250
+ maxTags?: number | undefined;
251
+ minTags?: number | undefined;
252
+ allowMultiple?: boolean | undefined;
253
+ allowedContentTypes?: string[] | undefined;
254
+ minItems?: number | undefined;
255
+ } | undefined, {
256
+ minLength: import("convex/values").VFloat64<number | undefined, "optional">;
257
+ maxLength: import("convex/values").VFloat64<number | undefined, "optional">;
258
+ pattern: import("convex/values").VString<string | undefined, "optional">;
259
+ min: import("convex/values").VFloat64<number | undefined, "optional">;
260
+ max: import("convex/values").VFloat64<number | undefined, "optional">;
261
+ step: import("convex/values").VFloat64<number | undefined, "optional">;
262
+ precision: import("convex/values").VFloat64<number | undefined, "optional">;
263
+ allowedContentTypes: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
264
+ multiple: import("convex/values").VBoolean<boolean | undefined, "optional">;
265
+ minItems: import("convex/values").VFloat64<number | undefined, "optional">;
266
+ allowedMimeTypes: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
267
+ maxFileSize: import("convex/values").VFloat64<number | undefined, "optional">;
268
+ options: import("convex/values").VArray<{
269
+ label: string;
270
+ value: string;
271
+ }[] | undefined, import("convex/values").VObject<{
272
+ label: string;
273
+ value: string;
274
+ }, {
275
+ value: import("convex/values").VString<string, "required">;
276
+ label: import("convex/values").VString<string, "required">;
277
+ }, "required", "label" | "value">, "optional">;
278
+ allowedBlocks: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
279
+ allowedMarks: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
280
+ taxonomyId: import("convex/values").VString<string | undefined, "optional">;
281
+ allowCreate: import("convex/values").VBoolean<boolean | undefined, "optional">;
282
+ maxTags: import("convex/values").VFloat64<number | undefined, "optional">;
283
+ minTags: import("convex/values").VFloat64<number | undefined, "optional">;
284
+ allowMultiple: import("convex/values").VBoolean<boolean | undefined, "optional">;
285
+ }, "optional", "options" | "minLength" | "maxLength" | "pattern" | "min" | "max" | "step" | "precision" | "allowedBlocks" | "allowedMarks" | "allowedMimeTypes" | "maxFileSize" | "multiple" | "taxonomyId" | "allowCreate" | "maxTags" | "minTags" | "allowMultiple" | "allowedContentTypes" | "minItems">;
286
+ }, "required", "required" | "type" | "options" | "name" | "label" | "searchable" | "localized" | "description" | "defaultValue" | "options.minLength" | "options.maxLength" | "options.pattern" | `defaultValue.${string}` | "options.min" | "options.max" | "options.step" | "options.precision" | "options.allowedBlocks" | "options.allowedMarks" | "options.allowedMimeTypes" | "options.maxFileSize" | "options.multiple" | "options.options" | "options.taxonomyId" | "options.allowCreate" | "options.maxTags" | "options.minTags" | "options.allowMultiple" | "options.allowedContentTypes" | "options.minItems">, "required">;
287
+ /** Icon identifier */
288
+ icon: import("convex/values").VString<string | undefined, "optional">;
289
+ /** Whether this is a singleton type */
290
+ singleton: import("convex/values").VBoolean<boolean | undefined, "optional">;
291
+ /** Field to generate slugs from */
292
+ slugField: import("convex/values").VString<string | undefined, "optional">;
293
+ /** Field to use for display titles */
294
+ titleField: import("convex/values").VString<string | undefined, "optional">;
295
+ }, "required", "fields" | "name" | "description" | "displayName" | "icon" | "singleton" | "slugField" | "titleField">;
296
+ export type ExportedContentType = {
297
+ name: string;
298
+ displayName: string;
299
+ description?: string;
300
+ fields: FieldDefinition[];
301
+ icon?: string;
302
+ singleton?: boolean;
303
+ slugField?: string;
304
+ titleField?: string;
305
+ };
306
+ /**
307
+ * Complete export package structure.
308
+ * Contains all information needed to import content into another instance.
309
+ */
310
+ export declare const exportPackageValidator: import("convex/values").VObject<{
311
+ contentTypes?: {
312
+ description?: string | undefined;
313
+ icon?: string | undefined;
314
+ singleton?: boolean | undefined;
315
+ slugField?: string | undefined;
316
+ titleField?: string | undefined;
317
+ fields: {
318
+ options?: {
319
+ options?: {
320
+ label: string;
321
+ value: string;
322
+ }[] | undefined;
323
+ minLength?: number | undefined;
324
+ maxLength?: number | undefined;
325
+ pattern?: string | undefined;
326
+ min?: number | undefined;
327
+ max?: number | undefined;
328
+ step?: number | undefined;
329
+ precision?: number | undefined;
330
+ allowedBlocks?: string[] | undefined;
331
+ allowedMarks?: string[] | undefined;
332
+ allowedMimeTypes?: string[] | undefined;
333
+ maxFileSize?: number | undefined;
334
+ multiple?: boolean | undefined;
335
+ taxonomyId?: string | undefined;
336
+ allowCreate?: boolean | undefined;
337
+ maxTags?: number | undefined;
338
+ minTags?: number | undefined;
339
+ allowMultiple?: boolean | undefined;
340
+ allowedContentTypes?: string[] | undefined;
341
+ minItems?: number | undefined;
342
+ } | undefined;
343
+ searchable?: boolean | undefined;
344
+ localized?: boolean | undefined;
345
+ description?: string | undefined;
346
+ defaultValue?: any;
347
+ required: boolean;
348
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
349
+ name: string;
350
+ label: string;
351
+ }[];
352
+ name: string;
353
+ displayName: string;
354
+ }[] | undefined;
355
+ metadata?: {
356
+ description?: string | undefined;
357
+ source?: string | undefined;
358
+ entriesByType?: any;
359
+ totalEntries: number;
360
+ } | undefined;
361
+ entries: {
362
+ createdBy?: string | undefined;
363
+ locale?: string | undefined;
364
+ scheduledPublishAt?: number | undefined;
365
+ firstPublishedAt?: number | undefined;
366
+ lastPublishedAt?: number | undefined;
367
+ slug: string;
368
+ status: string;
369
+ data: any;
370
+ version: number;
371
+ createdAt: number;
372
+ contentTypeName: string;
373
+ _originalId: string;
374
+ }[];
375
+ version: "1.0";
376
+ exportedAt: number;
377
+ }, {
378
+ /** Export format version for compatibility checking */
379
+ version: import("convex/values").VLiteral<"1.0", "required">;
380
+ /** Timestamp when export was created */
381
+ exportedAt: import("convex/values").VFloat64<number, "required">;
382
+ /** Content type definitions (optional, for schema validation) */
383
+ contentTypes: import("convex/values").VArray<{
384
+ description?: string | undefined;
385
+ icon?: string | undefined;
386
+ singleton?: boolean | undefined;
387
+ slugField?: string | undefined;
388
+ titleField?: string | undefined;
389
+ fields: {
390
+ options?: {
391
+ options?: {
392
+ label: string;
393
+ value: string;
394
+ }[] | undefined;
395
+ minLength?: number | undefined;
396
+ maxLength?: number | undefined;
397
+ pattern?: string | undefined;
398
+ min?: number | undefined;
399
+ max?: number | undefined;
400
+ step?: number | undefined;
401
+ precision?: number | undefined;
402
+ allowedBlocks?: string[] | undefined;
403
+ allowedMarks?: string[] | undefined;
404
+ allowedMimeTypes?: string[] | undefined;
405
+ maxFileSize?: number | undefined;
406
+ multiple?: boolean | undefined;
407
+ taxonomyId?: string | undefined;
408
+ allowCreate?: boolean | undefined;
409
+ maxTags?: number | undefined;
410
+ minTags?: number | undefined;
411
+ allowMultiple?: boolean | undefined;
412
+ allowedContentTypes?: string[] | undefined;
413
+ minItems?: number | undefined;
414
+ } | undefined;
415
+ searchable?: boolean | undefined;
416
+ localized?: boolean | undefined;
417
+ description?: string | undefined;
418
+ defaultValue?: any;
419
+ required: boolean;
420
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
421
+ name: string;
422
+ label: string;
423
+ }[];
424
+ name: string;
425
+ displayName: string;
426
+ }[] | undefined, import("convex/values").VObject<{
427
+ description?: string | undefined;
428
+ icon?: string | undefined;
429
+ singleton?: boolean | undefined;
430
+ slugField?: string | undefined;
431
+ titleField?: string | undefined;
432
+ fields: {
433
+ options?: {
434
+ options?: {
435
+ label: string;
436
+ value: string;
437
+ }[] | undefined;
438
+ minLength?: number | undefined;
439
+ maxLength?: number | undefined;
440
+ pattern?: string | undefined;
441
+ min?: number | undefined;
442
+ max?: number | undefined;
443
+ step?: number | undefined;
444
+ precision?: number | undefined;
445
+ allowedBlocks?: string[] | undefined;
446
+ allowedMarks?: string[] | undefined;
447
+ allowedMimeTypes?: string[] | undefined;
448
+ maxFileSize?: number | undefined;
449
+ multiple?: boolean | undefined;
450
+ taxonomyId?: string | undefined;
451
+ allowCreate?: boolean | undefined;
452
+ maxTags?: number | undefined;
453
+ minTags?: number | undefined;
454
+ allowMultiple?: boolean | undefined;
455
+ allowedContentTypes?: string[] | undefined;
456
+ minItems?: number | undefined;
457
+ } | undefined;
458
+ searchable?: boolean | undefined;
459
+ localized?: boolean | undefined;
460
+ description?: string | undefined;
461
+ defaultValue?: any;
462
+ required: boolean;
463
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
464
+ name: string;
465
+ label: string;
466
+ }[];
467
+ name: string;
468
+ displayName: string;
469
+ }, {
470
+ /** Content type name (machine-readable) */
471
+ name: import("convex/values").VString<string, "required">;
472
+ /** Display name */
473
+ displayName: import("convex/values").VString<string, "required">;
474
+ /** Description */
475
+ description: import("convex/values").VString<string | undefined, "optional">;
476
+ /** Field definitions with portable types */
477
+ fields: import("convex/values").VArray<{
478
+ options?: {
479
+ options?: {
480
+ label: string;
481
+ value: string;
482
+ }[] | undefined;
483
+ minLength?: number | undefined;
484
+ maxLength?: number | undefined;
485
+ pattern?: string | undefined;
486
+ min?: number | undefined;
487
+ max?: number | undefined;
488
+ step?: number | undefined;
489
+ precision?: number | undefined;
490
+ allowedBlocks?: string[] | undefined;
491
+ allowedMarks?: string[] | undefined;
492
+ allowedMimeTypes?: string[] | undefined;
493
+ maxFileSize?: number | undefined;
494
+ multiple?: boolean | undefined;
495
+ taxonomyId?: string | undefined;
496
+ allowCreate?: boolean | undefined;
497
+ maxTags?: number | undefined;
498
+ minTags?: number | undefined;
499
+ allowMultiple?: boolean | undefined;
500
+ allowedContentTypes?: string[] | undefined;
501
+ minItems?: number | undefined;
502
+ } | undefined;
503
+ searchable?: boolean | undefined;
504
+ localized?: boolean | undefined;
505
+ description?: string | undefined;
506
+ defaultValue?: any;
507
+ required: boolean;
508
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
509
+ name: string;
510
+ label: string;
511
+ }[], import("convex/values").VObject<{
512
+ options?: {
513
+ options?: {
514
+ label: string;
515
+ value: string;
516
+ }[] | undefined;
517
+ minLength?: number | undefined;
518
+ maxLength?: number | undefined;
519
+ pattern?: string | undefined;
520
+ min?: number | undefined;
521
+ max?: number | undefined;
522
+ step?: number | undefined;
523
+ precision?: number | undefined;
524
+ allowedBlocks?: string[] | undefined;
525
+ allowedMarks?: string[] | undefined;
526
+ allowedMimeTypes?: string[] | undefined;
527
+ maxFileSize?: number | undefined;
528
+ multiple?: boolean | undefined;
529
+ taxonomyId?: string | undefined;
530
+ allowCreate?: boolean | undefined;
531
+ maxTags?: number | undefined;
532
+ minTags?: number | undefined;
533
+ allowMultiple?: boolean | undefined;
534
+ allowedContentTypes?: string[] | undefined;
535
+ minItems?: number | undefined;
536
+ } | undefined;
537
+ searchable?: boolean | undefined;
538
+ localized?: boolean | undefined;
539
+ description?: string | undefined;
540
+ defaultValue?: any;
541
+ required: boolean;
542
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
543
+ name: string;
544
+ label: string;
545
+ }, {
546
+ name: import("convex/values").VString<string, "required">;
547
+ label: import("convex/values").VString<string, "required">;
548
+ type: import("convex/values").VUnion<"number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category", [import("convex/values").VLiteral<"text", "required">, import("convex/values").VLiteral<"richText", "required">, import("convex/values").VLiteral<"number", "required">, import("convex/values").VLiteral<"boolean", "required">, import("convex/values").VLiteral<"date", "required">, import("convex/values").VLiteral<"datetime", "required">, import("convex/values").VLiteral<"reference", "required">, import("convex/values").VLiteral<"media", "required">, import("convex/values").VLiteral<"json", "required">, import("convex/values").VLiteral<"select", "required">, import("convex/values").VLiteral<"multiSelect", "required">, import("convex/values").VLiteral<"tags", "required">, import("convex/values").VLiteral<"category", "required">], "required", never>;
549
+ required: import("convex/values").VBoolean<boolean, "required">;
550
+ searchable: import("convex/values").VBoolean<boolean | undefined, "optional">;
551
+ localized: import("convex/values").VBoolean<boolean | undefined, "optional">;
552
+ description: import("convex/values").VString<string | undefined, "optional">;
553
+ defaultValue: import("convex/values").VAny<any, "optional", string>;
554
+ options: import("convex/values").VObject<{
555
+ options?: {
556
+ label: string;
557
+ value: string;
558
+ }[] | undefined;
559
+ minLength?: number | undefined;
560
+ maxLength?: number | undefined;
561
+ pattern?: string | undefined;
562
+ min?: number | undefined;
563
+ max?: number | undefined;
564
+ step?: number | undefined;
565
+ precision?: number | undefined;
566
+ allowedBlocks?: string[] | undefined;
567
+ allowedMarks?: string[] | undefined;
568
+ allowedMimeTypes?: string[] | undefined;
569
+ maxFileSize?: number | undefined;
570
+ multiple?: boolean | undefined;
571
+ taxonomyId?: string | undefined;
572
+ allowCreate?: boolean | undefined;
573
+ maxTags?: number | undefined;
574
+ minTags?: number | undefined;
575
+ allowMultiple?: boolean | undefined;
576
+ allowedContentTypes?: string[] | undefined;
577
+ minItems?: number | undefined;
578
+ } | undefined, {
579
+ minLength: import("convex/values").VFloat64<number | undefined, "optional">;
580
+ maxLength: import("convex/values").VFloat64<number | undefined, "optional">;
581
+ pattern: import("convex/values").VString<string | undefined, "optional">;
582
+ min: import("convex/values").VFloat64<number | undefined, "optional">;
583
+ max: import("convex/values").VFloat64<number | undefined, "optional">;
584
+ step: import("convex/values").VFloat64<number | undefined, "optional">;
585
+ precision: import("convex/values").VFloat64<number | undefined, "optional">;
586
+ allowedContentTypes: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
587
+ multiple: import("convex/values").VBoolean<boolean | undefined, "optional">;
588
+ minItems: import("convex/values").VFloat64<number | undefined, "optional">;
589
+ allowedMimeTypes: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
590
+ maxFileSize: import("convex/values").VFloat64<number | undefined, "optional">;
591
+ options: import("convex/values").VArray<{
592
+ label: string;
593
+ value: string;
594
+ }[] | undefined, import("convex/values").VObject<{
595
+ label: string;
596
+ value: string;
597
+ }, {
598
+ value: import("convex/values").VString<string, "required">;
599
+ label: import("convex/values").VString<string, "required">;
600
+ }, "required", "label" | "value">, "optional">;
601
+ allowedBlocks: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
602
+ allowedMarks: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
603
+ taxonomyId: import("convex/values").VString<string | undefined, "optional">;
604
+ allowCreate: import("convex/values").VBoolean<boolean | undefined, "optional">;
605
+ maxTags: import("convex/values").VFloat64<number | undefined, "optional">;
606
+ minTags: import("convex/values").VFloat64<number | undefined, "optional">;
607
+ allowMultiple: import("convex/values").VBoolean<boolean | undefined, "optional">;
608
+ }, "optional", "options" | "minLength" | "maxLength" | "pattern" | "min" | "max" | "step" | "precision" | "allowedBlocks" | "allowedMarks" | "allowedMimeTypes" | "maxFileSize" | "multiple" | "taxonomyId" | "allowCreate" | "maxTags" | "minTags" | "allowMultiple" | "allowedContentTypes" | "minItems">;
609
+ }, "required", "required" | "type" | "options" | "name" | "label" | "searchable" | "localized" | "description" | "defaultValue" | "options.minLength" | "options.maxLength" | "options.pattern" | `defaultValue.${string}` | "options.min" | "options.max" | "options.step" | "options.precision" | "options.allowedBlocks" | "options.allowedMarks" | "options.allowedMimeTypes" | "options.maxFileSize" | "options.multiple" | "options.options" | "options.taxonomyId" | "options.allowCreate" | "options.maxTags" | "options.minTags" | "options.allowMultiple" | "options.allowedContentTypes" | "options.minItems">, "required">;
610
+ /** Icon identifier */
611
+ icon: import("convex/values").VString<string | undefined, "optional">;
612
+ /** Whether this is a singleton type */
613
+ singleton: import("convex/values").VBoolean<boolean | undefined, "optional">;
614
+ /** Field to generate slugs from */
615
+ slugField: import("convex/values").VString<string | undefined, "optional">;
616
+ /** Field to use for display titles */
617
+ titleField: import("convex/values").VString<string | undefined, "optional">;
618
+ }, "required", "fields" | "name" | "description" | "displayName" | "icon" | "singleton" | "slugField" | "titleField">, "optional">;
619
+ /** Exported entries */
620
+ entries: import("convex/values").VArray<{
621
+ createdBy?: string | undefined;
622
+ locale?: string | undefined;
623
+ scheduledPublishAt?: number | undefined;
624
+ firstPublishedAt?: number | undefined;
625
+ lastPublishedAt?: number | undefined;
626
+ slug: string;
627
+ status: string;
628
+ data: any;
629
+ version: number;
630
+ createdAt: number;
631
+ contentTypeName: string;
632
+ _originalId: string;
633
+ }[], import("convex/values").VObject<{
634
+ createdBy?: string | undefined;
635
+ locale?: string | undefined;
636
+ scheduledPublishAt?: number | undefined;
637
+ firstPublishedAt?: number | undefined;
638
+ lastPublishedAt?: number | undefined;
639
+ slug: string;
640
+ status: string;
641
+ data: any;
642
+ version: number;
643
+ createdAt: number;
644
+ contentTypeName: string;
645
+ _originalId: string;
646
+ }, {
647
+ /** Original entry ID (for reference mapping) */
648
+ _originalId: import("convex/values").VString<string, "required">;
649
+ /** Content type name (machine-readable) */
650
+ contentTypeName: import("convex/values").VString<string, "required">;
651
+ /** URL-friendly slug */
652
+ slug: import("convex/values").VString<string, "required">;
653
+ /** Entry status at time of export */
654
+ status: import("convex/values").VString<string, "required">;
655
+ /** Content data */
656
+ data: import("convex/values").VAny<any, "required", string>;
657
+ /** Locale code if localized */
658
+ locale: import("convex/values").VString<string | undefined, "optional">;
659
+ /** Version number at time of export */
660
+ version: import("convex/values").VFloat64<number, "required">;
661
+ /** First published timestamp */
662
+ firstPublishedAt: import("convex/values").VFloat64<number | undefined, "optional">;
663
+ /** Last published timestamp */
664
+ lastPublishedAt: import("convex/values").VFloat64<number | undefined, "optional">;
665
+ /** Scheduled publish timestamp */
666
+ scheduledPublishAt: import("convex/values").VFloat64<number | undefined, "optional">;
667
+ /** User who created the entry */
668
+ createdBy: import("convex/values").VString<string | undefined, "optional">;
669
+ /** Original creation timestamp */
670
+ createdAt: import("convex/values").VFloat64<number, "required">;
671
+ }, "required", "createdBy" | "slug" | "status" | "data" | "locale" | "version" | "scheduledPublishAt" | "firstPublishedAt" | "lastPublishedAt" | `data.${string}` | "createdAt" | "contentTypeName" | "_originalId">, "required">;
672
+ /** Metadata about the export */
673
+ metadata: import("convex/values").VObject<{
674
+ description?: string | undefined;
675
+ source?: string | undefined;
676
+ entriesByType?: any;
677
+ totalEntries: number;
678
+ } | undefined, {
679
+ /** Source system identifier */
680
+ source: import("convex/values").VString<string | undefined, "optional">;
681
+ /** Export description */
682
+ description: import("convex/values").VString<string | undefined, "optional">;
683
+ /** Total count of entries */
684
+ totalEntries: import("convex/values").VFloat64<number, "required">;
685
+ /** Breakdown by content type */
686
+ entriesByType: import("convex/values").VAny<any, "optional", string>;
687
+ }, "optional", "description" | "source" | "totalEntries" | "entriesByType" | `entriesByType.${string}`>;
688
+ }, "required", "entries" | "contentTypes" | "metadata" | "version" | "exportedAt" | "metadata.description" | "metadata.source" | "metadata.totalEntries" | "metadata.entriesByType" | `metadata.entriesByType.${string}`>;
689
+ export type ExportPackage = {
690
+ version: "1.0";
691
+ exportedAt: number;
692
+ contentTypes?: ExportedContentType[];
693
+ entries: ExportedEntry[];
694
+ metadata?: {
695
+ source?: string;
696
+ description?: string;
697
+ totalEntries: number;
698
+ entriesByType?: Record<string, number>;
699
+ };
700
+ };
701
+ /**
702
+ * Conflict resolution strategy for imports.
703
+ * - "skip": Skip entries with conflicting slugs
704
+ * - "update": Update existing entries with new data
705
+ * - "error": Fail the entire import if any conflicts exist
706
+ */
707
+ export declare const conflictStrategyValidator: import("convex/values").VUnion<"error" | "skip" | "update", [import("convex/values").VLiteral<"skip", "required">, import("convex/values").VLiteral<"update", "required">, import("convex/values").VLiteral<"error", "required">], "required", never>;
708
+ export type ConflictStrategy = "skip" | "update" | "error";
709
+ /**
710
+ * Result for a single imported entry.
711
+ */
712
+ export declare const importEntryResultValidator: import("convex/values").VObject<{
713
+ error?: string | undefined;
714
+ newId?: import("convex/values").GenericId<"contentEntries"> | undefined;
715
+ slug: string;
716
+ action: "failed" | "created" | "updated" | "skipped";
717
+ contentTypeName: string;
718
+ originalId: string;
719
+ }, {
720
+ /** Original ID from export */
721
+ originalId: import("convex/values").VString<string, "required">;
722
+ /** New ID after import (if created/updated) */
723
+ newId: import("convex/values").VId<import("convex/values").GenericId<"contentEntries"> | undefined, "optional">;
724
+ /** Import action taken */
725
+ action: import("convex/values").VUnion<"failed" | "created" | "updated" | "skipped", [import("convex/values").VLiteral<"created", "required">, import("convex/values").VLiteral<"updated", "required">, import("convex/values").VLiteral<"skipped", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>;
726
+ /** Error message if failed */
727
+ error: import("convex/values").VString<string | undefined, "optional">;
728
+ /** Slug of the entry */
729
+ slug: import("convex/values").VString<string, "required">;
730
+ /** Content type name */
731
+ contentTypeName: import("convex/values").VString<string, "required">;
732
+ }, "required", "slug" | "action" | "error" | "contentTypeName" | "originalId" | "newId">;
733
+ export type ImportEntryResult = {
734
+ originalId: string;
735
+ newId?: Id<"contentEntries">;
736
+ action: "created" | "updated" | "skipped" | "failed";
737
+ error?: string;
738
+ slug: string;
739
+ contentTypeName: string;
740
+ };
741
+ /**
742
+ * Complete import result.
743
+ */
744
+ export declare const importResultValidator: import("convex/values").VObject<{
745
+ validationErrors?: string[] | undefined;
746
+ failed: number;
747
+ created: number;
748
+ updated: number;
749
+ success: boolean;
750
+ results: {
751
+ error?: string | undefined;
752
+ newId?: import("convex/values").GenericId<"contentEntries"> | undefined;
753
+ slug: string;
754
+ action: "failed" | "created" | "updated" | "skipped";
755
+ contentTypeName: string;
756
+ originalId: string;
757
+ }[];
758
+ skipped: number;
759
+ totalProcessed: number;
760
+ idMapping: any;
761
+ }, {
762
+ /** Whether import was successful */
763
+ success: import("convex/values").VBoolean<boolean, "required">;
764
+ /** Total entries processed */
765
+ totalProcessed: import("convex/values").VFloat64<number, "required">;
766
+ /** Number of entries created */
767
+ created: import("convex/values").VFloat64<number, "required">;
768
+ /** Number of entries updated */
769
+ updated: import("convex/values").VFloat64<number, "required">;
770
+ /** Number of entries skipped */
771
+ skipped: import("convex/values").VFloat64<number, "required">;
772
+ /** Number of entries failed */
773
+ failed: import("convex/values").VFloat64<number, "required">;
774
+ /** Detailed results for each entry */
775
+ results: import("convex/values").VArray<{
776
+ error?: string | undefined;
777
+ newId?: import("convex/values").GenericId<"contentEntries"> | undefined;
778
+ slug: string;
779
+ action: "failed" | "created" | "updated" | "skipped";
780
+ contentTypeName: string;
781
+ originalId: string;
782
+ }[], import("convex/values").VObject<{
783
+ error?: string | undefined;
784
+ newId?: import("convex/values").GenericId<"contentEntries"> | undefined;
785
+ slug: string;
786
+ action: "failed" | "created" | "updated" | "skipped";
787
+ contentTypeName: string;
788
+ originalId: string;
789
+ }, {
790
+ /** Original ID from export */
791
+ originalId: import("convex/values").VString<string, "required">;
792
+ /** New ID after import (if created/updated) */
793
+ newId: import("convex/values").VId<import("convex/values").GenericId<"contentEntries"> | undefined, "optional">;
794
+ /** Import action taken */
795
+ action: import("convex/values").VUnion<"failed" | "created" | "updated" | "skipped", [import("convex/values").VLiteral<"created", "required">, import("convex/values").VLiteral<"updated", "required">, import("convex/values").VLiteral<"skipped", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>;
796
+ /** Error message if failed */
797
+ error: import("convex/values").VString<string | undefined, "optional">;
798
+ /** Slug of the entry */
799
+ slug: import("convex/values").VString<string, "required">;
800
+ /** Content type name */
801
+ contentTypeName: import("convex/values").VString<string, "required">;
802
+ }, "required", "slug" | "action" | "error" | "contentTypeName" | "originalId" | "newId">, "required">;
803
+ /** ID mapping from old to new IDs (for reference updates) */
804
+ idMapping: import("convex/values").VAny<any, "required", string>;
805
+ /** Validation errors encountered */
806
+ validationErrors: import("convex/values").VArray<string[] | undefined, import("convex/values").VString<string, "required">, "optional">;
807
+ }, "required", "failed" | "created" | "updated" | "success" | "results" | "skipped" | "totalProcessed" | "idMapping" | "validationErrors" | `idMapping.${string}`>;
808
+ export type ImportResult = {
809
+ success: boolean;
810
+ totalProcessed: number;
811
+ created: number;
812
+ updated: number;
813
+ skipped: number;
814
+ failed: number;
815
+ results: ImportEntryResult[];
816
+ idMapping: Record<string, string>;
817
+ validationErrors?: string[];
818
+ };
819
+ /**
820
+ * Export content entries to a JSON-serializable package.
821
+ *
822
+ * This query retrieves content entries matching the specified filters and
823
+ * packages them into a format suitable for import into another system.
824
+ *
825
+ * ## Features
826
+ * - Filter by content type, status, or locale
827
+ * - Optionally include content type definitions for schema validation
828
+ * - Preserves original IDs for reference mapping during import
829
+ * - Includes metadata about the export for traceability
830
+ *
831
+ * @param contentTypeId - Filter by content type ID
832
+ * @param contentTypeName - Filter by content type name (alternative to ID)
833
+ * @param status - Filter by single status
834
+ * @param statusIn - Filter by multiple statuses
835
+ * @param locale - Filter by locale code
836
+ * @param includeContentTypes - Include content type definitions (default: true)
837
+ * @param includeDeleted - Include soft-deleted entries (default: false)
838
+ * @param limit - Maximum entries to export (default: 1000)
839
+ * @param description - Description for export metadata
840
+ * @param source - Source identifier for export metadata
841
+ *
842
+ * @returns ExportPackage containing entries and optional content types
843
+ *
844
+ * @example
845
+ * ```typescript
846
+ * // Export all published blog posts
847
+ * const exportData = await ctx.runQuery(api.exportImport.exportEntries, {
848
+ * contentTypeName: "blog_post",
849
+ * status: "published",
850
+ * includeContentTypes: true,
851
+ * });
852
+ *
853
+ * // Export all entries of all types
854
+ * const allData = await ctx.runQuery(api.exportImport.exportEntries, {
855
+ * limit: 5000,
856
+ * description: "Full site backup",
857
+ * });
858
+ * ```
859
+ */
860
+ export declare const exportEntries: import("convex/server").RegisteredQuery<"public", {
861
+ description?: string | undefined;
862
+ contentTypeId?: import("convex/values").GenericId<"contentTypes"> | undefined;
863
+ status?: string | undefined;
864
+ locale?: string | undefined;
865
+ includeDeleted?: boolean | undefined;
866
+ contentTypeName?: string | undefined;
867
+ statusIn?: string[] | undefined;
868
+ limit?: number | undefined;
869
+ includeContentTypes?: boolean | undefined;
870
+ source?: string | undefined;
871
+ }, Promise<{
872
+ version: "1.0";
873
+ exportedAt: number;
874
+ contentTypes: ExportedContentType[] | undefined;
875
+ entries: ExportedEntry[];
876
+ metadata: {
877
+ source: string | undefined;
878
+ description: string | undefined;
879
+ totalEntries: number;
880
+ entriesByType: Record<string, number>;
881
+ };
882
+ }>>;
883
+ /**
884
+ * Import content entries from an export package.
885
+ *
886
+ * This mutation validates and imports content entries from an export package.
887
+ * It supports conflict resolution, dry-run mode, and reference ID mapping.
888
+ *
889
+ * ## Features
890
+ * - Validates all entries against content type schemas before import
891
+ * - Maps old reference IDs to new IDs for reference fields
892
+ * - Supports skip, update, or error on slug conflicts
893
+ * - Dry-run mode validates without making changes
894
+ * - Preserves or resets entry status
895
+ *
896
+ * ## Import Process
897
+ * 1. Validate all entries against existing content type schemas
898
+ * 2. Check for slug conflicts based on onConflict strategy
899
+ * 3. Create or update entries, collecting ID mappings
900
+ * 4. Update reference fields with new IDs (second pass)
901
+ *
902
+ * @param data - The export package to import
903
+ * @param onConflict - How to handle slug conflicts (default: "skip")
904
+ * @param preserveStatus - Keep original status or set to draft (default: false)
905
+ * @param dryRun - Validate only without making changes (default: false)
906
+ * @param importedBy - User ID for audit trail
907
+ * @param contentTypeFilter - Only import entries of these content types
908
+ *
909
+ * @returns ImportResult with details of the import operation
910
+ *
911
+ * @example
912
+ * ```typescript
913
+ * // Dry run to validate import
914
+ * const validation = await ctx.runMutation(api.exportImport.importEntries, {
915
+ * data: exportPackage,
916
+ * dryRun: true,
917
+ * });
918
+ *
919
+ * // Import with skip on conflicts
920
+ * const result = await ctx.runMutation(api.exportImport.importEntries, {
921
+ * data: exportPackage,
922
+ * onConflict: "skip",
923
+ * preserveStatus: true,
924
+ * importedBy: currentUserId,
925
+ * });
926
+ * ```
927
+ */
928
+ export declare const importEntries: import("convex/server").RegisteredMutation<"public", {
929
+ dryRun?: boolean | undefined;
930
+ contentTypeFilter?: string[] | undefined;
931
+ importedBy?: string | undefined;
932
+ onConflict?: "error" | "skip" | "update" | undefined;
933
+ preserveStatus?: boolean | undefined;
934
+ data: {
935
+ contentTypes?: {
936
+ description?: string | undefined;
937
+ icon?: string | undefined;
938
+ singleton?: boolean | undefined;
939
+ slugField?: string | undefined;
940
+ titleField?: string | undefined;
941
+ fields: {
942
+ options?: {
943
+ options?: {
944
+ label: string;
945
+ value: string;
946
+ }[] | undefined;
947
+ minLength?: number | undefined;
948
+ maxLength?: number | undefined;
949
+ pattern?: string | undefined;
950
+ min?: number | undefined;
951
+ max?: number | undefined;
952
+ step?: number | undefined;
953
+ precision?: number | undefined;
954
+ allowedBlocks?: string[] | undefined;
955
+ allowedMarks?: string[] | undefined;
956
+ allowedMimeTypes?: string[] | undefined;
957
+ maxFileSize?: number | undefined;
958
+ multiple?: boolean | undefined;
959
+ taxonomyId?: string | undefined;
960
+ allowCreate?: boolean | undefined;
961
+ maxTags?: number | undefined;
962
+ minTags?: number | undefined;
963
+ allowMultiple?: boolean | undefined;
964
+ allowedContentTypes?: string[] | undefined;
965
+ minItems?: number | undefined;
966
+ } | undefined;
967
+ searchable?: boolean | undefined;
968
+ localized?: boolean | undefined;
969
+ description?: string | undefined;
970
+ defaultValue?: any;
971
+ required: boolean;
972
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
973
+ name: string;
974
+ label: string;
975
+ }[];
976
+ name: string;
977
+ displayName: string;
978
+ }[] | undefined;
979
+ metadata?: {
980
+ description?: string | undefined;
981
+ source?: string | undefined;
982
+ entriesByType?: any;
983
+ totalEntries: number;
984
+ } | undefined;
985
+ entries: {
986
+ createdBy?: string | undefined;
987
+ locale?: string | undefined;
988
+ scheduledPublishAt?: number | undefined;
989
+ firstPublishedAt?: number | undefined;
990
+ lastPublishedAt?: number | undefined;
991
+ slug: string;
992
+ status: string;
993
+ data: any;
994
+ version: number;
995
+ createdAt: number;
996
+ contentTypeName: string;
997
+ _originalId: string;
998
+ }[];
999
+ version: "1.0";
1000
+ exportedAt: number;
1001
+ };
1002
+ }, Promise<{
1003
+ success: boolean;
1004
+ totalProcessed: number;
1005
+ created: number;
1006
+ updated: number;
1007
+ skipped: number;
1008
+ failed: number;
1009
+ results: ImportEntryResult[];
1010
+ idMapping: Record<string, string>;
1011
+ validationErrors: string[] | undefined;
1012
+ }>>;
1013
+ /**
1014
+ * Get a summary of content that would be exported without actually exporting.
1015
+ *
1016
+ * This is useful for previewing what an export would contain before
1017
+ * running the full export operation.
1018
+ */
1019
+ export declare const getExportPreview: import("convex/server").RegisteredQuery<"public", {
1020
+ contentTypeId?: import("convex/values").GenericId<"contentTypes"> | undefined;
1021
+ status?: string | undefined;
1022
+ locale?: string | undefined;
1023
+ includeDeleted?: boolean | undefined;
1024
+ contentTypeName?: string | undefined;
1025
+ statusIn?: string[] | undefined;
1026
+ }, Promise<{
1027
+ totalEntries: number;
1028
+ entriesByType: Record<string, number>;
1029
+ entriesByStatus: Record<string, number>;
1030
+ contentTypes: string[];
1031
+ }>>;
1032
+ /**
1033
+ * Validate an export package without importing.
1034
+ *
1035
+ * Checks that all entries can be validated against existing content type
1036
+ * schemas and reports any issues that would occur during import.
1037
+ */
1038
+ export declare const validateImportPackage: import("convex/server").RegisteredQuery<"public", {
1039
+ contentTypeFilter?: string[] | undefined;
1040
+ data: {
1041
+ contentTypes?: {
1042
+ description?: string | undefined;
1043
+ icon?: string | undefined;
1044
+ singleton?: boolean | undefined;
1045
+ slugField?: string | undefined;
1046
+ titleField?: string | undefined;
1047
+ fields: {
1048
+ options?: {
1049
+ options?: {
1050
+ label: string;
1051
+ value: string;
1052
+ }[] | undefined;
1053
+ minLength?: number | undefined;
1054
+ maxLength?: number | undefined;
1055
+ pattern?: string | undefined;
1056
+ min?: number | undefined;
1057
+ max?: number | undefined;
1058
+ step?: number | undefined;
1059
+ precision?: number | undefined;
1060
+ allowedBlocks?: string[] | undefined;
1061
+ allowedMarks?: string[] | undefined;
1062
+ allowedMimeTypes?: string[] | undefined;
1063
+ maxFileSize?: number | undefined;
1064
+ multiple?: boolean | undefined;
1065
+ taxonomyId?: string | undefined;
1066
+ allowCreate?: boolean | undefined;
1067
+ maxTags?: number | undefined;
1068
+ minTags?: number | undefined;
1069
+ allowMultiple?: boolean | undefined;
1070
+ allowedContentTypes?: string[] | undefined;
1071
+ minItems?: number | undefined;
1072
+ } | undefined;
1073
+ searchable?: boolean | undefined;
1074
+ localized?: boolean | undefined;
1075
+ description?: string | undefined;
1076
+ defaultValue?: any;
1077
+ required: boolean;
1078
+ type: "number" | "boolean" | "text" | "richText" | "date" | "datetime" | "reference" | "media" | "json" | "select" | "multiSelect" | "tags" | "category";
1079
+ name: string;
1080
+ label: string;
1081
+ }[];
1082
+ name: string;
1083
+ displayName: string;
1084
+ }[] | undefined;
1085
+ metadata?: {
1086
+ description?: string | undefined;
1087
+ source?: string | undefined;
1088
+ entriesByType?: any;
1089
+ totalEntries: number;
1090
+ } | undefined;
1091
+ entries: {
1092
+ createdBy?: string | undefined;
1093
+ locale?: string | undefined;
1094
+ scheduledPublishAt?: number | undefined;
1095
+ firstPublishedAt?: number | undefined;
1096
+ lastPublishedAt?: number | undefined;
1097
+ slug: string;
1098
+ status: string;
1099
+ data: any;
1100
+ version: number;
1101
+ createdAt: number;
1102
+ contentTypeName: string;
1103
+ _originalId: string;
1104
+ }[];
1105
+ version: "1.0";
1106
+ exportedAt: number;
1107
+ };
1108
+ }, Promise<{
1109
+ valid: boolean;
1110
+ totalEntries: number;
1111
+ validEntries: number;
1112
+ invalidEntries: number;
1113
+ missingContentTypes: string[];
1114
+ validationErrors: {
1115
+ slug: string;
1116
+ contentTypeName: string;
1117
+ errors: string[];
1118
+ }[];
1119
+ }>>;
1120
+ //# sourceMappingURL=exportImport.d.ts.map