@neverinfamous/postgres-mcp 2.0.0 → 2.2.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 (518) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +119 -46
  3. package/dist/__tests__/benchmarks/codemode.bench.js +3 -3
  4. package/dist/__tests__/benchmarks/codemode.bench.js.map +1 -1
  5. package/dist/__tests__/benchmarks/connection-pool.bench.js +3 -3
  6. package/dist/__tests__/benchmarks/connection-pool.bench.js.map +1 -1
  7. package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts +11 -0
  8. package/dist/__tests__/benchmarks/introspection-migration.bench.d.ts.map +1 -0
  9. package/dist/__tests__/benchmarks/introspection-migration.bench.js +143 -0
  10. package/dist/__tests__/benchmarks/introspection-migration.bench.js.map +1 -0
  11. package/dist/__tests__/benchmarks/resource-prompts.bench.js +0 -64
  12. package/dist/__tests__/benchmarks/resource-prompts.bench.js.map +1 -1
  13. package/dist/__tests__/benchmarks/schema-parsing.bench.js +5 -5
  14. package/dist/__tests__/benchmarks/schema-parsing.bench.js.map +1 -1
  15. package/dist/__tests__/benchmarks/tool-filtering.bench.js +17 -8
  16. package/dist/__tests__/benchmarks/tool-filtering.bench.js.map +1 -1
  17. package/dist/__tests__/mocks/adapter.d.ts.map +1 -1
  18. package/dist/__tests__/mocks/adapter.js +2 -1
  19. package/dist/__tests__/mocks/adapter.js.map +1 -1
  20. package/dist/adapters/DatabaseAdapter.d.ts +6 -5
  21. package/dist/adapters/DatabaseAdapter.d.ts.map +1 -1
  22. package/dist/adapters/DatabaseAdapter.js +11 -20
  23. package/dist/adapters/DatabaseAdapter.js.map +1 -1
  24. package/dist/adapters/postgresql/PostgresAdapter.d.ts +5 -26
  25. package/dist/adapters/postgresql/PostgresAdapter.d.ts.map +1 -1
  26. package/dist/adapters/postgresql/PostgresAdapter.js +31 -526
  27. package/dist/adapters/postgresql/PostgresAdapter.js.map +1 -1
  28. package/dist/adapters/postgresql/prompts/index.js +1 -1
  29. package/dist/adapters/postgresql/prompts/index.js.map +1 -1
  30. package/dist/adapters/postgresql/resources/index.d.ts +1 -1
  31. package/dist/adapters/postgresql/resources/index.js +3 -3
  32. package/dist/adapters/postgresql/resources/index.js.map +1 -1
  33. package/dist/adapters/postgresql/schema-operations.d.ts +71 -0
  34. package/dist/adapters/postgresql/schema-operations.d.ts.map +1 -0
  35. package/dist/adapters/postgresql/schema-operations.js +561 -0
  36. package/dist/adapters/postgresql/schema-operations.js.map +1 -0
  37. package/dist/adapters/postgresql/schemas/admin.d.ts +4 -4
  38. package/dist/adapters/postgresql/schemas/admin.js +4 -4
  39. package/dist/adapters/postgresql/schemas/admin.js.map +1 -1
  40. package/dist/adapters/postgresql/schemas/backup.d.ts +2 -2
  41. package/dist/adapters/postgresql/schemas/backup.d.ts.map +1 -1
  42. package/dist/adapters/postgresql/schemas/backup.js +1 -3
  43. package/dist/adapters/postgresql/schemas/backup.js.map +1 -1
  44. package/dist/adapters/postgresql/schemas/core/index.d.ts +6 -0
  45. package/dist/adapters/postgresql/schemas/core/index.d.ts.map +1 -0
  46. package/dist/adapters/postgresql/schemas/core/index.js +6 -0
  47. package/dist/adapters/postgresql/schemas/core/index.js.map +1 -0
  48. package/dist/adapters/postgresql/schemas/{core.d.ts → core/queries.d.ts} +16 -171
  49. package/dist/adapters/postgresql/schemas/core/queries.d.ts.map +1 -0
  50. package/dist/adapters/postgresql/schemas/{core.js → core/queries.js} +5 -213
  51. package/dist/adapters/postgresql/schemas/core/queries.js.map +1 -0
  52. package/dist/adapters/postgresql/schemas/core/transactions.d.ts +149 -0
  53. package/dist/adapters/postgresql/schemas/core/transactions.d.ts.map +1 -0
  54. package/dist/adapters/postgresql/schemas/core/transactions.js +239 -0
  55. package/dist/adapters/postgresql/schemas/core/transactions.js.map +1 -0
  56. package/dist/adapters/postgresql/schemas/cron.d.ts +12 -12
  57. package/dist/adapters/postgresql/schemas/cron.d.ts.map +1 -1
  58. package/dist/adapters/postgresql/schemas/cron.js +38 -10
  59. package/dist/adapters/postgresql/schemas/cron.js.map +1 -1
  60. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts +222 -0
  61. package/dist/adapters/postgresql/schemas/extensions/citext.d.ts.map +1 -0
  62. package/dist/adapters/postgresql/schemas/extensions/citext.js +306 -0
  63. package/dist/adapters/postgresql/schemas/extensions/citext.js.map +1 -0
  64. package/dist/adapters/postgresql/schemas/extensions/index.d.ts +15 -0
  65. package/dist/adapters/postgresql/schemas/extensions/index.d.ts.map +1 -0
  66. package/dist/adapters/postgresql/schemas/extensions/index.js +20 -0
  67. package/dist/adapters/postgresql/schemas/extensions/index.js.map +1 -0
  68. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts +164 -0
  69. package/dist/adapters/postgresql/schemas/extensions/kcache.d.ts.map +1 -0
  70. package/dist/adapters/postgresql/schemas/extensions/kcache.js +225 -0
  71. package/dist/adapters/postgresql/schemas/extensions/kcache.js.map +1 -0
  72. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts +253 -0
  73. package/dist/adapters/postgresql/schemas/extensions/ltree.d.ts.map +1 -0
  74. package/dist/adapters/postgresql/schemas/extensions/ltree.js +430 -0
  75. package/dist/adapters/postgresql/schemas/extensions/ltree.js.map +1 -0
  76. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts +251 -0
  77. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.d.ts.map +1 -0
  78. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js +294 -0
  79. package/dist/adapters/postgresql/schemas/extensions/pgcrypto.js.map +1 -0
  80. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts +10 -0
  81. package/dist/adapters/postgresql/schemas/extensions/shared.d.ts.map +1 -0
  82. package/dist/adapters/postgresql/schemas/extensions/shared.js +15 -0
  83. package/dist/adapters/postgresql/schemas/extensions/shared.js.map +1 -0
  84. package/dist/adapters/postgresql/schemas/index.d.ts +6 -6
  85. package/dist/adapters/postgresql/schemas/index.d.ts.map +1 -1
  86. package/dist/adapters/postgresql/schemas/index.js +8 -8
  87. package/dist/adapters/postgresql/schemas/index.js.map +1 -1
  88. package/dist/adapters/postgresql/schemas/introspection.d.ts +19 -42
  89. package/dist/adapters/postgresql/schemas/introspection.d.ts.map +1 -1
  90. package/dist/adapters/postgresql/schemas/introspection.js +72 -27
  91. package/dist/adapters/postgresql/schemas/introspection.js.map +1 -1
  92. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts +270 -0
  93. package/dist/adapters/postgresql/schemas/jsonb/advanced.d.ts.map +1 -0
  94. package/dist/adapters/postgresql/schemas/jsonb/advanced.js +371 -0
  95. package/dist/adapters/postgresql/schemas/jsonb/advanced.js.map +1 -0
  96. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts +283 -0
  97. package/dist/adapters/postgresql/schemas/jsonb/basic.d.ts.map +1 -0
  98. package/dist/adapters/postgresql/schemas/jsonb/basic.js +456 -0
  99. package/dist/adapters/postgresql/schemas/jsonb/basic.js.map +1 -0
  100. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts +6 -0
  101. package/dist/adapters/postgresql/schemas/jsonb/index.d.ts.map +1 -0
  102. package/dist/adapters/postgresql/schemas/jsonb/index.js +6 -0
  103. package/dist/adapters/postgresql/schemas/jsonb/index.js.map +1 -0
  104. package/dist/adapters/postgresql/schemas/monitoring.d.ts +4 -4
  105. package/dist/adapters/postgresql/schemas/monitoring.js +2 -2
  106. package/dist/adapters/postgresql/schemas/monitoring.js.map +1 -1
  107. package/dist/adapters/postgresql/schemas/partitioning.d.ts +14 -14
  108. package/dist/adapters/postgresql/schemas/partitioning.d.ts.map +1 -1
  109. package/dist/adapters/postgresql/schemas/partitioning.js +64 -46
  110. package/dist/adapters/postgresql/schemas/partitioning.js.map +1 -1
  111. package/dist/adapters/postgresql/schemas/partman.d.ts +16 -14
  112. package/dist/adapters/postgresql/schemas/partman.d.ts.map +1 -1
  113. package/dist/adapters/postgresql/schemas/partman.js +9 -9
  114. package/dist/adapters/postgresql/schemas/partman.js.map +1 -1
  115. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts +429 -0
  116. package/dist/adapters/postgresql/schemas/postgis/advanced.d.ts.map +1 -0
  117. package/dist/adapters/postgresql/schemas/postgis/advanced.js +495 -0
  118. package/dist/adapters/postgresql/schemas/postgis/advanced.js.map +1 -0
  119. package/dist/adapters/postgresql/schemas/{postgis.d.ts → postgis/basic.d.ts} +1 -423
  120. package/dist/adapters/postgresql/schemas/postgis/basic.d.ts.map +1 -0
  121. package/dist/adapters/postgresql/schemas/{postgis.js → postgis/basic.js} +1 -486
  122. package/dist/adapters/postgresql/schemas/postgis/basic.js.map +1 -0
  123. package/dist/adapters/postgresql/schemas/postgis/index.d.ts +6 -0
  124. package/dist/adapters/postgresql/schemas/postgis/index.d.ts.map +1 -0
  125. package/dist/adapters/postgresql/schemas/postgis/index.js +6 -0
  126. package/dist/adapters/postgresql/schemas/postgis/index.js.map +1 -0
  127. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts +35 -25
  128. package/dist/adapters/postgresql/schemas/schema-mgmt.d.ts.map +1 -1
  129. package/dist/adapters/postgresql/schemas/schema-mgmt.js +57 -19
  130. package/dist/adapters/postgresql/schemas/schema-mgmt.js.map +1 -1
  131. package/dist/adapters/postgresql/schemas/stats/index.d.ts +6 -0
  132. package/dist/adapters/postgresql/schemas/stats/index.d.ts.map +1 -0
  133. package/dist/adapters/postgresql/schemas/stats/index.js +6 -0
  134. package/dist/adapters/postgresql/schemas/stats/index.js.map +1 -0
  135. package/dist/adapters/postgresql/schemas/stats/input.d.ts +260 -0
  136. package/dist/adapters/postgresql/schemas/stats/input.d.ts.map +1 -0
  137. package/dist/adapters/postgresql/schemas/{stats.js → stats/input.js} +2 -331
  138. package/dist/adapters/postgresql/schemas/stats/input.js.map +1 -0
  139. package/dist/adapters/postgresql/schemas/{stats.d.ts → stats/output.d.ts} +3 -246
  140. package/dist/adapters/postgresql/schemas/stats/output.d.ts.map +1 -0
  141. package/dist/adapters/postgresql/schemas/stats/output.js +334 -0
  142. package/dist/adapters/postgresql/schemas/stats/output.js.map +1 -0
  143. package/dist/adapters/postgresql/schemas/text-search.d.ts +18 -18
  144. package/dist/adapters/postgresql/schemas/text-search.d.ts.map +1 -1
  145. package/dist/adapters/postgresql/schemas/text-search.js +12 -27
  146. package/dist/adapters/postgresql/schemas/text-search.js.map +1 -1
  147. package/dist/adapters/postgresql/schemas/vector.d.ts +10 -10
  148. package/dist/adapters/postgresql/schemas/vector.d.ts.map +1 -1
  149. package/dist/adapters/postgresql/schemas/vector.js +9 -15
  150. package/dist/adapters/postgresql/schemas/vector.js.map +1 -1
  151. package/dist/adapters/postgresql/tools/backup/dump.d.ts.map +1 -1
  152. package/dist/adapters/postgresql/tools/backup/dump.js +95 -76
  153. package/dist/adapters/postgresql/tools/backup/dump.js.map +1 -1
  154. package/dist/adapters/postgresql/tools/backup/planning.d.ts.map +1 -1
  155. package/dist/adapters/postgresql/tools/backup/planning.js +345 -287
  156. package/dist/adapters/postgresql/tools/backup/planning.js.map +1 -1
  157. package/dist/adapters/postgresql/tools/citext/analysis.d.ts +24 -0
  158. package/dist/adapters/postgresql/tools/citext/analysis.d.ts.map +1 -0
  159. package/dist/adapters/postgresql/tools/{citext.js → citext/analysis.js} +50 -232
  160. package/dist/adapters/postgresql/tools/citext/analysis.js.map +1 -0
  161. package/dist/adapters/postgresql/tools/citext/index.d.ts +15 -0
  162. package/dist/adapters/postgresql/tools/citext/index.d.ts.map +1 -0
  163. package/dist/adapters/postgresql/tools/citext/index.js +23 -0
  164. package/dist/adapters/postgresql/tools/citext/index.js.map +1 -0
  165. package/dist/adapters/postgresql/tools/citext/setup.d.ts +16 -0
  166. package/dist/adapters/postgresql/tools/citext/setup.d.ts.map +1 -0
  167. package/dist/adapters/postgresql/tools/citext/setup.js +193 -0
  168. package/dist/adapters/postgresql/tools/citext/setup.js.map +1 -0
  169. package/dist/adapters/postgresql/tools/codemode/index.js +1 -1
  170. package/dist/adapters/postgresql/tools/codemode/index.js.map +1 -1
  171. package/dist/adapters/postgresql/tools/core/convenience.d.ts +12 -22
  172. package/dist/adapters/postgresql/tools/core/convenience.d.ts.map +1 -1
  173. package/dist/adapters/postgresql/tools/core/convenience.js +100 -210
  174. package/dist/adapters/postgresql/tools/core/convenience.js.map +1 -1
  175. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts +1 -0
  176. package/dist/adapters/postgresql/tools/core/error-helpers.d.ts.map +1 -1
  177. package/dist/adapters/postgresql/tools/core/error-helpers.js +8 -1
  178. package/dist/adapters/postgresql/tools/core/error-helpers.js.map +1 -1
  179. package/dist/adapters/postgresql/tools/core/health.d.ts.map +1 -1
  180. package/dist/adapters/postgresql/tools/core/health.js +124 -114
  181. package/dist/adapters/postgresql/tools/core/health.js.map +1 -1
  182. package/dist/adapters/postgresql/tools/core/index.d.ts +2 -1
  183. package/dist/adapters/postgresql/tools/core/index.d.ts.map +1 -1
  184. package/dist/adapters/postgresql/tools/core/index.js +3 -2
  185. package/dist/adapters/postgresql/tools/core/index.js.map +1 -1
  186. package/dist/adapters/postgresql/tools/core/indexes.d.ts.map +1 -1
  187. package/dist/adapters/postgresql/tools/core/indexes.js +151 -127
  188. package/dist/adapters/postgresql/tools/core/indexes.js.map +1 -1
  189. package/dist/adapters/postgresql/tools/core/objects.d.ts.map +1 -1
  190. package/dist/adapters/postgresql/tools/core/objects.js +186 -161
  191. package/dist/adapters/postgresql/tools/core/objects.js.map +1 -1
  192. package/dist/adapters/postgresql/tools/core/query.d.ts.map +1 -1
  193. package/dist/adapters/postgresql/tools/core/query.js +37 -25
  194. package/dist/adapters/postgresql/tools/core/query.js.map +1 -1
  195. package/dist/adapters/postgresql/tools/core/schemas.d.ts +6 -3
  196. package/dist/adapters/postgresql/tools/core/schemas.d.ts.map +1 -1
  197. package/dist/adapters/postgresql/tools/core/schemas.js +11 -2
  198. package/dist/adapters/postgresql/tools/core/schemas.js.map +1 -1
  199. package/dist/adapters/postgresql/tools/core/tables.d.ts.map +1 -1
  200. package/dist/adapters/postgresql/tools/core/tables.js +156 -129
  201. package/dist/adapters/postgresql/tools/core/tables.js.map +1 -1
  202. package/dist/adapters/postgresql/tools/core/utility.d.ts +26 -0
  203. package/dist/adapters/postgresql/tools/core/utility.d.ts.map +1 -0
  204. package/dist/adapters/postgresql/tools/core/utility.js +174 -0
  205. package/dist/adapters/postgresql/tools/core/utility.js.map +1 -0
  206. package/dist/adapters/postgresql/tools/cron.js +90 -43
  207. package/dist/adapters/postgresql/tools/cron.js.map +1 -1
  208. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts +12 -0
  209. package/dist/adapters/postgresql/tools/introspection/analysis.d.ts.map +1 -0
  210. package/dist/adapters/postgresql/tools/introspection/analysis.js +605 -0
  211. package/dist/adapters/postgresql/tools/introspection/analysis.js.map +1 -0
  212. package/dist/adapters/postgresql/tools/introspection/graph.d.ts +55 -0
  213. package/dist/adapters/postgresql/tools/introspection/graph.d.ts.map +1 -0
  214. package/dist/adapters/postgresql/tools/introspection/graph.js +621 -0
  215. package/dist/adapters/postgresql/tools/introspection/graph.js.map +1 -0
  216. package/dist/adapters/postgresql/tools/introspection/index.d.ts +21 -0
  217. package/dist/adapters/postgresql/tools/introspection/index.d.ts.map +1 -0
  218. package/dist/adapters/postgresql/tools/introspection/index.js +31 -0
  219. package/dist/adapters/postgresql/tools/introspection/index.js.map +1 -0
  220. package/dist/adapters/postgresql/tools/introspection/migration.d.ts +15 -0
  221. package/dist/adapters/postgresql/tools/introspection/migration.d.ts.map +1 -0
  222. package/dist/adapters/postgresql/tools/introspection/migration.js +575 -0
  223. package/dist/adapters/postgresql/tools/introspection/migration.js.map +1 -0
  224. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts +20 -0
  225. package/dist/adapters/postgresql/tools/jsonb/analytics.d.ts.map +1 -0
  226. package/dist/adapters/postgresql/tools/jsonb/analytics.js +367 -0
  227. package/dist/adapters/postgresql/tools/jsonb/analytics.js.map +1 -0
  228. package/dist/adapters/postgresql/tools/jsonb/index.d.ts +4 -2
  229. package/dist/adapters/postgresql/tools/jsonb/index.d.ts.map +1 -1
  230. package/dist/adapters/postgresql/tools/jsonb/index.js +8 -4
  231. package/dist/adapters/postgresql/tools/jsonb/index.js.map +1 -1
  232. package/dist/adapters/postgresql/tools/jsonb/read.d.ts +38 -0
  233. package/dist/adapters/postgresql/tools/jsonb/read.d.ts.map +1 -0
  234. package/dist/adapters/postgresql/tools/jsonb/{basic.js → read.js} +41 -482
  235. package/dist/adapters/postgresql/tools/jsonb/read.js.map +1 -0
  236. package/dist/adapters/postgresql/tools/jsonb/{advanced.d.ts → transform.d.ts} +1 -13
  237. package/dist/adapters/postgresql/tools/jsonb/transform.d.ts.map +1 -0
  238. package/dist/adapters/postgresql/tools/jsonb/{advanced.js → transform.js} +26 -357
  239. package/dist/adapters/postgresql/tools/jsonb/transform.js.map +1 -0
  240. package/dist/adapters/postgresql/tools/jsonb/write.d.ts +14 -0
  241. package/dist/adapters/postgresql/tools/jsonb/write.d.ts.map +1 -0
  242. package/dist/adapters/postgresql/tools/jsonb/write.js +468 -0
  243. package/dist/adapters/postgresql/tools/jsonb/write.js.map +1 -0
  244. package/dist/adapters/postgresql/tools/kcache.d.ts.map +1 -1
  245. package/dist/adapters/postgresql/tools/kcache.js +116 -51
  246. package/dist/adapters/postgresql/tools/kcache.js.map +1 -1
  247. package/dist/adapters/postgresql/tools/ltree.js +346 -260
  248. package/dist/adapters/postgresql/tools/ltree.js.map +1 -1
  249. package/dist/adapters/postgresql/tools/migration/index.d.ts +15 -0
  250. package/dist/adapters/postgresql/tools/migration/index.d.ts.map +1 -0
  251. package/dist/adapters/postgresql/tools/migration/index.js +23 -0
  252. package/dist/adapters/postgresql/tools/migration/index.js.map +1 -0
  253. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts +15 -0
  254. package/dist/adapters/postgresql/tools/monitoring/analysis.d.ts.map +1 -0
  255. package/dist/adapters/postgresql/tools/{monitoring.js → monitoring/analysis.js} +24 -359
  256. package/dist/adapters/postgresql/tools/monitoring/analysis.js.map +1 -0
  257. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts +17 -0
  258. package/dist/adapters/postgresql/tools/monitoring/basic.d.ts.map +1 -0
  259. package/dist/adapters/postgresql/tools/monitoring/basic.js +432 -0
  260. package/dist/adapters/postgresql/tools/monitoring/basic.js.map +1 -0
  261. package/dist/adapters/postgresql/tools/monitoring/index.d.ts +16 -0
  262. package/dist/adapters/postgresql/tools/monitoring/index.d.ts.map +1 -0
  263. package/dist/adapters/postgresql/tools/monitoring/index.js +31 -0
  264. package/dist/adapters/postgresql/tools/monitoring/index.js.map +1 -0
  265. package/dist/adapters/postgresql/tools/partitioning/index.d.ts +15 -0
  266. package/dist/adapters/postgresql/tools/partitioning/index.d.ts.map +1 -0
  267. package/dist/adapters/postgresql/tools/partitioning/index.js +23 -0
  268. package/dist/adapters/postgresql/tools/partitioning/index.js.map +1 -0
  269. package/dist/adapters/postgresql/tools/partitioning/info.d.ts +11 -0
  270. package/dist/adapters/postgresql/tools/partitioning/info.d.ts.map +1 -0
  271. package/dist/adapters/postgresql/tools/partitioning/info.js +302 -0
  272. package/dist/adapters/postgresql/tools/partitioning/info.js.map +1 -0
  273. package/dist/adapters/postgresql/tools/partitioning/management.d.ts +28 -0
  274. package/dist/adapters/postgresql/tools/partitioning/management.d.ts.map +1 -0
  275. package/dist/adapters/postgresql/tools/{partitioning.js → partitioning/management.js} +48 -307
  276. package/dist/adapters/postgresql/tools/partitioning/management.js.map +1 -0
  277. package/dist/adapters/postgresql/tools/partman/helpers.d.ts +29 -0
  278. package/dist/adapters/postgresql/tools/partman/helpers.d.ts.map +1 -0
  279. package/dist/adapters/postgresql/tools/partman/helpers.js +59 -0
  280. package/dist/adapters/postgresql/tools/partman/helpers.js.map +1 -0
  281. package/dist/adapters/postgresql/tools/partman/index.d.ts +2 -1
  282. package/dist/adapters/postgresql/tools/partman/index.d.ts.map +1 -1
  283. package/dist/adapters/postgresql/tools/partman/index.js +4 -2
  284. package/dist/adapters/postgresql/tools/partman/index.js.map +1 -1
  285. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts +20 -0
  286. package/dist/adapters/postgresql/tools/partman/maintenance.d.ts.map +1 -0
  287. package/dist/adapters/postgresql/tools/partman/maintenance.js +496 -0
  288. package/dist/adapters/postgresql/tools/partman/maintenance.js.map +1 -0
  289. package/dist/adapters/postgresql/tools/partman/management.d.ts.map +1 -1
  290. package/dist/adapters/postgresql/tools/partman/management.js +438 -383
  291. package/dist/adapters/postgresql/tools/partman/management.js.map +1 -1
  292. package/dist/adapters/postgresql/tools/partman/operations.d.ts +1 -13
  293. package/dist/adapters/postgresql/tools/partman/operations.d.ts.map +1 -1
  294. package/dist/adapters/postgresql/tools/partman/operations.js +171 -652
  295. package/dist/adapters/postgresql/tools/partman/operations.js.map +1 -1
  296. package/dist/adapters/postgresql/tools/performance/analysis.d.ts.map +1 -1
  297. package/dist/adapters/postgresql/tools/performance/analysis.js +69 -42
  298. package/dist/adapters/postgresql/tools/performance/analysis.js.map +1 -1
  299. package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts +18 -0
  300. package/dist/adapters/postgresql/tools/performance/anomaly-detection.d.ts.map +1 -0
  301. package/dist/adapters/postgresql/tools/performance/anomaly-detection.js +533 -0
  302. package/dist/adapters/postgresql/tools/performance/anomaly-detection.js.map +1 -0
  303. package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts +11 -0
  304. package/dist/adapters/postgresql/tools/performance/diagnostics.d.ts.map +1 -0
  305. package/dist/adapters/postgresql/tools/performance/diagnostics.js +332 -0
  306. package/dist/adapters/postgresql/tools/performance/diagnostics.js.map +1 -0
  307. package/dist/adapters/postgresql/tools/performance/index.d.ts +1 -1
  308. package/dist/adapters/postgresql/tools/performance/index.d.ts.map +1 -1
  309. package/dist/adapters/postgresql/tools/performance/index.js +7 -1
  310. package/dist/adapters/postgresql/tools/performance/index.js.map +1 -1
  311. package/dist/adapters/postgresql/tools/performance/monitoring.d.ts.map +1 -1
  312. package/dist/adapters/postgresql/tools/performance/monitoring.js +80 -55
  313. package/dist/adapters/postgresql/tools/performance/monitoring.js.map +1 -1
  314. package/dist/adapters/postgresql/tools/performance/optimization.d.ts.map +1 -1
  315. package/dist/adapters/postgresql/tools/performance/optimization.js +18 -11
  316. package/dist/adapters/postgresql/tools/performance/optimization.js.map +1 -1
  317. package/dist/adapters/postgresql/tools/performance/stats.d.ts.map +1 -1
  318. package/dist/adapters/postgresql/tools/performance/stats.js +439 -318
  319. package/dist/adapters/postgresql/tools/performance/stats.js.map +1 -1
  320. package/dist/adapters/postgresql/tools/pgcrypto.d.ts.map +1 -1
  321. package/dist/adapters/postgresql/tools/pgcrypto.js +45 -77
  322. package/dist/adapters/postgresql/tools/pgcrypto.js.map +1 -1
  323. package/dist/adapters/postgresql/tools/postgis/basic.d.ts.map +1 -1
  324. package/dist/adapters/postgresql/tools/postgis/basic.js +121 -93
  325. package/dist/adapters/postgresql/tools/postgis/basic.js.map +1 -1
  326. package/dist/adapters/postgresql/tools/schema/index.d.ts +16 -0
  327. package/dist/adapters/postgresql/tools/schema/index.d.ts.map +1 -0
  328. package/dist/adapters/postgresql/tools/schema/index.js +32 -0
  329. package/dist/adapters/postgresql/tools/schema/index.js.map +1 -0
  330. package/dist/adapters/postgresql/tools/schema/objects.d.ts +15 -0
  331. package/dist/adapters/postgresql/tools/schema/objects.d.ts.map +1 -0
  332. package/dist/adapters/postgresql/tools/schema/objects.js +378 -0
  333. package/dist/adapters/postgresql/tools/schema/objects.js.map +1 -0
  334. package/dist/adapters/postgresql/tools/schema/views.d.ts +15 -0
  335. package/dist/adapters/postgresql/tools/schema/views.d.ts.map +1 -0
  336. package/dist/adapters/postgresql/tools/{schema.js → schema/views.js} +64 -386
  337. package/dist/adapters/postgresql/tools/schema/views.js.map +1 -0
  338. package/dist/adapters/postgresql/tools/stats/advanced.d.ts.map +1 -1
  339. package/dist/adapters/postgresql/tools/stats/advanced.js +1 -218
  340. package/dist/adapters/postgresql/tools/stats/advanced.js.map +1 -1
  341. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts +33 -0
  342. package/dist/adapters/postgresql/tools/stats/math-utils.d.ts.map +1 -0
  343. package/dist/adapters/postgresql/tools/stats/math-utils.js +225 -0
  344. package/dist/adapters/postgresql/tools/stats/math-utils.js.map +1 -0
  345. package/dist/adapters/postgresql/tools/text/index.d.ts +16 -0
  346. package/dist/adapters/postgresql/tools/text/index.d.ts.map +1 -0
  347. package/dist/adapters/postgresql/tools/text/index.js +33 -0
  348. package/dist/adapters/postgresql/tools/text/index.js.map +1 -0
  349. package/dist/adapters/postgresql/tools/text/matching.d.ts +17 -0
  350. package/dist/adapters/postgresql/tools/text/matching.d.ts.map +1 -0
  351. package/dist/adapters/postgresql/tools/text/matching.js +565 -0
  352. package/dist/adapters/postgresql/tools/text/matching.js.map +1 -0
  353. package/dist/adapters/postgresql/tools/text/search.d.ts +17 -0
  354. package/dist/adapters/postgresql/tools/text/search.d.ts.map +1 -0
  355. package/dist/adapters/postgresql/tools/text/search.js +653 -0
  356. package/dist/adapters/postgresql/tools/text/search.js.map +1 -0
  357. package/dist/adapters/postgresql/tools/transactions.d.ts.map +1 -1
  358. package/dist/adapters/postgresql/tools/transactions.js +11 -27
  359. package/dist/adapters/postgresql/tools/transactions.js.map +1 -1
  360. package/dist/adapters/postgresql/tools/vector/{basic.d.ts → data.d.ts} +10 -8
  361. package/dist/adapters/postgresql/tools/vector/data.d.ts.map +1 -0
  362. package/dist/adapters/postgresql/tools/vector/data.js +540 -0
  363. package/dist/adapters/postgresql/tools/vector/data.js.map +1 -0
  364. package/dist/adapters/postgresql/tools/vector/index.d.ts.map +1 -1
  365. package/dist/adapters/postgresql/tools/vector/index.js +6 -2
  366. package/dist/adapters/postgresql/tools/vector/index.js.map +1 -1
  367. package/dist/adapters/postgresql/tools/vector/management.d.ts +11 -0
  368. package/dist/adapters/postgresql/tools/vector/management.d.ts.map +1 -0
  369. package/dist/adapters/postgresql/tools/vector/management.js +425 -0
  370. package/dist/adapters/postgresql/tools/vector/management.js.map +1 -0
  371. package/dist/adapters/postgresql/tools/vector/query.d.ts +14 -0
  372. package/dist/adapters/postgresql/tools/vector/query.d.ts.map +1 -0
  373. package/dist/adapters/postgresql/tools/vector/query.js +767 -0
  374. package/dist/adapters/postgresql/tools/vector/query.js.map +1 -0
  375. package/dist/adapters/postgresql/tools/vector/{advanced.d.ts → search-advanced.d.ts} +4 -5
  376. package/dist/adapters/postgresql/tools/vector/search-advanced.d.ts.map +1 -0
  377. package/dist/adapters/postgresql/tools/vector/search-advanced.js +626 -0
  378. package/dist/adapters/postgresql/tools/vector/search-advanced.js.map +1 -0
  379. package/dist/auth/scopes.d.ts.map +1 -1
  380. package/dist/auth/scopes.js +3 -1
  381. package/dist/auth/scopes.js.map +1 -1
  382. package/dist/cli/args.d.ts +3 -2
  383. package/dist/cli/args.d.ts.map +1 -1
  384. package/dist/cli/args.js +4 -3
  385. package/dist/cli/args.js.map +1 -1
  386. package/dist/cli.js +16 -4
  387. package/dist/cli.js.map +1 -1
  388. package/dist/codemode/api/aliases.d.ts +14 -0
  389. package/dist/codemode/api/aliases.d.ts.map +1 -0
  390. package/dist/codemode/api/aliases.js +503 -0
  391. package/dist/codemode/api/aliases.js.map +1 -0
  392. package/dist/codemode/api/group-api.d.ts +23 -0
  393. package/dist/codemode/api/group-api.d.ts.map +1 -0
  394. package/dist/codemode/api/group-api.js +179 -0
  395. package/dist/codemode/api/group-api.js.map +1 -0
  396. package/dist/codemode/{api.d.ts → api/index.d.ts} +5 -4
  397. package/dist/codemode/api/index.d.ts.map +1 -0
  398. package/dist/codemode/api/index.js +195 -0
  399. package/dist/codemode/api/index.js.map +1 -0
  400. package/dist/codemode/api/maps.d.ts +47 -0
  401. package/dist/codemode/api/maps.d.ts.map +1 -0
  402. package/dist/codemode/api/maps.js +529 -0
  403. package/dist/codemode/api/maps.js.map +1 -0
  404. package/dist/codemode/api/normalize.d.ts +13 -0
  405. package/dist/codemode/api/normalize.d.ts.map +1 -0
  406. package/dist/codemode/api/normalize.js +120 -0
  407. package/dist/codemode/api/normalize.js.map +1 -0
  408. package/dist/codemode/index.d.ts +1 -1
  409. package/dist/codemode/index.d.ts.map +1 -1
  410. package/dist/codemode/index.js +1 -1
  411. package/dist/codemode/index.js.map +1 -1
  412. package/dist/codemode/sandbox.d.ts.map +1 -1
  413. package/dist/codemode/sandbox.js +8 -25
  414. package/dist/codemode/sandbox.js.map +1 -1
  415. package/dist/filtering/ToolConstants.d.ts +11 -11
  416. package/dist/filtering/ToolConstants.d.ts.map +1 -1
  417. package/dist/filtering/ToolConstants.js +28 -15
  418. package/dist/filtering/ToolConstants.js.map +1 -1
  419. package/dist/filtering/ToolFilter.d.ts +0 -32
  420. package/dist/filtering/ToolFilter.d.ts.map +1 -1
  421. package/dist/filtering/ToolFilter.js +0 -43
  422. package/dist/filtering/ToolFilter.js.map +1 -1
  423. package/dist/server/McpServer.d.ts +1 -1
  424. package/dist/server/McpServer.d.ts.map +1 -1
  425. package/dist/server/McpServer.js +1 -2
  426. package/dist/server/McpServer.js.map +1 -1
  427. package/dist/transports/http.d.ts +55 -10
  428. package/dist/transports/http.d.ts.map +1 -1
  429. package/dist/transports/http.js +301 -50
  430. package/dist/transports/http.js.map +1 -1
  431. package/dist/types/filtering.d.ts +1 -1
  432. package/dist/types/filtering.d.ts.map +1 -1
  433. package/dist/types/index.d.ts +2 -2
  434. package/dist/types/index.d.ts.map +1 -1
  435. package/dist/types/index.js.map +1 -1
  436. package/dist/types/mcp.d.ts +0 -21
  437. package/dist/types/mcp.d.ts.map +1 -1
  438. package/dist/types/schema.d.ts +0 -79
  439. package/dist/types/schema.d.ts.map +1 -1
  440. package/dist/utils/fts-config.d.ts +0 -6
  441. package/dist/utils/fts-config.d.ts.map +1 -1
  442. package/dist/utils/fts-config.js +1 -1
  443. package/dist/utils/fts-config.js.map +1 -1
  444. package/dist/utils/icons.d.ts.map +1 -1
  445. package/dist/utils/icons.js +5 -0
  446. package/dist/utils/icons.js.map +1 -1
  447. package/dist/utils/identifiers.d.ts.map +1 -1
  448. package/dist/utils/identifiers.js +6 -6
  449. package/dist/utils/identifiers.js.map +1 -1
  450. package/dist/utils/logger.d.ts +6 -6
  451. package/dist/utils/logger.d.ts.map +1 -1
  452. package/dist/utils/logger.js +18 -15
  453. package/dist/utils/logger.js.map +1 -1
  454. package/dist/utils/progress-utils.d.ts +3 -14
  455. package/dist/utils/progress-utils.d.ts.map +1 -1
  456. package/dist/utils/progress-utils.js +2 -21
  457. package/dist/utils/progress-utils.js.map +1 -1
  458. package/dist/utils/version.d.ts +9 -0
  459. package/dist/utils/version.d.ts.map +1 -0
  460. package/dist/utils/version.js +12 -0
  461. package/dist/utils/version.js.map +1 -0
  462. package/dist/utils/where-clause.d.ts +4 -0
  463. package/dist/utils/where-clause.d.ts.map +1 -1
  464. package/dist/utils/where-clause.js +16 -0
  465. package/dist/utils/where-clause.js.map +1 -1
  466. package/package.json +6 -4
  467. package/dist/adapters/postgresql/schemas/core.d.ts.map +0 -1
  468. package/dist/adapters/postgresql/schemas/core.js.map +0 -1
  469. package/dist/adapters/postgresql/schemas/extensions.d.ts +0 -852
  470. package/dist/adapters/postgresql/schemas/extensions.d.ts.map +0 -1
  471. package/dist/adapters/postgresql/schemas/extensions.js +0 -1202
  472. package/dist/adapters/postgresql/schemas/extensions.js.map +0 -1
  473. package/dist/adapters/postgresql/schemas/jsonb.d.ts +0 -541
  474. package/dist/adapters/postgresql/schemas/jsonb.d.ts.map +0 -1
  475. package/dist/adapters/postgresql/schemas/jsonb.js +0 -814
  476. package/dist/adapters/postgresql/schemas/jsonb.js.map +0 -1
  477. package/dist/adapters/postgresql/schemas/postgis.d.ts.map +0 -1
  478. package/dist/adapters/postgresql/schemas/postgis.js.map +0 -1
  479. package/dist/adapters/postgresql/schemas/stats.d.ts.map +0 -1
  480. package/dist/adapters/postgresql/schemas/stats.js.map +0 -1
  481. package/dist/adapters/postgresql/tools/citext.d.ts +0 -18
  482. package/dist/adapters/postgresql/tools/citext.d.ts.map +0 -1
  483. package/dist/adapters/postgresql/tools/citext.js.map +0 -1
  484. package/dist/adapters/postgresql/tools/introspection.d.ts +0 -15
  485. package/dist/adapters/postgresql/tools/introspection.d.ts.map +0 -1
  486. package/dist/adapters/postgresql/tools/introspection.js +0 -1682
  487. package/dist/adapters/postgresql/tools/introspection.js.map +0 -1
  488. package/dist/adapters/postgresql/tools/jsonb/advanced.d.ts.map +0 -1
  489. package/dist/adapters/postgresql/tools/jsonb/advanced.js.map +0 -1
  490. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts +0 -20
  491. package/dist/adapters/postgresql/tools/jsonb/basic.d.ts.map +0 -1
  492. package/dist/adapters/postgresql/tools/jsonb/basic.js.map +0 -1
  493. package/dist/adapters/postgresql/tools/monitoring.d.ts +0 -13
  494. package/dist/adapters/postgresql/tools/monitoring.d.ts.map +0 -1
  495. package/dist/adapters/postgresql/tools/monitoring.js.map +0 -1
  496. package/dist/adapters/postgresql/tools/partitioning.d.ts +0 -13
  497. package/dist/adapters/postgresql/tools/partitioning.d.ts.map +0 -1
  498. package/dist/adapters/postgresql/tools/partitioning.js.map +0 -1
  499. package/dist/adapters/postgresql/tools/schema.d.ts +0 -13
  500. package/dist/adapters/postgresql/tools/schema.d.ts.map +0 -1
  501. package/dist/adapters/postgresql/tools/schema.js.map +0 -1
  502. package/dist/adapters/postgresql/tools/text.d.ts +0 -13
  503. package/dist/adapters/postgresql/tools/text.d.ts.map +0 -1
  504. package/dist/adapters/postgresql/tools/text.js +0 -1082
  505. package/dist/adapters/postgresql/tools/text.js.map +0 -1
  506. package/dist/adapters/postgresql/tools/vector/advanced.d.ts.map +0 -1
  507. package/dist/adapters/postgresql/tools/vector/advanced.js +0 -958
  508. package/dist/adapters/postgresql/tools/vector/advanced.js.map +0 -1
  509. package/dist/adapters/postgresql/tools/vector/basic.d.ts.map +0 -1
  510. package/dist/adapters/postgresql/tools/vector/basic.js +0 -1165
  511. package/dist/adapters/postgresql/tools/vector/basic.js.map +0 -1
  512. package/dist/codemode/api.d.ts.map +0 -1
  513. package/dist/codemode/api.js +0 -1544
  514. package/dist/codemode/api.js.map +0 -1
  515. package/dist/utils/promptGenerator.d.ts +0 -20
  516. package/dist/utils/promptGenerator.d.ts.map +0 -1
  517. package/dist/utils/promptGenerator.js +0 -81
  518. package/dist/utils/promptGenerator.js.map +0 -1
