appwrite-utils-cli 1.9.6 → 1.11.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 (426) hide show
  1. package/CONFIG_TODO.md +1189 -1189
  2. package/README.md +1004 -1004
  3. package/SELECTION_DIALOGS.md +145 -145
  4. package/SERVICE_IMPLEMENTATION_REPORT.md +462 -462
  5. package/package.json +6 -3
  6. package/scripts/copy-templates.ts +23 -23
  7. package/src/adapters/index.ts +11 -37
  8. package/src/backups/operations/bucketBackup.ts +277 -277
  9. package/src/backups/operations/collectionBackup.ts +310 -310
  10. package/src/backups/operations/comprehensiveBackup.ts +342 -342
  11. package/src/backups/schemas/bucketManifest.ts +78 -78
  12. package/src/backups/schemas/comprehensiveManifest.ts +76 -76
  13. package/src/backups/tracking/centralizedTracking.ts +352 -352
  14. package/src/cli/commands/configCommands.ts +265 -201
  15. package/src/cli/commands/databaseCommands.ts +931 -879
  16. package/src/cli/commands/functionCommands.ts +333 -332
  17. package/src/cli/commands/importFileCommands.ts +815 -0
  18. package/src/cli/commands/schemaCommands.ts +141 -141
  19. package/src/cli/commands/storageCommands.ts +2 -3
  20. package/src/cli/commands/transferCommands.ts +454 -457
  21. package/src/collections/attributes.ts.backup +1555 -1555
  22. package/src/collections/{attributes.ts → columns.ts} +15 -44
  23. package/src/collections/indexes.ts +350 -352
  24. package/src/collections/methods.ts +714 -815
  25. package/src/collections/tableOperations.ts +57 -21
  26. package/src/collections/transferOperations.ts +376 -377
  27. package/src/collections/wipeOperations.ts +449 -346
  28. package/src/databases/methods.ts +49 -49
  29. package/src/databases/setup.ts +77 -77
  30. package/src/examples/yamlTerminologyExample.ts +346 -346
  31. package/src/functions/deployments.ts +221 -220
  32. package/src/functions/fnConfigDiscovery.ts +2 -2
  33. package/src/functions/methods.ts +284 -284
  34. package/src/functions/templates/count-docs-in-collection/README.md +53 -53
  35. package/src/functions/templates/count-docs-in-collection/src/main.ts +159 -159
  36. package/src/functions/templates/count-docs-in-collection/src/request.ts +8 -8
  37. package/src/functions/templates/hono-typescript/README.md +285 -285
  38. package/src/functions/templates/hono-typescript/src/adapters/request.ts +73 -73
  39. package/src/functions/templates/hono-typescript/src/adapters/response.ts +105 -105
  40. package/src/functions/templates/hono-typescript/src/app.ts +179 -179
  41. package/src/functions/templates/hono-typescript/src/context.ts +102 -102
  42. package/src/functions/templates/hono-typescript/src/{index.ts → main.ts} +53 -53
  43. package/src/functions/templates/hono-typescript/src/middleware/appwrite.ts +118 -118
  44. package/src/functions/templates/typescript-node/README.md +31 -31
  45. package/src/functions/templates/typescript-node/src/context.ts +102 -102
  46. package/src/functions/templates/typescript-node/src/{index.ts → main.ts} +29 -29
  47. package/src/functions/templates/uv/README.md +30 -30
  48. package/src/functions/templates/uv/pyproject.toml +29 -29
  49. package/src/functions/templates/uv/src/context.py +124 -124
  50. package/src/functions/templates/uv/src/{index.py → main.py} +45 -45
  51. package/src/init.ts +62 -62
  52. package/src/interactiveCLI.ts +1095 -1030
  53. package/src/main.ts +1517 -1670
  54. package/src/migrations/afterImportActions.ts +579 -580
  55. package/src/migrations/appwriteToX.ts +634 -630
  56. package/src/migrations/comprehensiveTransfer.ts +2149 -2149
  57. package/src/migrations/dataLoader.ts +1729 -1702
  58. package/src/migrations/importController.ts +440 -428
  59. package/src/migrations/importDataActions.ts +315 -315
  60. package/src/migrations/relationships.ts +333 -334
  61. package/src/migrations/services/DataTransformationService.ts +195 -195
  62. package/src/migrations/services/FileHandlerService.ts +310 -310
  63. package/src/migrations/services/ImportOrchestrator.ts +674 -665
  64. package/src/migrations/services/RateLimitManager.ts +362 -362
  65. package/src/migrations/services/RelationshipResolver.ts +460 -460
  66. package/src/migrations/services/UserMappingService.ts +344 -344
  67. package/src/migrations/services/ValidationService.ts +333 -333
  68. package/src/migrations/transfer.ts +987 -942
  69. package/src/migrations/yaml/YamlImportConfigLoader.ts +438 -438
  70. package/src/migrations/yaml/YamlImportIntegration.ts +438 -438
  71. package/src/migrations/yaml/generateImportSchemas.ts +1347 -1347
  72. package/src/schemas/authUser.ts +23 -23
  73. package/src/setup.ts +8 -8
  74. package/src/setupCommands.ts +5 -6
  75. package/src/setupController.ts +42 -42
  76. package/src/shared/backupMetadataSchema.ts +93 -93
  77. package/src/shared/backupTracking.ts +211 -211
  78. package/src/shared/confirmationDialogs.ts +326 -326
  79. package/src/shared/migrationHelpers.ts +232 -232
  80. package/src/shared/operationLogger.ts +20 -20
  81. package/src/shared/operationQueue.ts +326 -327
  82. package/src/shared/operationsTable.ts +338 -338
  83. package/src/shared/operationsTableSchema.ts +60 -60
  84. package/src/shared/progressManager.ts +277 -277
  85. package/src/shared/relationshipExtractor.ts +214 -214
  86. package/src/shared/selectionDialogs.ts +775 -722
  87. package/src/storage/backupCompression.ts +88 -88
  88. package/src/storage/methods.ts +695 -682
  89. package/src/storage/schemas.ts +205 -205
  90. package/src/tables/indexManager.ts +409 -0
  91. package/src/types/node-appwrite-tablesdb.d.ts +43 -43
  92. package/src/types.ts +9 -9
  93. package/src/users/methods.ts +358 -359
  94. package/src/utils/configMigration.ts +347 -347
  95. package/src/utils/index.ts +2 -2
  96. package/src/utils/loadConfigs.ts +457 -449
  97. package/src/utils/setupFiles.ts +1236 -1238
  98. package/src/utilsController.ts +1263 -1213
  99. package/tests/README.md +496 -496
  100. package/tests/adapters/AdapterFactory.test.ts +276 -276
  101. package/tests/integration/syncOperations.test.ts +462 -462
  102. package/tests/jest.config.js +24 -24
  103. package/tests/migration/configMigration.test.ts +545 -545
  104. package/tests/setup.ts +61 -61
  105. package/tests/testUtils.ts +339 -339
  106. package/tests/utils/loadConfigs.test.ts +349 -349
  107. package/tests/validation/configValidation.test.ts +411 -411
  108. package/tsconfig.json +44 -44
  109. package/.appwrite/.yaml_schemas/appwrite-config.schema.json +0 -380
  110. package/.appwrite/.yaml_schemas/collection.schema.json +0 -255
  111. package/.appwrite/collections/Categories.yaml +0 -182
  112. package/.appwrite/collections/ExampleCollection.yaml +0 -36
  113. package/.appwrite/collections/Posts.yaml +0 -227
  114. package/.appwrite/collections/Users.yaml +0 -149
  115. package/.appwrite/config.yaml +0 -109
  116. package/.appwrite/import/README.md +0 -148
  117. package/.appwrite/import/categories-import.yaml +0 -129
  118. package/.appwrite/import/posts-import.yaml +0 -208
  119. package/.appwrite/import/users-import.yaml +0 -130
  120. package/.appwrite/importData/categories.json +0 -194
  121. package/.appwrite/importData/posts.json +0 -270
  122. package/.appwrite/importData/users.json +0 -220
  123. package/.appwrite/schemas/categories.json +0 -128
  124. package/.appwrite/schemas/exampleCollection.json +0 -52
  125. package/.appwrite/schemas/posts.json +0 -173
  126. package/.appwrite/schemas/users.json +0 -125
  127. package/dist/adapters/AdapterFactory.d.ts +0 -94
  128. package/dist/adapters/AdapterFactory.js +0 -405
  129. package/dist/adapters/DatabaseAdapter.d.ts +0 -242
  130. package/dist/adapters/DatabaseAdapter.js +0 -50
  131. package/dist/adapters/LegacyAdapter.d.ts +0 -50
  132. package/dist/adapters/LegacyAdapter.js +0 -612
  133. package/dist/adapters/TablesDBAdapter.d.ts +0 -45
  134. package/dist/adapters/TablesDBAdapter.js +0 -596
  135. package/dist/adapters/index.d.ts +0 -11
  136. package/dist/adapters/index.js +0 -12
  137. package/dist/backups/operations/bucketBackup.d.ts +0 -19
  138. package/dist/backups/operations/bucketBackup.js +0 -197
  139. package/dist/backups/operations/collectionBackup.d.ts +0 -30
  140. package/dist/backups/operations/collectionBackup.js +0 -201
  141. package/dist/backups/operations/comprehensiveBackup.d.ts +0 -25
  142. package/dist/backups/operations/comprehensiveBackup.js +0 -238
  143. package/dist/backups/schemas/bucketManifest.d.ts +0 -93
  144. package/dist/backups/schemas/bucketManifest.js +0 -33
  145. package/dist/backups/schemas/comprehensiveManifest.d.ts +0 -108
  146. package/dist/backups/schemas/comprehensiveManifest.js +0 -32
  147. package/dist/backups/tracking/centralizedTracking.d.ts +0 -34
  148. package/dist/backups/tracking/centralizedTracking.js +0 -274
  149. package/dist/cli/commands/configCommands.d.ts +0 -8
  150. package/dist/cli/commands/configCommands.js +0 -166
  151. package/dist/cli/commands/databaseCommands.d.ts +0 -14
  152. package/dist/cli/commands/databaseCommands.js +0 -644
  153. package/dist/cli/commands/functionCommands.d.ts +0 -7
  154. package/dist/cli/commands/functionCommands.js +0 -330
  155. package/dist/cli/commands/schemaCommands.d.ts +0 -7
  156. package/dist/cli/commands/schemaCommands.js +0 -169
  157. package/dist/cli/commands/storageCommands.d.ts +0 -5
  158. package/dist/cli/commands/storageCommands.js +0 -143
  159. package/dist/cli/commands/transferCommands.d.ts +0 -5
  160. package/dist/cli/commands/transferCommands.js +0 -384
  161. package/dist/collections/attributes.d.ts +0 -13
  162. package/dist/collections/attributes.js +0 -1364
  163. package/dist/collections/indexes.d.ts +0 -12
  164. package/dist/collections/indexes.js +0 -217
  165. package/dist/collections/methods.d.ts +0 -19
  166. package/dist/collections/methods.js +0 -734
  167. package/dist/collections/tableOperations.d.ts +0 -86
  168. package/dist/collections/tableOperations.js +0 -434
  169. package/dist/collections/transferOperations.d.ts +0 -8
  170. package/dist/collections/transferOperations.js +0 -412
  171. package/dist/collections/wipeOperations.d.ts +0 -16
  172. package/dist/collections/wipeOperations.js +0 -233
  173. package/dist/config/ConfigManager.d.ts +0 -450
  174. package/dist/config/ConfigManager.js +0 -625
  175. package/dist/config/configMigration.d.ts +0 -87
  176. package/dist/config/configMigration.js +0 -390
  177. package/dist/config/configValidation.d.ts +0 -66
  178. package/dist/config/configValidation.js +0 -358
  179. package/dist/config/index.d.ts +0 -8
  180. package/dist/config/index.js +0 -7
  181. package/dist/config/services/ConfigDiscoveryService.d.ts +0 -122
  182. package/dist/config/services/ConfigDiscoveryService.js +0 -322
  183. package/dist/config/services/ConfigLoaderService.d.ts +0 -129
  184. package/dist/config/services/ConfigLoaderService.js +0 -535
  185. package/dist/config/services/ConfigMergeService.d.ts +0 -208
  186. package/dist/config/services/ConfigMergeService.js +0 -308
  187. package/dist/config/services/ConfigValidationService.d.ts +0 -214
  188. package/dist/config/services/ConfigValidationService.js +0 -310
  189. package/dist/config/services/SessionAuthService.d.ts +0 -225
  190. package/dist/config/services/SessionAuthService.js +0 -456
  191. package/dist/config/services/__tests__/ConfigMergeService.test.d.ts +0 -1
  192. package/dist/config/services/__tests__/ConfigMergeService.test.js +0 -271
  193. package/dist/config/services/index.d.ts +0 -13
  194. package/dist/config/services/index.js +0 -10
  195. package/dist/config/yamlConfig.d.ts +0 -722
  196. package/dist/config/yamlConfig.js +0 -702
  197. package/dist/databases/methods.d.ts +0 -6
  198. package/dist/databases/methods.js +0 -35
  199. package/dist/databases/setup.d.ts +0 -5
  200. package/dist/databases/setup.js +0 -45
  201. package/dist/examples/yamlTerminologyExample.d.ts +0 -42
  202. package/dist/examples/yamlTerminologyExample.js +0 -272
  203. package/dist/functions/deployments.d.ts +0 -4
  204. package/dist/functions/deployments.js +0 -146
  205. package/dist/functions/fnConfigDiscovery.d.ts +0 -3
  206. package/dist/functions/fnConfigDiscovery.js +0 -108
  207. package/dist/functions/methods.d.ts +0 -16
  208. package/dist/functions/methods.js +0 -174
  209. package/dist/functions/pathResolution.d.ts +0 -37
  210. package/dist/functions/pathResolution.js +0 -185
  211. package/dist/functions/templates/count-docs-in-collection/README.md +0 -54
  212. package/dist/functions/templates/count-docs-in-collection/package.json +0 -25
  213. package/dist/functions/templates/count-docs-in-collection/src/main.ts +0 -159
  214. package/dist/functions/templates/count-docs-in-collection/src/request.ts +0 -9
  215. package/dist/functions/templates/count-docs-in-collection/tsconfig.json +0 -28
  216. package/dist/functions/templates/hono-typescript/README.md +0 -286
  217. package/dist/functions/templates/hono-typescript/package.json +0 -26
  218. package/dist/functions/templates/hono-typescript/src/adapters/request.ts +0 -74
  219. package/dist/functions/templates/hono-typescript/src/adapters/response.ts +0 -106
  220. package/dist/functions/templates/hono-typescript/src/app.ts +0 -180
  221. package/dist/functions/templates/hono-typescript/src/context.ts +0 -103
  222. package/dist/functions/templates/hono-typescript/src/index.ts +0 -54
  223. package/dist/functions/templates/hono-typescript/src/middleware/appwrite.ts +0 -119
  224. package/dist/functions/templates/hono-typescript/tsconfig.json +0 -20
  225. package/dist/functions/templates/typescript-node/README.md +0 -32
  226. package/dist/functions/templates/typescript-node/package.json +0 -25
  227. package/dist/functions/templates/typescript-node/src/context.ts +0 -103
  228. package/dist/functions/templates/typescript-node/src/index.ts +0 -29
  229. package/dist/functions/templates/typescript-node/tsconfig.json +0 -28
  230. package/dist/functions/templates/uv/README.md +0 -31
  231. package/dist/functions/templates/uv/pyproject.toml +0 -30
  232. package/dist/functions/templates/uv/src/__init__.py +0 -0
  233. package/dist/functions/templates/uv/src/context.py +0 -125
  234. package/dist/functions/templates/uv/src/index.py +0 -46
  235. package/dist/init.d.ts +0 -2
  236. package/dist/init.js +0 -57
  237. package/dist/interactiveCLI.d.ts +0 -31
  238. package/dist/interactiveCLI.js +0 -898
  239. package/dist/main.d.ts +0 -2
  240. package/dist/main.js +0 -1180
  241. package/dist/migrations/afterImportActions.d.ts +0 -17
  242. package/dist/migrations/afterImportActions.js +0 -306
  243. package/dist/migrations/appwriteToX.d.ts +0 -211
  244. package/dist/migrations/appwriteToX.js +0 -491
  245. package/dist/migrations/comprehensiveTransfer.d.ts +0 -147
  246. package/dist/migrations/comprehensiveTransfer.js +0 -1317
  247. package/dist/migrations/dataLoader.d.ts +0 -753
  248. package/dist/migrations/dataLoader.js +0 -1250
  249. package/dist/migrations/importController.d.ts +0 -23
  250. package/dist/migrations/importController.js +0 -268
  251. package/dist/migrations/importDataActions.d.ts +0 -50
  252. package/dist/migrations/importDataActions.js +0 -230
  253. package/dist/migrations/relationships.d.ts +0 -29
  254. package/dist/migrations/relationships.js +0 -204
  255. package/dist/migrations/services/DataTransformationService.d.ts +0 -55
  256. package/dist/migrations/services/DataTransformationService.js +0 -158
  257. package/dist/migrations/services/FileHandlerService.d.ts +0 -75
  258. package/dist/migrations/services/FileHandlerService.js +0 -236
  259. package/dist/migrations/services/ImportOrchestrator.d.ts +0 -97
  260. package/dist/migrations/services/ImportOrchestrator.js +0 -485
  261. package/dist/migrations/services/RateLimitManager.d.ts +0 -138
  262. package/dist/migrations/services/RateLimitManager.js +0 -279
  263. package/dist/migrations/services/RelationshipResolver.d.ts +0 -120
  264. package/dist/migrations/services/RelationshipResolver.js +0 -332
  265. package/dist/migrations/services/UserMappingService.d.ts +0 -109
  266. package/dist/migrations/services/UserMappingService.js +0 -277
  267. package/dist/migrations/services/ValidationService.d.ts +0 -74
  268. package/dist/migrations/services/ValidationService.js +0 -260
  269. package/dist/migrations/transfer.d.ts +0 -26
  270. package/dist/migrations/transfer.js +0 -608
  271. package/dist/migrations/yaml/YamlImportConfigLoader.d.ts +0 -131
  272. package/dist/migrations/yaml/YamlImportConfigLoader.js +0 -383
  273. package/dist/migrations/yaml/YamlImportIntegration.d.ts +0 -93
  274. package/dist/migrations/yaml/YamlImportIntegration.js +0 -341
  275. package/dist/migrations/yaml/generateImportSchemas.d.ts +0 -30
  276. package/dist/migrations/yaml/generateImportSchemas.js +0 -1327
  277. package/dist/schemas/authUser.d.ts +0 -24
  278. package/dist/schemas/authUser.js +0 -17
  279. package/dist/setup.d.ts +0 -2
  280. package/dist/setup.js +0 -5
  281. package/dist/setupCommands.d.ts +0 -58
  282. package/dist/setupCommands.js +0 -490
  283. package/dist/setupController.d.ts +0 -9
  284. package/dist/setupController.js +0 -34
  285. package/dist/shared/attributeMapper.d.ts +0 -20
  286. package/dist/shared/attributeMapper.js +0 -203
  287. package/dist/shared/backupMetadataSchema.d.ts +0 -94
  288. package/dist/shared/backupMetadataSchema.js +0 -38
  289. package/dist/shared/backupTracking.d.ts +0 -18
  290. package/dist/shared/backupTracking.js +0 -176
  291. package/dist/shared/confirmationDialogs.d.ts +0 -75
  292. package/dist/shared/confirmationDialogs.js +0 -236
  293. package/dist/shared/errorUtils.d.ts +0 -54
  294. package/dist/shared/errorUtils.js +0 -95
  295. package/dist/shared/functionManager.d.ts +0 -48
  296. package/dist/shared/functionManager.js +0 -348
  297. package/dist/shared/indexManager.d.ts +0 -24
  298. package/dist/shared/indexManager.js +0 -151
  299. package/dist/shared/jsonSchemaGenerator.d.ts +0 -50
  300. package/dist/shared/jsonSchemaGenerator.js +0 -290
  301. package/dist/shared/logging.d.ts +0 -61
  302. package/dist/shared/logging.js +0 -116
  303. package/dist/shared/messageFormatter.d.ts +0 -39
  304. package/dist/shared/messageFormatter.js +0 -162
  305. package/dist/shared/migrationHelpers.d.ts +0 -61
  306. package/dist/shared/migrationHelpers.js +0 -145
  307. package/dist/shared/operationLogger.d.ts +0 -10
  308. package/dist/shared/operationLogger.js +0 -12
  309. package/dist/shared/operationQueue.d.ts +0 -40
  310. package/dist/shared/operationQueue.js +0 -311
  311. package/dist/shared/operationsTable.d.ts +0 -26
  312. package/dist/shared/operationsTable.js +0 -286
  313. package/dist/shared/operationsTableSchema.d.ts +0 -48
  314. package/dist/shared/operationsTableSchema.js +0 -35
  315. package/dist/shared/progressManager.d.ts +0 -62
  316. package/dist/shared/progressManager.js +0 -215
  317. package/dist/shared/pydanticModelGenerator.d.ts +0 -17
  318. package/dist/shared/pydanticModelGenerator.js +0 -615
  319. package/dist/shared/relationshipExtractor.d.ts +0 -56
  320. package/dist/shared/relationshipExtractor.js +0 -138
  321. package/dist/shared/schemaGenerator.d.ts +0 -40
  322. package/dist/shared/schemaGenerator.js +0 -556
  323. package/dist/shared/selectionDialogs.d.ts +0 -214
  324. package/dist/shared/selectionDialogs.js +0 -544
  325. package/dist/storage/backupCompression.d.ts +0 -20
  326. package/dist/storage/backupCompression.js +0 -67
  327. package/dist/storage/methods.d.ts +0 -32
  328. package/dist/storage/methods.js +0 -472
  329. package/dist/storage/schemas.d.ts +0 -842
  330. package/dist/storage/schemas.js +0 -175
  331. package/dist/types.d.ts +0 -4
  332. package/dist/types.js +0 -3
  333. package/dist/users/methods.d.ts +0 -16
  334. package/dist/users/methods.js +0 -277
  335. package/dist/utils/ClientFactory.d.ts +0 -87
  336. package/dist/utils/ClientFactory.js +0 -212
  337. package/dist/utils/configDiscovery.d.ts +0 -78
  338. package/dist/utils/configDiscovery.js +0 -472
  339. package/dist/utils/configMigration.d.ts +0 -1
  340. package/dist/utils/configMigration.js +0 -261
  341. package/dist/utils/constantsGenerator.d.ts +0 -31
  342. package/dist/utils/constantsGenerator.js +0 -321
  343. package/dist/utils/dataConverters.d.ts +0 -46
  344. package/dist/utils/dataConverters.js +0 -139
  345. package/dist/utils/directoryUtils.d.ts +0 -22
  346. package/dist/utils/directoryUtils.js +0 -59
  347. package/dist/utils/getClientFromConfig.d.ts +0 -39
  348. package/dist/utils/getClientFromConfig.js +0 -199
  349. package/dist/utils/helperFunctions.d.ts +0 -63
  350. package/dist/utils/helperFunctions.js +0 -156
  351. package/dist/utils/index.d.ts +0 -2
  352. package/dist/utils/index.js +0 -2
  353. package/dist/utils/loadConfigs.d.ts +0 -50
  354. package/dist/utils/loadConfigs.js +0 -358
  355. package/dist/utils/pathResolvers.d.ts +0 -53
  356. package/dist/utils/pathResolvers.js +0 -72
  357. package/dist/utils/projectConfig.d.ts +0 -122
  358. package/dist/utils/projectConfig.js +0 -206
  359. package/dist/utils/retryFailedPromises.d.ts +0 -2
  360. package/dist/utils/retryFailedPromises.js +0 -23
  361. package/dist/utils/sessionAuth.d.ts +0 -48
  362. package/dist/utils/sessionAuth.js +0 -164
  363. package/dist/utils/setupFiles.d.ts +0 -4
  364. package/dist/utils/setupFiles.js +0 -1192
  365. package/dist/utils/typeGuards.d.ts +0 -35
  366. package/dist/utils/typeGuards.js +0 -57
  367. package/dist/utils/validationRules.d.ts +0 -43
  368. package/dist/utils/validationRules.js +0 -42
  369. package/dist/utils/versionDetection.d.ts +0 -58
  370. package/dist/utils/versionDetection.js +0 -251
  371. package/dist/utils/yamlConverter.d.ts +0 -100
  372. package/dist/utils/yamlConverter.js +0 -428
  373. package/dist/utils/yamlLoader.d.ts +0 -70
  374. package/dist/utils/yamlLoader.js +0 -267
  375. package/dist/utilsController.d.ts +0 -107
  376. package/dist/utilsController.js +0 -873
  377. package/src/adapters/AdapterFactory.ts +0 -510
  378. package/src/adapters/DatabaseAdapter.ts +0 -318
  379. package/src/adapters/LegacyAdapter.ts +0 -841
  380. package/src/adapters/TablesDBAdapter.ts +0 -815
  381. package/src/config/ConfigManager.ts +0 -817
  382. package/src/config/README.md +0 -274
  383. package/src/config/configMigration.ts +0 -575
  384. package/src/config/configValidation.ts +0 -445
  385. package/src/config/index.ts +0 -10
  386. package/src/config/services/ConfigDiscoveryService.ts +0 -410
  387. package/src/config/services/ConfigLoaderService.ts +0 -732
  388. package/src/config/services/ConfigMergeService.ts +0 -388
  389. package/src/config/services/ConfigValidationService.ts +0 -394
  390. package/src/config/services/SessionAuthService.ts +0 -565
  391. package/src/config/services/__tests__/ConfigMergeService.test.ts +0 -351
  392. package/src/config/services/index.ts +0 -29
  393. package/src/config/yamlConfig.ts +0 -761
  394. package/src/functions/pathResolution.ts +0 -227
  395. package/src/functions/templates/count-docs-in-collection/package.json +0 -25
  396. package/src/functions/templates/count-docs-in-collection/tsconfig.json +0 -28
  397. package/src/functions/templates/hono-typescript/package.json +0 -26
  398. package/src/functions/templates/hono-typescript/tsconfig.json +0 -20
  399. package/src/functions/templates/typescript-node/package.json +0 -25
  400. package/src/functions/templates/typescript-node/tsconfig.json +0 -28
  401. package/src/shared/attributeMapper.ts +0 -229
  402. package/src/shared/errorUtils.ts +0 -110
  403. package/src/shared/functionManager.ts +0 -537
  404. package/src/shared/indexManager.ts +0 -254
  405. package/src/shared/jsonSchemaGenerator.ts +0 -383
  406. package/src/shared/logging.ts +0 -149
  407. package/src/shared/messageFormatter.ts +0 -208
  408. package/src/shared/pydanticModelGenerator.ts +0 -618
  409. package/src/shared/schemaGenerator.ts +0 -644
  410. package/src/utils/ClientFactory.ts +0 -240
  411. package/src/utils/configDiscovery.ts +0 -557
  412. package/src/utils/constantsGenerator.ts +0 -369
  413. package/src/utils/dataConverters.ts +0 -159
  414. package/src/utils/directoryUtils.ts +0 -61
  415. package/src/utils/getClientFromConfig.ts +0 -257
  416. package/src/utils/helperFunctions.ts +0 -228
  417. package/src/utils/pathResolvers.ts +0 -81
  418. package/src/utils/projectConfig.ts +0 -340
  419. package/src/utils/retryFailedPromises.ts +0 -29
  420. package/src/utils/sessionAuth.ts +0 -230
  421. package/src/utils/typeGuards.ts +0 -65
  422. package/src/utils/validationRules.ts +0 -88
  423. package/src/utils/versionDetection.ts +0 -292
  424. package/src/utils/yamlConverter.ts +0 -542
  425. package/src/utils/yamlLoader.ts +0 -371
  426. package/tmp-sync-test/.appwrite/collections/TestCollection.yaml +0 -7
@@ -1,722 +0,0 @@
1
- import { z } from "zod";
2
- import { type AppwriteConfig, type AppwriteFunction } from "appwrite-utils";
3
- declare const YamlConfigSchema: z.ZodObject<{
4
- appwrite: z.ZodObject<{
5
- endpoint: z.ZodDefault<z.ZodString>;
6
- project: z.ZodString;
7
- key: z.ZodString;
8
- sessionCookie: z.ZodOptional<z.ZodString>;
9
- authMethod: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
10
- session: "session";
11
- apikey: "apikey";
12
- auto: "auto";
13
- }>>>;
14
- sessionMetadata: z.ZodOptional<z.ZodObject<{
15
- email: z.ZodOptional<z.ZodString>;
16
- expiresAt: z.ZodOptional<z.ZodString>;
17
- }, z.core.$strip>>;
18
- }, z.core.$strip>;
19
- logging: z.ZodDefault<z.ZodOptional<z.ZodObject<{
20
- enabled: z.ZodDefault<z.ZodBoolean>;
21
- level: z.ZodDefault<z.ZodEnum<{
22
- error: "error";
23
- info: "info";
24
- debug: "debug";
25
- warn: "warn";
26
- }>>;
27
- directory: z.ZodOptional<z.ZodString>;
28
- console: z.ZodDefault<z.ZodBoolean>;
29
- }, z.core.$strip>>>;
30
- backups: z.ZodDefault<z.ZodOptional<z.ZodObject<{
31
- enabled: z.ZodDefault<z.ZodBoolean>;
32
- interval: z.ZodDefault<z.ZodNumber>;
33
- retention: z.ZodDefault<z.ZodNumber>;
34
- cleanup: z.ZodDefault<z.ZodBoolean>;
35
- }, z.core.$strip>>>;
36
- data: z.ZodDefault<z.ZodOptional<z.ZodObject<{
37
- enableMockData: z.ZodDefault<z.ZodBoolean>;
38
- documentBucketId: z.ZodDefault<z.ZodString>;
39
- usersCollectionName: z.ZodDefault<z.ZodString>;
40
- importDirectory: z.ZodDefault<z.ZodString>;
41
- }, z.core.$strip>>>;
42
- schemas: z.ZodDefault<z.ZodOptional<z.ZodObject<{
43
- outputDirectory: z.ZodDefault<z.ZodString>;
44
- yamlSchemaDirectory: z.ZodDefault<z.ZodString>;
45
- collectionsDirectory: z.ZodDefault<z.ZodString>;
46
- tablesDirectory: z.ZodDefault<z.ZodString>;
47
- }, z.core.$strip>>>;
48
- migrations: z.ZodDefault<z.ZodOptional<z.ZodObject<{
49
- enabled: z.ZodDefault<z.ZodBoolean>;
50
- }, z.core.$strip>>>;
51
- databases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
52
- id: z.ZodString;
53
- name: z.ZodString;
54
- bucket: z.ZodOptional<z.ZodObject<{
55
- id: z.ZodString;
56
- name: z.ZodString;
57
- permissions: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
58
- permission: z.ZodString;
59
- target: z.ZodString;
60
- }, z.core.$strip>, z.ZodPipe<z.ZodString, z.ZodTransform<{
61
- permission: string;
62
- target: string;
63
- }, string>>]>>>;
64
- fileSecurity: z.ZodOptional<z.ZodBoolean>;
65
- enabled: z.ZodOptional<z.ZodBoolean>;
66
- maximumFileSize: z.ZodOptional<z.ZodNumber>;
67
- allowedFileExtensions: z.ZodOptional<z.ZodArray<z.ZodString>>;
68
- compression: z.ZodOptional<z.ZodEnum<{
69
- none: "none";
70
- gzip: "gzip";
71
- zstd: "zstd";
72
- }>>;
73
- encryption: z.ZodOptional<z.ZodBoolean>;
74
- antivirus: z.ZodOptional<z.ZodBoolean>;
75
- }, z.core.$strip>>;
76
- }, z.core.$strip>>>>;
77
- buckets: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
78
- id: z.ZodString;
79
- name: z.ZodString;
80
- permissions: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
81
- permission: z.ZodString;
82
- target: z.ZodString;
83
- }, z.core.$strip>, z.ZodPipe<z.ZodString, z.ZodTransform<{
84
- permission: string;
85
- target: string;
86
- }, string>>]>>>;
87
- fileSecurity: z.ZodOptional<z.ZodBoolean>;
88
- enabled: z.ZodOptional<z.ZodBoolean>;
89
- maximumFileSize: z.ZodOptional<z.ZodNumber>;
90
- allowedFileExtensions: z.ZodOptional<z.ZodArray<z.ZodString>>;
91
- compression: z.ZodOptional<z.ZodEnum<{
92
- none: "none";
93
- gzip: "gzip";
94
- zstd: "zstd";
95
- }>>;
96
- encryption: z.ZodOptional<z.ZodBoolean>;
97
- antivirus: z.ZodOptional<z.ZodBoolean>;
98
- }, z.core.$strip>>>>;
99
- functions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodObject<{
100
- id: z.ZodString;
101
- name: z.ZodString;
102
- runtime: any;
103
- execute: z.ZodOptional<z.ZodArray<z.ZodString>>;
104
- events: z.ZodOptional<z.ZodArray<z.ZodString>>;
105
- schedule: z.ZodOptional<z.ZodString>;
106
- timeout: z.ZodOptional<z.ZodNumber>;
107
- enabled: z.ZodOptional<z.ZodBoolean>;
108
- logging: z.ZodOptional<z.ZodBoolean>;
109
- entrypoint: z.ZodOptional<z.ZodString>;
110
- commands: z.ZodOptional<z.ZodString>;
111
- scopes: z.ZodOptional<z.ZodArray<z.ZodString>>;
112
- installationId: z.ZodOptional<z.ZodString>;
113
- providerRepositoryId: z.ZodOptional<z.ZodString>;
114
- providerBranch: z.ZodOptional<z.ZodString>;
115
- providerSilentMode: z.ZodOptional<z.ZodBoolean>;
116
- providerRootDirectory: z.ZodOptional<z.ZodString>;
117
- templateRepository: z.ZodOptional<z.ZodString>;
118
- templateOwner: z.ZodOptional<z.ZodString>;
119
- templateRootDirectory: z.ZodOptional<z.ZodString>;
120
- templateBranch: z.ZodOptional<z.ZodString>;
121
- specification: z.ZodOptional<z.ZodString>;
122
- dirPath: z.ZodOptional<z.ZodString>;
123
- predeployCommands: z.ZodOptional<z.ZodArray<z.ZodString>>;
124
- deployDir: z.ZodOptional<z.ZodString>;
125
- ignore: z.ZodOptional<z.ZodArray<z.ZodString>>;
126
- templateVersion: z.ZodOptional<z.ZodString>;
127
- }, z.core.$strip>>>>;
128
- }, z.core.$strip>;
129
- export type YamlConfig = z.infer<typeof YamlConfigSchema>;
130
- export declare const convertYamlToAppwriteConfig: (yamlConfig: YamlConfig) => AppwriteConfig;
131
- /**
132
- * Enhanced config loading with session authentication support
133
- * Supports session override options for preserving session state
134
- */
135
- export interface YamlSessionOptions {
136
- sessionCookie?: string;
137
- authMethod?: "session" | "apikey" | "auto";
138
- sessionMetadata?: {
139
- email?: string;
140
- expiresAt?: string;
141
- };
142
- }
143
- /**
144
- * Load YAML config with optional session preservation
145
- * Maintains authentication priority: explicit session > YAML file > system prefs
146
- */
147
- export declare const loadYamlConfigWithSession: (configPath: string, sessionOptions?: YamlSessionOptions) => Promise<AppwriteConfig | null>;
148
- export declare const loadYamlConfig: (configPath: string) => Promise<AppwriteConfig | null>;
149
- export declare const findYamlConfig: (startDir: string) => string | null;
150
- export declare const generateYamlConfigTemplate: (outputPath: string) => void;
151
- /**
152
- * Converts AppwriteConfig back to YAML format and writes to file
153
- * @param configPath Path to the YAML config file
154
- * @param config The AppwriteConfig to convert and save
155
- */
156
- export declare const writeYamlConfig: (configPath: string, config: AppwriteConfig) => Promise<void>;
157
- /**
158
- * Adds a new function to the YAML config file
159
- * @param configPath Path to the YAML config file
160
- * @param newFunction The function configuration to add
161
- */
162
- export declare const addFunctionToYamlConfig: (configPath: string, newFunction: AppwriteFunction) => Promise<void>;
163
- /**
164
- * Extract session options from AppwriteConfig for YAML operations
165
- * Useful for preserving session state during config reloads
166
- */
167
- export declare const extractSessionOptionsFromConfig: (config: AppwriteConfig) => YamlSessionOptions;
168
- /**
169
- * Create session-preserved YAML config operations
170
- * Maintains authentication state during config file updates
171
- */
172
- export declare const createSessionPreservingYamlConfig: (configPath: string, sessionOptions: YamlSessionOptions) => {
173
- load: () => Promise<{
174
- appwriteEndpoint: string;
175
- appwriteProject: string;
176
- appwriteKey: string;
177
- appwriteClient: any;
178
- authMethod: "session" | "apikey" | "auto";
179
- logging: {
180
- enabled: boolean;
181
- level: "error" | "warn" | "info" | "debug";
182
- console: boolean;
183
- logDirectory?: string | undefined;
184
- };
185
- enableBackups: boolean;
186
- backupInterval: number;
187
- backupRetention: number;
188
- enableBackupCleanup: boolean;
189
- enableMockData: boolean;
190
- documentBucketId: string;
191
- usersCollectionName: string;
192
- databases: {
193
- $id: string;
194
- name: string;
195
- bucket?: {
196
- $id: string;
197
- name: string;
198
- permissions?: ({
199
- permission: string;
200
- target: string;
201
- } | {
202
- permission: string;
203
- target: string;
204
- })[] | undefined;
205
- fileSecurity?: boolean | undefined;
206
- enabled?: boolean | undefined;
207
- maximumFileSize?: number | undefined;
208
- allowedFileExtensions?: string[] | undefined;
209
- compression?: "none" | "gzip" | "zstd" | undefined;
210
- encryption?: boolean | undefined;
211
- antivirus?: boolean | undefined;
212
- } | undefined;
213
- }[];
214
- buckets: {
215
- $id: string;
216
- name: string;
217
- permissions?: ({
218
- permission: string;
219
- target: string;
220
- } | {
221
- permission: string;
222
- target: string;
223
- })[] | undefined;
224
- fileSecurity?: boolean | undefined;
225
- enabled?: boolean | undefined;
226
- maximumFileSize?: number | undefined;
227
- allowedFileExtensions?: string[] | undefined;
228
- compression?: "none" | "gzip" | "zstd" | undefined;
229
- encryption?: boolean | undefined;
230
- antivirus?: boolean | undefined;
231
- }[];
232
- apiMode: "auto" | "legacy" | "tablesdb";
233
- sessionCookie?: string | undefined;
234
- sessionMetadata?: {
235
- email?: string | undefined;
236
- expiresAt?: string | undefined;
237
- } | undefined;
238
- collections?: {
239
- name: string;
240
- attributes: ({
241
- key: string;
242
- required: boolean;
243
- type: "integer";
244
- array?: boolean | undefined;
245
- format?: string | undefined;
246
- status?: string | undefined;
247
- attributes?: string[] | undefined;
248
- orders?: string[] | undefined;
249
- $createdAt?: string | undefined;
250
- $updatedAt?: string | undefined;
251
- error?: string | undefined;
252
- min?: number | undefined;
253
- max?: number | undefined;
254
- xdefault?: number | null | undefined;
255
- } | {
256
- key: string;
257
- required: boolean;
258
- type: "relationship";
259
- relatedCollection: string;
260
- relationType: "oneToMany" | "manyToOne" | "oneToOne" | "manyToMany";
261
- twoWay: boolean;
262
- onDelete: "setNull" | "cascade" | "restrict";
263
- array?: boolean | undefined;
264
- format?: string | undefined;
265
- status?: string | undefined;
266
- attributes?: string[] | undefined;
267
- orders?: string[] | undefined;
268
- $createdAt?: string | undefined;
269
- $updatedAt?: string | undefined;
270
- error?: string | undefined;
271
- twoWayKey?: string | undefined;
272
- side?: "parent" | "child" | undefined;
273
- importMapping?: {
274
- originalIdField: string;
275
- targetField?: string | undefined;
276
- } | undefined;
277
- } | {
278
- key: string;
279
- required: boolean;
280
- type: "string";
281
- size: number;
282
- array?: boolean | undefined;
283
- format?: string | undefined;
284
- status?: string | undefined;
285
- attributes?: string[] | undefined;
286
- orders?: string[] | undefined;
287
- $createdAt?: string | undefined;
288
- $updatedAt?: string | undefined;
289
- error?: string | undefined;
290
- xdefault?: string | null | undefined;
291
- encrypt?: boolean | undefined;
292
- } | {
293
- key: string;
294
- required: boolean;
295
- type: "double";
296
- array?: boolean | undefined;
297
- format?: string | undefined;
298
- status?: string | undefined;
299
- attributes?: string[] | undefined;
300
- orders?: string[] | undefined;
301
- $createdAt?: string | undefined;
302
- $updatedAt?: string | undefined;
303
- error?: string | undefined;
304
- min?: number | undefined;
305
- max?: number | undefined;
306
- xdefault?: number | null | undefined;
307
- } | {
308
- key: string;
309
- required: boolean;
310
- type: "float";
311
- array?: boolean | undefined;
312
- format?: string | undefined;
313
- status?: string | undefined;
314
- attributes?: string[] | undefined;
315
- orders?: string[] | undefined;
316
- $createdAt?: string | undefined;
317
- $updatedAt?: string | undefined;
318
- error?: string | undefined;
319
- min?: number | undefined;
320
- max?: number | undefined;
321
- xdefault?: number | null | undefined;
322
- } | {
323
- key: string;
324
- required: boolean;
325
- type: "boolean";
326
- array?: boolean | undefined;
327
- format?: string | undefined;
328
- status?: string | undefined;
329
- attributes?: string[] | undefined;
330
- orders?: string[] | undefined;
331
- $createdAt?: string | undefined;
332
- $updatedAt?: string | undefined;
333
- error?: string | undefined;
334
- xdefault?: boolean | null | undefined;
335
- } | {
336
- key: string;
337
- required: boolean;
338
- type: "datetime";
339
- array?: boolean | undefined;
340
- format?: string | undefined;
341
- status?: string | undefined;
342
- attributes?: string[] | undefined;
343
- orders?: string[] | undefined;
344
- $createdAt?: string | undefined;
345
- $updatedAt?: string | undefined;
346
- error?: string | undefined;
347
- xdefault?: string | null | undefined;
348
- } | {
349
- key: string;
350
- required: boolean;
351
- type: "email";
352
- array?: boolean | undefined;
353
- format?: string | undefined;
354
- status?: string | undefined;
355
- attributes?: string[] | undefined;
356
- orders?: string[] | undefined;
357
- $createdAt?: string | undefined;
358
- $updatedAt?: string | undefined;
359
- error?: string | undefined;
360
- xdefault?: string | null | undefined;
361
- } | {
362
- key: string;
363
- required: boolean;
364
- type: "ip";
365
- array?: boolean | undefined;
366
- format?: string | undefined;
367
- status?: string | undefined;
368
- attributes?: string[] | undefined;
369
- orders?: string[] | undefined;
370
- $createdAt?: string | undefined;
371
- $updatedAt?: string | undefined;
372
- error?: string | undefined;
373
- xdefault?: string | null | undefined;
374
- } | {
375
- key: string;
376
- required: boolean;
377
- type: "url";
378
- array?: boolean | undefined;
379
- format?: string | undefined;
380
- status?: string | undefined;
381
- attributes?: string[] | undefined;
382
- orders?: string[] | undefined;
383
- $createdAt?: string | undefined;
384
- $updatedAt?: string | undefined;
385
- error?: string | undefined;
386
- xdefault?: string | null | undefined;
387
- } | {
388
- key: string;
389
- required: boolean;
390
- type: "enum";
391
- elements: string[];
392
- array?: boolean | undefined;
393
- format?: string | undefined;
394
- status?: string | undefined;
395
- attributes?: string[] | undefined;
396
- orders?: string[] | undefined;
397
- $createdAt?: string | undefined;
398
- $updatedAt?: string | undefined;
399
- error?: string | undefined;
400
- xdefault?: string | null | undefined;
401
- })[];
402
- $permissions: {
403
- permission: string;
404
- target: string;
405
- }[];
406
- indexes: {
407
- key: string;
408
- type: "key" | "unique" | "fulltext";
409
- attributes: string[];
410
- status?: string | undefined;
411
- error?: string | undefined;
412
- orders?: string[] | undefined;
413
- }[];
414
- importDefs: {
415
- filePath: string;
416
- primaryKeyField: string;
417
- attributeMappings: {
418
- targetKey: string;
419
- oldKey?: string | undefined;
420
- oldKeys?: string[] | undefined;
421
- valueToSet?: any;
422
- fileData?: {
423
- name: string;
424
- path: string;
425
- } | undefined;
426
- converters?: string[] | undefined;
427
- validationActions?: {
428
- action: string;
429
- params: string[];
430
- }[] | undefined;
431
- postImportActions?: {
432
- action: string;
433
- params: (string | Record<string, any>)[];
434
- }[] | undefined;
435
- }[];
436
- type?: "create" | "update" | undefined;
437
- basePath?: string | undefined;
438
- idMappings?: {
439
- sourceField: string;
440
- targetField: string;
441
- targetCollection: string;
442
- fieldToSet?: string | undefined;
443
- targetFieldToMatch?: string | undefined;
444
- }[] | undefined;
445
- createUsers?: boolean | null | undefined;
446
- updateMapping?: {
447
- originalIdField: string;
448
- targetField: string;
449
- } | undefined;
450
- }[];
451
- $id?: string | undefined;
452
- enabled?: boolean | undefined;
453
- documentSecurity?: boolean | undefined;
454
- databaseId?: string | undefined;
455
- databaseIds?: string[] | undefined;
456
- }[] | undefined;
457
- tables?: {
458
- attributes: ({
459
- key: string;
460
- required: boolean;
461
- type: "integer";
462
- array?: boolean | undefined;
463
- format?: string | undefined;
464
- status?: string | undefined;
465
- attributes?: string[] | undefined;
466
- orders?: string[] | undefined;
467
- $createdAt?: string | undefined;
468
- $updatedAt?: string | undefined;
469
- error?: string | undefined;
470
- min?: number | undefined;
471
- max?: number | undefined;
472
- xdefault?: number | null | undefined;
473
- } | {
474
- key: string;
475
- required: boolean;
476
- type: "relationship";
477
- relatedCollection: string;
478
- relationType: "oneToMany" | "manyToOne" | "oneToOne" | "manyToMany";
479
- twoWay: boolean;
480
- onDelete: "setNull" | "cascade" | "restrict";
481
- array?: boolean | undefined;
482
- format?: string | undefined;
483
- status?: string | undefined;
484
- attributes?: string[] | undefined;
485
- orders?: string[] | undefined;
486
- $createdAt?: string | undefined;
487
- $updatedAt?: string | undefined;
488
- error?: string | undefined;
489
- twoWayKey?: string | undefined;
490
- side?: "parent" | "child" | undefined;
491
- importMapping?: {
492
- originalIdField: string;
493
- targetField?: string | undefined;
494
- } | undefined;
495
- } | {
496
- key: string;
497
- required: boolean;
498
- type: "string";
499
- size: number;
500
- array?: boolean | undefined;
501
- format?: string | undefined;
502
- status?: string | undefined;
503
- attributes?: string[] | undefined;
504
- orders?: string[] | undefined;
505
- $createdAt?: string | undefined;
506
- $updatedAt?: string | undefined;
507
- error?: string | undefined;
508
- xdefault?: string | null | undefined;
509
- encrypt?: boolean | undefined;
510
- } | {
511
- key: string;
512
- required: boolean;
513
- type: "double";
514
- array?: boolean | undefined;
515
- format?: string | undefined;
516
- status?: string | undefined;
517
- attributes?: string[] | undefined;
518
- orders?: string[] | undefined;
519
- $createdAt?: string | undefined;
520
- $updatedAt?: string | undefined;
521
- error?: string | undefined;
522
- min?: number | undefined;
523
- max?: number | undefined;
524
- xdefault?: number | null | undefined;
525
- } | {
526
- key: string;
527
- required: boolean;
528
- type: "float";
529
- array?: boolean | undefined;
530
- format?: string | undefined;
531
- status?: string | undefined;
532
- attributes?: string[] | undefined;
533
- orders?: string[] | undefined;
534
- $createdAt?: string | undefined;
535
- $updatedAt?: string | undefined;
536
- error?: string | undefined;
537
- min?: number | undefined;
538
- max?: number | undefined;
539
- xdefault?: number | null | undefined;
540
- } | {
541
- key: string;
542
- required: boolean;
543
- type: "boolean";
544
- array?: boolean | undefined;
545
- format?: string | undefined;
546
- status?: string | undefined;
547
- attributes?: string[] | undefined;
548
- orders?: string[] | undefined;
549
- $createdAt?: string | undefined;
550
- $updatedAt?: string | undefined;
551
- error?: string | undefined;
552
- xdefault?: boolean | null | undefined;
553
- } | {
554
- key: string;
555
- required: boolean;
556
- type: "datetime";
557
- array?: boolean | undefined;
558
- format?: string | undefined;
559
- status?: string | undefined;
560
- attributes?: string[] | undefined;
561
- orders?: string[] | undefined;
562
- $createdAt?: string | undefined;
563
- $updatedAt?: string | undefined;
564
- error?: string | undefined;
565
- xdefault?: string | null | undefined;
566
- } | {
567
- key: string;
568
- required: boolean;
569
- type: "email";
570
- array?: boolean | undefined;
571
- format?: string | undefined;
572
- status?: string | undefined;
573
- attributes?: string[] | undefined;
574
- orders?: string[] | undefined;
575
- $createdAt?: string | undefined;
576
- $updatedAt?: string | undefined;
577
- error?: string | undefined;
578
- xdefault?: string | null | undefined;
579
- } | {
580
- key: string;
581
- required: boolean;
582
- type: "ip";
583
- array?: boolean | undefined;
584
- format?: string | undefined;
585
- status?: string | undefined;
586
- attributes?: string[] | undefined;
587
- orders?: string[] | undefined;
588
- $createdAt?: string | undefined;
589
- $updatedAt?: string | undefined;
590
- error?: string | undefined;
591
- xdefault?: string | null | undefined;
592
- } | {
593
- key: string;
594
- required: boolean;
595
- type: "url";
596
- array?: boolean | undefined;
597
- format?: string | undefined;
598
- status?: string | undefined;
599
- attributes?: string[] | undefined;
600
- orders?: string[] | undefined;
601
- $createdAt?: string | undefined;
602
- $updatedAt?: string | undefined;
603
- error?: string | undefined;
604
- xdefault?: string | null | undefined;
605
- } | {
606
- key: string;
607
- required: boolean;
608
- type: "enum";
609
- elements: string[];
610
- array?: boolean | undefined;
611
- format?: string | undefined;
612
- status?: string | undefined;
613
- attributes?: string[] | undefined;
614
- orders?: string[] | undefined;
615
- $createdAt?: string | undefined;
616
- $updatedAt?: string | undefined;
617
- error?: string | undefined;
618
- xdefault?: string | null | undefined;
619
- })[];
620
- columns: undefined;
621
- indexes: {
622
- key: string;
623
- type: "key" | "unique" | "fulltext";
624
- attributes: string[];
625
- status?: string | undefined;
626
- error?: string | undefined;
627
- orders?: string[] | undefined;
628
- }[];
629
- name: string;
630
- $permissions: {
631
- permission: string;
632
- target: string;
633
- }[];
634
- importDefs: {
635
- filePath: string;
636
- primaryKeyField: string;
637
- attributeMappings: {
638
- targetKey: string;
639
- oldKey?: string | undefined;
640
- oldKeys?: string[] | undefined;
641
- valueToSet?: any;
642
- fileData?: {
643
- name: string;
644
- path: string;
645
- } | undefined;
646
- converters?: string[] | undefined;
647
- validationActions?: {
648
- action: string;
649
- params: string[];
650
- }[] | undefined;
651
- postImportActions?: {
652
- action: string;
653
- params: (string | Record<string, any>)[];
654
- }[] | undefined;
655
- }[];
656
- type?: "create" | "update" | undefined;
657
- basePath?: string | undefined;
658
- idMappings?: {
659
- sourceField: string;
660
- targetField: string;
661
- targetCollection: string;
662
- fieldToSet?: string | undefined;
663
- targetFieldToMatch?: string | undefined;
664
- }[] | undefined;
665
- createUsers?: boolean | null | undefined;
666
- updateMapping?: {
667
- originalIdField: string;
668
- targetField: string;
669
- } | undefined;
670
- }[];
671
- $id?: string | undefined;
672
- enabled?: boolean | undefined;
673
- documentSecurity?: boolean | undefined;
674
- databaseId?: string | undefined;
675
- databaseIds?: string[] | undefined;
676
- tableId?: string | undefined;
677
- rowSecurity?: boolean | undefined;
678
- }[] | undefined;
679
- functions?: {
680
- $id: string;
681
- name: string;
682
- runtime: any;
683
- execute: string[];
684
- dirPath?: string | undefined;
685
- events?: string[] | undefined;
686
- schedule?: string | undefined;
687
- timeout?: number | undefined;
688
- enabled?: boolean | undefined;
689
- logging?: boolean | undefined;
690
- ignore?: string[] | undefined;
691
- entrypoint?: string | undefined;
692
- predeployCommands?: string[] | undefined;
693
- deployDir?: string | undefined;
694
- commands?: string | undefined;
695
- scopes?: string[] | undefined;
696
- installationId?: string | undefined;
697
- providerRepositoryId?: string | undefined;
698
- providerBranch?: string | undefined;
699
- providerSilentMode?: boolean | undefined;
700
- providerRootDirectory?: string | undefined;
701
- templateRepository?: string | undefined;
702
- templateOwner?: string | undefined;
703
- templateRootDirectory?: string | undefined;
704
- templateVersion?: string | undefined;
705
- specification?: string | undefined;
706
- }[] | undefined;
707
- schemaConfig?: {
708
- outputDirectory: string;
709
- yamlSchemaDirectory: string;
710
- importDirectory: string;
711
- collectionsDirectory: string;
712
- tablesDirectory: string;
713
- } | undefined;
714
- } | null>;
715
- write: (config: AppwriteConfig) => Promise<void>;
716
- addFunction: (func: AppwriteFunction) => Promise<void>;
717
- };
718
- /**
719
- * Determine if YAML config has session authentication configured
720
- */
721
- export declare const hasYamlSessionAuth: (configPath: string) => boolean;
722
- export {};