@@ -0,0 +1,270 @@
1
+ /**
2
+ * postgres-mcp - JSONB Advanced Schemas
3
+ *
4
+ * Schemas for advanced JSONB operations: normalize, stats, index suggest, security scan.
5
+ * Also includes all JSONB output schemas.
6
+ */
7
+ import { z } from "zod";
8
+ export declare const JsonbNormalizeSchemaBase: z.ZodObject<{
9
+ table: z.ZodOptional<z.ZodString>;
10
+ tableName: z.ZodOptional<z.ZodString>;
11
+ column: z.ZodOptional<z.ZodString>;
12
+ col: z.ZodOptional<z.ZodString>;
13
+ mode: z.ZodOptional<z.ZodEnum<{
14
+ keys: "keys";
15
+ array: "array";
16
+ pairs: "pairs";
17
+ flatten: "flatten";
18
+ }>>;
19
+ where: z.ZodOptional<z.ZodString>;
20
+ filter: z.ZodOptional<z.ZodString>;
21
+ idColumn: z.ZodOptional<z.ZodString>;
22
+ schema: z.ZodOptional<z.ZodString>;
23
+ }, z.core.$strip>;
24
+ export declare const JsonbNormalizeSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
25
+ table: z.ZodOptional<z.ZodString>;
26
+ tableName: z.ZodOptional<z.ZodString>;
27
+ column: z.ZodOptional<z.ZodString>;
28
+ col: z.ZodOptional<z.ZodString>;
29
+ mode: z.ZodOptional<z.ZodEnum<{
30
+ keys: "keys";
31
+ array: "array";
32
+ pairs: "pairs";
33
+ flatten: "flatten";
34
+ }>>;
35
+ where: z.ZodOptional<z.ZodString>;
36
+ filter: z.ZodOptional<z.ZodString>;
37
+ idColumn: z.ZodOptional<z.ZodString>;
38
+ schema: z.ZodOptional<z.ZodString>;
39
+ }, z.core.$strip>>;
40
+ export declare const JsonbStatsSchemaBase: z.ZodObject<{
41
+ table: z.ZodOptional<z.ZodString>;
42
+ tableName: z.ZodOptional<z.ZodString>;
43
+ column: z.ZodOptional<z.ZodString>;
44
+ col: z.ZodOptional<z.ZodString>;
45
+ sampleSize: z.ZodOptional<z.ZodAny>;
46
+ where: z.ZodOptional<z.ZodString>;
47
+ filter: z.ZodOptional<z.ZodString>;
48
+ topKeysLimit: z.ZodOptional<z.ZodAny>;
49
+ schema: z.ZodOptional<z.ZodString>;
50
+ }, z.core.$strip>;
51
+ export declare const JsonbStatsSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
52
+ table: z.ZodOptional<z.ZodString>;
53
+ tableName: z.ZodOptional<z.ZodString>;
54
+ column: z.ZodOptional<z.ZodString>;
55
+ col: z.ZodOptional<z.ZodString>;
56
+ sampleSize: z.ZodOptional<z.ZodAny>;
57
+ where: z.ZodOptional<z.ZodString>;
58
+ filter: z.ZodOptional<z.ZodString>;
59
+ topKeysLimit: z.ZodOptional<z.ZodAny>;
60
+ schema: z.ZodOptional<z.ZodString>;
61
+ }, z.core.$strip>>;
62
+ export declare const JsonbIndexSuggestSchemaBase: z.ZodObject<{
63
+ table: z.ZodOptional<z.ZodString>;
64
+ tableName: z.ZodOptional<z.ZodString>;
65
+ column: z.ZodOptional<z.ZodString>;
66
+ col: z.ZodOptional<z.ZodString>;
67
+ sampleSize: z.ZodOptional<z.ZodAny>;
68
+ where: z.ZodOptional<z.ZodString>;
69
+ filter: z.ZodOptional<z.ZodString>;
70
+ schema: z.ZodOptional<z.ZodString>;
71
+ }, z.core.$strip>;
72
+ export declare const JsonbIndexSuggestSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
73
+ table: z.ZodOptional<z.ZodString>;
74
+ tableName: z.ZodOptional<z.ZodString>;
75
+ column: z.ZodOptional<z.ZodString>;
76
+ col: z.ZodOptional<z.ZodString>;
77
+ sampleSize: z.ZodOptional<z.ZodAny>;
78
+ where: z.ZodOptional<z.ZodString>;
79
+ filter: z.ZodOptional<z.ZodString>;
80
+ schema: z.ZodOptional<z.ZodString>;
81
+ }, z.core.$strip>>;
82
+ export declare const JsonbSecurityScanSchemaBase: z.ZodObject<{
83
+ table: z.ZodOptional<z.ZodString>;
84
+ tableName: z.ZodOptional<z.ZodString>;
85
+ column: z.ZodOptional<z.ZodString>;
86
+ col: z.ZodOptional<z.ZodString>;
87
+ sampleSize: z.ZodOptional<z.ZodAny>;
88
+ where: z.ZodOptional<z.ZodString>;
89
+ filter: z.ZodOptional<z.ZodString>;
90
+ schema: z.ZodOptional<z.ZodString>;
91
+ }, z.core.$strip>;
92
+ export declare const JsonbSecurityScanSchema: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodObject<{
93
+ table: z.ZodOptional<z.ZodString>;
94
+ tableName: z.ZodOptional<z.ZodString>;
95
+ column: z.ZodOptional<z.ZodString>;
96
+ col: z.ZodOptional<z.ZodString>;
97
+ sampleSize: z.ZodOptional<z.ZodAny>;
98
+ where: z.ZodOptional<z.ZodString>;
99
+ filter: z.ZodOptional<z.ZodString>;
100
+ schema: z.ZodOptional<z.ZodString>;
101
+ }, z.core.$strip>>;
102
+ export declare const JsonbExtractOutputSchema: z.ZodObject<{
103
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
104
+ count: z.ZodOptional<z.ZodNumber>;
105
+ hint: z.ZodOptional<z.ZodString>;
106
+ success: z.ZodOptional<z.ZodBoolean>;
107
+ error: z.ZodOptional<z.ZodString>;
108
+ }, z.core.$strip>;
109
+ export declare const JsonbSetOutputSchema: z.ZodObject<{
110
+ rowsAffected: z.ZodOptional<z.ZodNumber>;
111
+ hint: z.ZodOptional<z.ZodString>;
112
+ success: z.ZodOptional<z.ZodBoolean>;
113
+ error: z.ZodOptional<z.ZodString>;
114
+ }, z.core.$strip>;
115
+ export declare const JsonbInsertOutputSchema: z.ZodObject<{
116
+ rowsAffected: z.ZodOptional<z.ZodNumber>;
117
+ success: z.ZodOptional<z.ZodBoolean>;
118
+ error: z.ZodOptional<z.ZodString>;
119
+ }, z.core.$strip>;
120
+ export declare const JsonbDeleteOutputSchema: z.ZodObject<{
121
+ rowsAffected: z.ZodOptional<z.ZodNumber>;
122
+ hint: z.ZodOptional<z.ZodString>;
123
+ success: z.ZodOptional<z.ZodBoolean>;
124
+ error: z.ZodOptional<z.ZodString>;
125
+ }, z.core.$strip>;
126
+ export declare const JsonbContainsOutputSchema: z.ZodObject<{
127
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
128
+ count: z.ZodOptional<z.ZodNumber>;
129
+ truncated: z.ZodOptional<z.ZodBoolean>;
130
+ totalCount: z.ZodOptional<z.ZodNumber>;
131
+ warning: z.ZodOptional<z.ZodString>;
132
+ success: z.ZodOptional<z.ZodBoolean>;
133
+ error: z.ZodOptional<z.ZodString>;
134
+ }, z.core.$strip>;
135
+ export declare const JsonbPathQueryOutputSchema: z.ZodObject<{
136
+ results: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
137
+ count: z.ZodOptional<z.ZodNumber>;
138
+ truncated: z.ZodOptional<z.ZodBoolean>;
139
+ totalCount: z.ZodOptional<z.ZodNumber>;
140
+ success: z.ZodOptional<z.ZodBoolean>;
141
+ error: z.ZodOptional<z.ZodString>;
142
+ }, z.core.$strip>;
143
+ export declare const JsonbAggOutputSchema: z.ZodObject<{
144
+ result: z.ZodOptional<z.ZodUnknown>;
145
+ count: z.ZodOptional<z.ZodNumber>;
146
+ grouped: z.ZodOptional<z.ZodBoolean>;
147
+ hint: z.ZodOptional<z.ZodString>;
148
+ success: z.ZodOptional<z.ZodBoolean>;
149
+ error: z.ZodOptional<z.ZodString>;
150
+ }, z.core.$strip>;
151
+ export declare const JsonbObjectOutputSchema: z.ZodObject<{
152
+ object: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
153
+ success: z.ZodOptional<z.ZodBoolean>;
154
+ error: z.ZodOptional<z.ZodString>;
155
+ }, z.core.$strip>;
156
+ export declare const JsonbArrayOutputSchema: z.ZodObject<{
157
+ array: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
158
+ success: z.ZodOptional<z.ZodBoolean>;
159
+ error: z.ZodOptional<z.ZodString>;
160
+ }, z.core.$strip>;
161
+ export declare const JsonbKeysOutputSchema: z.ZodObject<{
162
+ keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
163
+ count: z.ZodOptional<z.ZodNumber>;
164
+ hint: z.ZodOptional<z.ZodString>;
165
+ success: z.ZodOptional<z.ZodBoolean>;
166
+ error: z.ZodOptional<z.ZodString>;
167
+ }, z.core.$strip>;
168
+ export declare const JsonbStripNullsOutputSchema: z.ZodObject<{
169
+ rowsAffected: z.ZodOptional<z.ZodNumber>;
170
+ preview: z.ZodOptional<z.ZodBoolean>;
171
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
172
+ count: z.ZodOptional<z.ZodNumber>;
173
+ hint: z.ZodOptional<z.ZodString>;
174
+ success: z.ZodOptional<z.ZodBoolean>;
175
+ error: z.ZodOptional<z.ZodString>;
176
+ }, z.core.$strip>;
177
+ export declare const JsonbTypeofOutputSchema: z.ZodObject<{
178
+ types: z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodString>>>;
179
+ count: z.ZodOptional<z.ZodNumber>;
180
+ columnNull: z.ZodOptional<z.ZodBoolean>;
181
+ hint: z.ZodOptional<z.ZodString>;
182
+ success: z.ZodOptional<z.ZodBoolean>;
183
+ error: z.ZodOptional<z.ZodString>;
184
+ }, z.core.$strip>;
185
+ export declare const JsonbValidatePathOutputSchema: z.ZodObject<{
186
+ valid: z.ZodOptional<z.ZodBoolean>;
187
+ path: z.ZodOptional<z.ZodString>;
188
+ error: z.ZodOptional<z.ZodString>;
189
+ results: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
190
+ varsUsed: z.ZodOptional<z.ZodBoolean>;
191
+ success: z.ZodOptional<z.ZodBoolean>;
192
+ }, z.core.$strip>;
193
+ export declare const JsonbMergeOutputSchema: z.ZodObject<{
194
+ merged: z.ZodOptional<z.ZodUnknown>;
195
+ deep: z.ZodOptional<z.ZodBoolean>;
196
+ mergeArrays: z.ZodOptional<z.ZodBoolean>;
197
+ success: z.ZodOptional<z.ZodBoolean>;
198
+ error: z.ZodOptional<z.ZodString>;
199
+ }, z.core.$strip>;
200
+ export declare const JsonbNormalizeOutputSchema: z.ZodObject<{
201
+ rows: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
202
+ count: z.ZodOptional<z.ZodNumber>;
203
+ mode: z.ZodOptional<z.ZodString>;
204
+ hint: z.ZodOptional<z.ZodString>;
205
+ success: z.ZodOptional<z.ZodBoolean>;
206
+ error: z.ZodOptional<z.ZodString>;
207
+ }, z.core.$strip>;
208
+ export declare const JsonbDiffOutputSchema: z.ZodObject<{
209
+ differences: z.ZodOptional<z.ZodArray<z.ZodObject<{
210
+ key: z.ZodString;
211
+ status: z.ZodEnum<{
212
+ added: "added";
213
+ removed: "removed";
214
+ modified: "modified";
215
+ }>;
216
+ value1: z.ZodOptional<z.ZodUnknown>;
217
+ value2: z.ZodOptional<z.ZodUnknown>;
218
+ }, z.core.$strip>>>;
219
+ hasDifferences: z.ZodOptional<z.ZodBoolean>;
220
+ comparison: z.ZodOptional<z.ZodString>;
221
+ hint: z.ZodOptional<z.ZodString>;
222
+ success: z.ZodOptional<z.ZodBoolean>;
223
+ error: z.ZodOptional<z.ZodString>;
224
+ }, z.core.$strip>;
225
+ export declare const JsonbIndexSuggestOutputSchema: z.ZodObject<{
226
+ recommendations: z.ZodOptional<z.ZodArray<z.ZodString>>;
227
+ analyzed: z.ZodOptional<z.ZodObject<{
228
+ topKeys: z.ZodOptional<z.ZodNumber>;
229
+ existingIndexes: z.ZodOptional<z.ZodNumber>;
230
+ }, z.core.$strip>>;
231
+ success: z.ZodOptional<z.ZodBoolean>;
232
+ error: z.ZodOptional<z.ZodString>;
233
+ }, z.core.$strip>;
234
+ export declare const JsonbSecurityScanOutputSchema: z.ZodObject<{
235
+ issues: z.ZodOptional<z.ZodArray<z.ZodObject<{
236
+ type: z.ZodString;
237
+ key: z.ZodOptional<z.ZodString>;
238
+ count: z.ZodOptional<z.ZodNumber>;
239
+ severity: z.ZodOptional<z.ZodString>;
240
+ }, z.core.$strip>>>;
241
+ riskLevel: z.ZodOptional<z.ZodEnum<{
242
+ low: "low";
243
+ medium: "medium";
244
+ high: "high";
245
+ }>>;
246
+ scannedRows: z.ZodOptional<z.ZodNumber>;
247
+ success: z.ZodOptional<z.ZodBoolean>;
248
+ error: z.ZodOptional<z.ZodString>;
249
+ }, z.core.$strip>;
250
+ export declare const JsonbStatsOutputSchema: z.ZodObject<{
251
+ basics: z.ZodOptional<z.ZodObject<{
252
+ total_rows: z.ZodNumber;
253
+ non_null_count: z.ZodOptional<z.ZodNumber>;
254
+ avg_size_bytes: z.ZodOptional<z.ZodNumber>;
255
+ max_size_bytes: z.ZodOptional<z.ZodNumber>;
256
+ }, z.core.$strip>>;
257
+ topKeys: z.ZodOptional<z.ZodArray<z.ZodObject<{
258
+ key: z.ZodString;
259
+ frequency: z.ZodNumber;
260
+ }, z.core.$strip>>>;
261
+ typeDistribution: z.ZodOptional<z.ZodArray<z.ZodObject<{
262
+ type: z.ZodNullable<z.ZodString>;
263
+ count: z.ZodNumber;
264
+ }, z.core.$strip>>>;
265
+ sqlNullCount: z.ZodOptional<z.ZodNumber>;
266
+ hint: z.ZodOptional<z.ZodString>;
267
+ success: z.ZodOptional<z.ZodBoolean>;
268
+ error: z.ZodOptional<z.ZodString>;
269
+ }, z.core.$strip>;
270
+ //# sourceMappingURL=advanced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advanced.d.ts","sourceRoot":"","sources":["../../../../../src/adapters/postgresql/schemas/jsonb/advanced.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;iBAoBnC,CAAC;AAWH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;kBAGhC,CAAC;AAIF,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAgB/B,CAAC;AAWH,eAAO,MAAM,gBAAgB;;;;;;;;;;kBAG5B,CAAC;AAIF,eAAO,MAAM,2BAA2B;;;;;;;;;iBAYtC,CAAC;AAWH,eAAO,MAAM,uBAAuB;;;;;;;;;kBAGnC,CAAC;AAIF,eAAO,MAAM,2BAA2B;;;;;;;;;iBAYtC,CAAC;AAWH,eAAO,MAAM,uBAAuB;;;;;;;;;kBAGnC,CAAC;AAKF,eAAO,MAAM,wBAAwB;;;;;;iBASnC,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;iBAK/B,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;iBAIlC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;iBAKlC,CAAC;AAGH,eAAO,MAAM,yBAAyB;;;;;;;;iBAoBpC,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;iBAarC,CAAC;AAGH,eAAO,MAAM,oBAAoB;;;;;;;iBAU/B,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;iBAOlC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;iBAIjC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;iBAShC,CAAC;AAIH,eAAO,MAAM,2BAA2B;;;;;;;;iBAatC,CAAC;AAGH,eAAO,MAAM,uBAAuB;;;;;;;iBAalC,CAAC;AAKH,eAAO,MAAM,6BAA6B;;;;;;;iBAaxC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;iBASjC,CAAC;AAGH,eAAO,MAAM,0BAA0B;;;;;;;iBAUrC,CAAC;AAGH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;iBAsBhC,CAAC;AAGH,eAAO,MAAM,6BAA6B;;;;;;;;iBAcxC,CAAC;AAGH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;iBAmBxC,CAAC;AAGH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;iBAsCjC,CAAC"}
@@ -0,0 +1,371 @@
1
+ /**
2
+ * postgres-mcp - JSONB Advanced Schemas
3
+ *
4
+ * Schemas for advanced JSONB operations: normalize, stats, index suggest, security scan.
5
+ * Also includes all JSONB output schemas.
6
+ */
7
+ import { z } from "zod";
8
+ import { preprocessJsonbParams } from "./basic.js";
9
+ // ============== NORMALIZE SCHEMA ==============
10
+ // Base schema (for MCP inputSchema visibility - no preprocess)
11
+ export const JsonbNormalizeSchemaBase = z.object({
12
+ table: z.string().optional().describe("Table name"),
13
+ tableName: z.string().optional().describe("Table name (alias for table)"),
14
+ column: z.string().optional().describe("JSONB column"),
15
+ col: z.string().optional().describe("JSONB column (alias for column)"),
16
+ mode: z
17
+ .enum(["keys", "array", "pairs", "flatten"])
18
+ .optional()
19
+ .describe("keys: text values (all converted to string). pairs: JSONB types preserved. array: for arrays. flatten: recursive."),
20
+ where: z.string().optional().describe("WHERE clause"),
21
+ filter: z.string().optional().describe("WHERE clause (alias for where)"),
22
+ idColumn: z
23
+ .string()
24
+ .optional()
25
+ .describe('Column to use for row identification (e.g., "id"). If omitted, defaults to "id" if it exists, else uses ctid.'),
26
+ schema: z.string().optional().describe("Schema name (default: public)"),
27
+ });
28
+ // Internal schema with refine (for handler validation)
29
+ const JsonbNormalizeSchemaRefined = JsonbNormalizeSchemaBase.refine((data) => data.table !== undefined || data.tableName !== undefined, { message: "Either 'table' or 'tableName' is required" }).refine((data) => data.column !== undefined || data.col !== undefined, {
30
+ message: "Either 'column' or 'col' is required",
31
+ });
32
+ // Full schema with preprocess (for handler parsing)
33
+ export const JsonbNormalizeSchema = z.preprocess(preprocessJsonbParams, JsonbNormalizeSchemaRefined);
34
+ // ============== STATS SCHEMA ==============
35
+ // Base schema (for MCP inputSchema visibility - no preprocess)
36
+ export const JsonbStatsSchemaBase = z.object({
37
+ table: z.string().optional().describe("Table name"),
38
+ tableName: z.string().optional().describe("Table name (alias for table)"),
39
+ column: z.string().optional().describe("JSONB column"),
40
+ col: z.string().optional().describe("JSONB column (alias for column)"),
41
+ sampleSize: z.any().optional().describe("Sample rows to analyze"),
42
+ where: z.string().optional().describe("WHERE clause to filter rows"),
43
+ filter: z
44
+ .string()
45
+ .optional()
46
+ .describe("WHERE clause to filter rows (alias for where)"),
47
+ topKeysLimit: z
48
+ .any()
49
+ .optional()
50
+ .describe("Maximum number of top keys to return (default: 20)"),
51
+ schema: z.string().optional().describe("Schema name (default: public)"),
52
+ });
53
+ // Internal schema with refine (for handler validation)
54
+ const JsonbStatsSchemaRefined = JsonbStatsSchemaBase.refine((data) => data.table !== undefined || data.tableName !== undefined, { message: "Either 'table' or 'tableName' is required" }).refine((data) => data.column !== undefined || data.col !== undefined, {
55
+ message: "Either 'column' or 'col' is required",
56
+ });
57
+ // Full schema with preprocess (for handler parsing)
58
+ export const JsonbStatsSchema = z.preprocess(preprocessJsonbParams, JsonbStatsSchemaRefined);
59
+ // ============== INDEX SUGGEST SCHEMA ==============
60
+ // Base schema (for MCP inputSchema visibility - no preprocess)
61
+ export const JsonbIndexSuggestSchemaBase = z.object({
62
+ table: z.string().optional().describe("Table name"),
63
+ tableName: z.string().optional().describe("Table name (alias for table)"),
64
+ column: z.string().optional().describe("JSONB column"),
65
+ col: z.string().optional().describe("JSONB column (alias for column)"),
66
+ sampleSize: z.any().optional().describe("Sample rows to analyze"),
67
+ where: z.string().optional().describe("WHERE clause to filter rows"),
68
+ filter: z
69
+ .string()
70
+ .optional()
71
+ .describe("WHERE clause to filter rows (alias for where)"),
72
+ schema: z.string().optional().describe("Schema name (default: public)"),
73
+ });
74
+ // Internal schema with refine (for handler validation)
75
+ const JsonbIndexSuggestSchemaRefined = JsonbIndexSuggestSchemaBase.refine((data) => data.table !== undefined || data.tableName !== undefined, { message: "Either 'table' or 'tableName' is required" }).refine((data) => data.column !== undefined || data.col !== undefined, {
76
+ message: "Either 'column' or 'col' is required",
77
+ });
78
+ // Full schema with preprocess (for handler parsing)
79
+ export const JsonbIndexSuggestSchema = z.preprocess(preprocessJsonbParams, JsonbIndexSuggestSchemaRefined);
80
+ // ============== SECURITY SCAN SCHEMA ==============
81
+ // Base schema (for MCP inputSchema visibility - no preprocess)
82
+ export const JsonbSecurityScanSchemaBase = z.object({
83
+ table: z.string().optional().describe("Table name"),
84
+ tableName: z.string().optional().describe("Table name (alias for table)"),
85
+ column: z.string().optional().describe("JSONB column"),
86
+ col: z.string().optional().describe("JSONB column (alias for column)"),
87
+ sampleSize: z.any().optional().describe("Sample rows to scan"),
88
+ where: z.string().optional().describe("WHERE clause to filter rows"),
89
+ filter: z
90
+ .string()
91
+ .optional()
92
+ .describe("WHERE clause to filter rows (alias for where)"),
93
+ schema: z.string().optional().describe("Schema name (default: public)"),
94
+ });
95
+ // Internal schema with refine (for handler validation)
96
+ const JsonbSecurityScanSchemaRefined = JsonbSecurityScanSchemaBase.refine((data) => data.table !== undefined || data.tableName !== undefined, { message: "Either 'table' or 'tableName' is required" }).refine((data) => data.column !== undefined || data.col !== undefined, {
97
+ message: "Either 'column' or 'col' is required",
98
+ });
99
+ // Full schema with preprocess (for handler parsing)
100
+ export const JsonbSecurityScanSchema = z.preprocess(preprocessJsonbParams, JsonbSecurityScanSchemaRefined);
101
+ // ============== OUTPUT SCHEMAS (MCP 2025-11-25 structuredContent) ==============
102
+ // Output schema for pg_jsonb_extract
103
+ export const JsonbExtractOutputSchema = z.object({
104
+ rows: z
105
+ .array(z.record(z.string(), z.unknown()))
106
+ .optional()
107
+ .describe("Extracted values with optional identifying columns"),
108
+ count: z.number().optional().describe("Number of rows returned"),
109
+ hint: z.string().optional().describe("Hint when all values are null"),
110
+ success: z.boolean().optional().describe("False on error"),
111
+ error: z.string().optional().describe("Error message"),
112
+ });
113
+ // Output schema for pg_jsonb_set
114
+ export const JsonbSetOutputSchema = z.object({
115
+ rowsAffected: z.number().optional().describe("Number of rows updated"),
116
+ hint: z.string().optional().describe("Additional information"),
117
+ success: z.boolean().optional().describe("False on error"),
118
+ error: z.string().optional().describe("Error message"),
119
+ });
120
+ // Output schema for pg_jsonb_insert
121
+ export const JsonbInsertOutputSchema = z.object({
122
+ rowsAffected: z.number().optional().describe("Number of rows updated"),
123
+ success: z.boolean().optional().describe("False on error"),
124
+ error: z.string().optional().describe("Error message"),
125
+ });
126
+ // Output schema for pg_jsonb_delete
127
+ export const JsonbDeleteOutputSchema = z.object({
128
+ rowsAffected: z.number().optional().describe("Number of rows updated"),
129
+ hint: z.string().optional().describe("Note about rowsAffected semantics"),
130
+ success: z.boolean().optional().describe("False on error"),
131
+ error: z.string().optional().describe("Error message"),
132
+ });
133
+ // Output schema for pg_jsonb_contains
134
+ export const JsonbContainsOutputSchema = z.object({
135
+ rows: z
136
+ .array(z.record(z.string(), z.unknown()))
137
+ .optional()
138
+ .describe("Matching rows"),
139
+ count: z.number().optional().describe("Number of matching rows returned"),
140
+ truncated: z
141
+ .boolean()
142
+ .optional()
143
+ .describe("Whether results were truncated by the limit"),
144
+ totalCount: z
145
+ .number()
146
+ .optional()
147
+ .describe("Total matching rows before limit (present when truncated)"),
148
+ warning: z
149
+ .string()
150
+ .optional()
151
+ .describe("Warning for empty object containment"),
152
+ success: z.boolean().optional().describe("False on error"),
153
+ error: z.string().optional().describe("Error message"),
154
+ });
155
+ // Output schema for pg_jsonb_path_query
156
+ export const JsonbPathQueryOutputSchema = z.object({
157
+ results: z.array(z.unknown()).optional().describe("Query results"),
158
+ count: z.number().optional().describe("Number of results returned"),
159
+ truncated: z
160
+ .boolean()
161
+ .optional()
162
+ .describe("Whether results were truncated by the limit"),
163
+ totalCount: z
164
+ .number()
165
+ .optional()
166
+ .describe("Total results before limit (present when truncated)"),
167
+ success: z.boolean().optional().describe("False on error"),
168
+ error: z.string().optional().describe("Error message"),
169
+ });
170
+ // Output schema for pg_jsonb_agg
171
+ export const JsonbAggOutputSchema = z.object({
172
+ result: z
173
+ .unknown()
174
+ .optional()
175
+ .describe("Aggregated JSONB array or grouped results"),
176
+ count: z.number().optional().describe("Number of items or groups"),
177
+ grouped: z.boolean().optional().describe("Whether results are grouped"),
178
+ hint: z.string().optional().describe("Empty result hint"),
179
+ success: z.boolean().optional().describe("False on error"),
180
+ error: z.string().optional().describe("Error message"),
181
+ });
182
+ // Output schema for pg_jsonb_object
183
+ export const JsonbObjectOutputSchema = z.object({
184
+ object: z
185
+ .record(z.string(), z.unknown())
186
+ .optional()
187
+ .describe("Built JSONB object"),
188
+ success: z.boolean().optional().describe("False on error"),
189
+ error: z.string().optional().describe("Error message"),
190
+ });
191
+ // Output schema for pg_jsonb_array
192
+ export const JsonbArrayOutputSchema = z.object({
193
+ array: z.array(z.unknown()).optional().describe("Built JSONB array"),
194
+ success: z.boolean().optional().describe("False on error"),
195
+ error: z.string().optional().describe("Error message"),
196
+ });
197
+ // Output schema for pg_jsonb_keys
198
+ export const JsonbKeysOutputSchema = z.object({
199
+ keys: z
200
+ .array(z.string())
201
+ .optional()
202
+ .describe("Unique keys from JSONB column"),
203
+ count: z.number().optional().describe("Number of unique keys"),
204
+ hint: z.string().optional().describe("Deduplication note"),
205
+ success: z.boolean().optional().describe("False on error"),
206
+ error: z.string().optional().describe("Error message"),
207
+ });
208
+ // Output schema for pg_jsonb_strip_nulls (two modes: update or preview)
209
+ // Uses combined schema with optional fields instead of union with z.literal() to avoid Zod validation issues
210
+ export const JsonbStripNullsOutputSchema = z.object({
211
+ // Update mode fields
212
+ rowsAffected: z.number().optional().describe("Number of rows updated"),
213
+ // Preview mode fields
214
+ preview: z.boolean().optional().describe("Preview mode indicator"),
215
+ rows: z
216
+ .array(z.record(z.string(), z.unknown()))
217
+ .optional()
218
+ .describe("Before/after comparison"),
219
+ count: z.number().optional().describe("Number of rows"),
220
+ hint: z.string().optional().describe("Preview mode note"),
221
+ success: z.boolean().optional().describe("False on error"),
222
+ error: z.string().optional().describe("Error message"),
223
+ });
224
+ // Output schema for pg_jsonb_typeof
225
+ export const JsonbTypeofOutputSchema = z.object({
226
+ types: z
227
+ .array(z.string().nullable())
228
+ .optional()
229
+ .describe("JSONB types for each row (null if path doesn't exist)"),
230
+ count: z.number().optional().describe("Number of rows"),
231
+ columnNull: z
232
+ .boolean()
233
+ .optional()
234
+ .describe("Whether any column was NULL (uses .some() aggregation)"),
235
+ hint: z.string().optional().describe("Additional information"),
236
+ success: z.boolean().optional().describe("False on error"),
237
+ error: z.string().optional().describe("Error message"),
238
+ });
239
+ // ============== ADVANCED JSONB OUTPUT SCHEMAS ==============
240
+ // Output schema for pg_jsonb_validate_path
241
+ export const JsonbValidatePathOutputSchema = z.object({
242
+ valid: z.boolean().optional().describe("Whether path is valid"),
243
+ path: z.string().optional().describe("The validated path expression"),
244
+ error: z.string().optional().describe("Error message if invalid"),
245
+ results: z
246
+ .array(z.unknown())
247
+ .optional()
248
+ .describe("Test results if testValue provided"),
249
+ varsUsed: z
250
+ .boolean()
251
+ .optional()
252
+ .describe("Whether vars were used in the query"),
253
+ success: z.boolean().optional().describe("False on error"),
254
+ });
255
+ // Output schema for pg_jsonb_merge
256
+ export const JsonbMergeOutputSchema = z.object({
257
+ merged: z.unknown().optional().describe("Merged JSONB document"),
258
+ deep: z.boolean().optional().describe("Whether deep merge was used"),
259
+ mergeArrays: z
260
+ .boolean()
261
+ .optional()
262
+ .describe("Whether arrays were concatenated"),
263
+ success: z.boolean().optional().describe("False on error"),
264
+ error: z.string().optional().describe("Error message"),
265
+ });
266
+ // Output schema for pg_jsonb_normalize
267
+ export const JsonbNormalizeOutputSchema = z.object({
268
+ rows: z
269
+ .array(z.record(z.string(), z.unknown()))
270
+ .optional()
271
+ .describe("Normalized rows"),
272
+ count: z.number().optional().describe("Number of rows"),
273
+ mode: z.string().optional().describe("Normalization mode used"),
274
+ hint: z.string().optional().describe("Additional information"),
275
+ success: z.boolean().optional().describe("False on error"),
276
+ error: z.string().optional().describe("Error message"),
277
+ });
278
+ // Output schema for pg_jsonb_diff
279
+ export const JsonbDiffOutputSchema = z.object({
280
+ differences: z
281
+ .array(z.object({
282
+ key: z.string().describe("Key that differs"),
283
+ status: z
284
+ .enum(["added", "removed", "modified"])
285
+ .describe("Type of difference"),
286
+ value1: z.unknown().optional().describe("Value in doc1"),
287
+ value2: z.unknown().optional().describe("Value in doc2"),
288
+ }))
289
+ .optional()
290
+ .describe("List of differences"),
291
+ hasDifferences: z
292
+ .boolean()
293
+ .optional()
294
+ .describe("Whether any differences exist"),
295
+ comparison: z.string().optional().describe("Comparison type performed"),
296
+ hint: z.string().optional().describe("Explanation of comparison scope"),
297
+ success: z.boolean().optional().describe("False on error"),
298
+ error: z.string().optional().describe("Error message"),
299
+ });
300
+ // Output schema for pg_jsonb_index_suggest
301
+ export const JsonbIndexSuggestOutputSchema = z.object({
302
+ recommendations: z
303
+ .array(z.string())
304
+ .optional()
305
+ .describe("Index creation SQL recommendations"),
306
+ analyzed: z
307
+ .object({
308
+ topKeys: z.number().optional().describe("Number of top keys analyzed"),
309
+ existingIndexes: z.number().optional().describe("Existing indexes found"),
310
+ })
311
+ .optional()
312
+ .describe("Analysis details"),
313
+ success: z.boolean().optional().describe("False on error"),
314
+ error: z.string().optional().describe("Error message"),
315
+ });
316
+ // Output schema for pg_jsonb_security_scan
317
+ export const JsonbSecurityScanOutputSchema = z.object({
318
+ issues: z
319
+ .array(z.object({
320
+ type: z.string().describe("Issue type"),
321
+ key: z.string().optional().describe("Affected key"),
322
+ count: z.number().optional().describe("Occurrence count"),
323
+ severity: z.string().optional().describe("Issue severity"),
324
+ }))
325
+ .optional()
326
+ .describe("Security issues found"),
327
+ riskLevel: z
328
+ .enum(["low", "medium", "high"])
329
+ .optional()
330
+ .describe("Overall risk level"),
331
+ scannedRows: z.number().optional().describe("Number of rows scanned"),
332
+ success: z.boolean().optional().describe("False on error"),
333
+ error: z.string().optional().describe("Error message"),
334
+ });
335
+ // Output schema for pg_jsonb_stats
336
+ export const JsonbStatsOutputSchema = z.object({
337
+ basics: z
338
+ .object({
339
+ total_rows: z.number().describe("Total rows"),
340
+ non_null_count: z.number().optional().describe("Non-null values"),
341
+ avg_size_bytes: z.number().optional().describe("Average size"),
342
+ max_size_bytes: z.number().optional().describe("Maximum size"),
343
+ })
344
+ .optional()
345
+ .describe("Basic statistics"),
346
+ topKeys: z
347
+ .array(z.object({
348
+ key: z.string().describe("Key name"),
349
+ frequency: z.number().describe("Occurrence count"),
350
+ }))
351
+ .optional()
352
+ .describe("Most common keys"),
353
+ typeDistribution: z
354
+ .array(z.object({
355
+ type: z
356
+ .string()
357
+ .nullable()
358
+ .describe("JSONB type (null = SQL NULL column)"),
359
+ count: z.number().describe("Count"),
360
+ }))
361
+ .optional()
362
+ .describe("Type distribution"),
363
+ sqlNullCount: z
364
+ .number()
365
+ .optional()
366
+ .describe("Count of rows with SQL NULL in the JSONB column"),
367
+ hint: z.string().optional().describe("Usage hints or notes"),
368
+ success: z.boolean().optional().describe("False on error"),
369
+ error: z.string().optional().describe("Error message"),
370
+ });
371
+ //# sourceMappingURL=advanced.js.map