@supabase/pg-delta 1.0.0-alpha.11 → 1.0.0-alpha.13

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 (397) hide show
  1. package/dist/core/expand-replace-dependencies.js +23 -0
  2. package/dist/core/export/index.d.ts +2 -2
  3. package/dist/core/export/index.js +4 -1
  4. package/dist/core/integrations/integration.types.d.ts +26 -1
  5. package/dist/core/integrations/integration.types.js +31 -1
  6. package/dist/core/integrations/serialize/dsl.d.ts +1 -8
  7. package/dist/core/integrations/serialize/serialize.types.d.ts +31 -0
  8. package/dist/core/integrations/supabase.js +19 -0
  9. package/dist/core/objects/aggregate/changes/aggregate.alter.d.ts +2 -1
  10. package/dist/core/objects/aggregate/changes/aggregate.alter.js +1 -1
  11. package/dist/core/objects/aggregate/changes/aggregate.comment.d.ts +3 -2
  12. package/dist/core/objects/aggregate/changes/aggregate.comment.js +2 -2
  13. package/dist/core/objects/aggregate/changes/aggregate.create.d.ts +2 -1
  14. package/dist/core/objects/aggregate/changes/aggregate.create.js +1 -1
  15. package/dist/core/objects/aggregate/changes/aggregate.drop.d.ts +2 -1
  16. package/dist/core/objects/aggregate/changes/aggregate.drop.js +1 -1
  17. package/dist/core/objects/aggregate/changes/aggregate.privilege.d.ts +4 -3
  18. package/dist/core/objects/aggregate/changes/aggregate.privilege.js +3 -3
  19. package/dist/core/objects/base.change.d.ts +2 -1
  20. package/dist/core/objects/collation/changes/collation.alter.d.ts +3 -2
  21. package/dist/core/objects/collation/changes/collation.alter.js +2 -2
  22. package/dist/core/objects/collation/changes/collation.comment.d.ts +3 -2
  23. package/dist/core/objects/collation/changes/collation.comment.js +2 -2
  24. package/dist/core/objects/collation/changes/collation.create.d.ts +2 -1
  25. package/dist/core/objects/collation/changes/collation.create.js +1 -1
  26. package/dist/core/objects/collation/changes/collation.drop.d.ts +2 -1
  27. package/dist/core/objects/collation/changes/collation.drop.js +1 -1
  28. package/dist/core/objects/domain/changes/domain.alter.d.ts +9 -8
  29. package/dist/core/objects/domain/changes/domain.alter.js +8 -8
  30. package/dist/core/objects/domain/changes/domain.comment.d.ts +3 -2
  31. package/dist/core/objects/domain/changes/domain.comment.js +2 -2
  32. package/dist/core/objects/domain/changes/domain.create.d.ts +2 -1
  33. package/dist/core/objects/domain/changes/domain.create.js +1 -1
  34. package/dist/core/objects/domain/changes/domain.drop.d.ts +2 -1
  35. package/dist/core/objects/domain/changes/domain.drop.js +1 -1
  36. package/dist/core/objects/domain/changes/domain.privilege.d.ts +4 -3
  37. package/dist/core/objects/domain/changes/domain.privilege.js +3 -3
  38. package/dist/core/objects/event-trigger/changes/event-trigger.alter.d.ts +3 -2
  39. package/dist/core/objects/event-trigger/changes/event-trigger.alter.js +2 -2
  40. package/dist/core/objects/event-trigger/changes/event-trigger.comment.d.ts +3 -2
  41. package/dist/core/objects/event-trigger/changes/event-trigger.comment.js +2 -2
  42. package/dist/core/objects/event-trigger/changes/event-trigger.create.d.ts +2 -1
  43. package/dist/core/objects/event-trigger/changes/event-trigger.create.js +1 -1
  44. package/dist/core/objects/event-trigger/changes/event-trigger.drop.d.ts +2 -1
  45. package/dist/core/objects/event-trigger/changes/event-trigger.drop.js +1 -1
  46. package/dist/core/objects/extension/changes/extension.alter.d.ts +3 -2
  47. package/dist/core/objects/extension/changes/extension.alter.js +2 -2
  48. package/dist/core/objects/extension/changes/extension.comment.d.ts +3 -2
  49. package/dist/core/objects/extension/changes/extension.comment.js +2 -2
  50. package/dist/core/objects/extension/changes/extension.create.d.ts +2 -1
  51. package/dist/core/objects/extension/changes/extension.create.js +4 -2
  52. package/dist/core/objects/extension/changes/extension.drop.d.ts +2 -1
  53. package/dist/core/objects/extension/changes/extension.drop.js +1 -1
  54. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.d.ts +3 -2
  55. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.js +2 -2
  56. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.d.ts +3 -2
  57. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.js +2 -2
  58. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.d.ts +2 -1
  59. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.js +1 -1
  60. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.d.ts +2 -1
  61. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.js +1 -1
  62. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.d.ts +4 -3
  63. package/dist/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.js +3 -3
  64. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.d.ts +10 -9
  65. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.js +9 -9
  66. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.d.ts +3 -2
  67. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.js +2 -2
  68. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.d.ts +2 -1
  69. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.js +1 -1
  70. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.d.ts +2 -1
  71. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.js +1 -1
  72. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.d.ts +4 -3
  73. package/dist/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.js +3 -3
  74. package/dist/core/objects/foreign-data-wrapper/server/changes/server.alter.d.ts +4 -3
  75. package/dist/core/objects/foreign-data-wrapper/server/changes/server.alter.js +3 -3
  76. package/dist/core/objects/foreign-data-wrapper/server/changes/server.comment.d.ts +3 -2
  77. package/dist/core/objects/foreign-data-wrapper/server/changes/server.comment.js +2 -2
  78. package/dist/core/objects/foreign-data-wrapper/server/changes/server.create.d.ts +2 -1
  79. package/dist/core/objects/foreign-data-wrapper/server/changes/server.create.js +1 -1
  80. package/dist/core/objects/foreign-data-wrapper/server/changes/server.drop.d.ts +2 -1
  81. package/dist/core/objects/foreign-data-wrapper/server/changes/server.drop.js +1 -1
  82. package/dist/core/objects/foreign-data-wrapper/server/changes/server.privilege.d.ts +4 -3
  83. package/dist/core/objects/foreign-data-wrapper/server/changes/server.privilege.js +3 -3
  84. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.d.ts +2 -1
  85. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.js +1 -1
  86. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.d.ts +2 -1
  87. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.js +1 -1
  88. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.d.ts +2 -1
  89. package/dist/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.js +1 -1
  90. package/dist/core/objects/index/changes/index.alter.d.ts +4 -3
  91. package/dist/core/objects/index/changes/index.alter.js +3 -3
  92. package/dist/core/objects/index/changes/index.comment.d.ts +3 -2
  93. package/dist/core/objects/index/changes/index.comment.js +2 -2
  94. package/dist/core/objects/index/changes/index.create.d.ts +2 -1
  95. package/dist/core/objects/index/changes/index.create.js +1 -1
  96. package/dist/core/objects/index/changes/index.drop.d.ts +2 -1
  97. package/dist/core/objects/index/changes/index.drop.js +1 -1
  98. package/dist/core/objects/language/changes/language.alter.d.ts +2 -1
  99. package/dist/core/objects/language/changes/language.alter.js +1 -1
  100. package/dist/core/objects/language/changes/language.comment.d.ts +3 -2
  101. package/dist/core/objects/language/changes/language.comment.js +2 -2
  102. package/dist/core/objects/language/changes/language.create.d.ts +2 -1
  103. package/dist/core/objects/language/changes/language.create.js +1 -1
  104. package/dist/core/objects/language/changes/language.drop.d.ts +2 -1
  105. package/dist/core/objects/language/changes/language.drop.js +1 -1
  106. package/dist/core/objects/language/changes/language.privilege.d.ts +4 -3
  107. package/dist/core/objects/language/changes/language.privilege.js +3 -3
  108. package/dist/core/objects/materialized-view/changes/materialized-view.alter.d.ts +3 -2
  109. package/dist/core/objects/materialized-view/changes/materialized-view.alter.js +2 -2
  110. package/dist/core/objects/materialized-view/changes/materialized-view.comment.d.ts +5 -4
  111. package/dist/core/objects/materialized-view/changes/materialized-view.comment.js +4 -4
  112. package/dist/core/objects/materialized-view/changes/materialized-view.create.d.ts +2 -1
  113. package/dist/core/objects/materialized-view/changes/materialized-view.create.js +1 -1
  114. package/dist/core/objects/materialized-view/changes/materialized-view.drop.d.ts +2 -1
  115. package/dist/core/objects/materialized-view/changes/materialized-view.drop.js +1 -1
  116. package/dist/core/objects/materialized-view/changes/materialized-view.privilege.d.ts +4 -3
  117. package/dist/core/objects/materialized-view/changes/materialized-view.privilege.js +3 -3
  118. package/dist/core/objects/procedure/changes/procedure.alter.d.ts +8 -7
  119. package/dist/core/objects/procedure/changes/procedure.alter.js +7 -7
  120. package/dist/core/objects/procedure/changes/procedure.comment.d.ts +3 -2
  121. package/dist/core/objects/procedure/changes/procedure.comment.js +2 -2
  122. package/dist/core/objects/procedure/changes/procedure.create.d.ts +2 -1
  123. package/dist/core/objects/procedure/changes/procedure.create.js +1 -1
  124. package/dist/core/objects/procedure/changes/procedure.drop.d.ts +2 -1
  125. package/dist/core/objects/procedure/changes/procedure.drop.js +1 -1
  126. package/dist/core/objects/procedure/changes/procedure.privilege.d.ts +4 -3
  127. package/dist/core/objects/procedure/changes/procedure.privilege.js +3 -3
  128. package/dist/core/objects/publication/changes/publication.alter.d.ts +9 -7
  129. package/dist/core/objects/publication/changes/publication.alter.js +12 -7
  130. package/dist/core/objects/publication/changes/publication.comment.d.ts +3 -2
  131. package/dist/core/objects/publication/changes/publication.comment.js +2 -2
  132. package/dist/core/objects/publication/changes/publication.create.d.ts +2 -1
  133. package/dist/core/objects/publication/changes/publication.create.js +1 -1
  134. package/dist/core/objects/publication/changes/publication.drop.d.ts +2 -1
  135. package/dist/core/objects/publication/changes/publication.drop.js +1 -1
  136. package/dist/core/objects/rls-policy/changes/rls-policy.alter.d.ts +4 -3
  137. package/dist/core/objects/rls-policy/changes/rls-policy.alter.js +3 -3
  138. package/dist/core/objects/rls-policy/changes/rls-policy.comment.d.ts +3 -2
  139. package/dist/core/objects/rls-policy/changes/rls-policy.comment.js +2 -2
  140. package/dist/core/objects/rls-policy/changes/rls-policy.create.d.ts +2 -1
  141. package/dist/core/objects/rls-policy/changes/rls-policy.create.js +1 -1
  142. package/dist/core/objects/rls-policy/changes/rls-policy.drop.d.ts +2 -1
  143. package/dist/core/objects/rls-policy/changes/rls-policy.drop.js +1 -1
  144. package/dist/core/objects/role/changes/role.alter.d.ts +3 -2
  145. package/dist/core/objects/role/changes/role.alter.js +2 -2
  146. package/dist/core/objects/role/changes/role.comment.d.ts +3 -2
  147. package/dist/core/objects/role/changes/role.comment.js +2 -2
  148. package/dist/core/objects/role/changes/role.create.d.ts +2 -1
  149. package/dist/core/objects/role/changes/role.create.js +1 -1
  150. package/dist/core/objects/role/changes/role.drop.d.ts +2 -1
  151. package/dist/core/objects/role/changes/role.drop.js +1 -1
  152. package/dist/core/objects/role/changes/role.privilege.d.ts +6 -5
  153. package/dist/core/objects/role/changes/role.privilege.js +5 -5
  154. package/dist/core/objects/rule/changes/rule.alter.d.ts +3 -2
  155. package/dist/core/objects/rule/changes/rule.alter.js +2 -2
  156. package/dist/core/objects/rule/changes/rule.comment.d.ts +3 -2
  157. package/dist/core/objects/rule/changes/rule.comment.js +2 -2
  158. package/dist/core/objects/rule/changes/rule.create.d.ts +2 -1
  159. package/dist/core/objects/rule/changes/rule.create.js +1 -1
  160. package/dist/core/objects/rule/changes/rule.drop.d.ts +2 -1
  161. package/dist/core/objects/rule/changes/rule.drop.js +1 -1
  162. package/dist/core/objects/schema/changes/schema.alter.d.ts +2 -1
  163. package/dist/core/objects/schema/changes/schema.alter.js +1 -1
  164. package/dist/core/objects/schema/changes/schema.comment.d.ts +3 -2
  165. package/dist/core/objects/schema/changes/schema.comment.js +2 -2
  166. package/dist/core/objects/schema/changes/schema.create.d.ts +3 -5
  167. package/dist/core/objects/schema/changes/schema.drop.d.ts +2 -1
  168. package/dist/core/objects/schema/changes/schema.drop.js +1 -1
  169. package/dist/core/objects/schema/changes/schema.privilege.d.ts +4 -3
  170. package/dist/core/objects/schema/changes/schema.privilege.js +3 -3
  171. package/dist/core/objects/sequence/changes/sequence.alter.d.ts +3 -2
  172. package/dist/core/objects/sequence/changes/sequence.alter.js +2 -2
  173. package/dist/core/objects/sequence/changes/sequence.comment.d.ts +3 -2
  174. package/dist/core/objects/sequence/changes/sequence.comment.js +2 -2
  175. package/dist/core/objects/sequence/changes/sequence.create.d.ts +2 -1
  176. package/dist/core/objects/sequence/changes/sequence.create.js +1 -1
  177. package/dist/core/objects/sequence/changes/sequence.drop.d.ts +2 -1
  178. package/dist/core/objects/sequence/changes/sequence.drop.js +11 -3
  179. package/dist/core/objects/sequence/changes/sequence.privilege.d.ts +4 -3
  180. package/dist/core/objects/sequence/changes/sequence.privilege.js +3 -3
  181. package/dist/core/objects/sequence/sequence.diff.d.ts +4 -1
  182. package/dist/core/objects/sequence/sequence.diff.js +12 -0
  183. package/dist/core/objects/subscription/changes/subscription.alter.d.ts +7 -6
  184. package/dist/core/objects/subscription/changes/subscription.alter.js +6 -6
  185. package/dist/core/objects/subscription/changes/subscription.comment.d.ts +3 -2
  186. package/dist/core/objects/subscription/changes/subscription.comment.js +2 -2
  187. package/dist/core/objects/subscription/changes/subscription.create.d.ts +2 -1
  188. package/dist/core/objects/subscription/changes/subscription.create.js +1 -1
  189. package/dist/core/objects/subscription/changes/subscription.drop.d.ts +2 -1
  190. package/dist/core/objects/subscription/changes/subscription.drop.js +1 -1
  191. package/dist/core/objects/table/changes/table.alter.d.ts +65 -22
  192. package/dist/core/objects/table/changes/table.alter.js +107 -22
  193. package/dist/core/objects/table/changes/table.comment.d.ts +7 -6
  194. package/dist/core/objects/table/changes/table.comment.js +6 -6
  195. package/dist/core/objects/table/changes/table.create.d.ts +2 -1
  196. package/dist/core/objects/table/changes/table.create.js +1 -1
  197. package/dist/core/objects/table/changes/table.drop.d.ts +4 -3
  198. package/dist/core/objects/table/changes/table.drop.js +7 -1
  199. package/dist/core/objects/table/changes/table.privilege.d.ts +4 -3
  200. package/dist/core/objects/table/changes/table.privilege.js +3 -3
  201. package/dist/core/objects/table/table.diff.js +46 -1
  202. package/dist/core/objects/trigger/changes/trigger.alter.d.ts +2 -1
  203. package/dist/core/objects/trigger/changes/trigger.alter.js +1 -1
  204. package/dist/core/objects/trigger/changes/trigger.comment.d.ts +3 -2
  205. package/dist/core/objects/trigger/changes/trigger.comment.js +2 -2
  206. package/dist/core/objects/trigger/changes/trigger.create.d.ts +2 -1
  207. package/dist/core/objects/trigger/changes/trigger.create.js +1 -1
  208. package/dist/core/objects/trigger/changes/trigger.drop.d.ts +2 -1
  209. package/dist/core/objects/trigger/changes/trigger.drop.js +1 -1
  210. package/dist/core/objects/type/composite-type/changes/composite-type.alter.d.ts +5 -4
  211. package/dist/core/objects/type/composite-type/changes/composite-type.alter.js +4 -4
  212. package/dist/core/objects/type/composite-type/changes/composite-type.comment.d.ts +5 -4
  213. package/dist/core/objects/type/composite-type/changes/composite-type.comment.js +4 -4
  214. package/dist/core/objects/type/composite-type/changes/composite-type.create.d.ts +2 -1
  215. package/dist/core/objects/type/composite-type/changes/composite-type.create.js +1 -1
  216. package/dist/core/objects/type/composite-type/changes/composite-type.drop.d.ts +2 -1
  217. package/dist/core/objects/type/composite-type/changes/composite-type.drop.js +1 -1
  218. package/dist/core/objects/type/composite-type/changes/composite-type.privilege.d.ts +4 -3
  219. package/dist/core/objects/type/composite-type/changes/composite-type.privilege.js +3 -3
  220. package/dist/core/objects/type/enum/changes/enum.alter.d.ts +3 -2
  221. package/dist/core/objects/type/enum/changes/enum.alter.js +2 -2
  222. package/dist/core/objects/type/enum/changes/enum.comment.d.ts +3 -2
  223. package/dist/core/objects/type/enum/changes/enum.comment.js +2 -2
  224. package/dist/core/objects/type/enum/changes/enum.create.d.ts +2 -1
  225. package/dist/core/objects/type/enum/changes/enum.create.js +1 -1
  226. package/dist/core/objects/type/enum/changes/enum.drop.d.ts +2 -1
  227. package/dist/core/objects/type/enum/changes/enum.drop.js +1 -1
  228. package/dist/core/objects/type/enum/changes/enum.privilege.d.ts +4 -3
  229. package/dist/core/objects/type/enum/changes/enum.privilege.js +3 -3
  230. package/dist/core/objects/type/range/changes/range.alter.d.ts +2 -1
  231. package/dist/core/objects/type/range/changes/range.alter.js +1 -1
  232. package/dist/core/objects/type/range/changes/range.comment.d.ts +3 -2
  233. package/dist/core/objects/type/range/changes/range.comment.js +2 -2
  234. package/dist/core/objects/type/range/changes/range.create.d.ts +2 -1
  235. package/dist/core/objects/type/range/changes/range.create.js +1 -1
  236. package/dist/core/objects/type/range/changes/range.drop.d.ts +2 -1
  237. package/dist/core/objects/type/range/changes/range.drop.js +1 -1
  238. package/dist/core/objects/type/range/changes/range.privilege.d.ts +4 -3
  239. package/dist/core/objects/type/range/changes/range.privilege.js +3 -3
  240. package/dist/core/objects/view/changes/view.alter.d.ts +4 -3
  241. package/dist/core/objects/view/changes/view.alter.js +3 -3
  242. package/dist/core/objects/view/changes/view.comment.d.ts +3 -2
  243. package/dist/core/objects/view/changes/view.comment.js +2 -2
  244. package/dist/core/objects/view/changes/view.create.d.ts +2 -1
  245. package/dist/core/objects/view/changes/view.create.js +1 -1
  246. package/dist/core/objects/view/changes/view.drop.d.ts +2 -1
  247. package/dist/core/objects/view/changes/view.drop.js +1 -1
  248. package/dist/core/objects/view/changes/view.privilege.d.ts +4 -3
  249. package/dist/core/objects/view/changes/view.privilege.js +3 -3
  250. package/dist/core/plan/create.js +5 -17
  251. package/dist/core/plan/types.d.ts +3 -6
  252. package/dist/core/sort/custom-constraints.js +64 -0
  253. package/package.json +1 -1
  254. package/src/core/expand-replace-dependencies.test.ts +126 -1
  255. package/src/core/expand-replace-dependencies.ts +50 -0
  256. package/src/core/export/index.ts +13 -4
  257. package/src/core/integrations/integration.types.ts +59 -1
  258. package/src/core/integrations/serialize/dsl.test.ts +20 -1
  259. package/src/core/integrations/serialize/dsl.ts +1 -10
  260. package/src/core/integrations/serialize/serialize.types.ts +37 -0
  261. package/src/core/integrations/supabase.ts +19 -0
  262. package/src/core/objects/aggregate/changes/aggregate.alter.ts +2 -1
  263. package/src/core/objects/aggregate/changes/aggregate.comment.ts +3 -2
  264. package/src/core/objects/aggregate/changes/aggregate.create.ts +2 -1
  265. package/src/core/objects/aggregate/changes/aggregate.drop.ts +2 -1
  266. package/src/core/objects/aggregate/changes/aggregate.privilege.ts +4 -3
  267. package/src/core/objects/base.change.ts +3 -1
  268. package/src/core/objects/collation/changes/collation.alter.ts +3 -2
  269. package/src/core/objects/collation/changes/collation.comment.ts +3 -2
  270. package/src/core/objects/collation/changes/collation.create.ts +2 -1
  271. package/src/core/objects/collation/changes/collation.drop.ts +2 -1
  272. package/src/core/objects/domain/changes/domain.alter.ts +9 -8
  273. package/src/core/objects/domain/changes/domain.comment.ts +3 -2
  274. package/src/core/objects/domain/changes/domain.create.ts +2 -1
  275. package/src/core/objects/domain/changes/domain.drop.ts +2 -1
  276. package/src/core/objects/domain/changes/domain.privilege.ts +4 -3
  277. package/src/core/objects/event-trigger/changes/event-trigger.alter.ts +3 -2
  278. package/src/core/objects/event-trigger/changes/event-trigger.comment.ts +3 -2
  279. package/src/core/objects/event-trigger/changes/event-trigger.create.ts +2 -1
  280. package/src/core/objects/event-trigger/changes/event-trigger.drop.ts +2 -1
  281. package/src/core/objects/extension/changes/extension.alter.ts +3 -2
  282. package/src/core/objects/extension/changes/extension.comment.ts +3 -2
  283. package/src/core/objects/extension/changes/extension.create.test.ts +22 -0
  284. package/src/core/objects/extension/changes/extension.create.ts +5 -2
  285. package/src/core/objects/extension/changes/extension.drop.ts +2 -1
  286. package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.alter.ts +3 -2
  287. package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.comment.ts +3 -2
  288. package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.create.ts +2 -1
  289. package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.drop.ts +2 -1
  290. package/src/core/objects/foreign-data-wrapper/foreign-data-wrapper/changes/foreign-data-wrapper.privilege.ts +4 -3
  291. package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.alter.ts +10 -9
  292. package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.comment.ts +3 -2
  293. package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.create.ts +2 -1
  294. package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.drop.ts +2 -1
  295. package/src/core/objects/foreign-data-wrapper/foreign-table/changes/foreign-table.privilege.ts +4 -3
  296. package/src/core/objects/foreign-data-wrapper/server/changes/server.alter.ts +4 -3
  297. package/src/core/objects/foreign-data-wrapper/server/changes/server.comment.ts +3 -2
  298. package/src/core/objects/foreign-data-wrapper/server/changes/server.create.ts +2 -1
  299. package/src/core/objects/foreign-data-wrapper/server/changes/server.drop.ts +2 -1
  300. package/src/core/objects/foreign-data-wrapper/server/changes/server.privilege.ts +4 -3
  301. package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.alter.ts +2 -1
  302. package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.create.ts +2 -1
  303. package/src/core/objects/foreign-data-wrapper/user-mapping/changes/user-mapping.drop.ts +2 -1
  304. package/src/core/objects/index/changes/index.alter.ts +4 -3
  305. package/src/core/objects/index/changes/index.comment.ts +3 -2
  306. package/src/core/objects/index/changes/index.create.ts +2 -1
  307. package/src/core/objects/index/changes/index.drop.ts +2 -1
  308. package/src/core/objects/language/changes/language.alter.ts +2 -1
  309. package/src/core/objects/language/changes/language.comment.ts +3 -2
  310. package/src/core/objects/language/changes/language.create.ts +2 -1
  311. package/src/core/objects/language/changes/language.drop.ts +2 -1
  312. package/src/core/objects/language/changes/language.privilege.ts +4 -3
  313. package/src/core/objects/materialized-view/changes/materialized-view.alter.ts +3 -2
  314. package/src/core/objects/materialized-view/changes/materialized-view.comment.ts +5 -4
  315. package/src/core/objects/materialized-view/changes/materialized-view.create.ts +2 -1
  316. package/src/core/objects/materialized-view/changes/materialized-view.drop.ts +2 -1
  317. package/src/core/objects/materialized-view/changes/materialized-view.privilege.ts +4 -3
  318. package/src/core/objects/procedure/changes/procedure.alter.ts +8 -7
  319. package/src/core/objects/procedure/changes/procedure.comment.ts +3 -2
  320. package/src/core/objects/procedure/changes/procedure.create.ts +2 -1
  321. package/src/core/objects/procedure/changes/procedure.drop.ts +2 -1
  322. package/src/core/objects/procedure/changes/procedure.privilege.ts +4 -3
  323. package/src/core/objects/publication/changes/publication.alter.test.ts +4 -0
  324. package/src/core/objects/publication/changes/publication.alter.ts +14 -7
  325. package/src/core/objects/publication/changes/publication.comment.ts +3 -2
  326. package/src/core/objects/publication/changes/publication.create.ts +2 -1
  327. package/src/core/objects/publication/changes/publication.drop.ts +2 -1
  328. package/src/core/objects/rls-policy/changes/rls-policy.alter.ts +4 -3
  329. package/src/core/objects/rls-policy/changes/rls-policy.comment.ts +3 -2
  330. package/src/core/objects/rls-policy/changes/rls-policy.create.ts +2 -1
  331. package/src/core/objects/rls-policy/changes/rls-policy.drop.ts +2 -1
  332. package/src/core/objects/role/changes/role.alter.ts +3 -2
  333. package/src/core/objects/role/changes/role.comment.ts +3 -2
  334. package/src/core/objects/role/changes/role.create.ts +2 -1
  335. package/src/core/objects/role/changes/role.drop.ts +2 -1
  336. package/src/core/objects/role/changes/role.privilege.ts +6 -5
  337. package/src/core/objects/rule/changes/rule.alter.ts +3 -2
  338. package/src/core/objects/rule/changes/rule.comment.ts +3 -2
  339. package/src/core/objects/rule/changes/rule.create.ts +2 -1
  340. package/src/core/objects/rule/changes/rule.drop.ts +2 -1
  341. package/src/core/objects/schema/changes/schema.alter.ts +2 -1
  342. package/src/core/objects/schema/changes/schema.comment.ts +3 -2
  343. package/src/core/objects/schema/changes/schema.create.ts +3 -3
  344. package/src/core/objects/schema/changes/schema.drop.ts +2 -1
  345. package/src/core/objects/schema/changes/schema.privilege.ts +4 -3
  346. package/src/core/objects/sequence/changes/sequence.alter.ts +3 -2
  347. package/src/core/objects/sequence/changes/sequence.comment.ts +3 -2
  348. package/src/core/objects/sequence/changes/sequence.create.ts +2 -1
  349. package/src/core/objects/sequence/changes/sequence.drop.ts +16 -3
  350. package/src/core/objects/sequence/changes/sequence.privilege.ts +4 -3
  351. package/src/core/objects/sequence/sequence.diff.test.ts +73 -1
  352. package/src/core/objects/sequence/sequence.diff.ts +24 -2
  353. package/src/core/objects/subscription/changes/subscription.alter.ts +7 -6
  354. package/src/core/objects/subscription/changes/subscription.comment.ts +3 -2
  355. package/src/core/objects/subscription/changes/subscription.create.ts +2 -1
  356. package/src/core/objects/subscription/changes/subscription.drop.ts +2 -1
  357. package/src/core/objects/table/changes/table.alter.test.ts +38 -0
  358. package/src/core/objects/table/changes/table.alter.ts +123 -22
  359. package/src/core/objects/table/changes/table.comment.ts +7 -6
  360. package/src/core/objects/table/changes/table.create.ts +2 -1
  361. package/src/core/objects/table/changes/table.drop.ts +20 -1
  362. package/src/core/objects/table/changes/table.privilege.ts +4 -3
  363. package/src/core/objects/table/table.diff.test.ts +121 -0
  364. package/src/core/objects/table/table.diff.ts +64 -1
  365. package/src/core/objects/trigger/changes/trigger.alter.ts +2 -1
  366. package/src/core/objects/trigger/changes/trigger.comment.ts +3 -2
  367. package/src/core/objects/trigger/changes/trigger.create.ts +2 -1
  368. package/src/core/objects/trigger/changes/trigger.drop.ts +2 -1
  369. package/src/core/objects/type/composite-type/changes/composite-type.alter.ts +5 -4
  370. package/src/core/objects/type/composite-type/changes/composite-type.comment.ts +5 -4
  371. package/src/core/objects/type/composite-type/changes/composite-type.create.ts +2 -1
  372. package/src/core/objects/type/composite-type/changes/composite-type.drop.ts +2 -1
  373. package/src/core/objects/type/composite-type/changes/composite-type.privilege.ts +4 -3
  374. package/src/core/objects/type/enum/changes/enum.alter.ts +3 -2
  375. package/src/core/objects/type/enum/changes/enum.comment.ts +3 -2
  376. package/src/core/objects/type/enum/changes/enum.create.ts +2 -1
  377. package/src/core/objects/type/enum/changes/enum.drop.ts +2 -1
  378. package/src/core/objects/type/enum/changes/enum.privilege.ts +4 -3
  379. package/src/core/objects/type/range/changes/range.alter.ts +2 -1
  380. package/src/core/objects/type/range/changes/range.comment.ts +3 -2
  381. package/src/core/objects/type/range/changes/range.create.ts +2 -1
  382. package/src/core/objects/type/range/changes/range.drop.ts +2 -1
  383. package/src/core/objects/type/range/changes/range.privilege.ts +4 -3
  384. package/src/core/objects/view/changes/view.alter.ts +4 -3
  385. package/src/core/objects/view/changes/view.comment.ts +3 -2
  386. package/src/core/objects/view/changes/view.create.ts +2 -1
  387. package/src/core/objects/view/changes/view.drop.ts +2 -1
  388. package/src/core/objects/view/changes/view.privilege.ts +4 -3
  389. package/src/core/plan/create.ts +11 -27
  390. package/src/core/plan/sql-format/format-off.test.ts +1 -1
  391. package/src/core/plan/sql-format/format-pretty-lower-leading.test.ts +1 -1
  392. package/src/core/plan/sql-format/format-pretty-narrow.test.ts +1 -1
  393. package/src/core/plan/sql-format/format-pretty-preserve.test.ts +1 -1
  394. package/src/core/plan/sql-format/format-pretty-upper.test.ts +1 -1
  395. package/src/core/plan/types.ts +3 -6
  396. package/src/core/sort/custom-constraints.ts +74 -0
  397. package/src/typedoc.ts +5 -0
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Index } from "../index.model.ts";
2
3
  import { CreateIndexChange, DropIndexChange } from "./index.base.ts";
3
4
  export type CommentIndex = CreateCommentOnIndex | DropCommentOnIndex;
@@ -12,7 +13,7 @@ export declare class CreateCommentOnIndex extends CreateIndexChange {
12
13
  });
13
14
  get creates(): `comment:${string}`[];
14
15
  get requires(): `index:${string}`[];
15
- serialize(): string;
16
+ serialize(_options?: SerializeOptions): string;
16
17
  }
17
18
  export declare class DropCommentOnIndex extends DropIndexChange {
18
19
  readonly index: Index;
@@ -22,5 +23,5 @@ export declare class DropCommentOnIndex extends DropIndexChange {
22
23
  });
23
24
  get drops(): `comment:${string}`[];
24
25
  get requires(): (`comment:${string}` | `index:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -17,7 +17,7 @@ export class CreateCommentOnIndex extends CreateIndexChange {
17
17
  get requires() {
18
18
  return [this.index.stableId];
19
19
  }
20
- serialize() {
20
+ serialize(_options) {
21
21
  return [
22
22
  "COMMENT ON INDEX",
23
23
  `${this.index.schema}.${this.index.name}`,
@@ -40,7 +40,7 @@ export class DropCommentOnIndex extends DropIndexChange {
40
40
  get requires() {
41
41
  return [stableId.comment(this.index.stableId), this.index.stableId];
42
42
  }
43
- serialize() {
43
+ serialize(_options) {
44
44
  return [
45
45
  "COMMENT ON INDEX",
46
46
  `${this.index.schema}.${this.index.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { TableLikeObject } from "../../base.model.ts";
2
3
  import type { Index } from "../index.model.ts";
3
4
  import { CreateIndexChange } from "./index.base.ts";
@@ -26,5 +27,5 @@ export declare class CreateIndex extends CreateIndexChange {
26
27
  });
27
28
  get creates(): `index:${string}`[];
28
29
  get requires(): string[];
29
- serialize(): string;
30
+ serialize(_options?: SerializeOptions): string;
30
31
  }
@@ -39,7 +39,7 @@ export class CreateIndex extends CreateIndexChange {
39
39
  dependencies.add(stableId.role(this.index.owner));
40
40
  return Array.from(dependencies);
41
41
  }
42
- serialize() {
42
+ serialize(_options) {
43
43
  let definition = this.index.definition;
44
44
  // btree being the default, we can omit it
45
45
  definition = definition.replace(" USING btree", "");
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Index } from "../index.model.ts";
2
3
  import { DropIndexChange } from "./index.base.ts";
3
4
  /**
@@ -18,5 +19,5 @@ export declare class DropIndex extends DropIndexChange {
18
19
  });
19
20
  get drops(): `index:${string}`[];
20
21
  get requires(): `index:${string}`[];
21
- serialize(): string;
22
+ serialize(_options?: SerializeOptions): string;
22
23
  }
@@ -22,7 +22,7 @@ export class DropIndex extends DropIndexChange {
22
22
  get requires() {
23
23
  return [this.index.stableId];
24
24
  }
25
- serialize() {
25
+ serialize(_options) {
26
26
  return ["DROP INDEX", `${this.index.schema}.${this.index.name}`].join(" ");
27
27
  }
28
28
  }
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Language } from "../language.model.ts";
2
3
  import { AlterLanguageChange } from "./language.base.ts";
3
4
  /**
@@ -24,7 +25,7 @@ export declare class AlterLanguageChangeOwner extends AlterLanguageChange {
24
25
  owner: string;
25
26
  });
26
27
  get requires(): `language:${string}`[];
27
- serialize(): string;
28
+ serialize(_options?: SerializeOptions): string;
28
29
  }
29
30
  /**
30
31
  * Replace a language.
@@ -14,7 +14,7 @@ export class AlterLanguageChangeOwner extends AlterLanguageChange {
14
14
  get requires() {
15
15
  return [this.language.stableId];
16
16
  }
17
- serialize() {
17
+ serialize(_options) {
18
18
  const parts = ["ALTER"];
19
19
  // Do not print the optional PROCEDURAL keyword.
20
20
  // It is syntactic noise and the default for procedural languages,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Language } from "../language.model.ts";
2
3
  import { CreateLanguageChange, DropLanguageChange } from "./language.base.ts";
3
4
  export type CommentLanguage = CreateCommentOnLanguage | DropCommentOnLanguage;
@@ -12,7 +13,7 @@ export declare class CreateCommentOnLanguage extends CreateLanguageChange {
12
13
  });
13
14
  get creates(): `comment:${string}`[];
14
15
  get requires(): `language:${string}`[];
15
- serialize(): string;
16
+ serialize(_options?: SerializeOptions): string;
16
17
  }
17
18
  export declare class DropCommentOnLanguage extends DropLanguageChange {
18
19
  readonly language: Language;
@@ -22,5 +23,5 @@ export declare class DropCommentOnLanguage extends DropLanguageChange {
22
23
  });
23
24
  get drops(): `comment:${string}`[];
24
25
  get requires(): (`comment:${string}` | `language:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -17,7 +17,7 @@ export class CreateCommentOnLanguage extends CreateLanguageChange {
17
17
  get requires() {
18
18
  return [this.language.stableId];
19
19
  }
20
- serialize() {
20
+ serialize(_options) {
21
21
  return [
22
22
  "COMMENT ON LANGUAGE",
23
23
  this.language.name,
@@ -39,7 +39,7 @@ export class DropCommentOnLanguage extends DropLanguageChange {
39
39
  get requires() {
40
40
  return [stableId.comment(this.language.stableId), this.language.stableId];
41
41
  }
42
- serialize() {
42
+ serialize(_options) {
43
43
  return ["COMMENT ON LANGUAGE", this.language.name, "IS NULL"].join(" ");
44
44
  }
45
45
  }
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Language } from "../language.model.ts";
2
3
  import { CreateLanguageChange } from "./language.base.ts";
3
4
  /**
@@ -21,5 +22,5 @@ export declare class CreateLanguage extends CreateLanguageChange {
21
22
  });
22
23
  get creates(): `language:${string}`[];
23
24
  get requires(): string[];
24
- serialize(): string;
25
+ serialize(_options?: SerializeOptions): string;
25
26
  }
@@ -50,7 +50,7 @@ export class CreateLanguage extends CreateLanguageChange {
50
50
  }
51
51
  return Array.from(dependencies);
52
52
  }
53
- serialize() {
53
+ serialize(_options) {
54
54
  const parts = [`CREATE${this.orReplace ? " OR REPLACE" : ""}`];
55
55
  // Only include non-default flags. We never print the optional
56
56
  // PROCEDURAL keyword or any defaults.
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Language } from "../language.model.ts";
2
3
  import { DropLanguageChange } from "./language.base.ts";
3
4
  /**
@@ -18,5 +19,5 @@ export declare class DropLanguage extends DropLanguageChange {
18
19
  });
19
20
  get drops(): `language:${string}`[];
20
21
  get requires(): `language:${string}`[];
21
- serialize(): string;
22
+ serialize(_options?: SerializeOptions): string;
22
23
  }
@@ -22,7 +22,7 @@ export class DropLanguage extends DropLanguageChange {
22
22
  get requires() {
23
23
  return [this.language.stableId];
24
24
  }
25
- serialize() {
25
+ serialize(_options) {
26
26
  const parts = ["DROP"];
27
27
  // Do not print optional keywords (e.g., PROCEDURAL). Keep the statement minimal.
28
28
  parts.push("LANGUAGE", this.language.name);
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Language } from "../language.model.ts";
2
3
  import { AlterLanguageChange } from "./language.base.ts";
3
4
  export type LanguagePrivilege = GrantLanguagePrivileges | RevokeLanguagePrivileges | RevokeGrantOptionLanguagePrivileges;
@@ -34,7 +35,7 @@ export declare class GrantLanguagePrivileges extends AlterLanguageChange {
34
35
  });
35
36
  get creates(): `acl:${string}::grantee:${string}`[];
36
37
  get requires(): (`role:${string}` | `language:${string}`)[];
37
- serialize(): string;
38
+ serialize(_options?: SerializeOptions): string;
38
39
  }
39
40
  /**
40
41
  * Revoke privileges on a language.
@@ -71,7 +72,7 @@ export declare class RevokeLanguagePrivileges extends AlterLanguageChange {
71
72
  });
72
73
  get drops(): `acl:${string}::grantee:${string}`[];
73
74
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `language:${string}`)[];
74
- serialize(): string;
75
+ serialize(_options?: SerializeOptions): string;
75
76
  }
76
77
  /**
77
78
  * Revoke grant option for privileges on a language.
@@ -93,5 +94,5 @@ export declare class RevokeGrantOptionLanguagePrivileges extends AlterLanguageCh
93
94
  version?: number;
94
95
  });
95
96
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `language:${string}`)[];
96
- serialize(): string;
97
+ serialize(_options?: SerializeOptions): string;
97
98
  }
@@ -33,7 +33,7 @@ export class GrantLanguagePrivileges extends AlterLanguageChange {
33
33
  get requires() {
34
34
  return [this.language.stableId, stableId.role(this.grantee)];
35
35
  }
36
- serialize() {
36
+ serialize(_options) {
37
37
  const hasGrantable = this.privileges.some((p) => p.grantable);
38
38
  const hasBase = this.privileges.some((p) => !p.grantable);
39
39
  if (hasGrantable && hasBase) {
@@ -86,7 +86,7 @@ export class RevokeLanguagePrivileges extends AlterLanguageChange {
86
86
  stableId.role(this.grantee),
87
87
  ];
88
88
  }
89
- serialize() {
89
+ serialize(_options) {
90
90
  const kindPrefix = getObjectKindPrefix("LANGUAGE");
91
91
  const list = this.privileges.map((p) => p.privilege);
92
92
  const privSql = formatObjectPrivilegeList("LANGUAGE", list, this.version);
@@ -120,7 +120,7 @@ export class RevokeGrantOptionLanguagePrivileges extends AlterLanguageChange {
120
120
  stableId.role(this.grantee),
121
121
  ];
122
122
  }
123
- serialize() {
123
+ serialize(_options) {
124
124
  const kindPrefix = getObjectKindPrefix("LANGUAGE");
125
125
  const privSql = formatObjectPrivilegeList("LANGUAGE", this.privilegeNames, this.version);
126
126
  return `REVOKE GRANT OPTION FOR ${privSql} ${kindPrefix} ${this.language.name} FROM ${this.grantee}`;
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { MaterializedView } from "../materialized-view.model.ts";
2
3
  import { AlterMaterializedViewChange } from "./materialized-view.base.ts";
3
4
  /**
@@ -42,7 +43,7 @@ export declare class AlterMaterializedViewChangeOwner extends AlterMaterializedV
42
43
  owner: string;
43
44
  });
44
45
  get requires(): `materializedView:${string}`[];
45
- serialize(): string;
46
+ serialize(_options?: SerializeOptions): string;
46
47
  }
47
48
  /**
48
49
  * ALTER MATERIALIZED VIEW ... SET/RESET ( storage_parameter ... )
@@ -59,7 +60,7 @@ export declare class AlterMaterializedViewSetStorageParams extends AlterMaterial
59
60
  keysToReset: string[];
60
61
  });
61
62
  get requires(): `materializedView:${string}`[];
62
- serialize(): string;
63
+ serialize(_options?: SerializeOptions): string;
63
64
  }
64
65
  /**
65
66
  * Replace a materialized view by dropping and recreating it.
@@ -14,7 +14,7 @@ export class AlterMaterializedViewChangeOwner extends AlterMaterializedViewChang
14
14
  get requires() {
15
15
  return [this.materializedView.stableId];
16
16
  }
17
- serialize() {
17
+ serialize(_options) {
18
18
  return [
19
19
  "ALTER MATERIALIZED VIEW",
20
20
  `${this.materializedView.schema}.${this.materializedView.name}`,
@@ -41,7 +41,7 @@ export class AlterMaterializedViewSetStorageParams extends AlterMaterializedView
41
41
  get requires() {
42
42
  return [this.materializedView.stableId];
43
43
  }
44
- serialize() {
44
+ serialize(_options) {
45
45
  const head = [
46
46
  "ALTER MATERIALIZED VIEW",
47
47
  `${this.materializedView.schema}.${this.materializedView.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { ColumnProps } from "../../base.model.ts";
2
3
  import type { MaterializedView } from "../materialized-view.model.ts";
3
4
  import { CreateMaterializedViewChange, DropMaterializedViewChange } from "./materialized-view.base.ts";
@@ -15,7 +16,7 @@ export declare class CreateCommentOnMaterializedView extends CreateMaterializedV
15
16
  });
16
17
  get creates(): `comment:${string}`[];
17
18
  get requires(): `materializedView:${string}`[];
18
- serialize(): string;
19
+ serialize(_options?: SerializeOptions): string;
19
20
  }
20
21
  export declare class DropCommentOnMaterializedView extends DropMaterializedViewChange {
21
22
  readonly materializedView: MaterializedView;
@@ -25,7 +26,7 @@ export declare class DropCommentOnMaterializedView extends DropMaterializedViewC
25
26
  });
26
27
  get drops(): `comment:${string}`[];
27
28
  get requires(): (`comment:${string}` | `materializedView:${string}`)[];
28
- serialize(): string;
29
+ serialize(_options?: SerializeOptions): string;
29
30
  }
30
31
  export declare class CreateCommentOnMaterializedViewColumn extends CreateMaterializedViewChange {
31
32
  readonly materializedView: MaterializedView;
@@ -37,7 +38,7 @@ export declare class CreateCommentOnMaterializedViewColumn extends CreateMateria
37
38
  });
38
39
  get creates(): `comment:${string}`[];
39
40
  get requires(): `column:${string}.${string}.${string}`[];
40
- serialize(): string;
41
+ serialize(_options?: SerializeOptions): string;
41
42
  }
42
43
  export declare class DropCommentOnMaterializedViewColumn extends DropMaterializedViewChange {
43
44
  readonly materializedView: MaterializedView;
@@ -49,5 +50,5 @@ export declare class DropCommentOnMaterializedViewColumn extends DropMaterialize
49
50
  });
50
51
  get drops(): `comment:${string}`[];
51
52
  get requires(): (`column:${string}.${string}.${string}` | `comment:${string}`)[];
52
- serialize(): string;
53
+ serialize(_options?: SerializeOptions): string;
53
54
  }
@@ -19,7 +19,7 @@ export class CreateCommentOnMaterializedView extends CreateMaterializedViewChang
19
19
  get requires() {
20
20
  return [this.materializedView.stableId];
21
21
  }
22
- serialize() {
22
+ serialize(_options) {
23
23
  return [
24
24
  "COMMENT ON MATERIALIZED VIEW",
25
25
  `${this.materializedView.schema}.${this.materializedView.name}`,
@@ -45,7 +45,7 @@ export class DropCommentOnMaterializedView extends DropMaterializedViewChange {
45
45
  this.materializedView.stableId,
46
46
  ];
47
47
  }
48
- serialize() {
48
+ serialize(_options) {
49
49
  return [
50
50
  "COMMENT ON MATERIALIZED VIEW",
51
51
  `${this.materializedView.schema}.${this.materializedView.name}`,
@@ -72,7 +72,7 @@ export class CreateCommentOnMaterializedViewColumn extends CreateMaterializedVie
72
72
  stableId.column(this.materializedView.schema, this.materializedView.name, this.column.name),
73
73
  ];
74
74
  }
75
- serialize() {
75
+ serialize(_options) {
76
76
  return [
77
77
  "COMMENT ON COLUMN",
78
78
  `${this.materializedView.schema}.${this.materializedView.name}.${this.column.name}`,
@@ -102,7 +102,7 @@ export class DropCommentOnMaterializedViewColumn extends DropMaterializedViewCha
102
102
  stableId.column(this.materializedView.schema, this.materializedView.name, this.column.name),
103
103
  ];
104
104
  }
105
- serialize() {
105
+ serialize(_options) {
106
106
  return [
107
107
  "COMMENT ON COLUMN",
108
108
  `${this.materializedView.schema}.${this.materializedView.name}.${this.column.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { MaterializedView } from "../materialized-view.model.ts";
2
3
  import { CreateMaterializedViewChange } from "./materialized-view.base.ts";
3
4
  /**
@@ -31,5 +32,5 @@ export declare class CreateMaterializedView extends CreateMaterializedViewChange
31
32
  });
32
33
  get creates(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
33
34
  get requires(): string[];
34
- serialize(): string;
35
+ serialize(_options?: SerializeOptions): string;
35
36
  }
@@ -46,7 +46,7 @@ export class CreateMaterializedView extends CreateMaterializedViewChange {
46
46
  // for existing objects. For new objects, parsing the SQL definition would be complex.
47
47
  return Array.from(dependencies);
48
48
  }
49
- serialize() {
49
+ serialize(_options) {
50
50
  const parts = ["CREATE MATERIALIZED VIEW"];
51
51
  // Add schema and name
52
52
  parts.push(`${this.materializedView.schema}.${this.materializedView.name}`);
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { MaterializedView } from "../materialized-view.model.ts";
2
3
  import { DropMaterializedViewChange } from "./materialized-view.base.ts";
3
4
  /**
@@ -22,5 +23,5 @@ export declare class DropMaterializedView extends DropMaterializedViewChange {
22
23
  });
23
24
  get drops(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
24
25
  get requires(): (`column:${string}.${string}.${string}` | `materializedView:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -33,7 +33,7 @@ export class DropMaterializedView extends DropMaterializedViewChange {
33
33
  ...this.materializedView.columns.map((column) => stableId.column(this.materializedView.schema, this.materializedView.name, column.name)),
34
34
  ];
35
35
  }
36
- serialize() {
36
+ serialize(_options) {
37
37
  return [
38
38
  "DROP MATERIALIZED VIEW",
39
39
  `${this.materializedView.schema}.${this.materializedView.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { MaterializedView } from "../materialized-view.model.ts";
2
3
  import { AlterMaterializedViewChange } from "./materialized-view.base.ts";
3
4
  export type MaterializedViewPrivilege = GrantMaterializedViewPrivileges | RevokeMaterializedViewPrivileges | RevokeGrantOptionMaterializedViewPrivileges;
@@ -37,7 +38,7 @@ export declare class GrantMaterializedViewPrivileges extends AlterMaterializedVi
37
38
  });
38
39
  get creates(): `acl:${string}::grantee:${string}`[];
39
40
  get requires(): (`role:${string}` | `materializedView:${string}`)[];
40
- serialize(): string;
41
+ serialize(_options?: SerializeOptions): string;
41
42
  }
42
43
  /**
43
44
  * Revoke privileges on a materialized view.
@@ -77,7 +78,7 @@ export declare class RevokeMaterializedViewPrivileges extends AlterMaterializedV
77
78
  });
78
79
  get drops(): `acl:${string}::grantee:${string}`[];
79
80
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `materializedView:${string}`)[];
80
- serialize(): string;
81
+ serialize(_options?: SerializeOptions): string;
81
82
  }
82
83
  /**
83
84
  * Revoke grant option for privileges on a materialized view.
@@ -101,5 +102,5 @@ export declare class RevokeGrantOptionMaterializedViewPrivileges extends AlterMa
101
102
  version?: number;
102
103
  });
103
104
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `materializedView:${string}`)[];
104
- serialize(): string;
105
+ serialize(_options?: SerializeOptions): string;
105
106
  }
@@ -38,7 +38,7 @@ export class GrantMaterializedViewPrivileges extends AlterMaterializedViewChange
38
38
  get requires() {
39
39
  return [this.materializedView.stableId, stableId.role(this.grantee)];
40
40
  }
41
- serialize() {
41
+ serialize(_options) {
42
42
  const hasGrantable = this.privileges.some((p) => p.grantable);
43
43
  const hasBase = this.privileges.some((p) => !p.grantable);
44
44
  if (hasGrantable && hasBase) {
@@ -99,7 +99,7 @@ export class RevokeMaterializedViewPrivileges extends AlterMaterializedViewChang
99
99
  stableId.role(this.grantee),
100
100
  ];
101
101
  }
102
- serialize() {
102
+ serialize(_options) {
103
103
  const kindPrefix = getObjectKindPrefix("MATERIALIZED VIEW");
104
104
  const list = this.privileges.map((p) => p.privilege);
105
105
  const privSql = formatObjectPrivilegeList("MATERIALIZED VIEW", list, this.version);
@@ -140,7 +140,7 @@ export class RevokeGrantOptionMaterializedViewPrivileges extends AlterMaterializ
140
140
  stableId.role(this.grantee),
141
141
  ];
142
142
  }
143
- serialize() {
143
+ serialize(_options) {
144
144
  const kindPrefix = getObjectKindPrefix("MATERIALIZED VIEW");
145
145
  const privSql = formatObjectPrivilegeList("MATERIALIZED VIEW", this.privilegeNames, this.version);
146
146
  const materializedViewName = `${this.materializedView.schema}.${this.materializedView.name}`;
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Procedure } from "../procedure.model.ts";
2
3
  import { AlterProcedureChange } from "./procedure.base.ts";
3
4
  /**
@@ -37,7 +38,7 @@ export declare class AlterProcedureChangeOwner extends AlterProcedureChange {
37
38
  owner: string;
38
39
  });
39
40
  get requires(): `procedure:${string}`[];
40
- serialize(): string;
41
+ serialize(_options?: SerializeOptions): string;
41
42
  }
42
43
  /**
43
44
  * ALTER FUNCTION/PROCEDURE ... SECURITY { INVOKER | DEFINER }
@@ -51,7 +52,7 @@ export declare class AlterProcedureSetSecurity extends AlterProcedureChange {
51
52
  securityDefiner: boolean;
52
53
  });
53
54
  get requires(): `procedure:${string}`[];
54
- serialize(): string;
55
+ serialize(_options?: SerializeOptions): string;
55
56
  }
56
57
  /**
57
58
  * ALTER FUNCTION/PROCEDURE ... SET/RESET configuration_parameter
@@ -79,7 +80,7 @@ export declare class AlterProcedureSetConfig extends AlterProcedureChange {
79
80
  action: "reset_all";
80
81
  });
81
82
  get requires(): `procedure:${string}`[];
82
- serialize(): string;
83
+ serialize(_options?: SerializeOptions): string;
83
84
  }
84
85
  /**
85
86
  * ALTER FUNCTION/PROCEDURE ... { IMMUTABLE | STABLE | VOLATILE }
@@ -93,7 +94,7 @@ export declare class AlterProcedureSetVolatility extends AlterProcedureChange {
93
94
  volatility: string;
94
95
  });
95
96
  get requires(): `procedure:${string}`[];
96
- serialize(): string;
97
+ serialize(_options?: SerializeOptions): string;
97
98
  }
98
99
  /**
99
100
  * ALTER FUNCTION/PROCEDURE ... { STRICT | CALLED ON NULL INPUT }
@@ -107,7 +108,7 @@ export declare class AlterProcedureSetStrictness extends AlterProcedureChange {
107
108
  isStrict: boolean;
108
109
  });
109
110
  get requires(): `procedure:${string}`[];
110
- serialize(): string;
111
+ serialize(_options?: SerializeOptions): string;
111
112
  }
112
113
  /**
113
114
  * ALTER FUNCTION/PROCEDURE ... { LEAKPROOF | NOT LEAKPROOF }
@@ -121,7 +122,7 @@ export declare class AlterProcedureSetLeakproof extends AlterProcedureChange {
121
122
  leakproof: boolean;
122
123
  });
123
124
  get requires(): `procedure:${string}`[];
124
- serialize(): string;
125
+ serialize(_options?: SerializeOptions): string;
125
126
  }
126
127
  /**
127
128
  * ALTER FUNCTION/PROCEDURE ... PARALLEL { UNSAFE | RESTRICTED | SAFE }
@@ -135,7 +136,7 @@ export declare class AlterProcedureSetParallel extends AlterProcedureChange {
135
136
  parallelSafety: string;
136
137
  });
137
138
  get requires(): `procedure:${string}`[];
138
- serialize(): string;
139
+ serialize(_options?: SerializeOptions): string;
139
140
  }
140
141
  /**
141
142
  * Replace a procedure by dropping and recreating it.
@@ -20,7 +20,7 @@ export class AlterProcedureChangeOwner extends AlterProcedureChange {
20
20
  get requires() {
21
21
  return [this.procedure.stableId];
22
22
  }
23
- serialize() {
23
+ serialize(_options) {
24
24
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
25
25
  return [
26
26
  "ALTER",
@@ -46,7 +46,7 @@ export class AlterProcedureSetSecurity extends AlterProcedureChange {
46
46
  get requires() {
47
47
  return [this.procedure.stableId];
48
48
  }
49
- serialize() {
49
+ serialize(_options) {
50
50
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
51
51
  const security = this.securityDefiner
52
52
  ? "SECURITY DEFINER"
@@ -79,7 +79,7 @@ export class AlterProcedureSetConfig extends AlterProcedureChange {
79
79
  get requires() {
80
80
  return [this.procedure.stableId];
81
81
  }
82
- serialize() {
82
+ serialize(_options) {
83
83
  const head = [
84
84
  "ALTER",
85
85
  this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION",
@@ -108,7 +108,7 @@ export class AlterProcedureSetVolatility extends AlterProcedureChange {
108
108
  get requires() {
109
109
  return [this.procedure.stableId];
110
110
  }
111
- serialize() {
111
+ serialize(_options) {
112
112
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
113
113
  const volMap = {
114
114
  i: "IMMUTABLE",
@@ -138,7 +138,7 @@ export class AlterProcedureSetStrictness extends AlterProcedureChange {
138
138
  get requires() {
139
139
  return [this.procedure.stableId];
140
140
  }
141
- serialize() {
141
+ serialize(_options) {
142
142
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
143
143
  const strictness = this.isStrict ? "STRICT" : "CALLED ON NULL INPUT";
144
144
  return [
@@ -164,7 +164,7 @@ export class AlterProcedureSetLeakproof extends AlterProcedureChange {
164
164
  get requires() {
165
165
  return [this.procedure.stableId];
166
166
  }
167
- serialize() {
167
+ serialize(_options) {
168
168
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
169
169
  const leak = this.leakproof ? "LEAKPROOF" : "NOT LEAKPROOF";
170
170
  return ["ALTER", objectType, procedureSignature(this.procedure), leak].join(" ");
@@ -185,7 +185,7 @@ export class AlterProcedureSetParallel extends AlterProcedureChange {
185
185
  get requires() {
186
186
  return [this.procedure.stableId];
187
187
  }
188
- serialize() {
188
+ serialize(_options) {
189
189
  const objectType = this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION";
190
190
  const parallelMap = {
191
191
  u: "PARALLEL UNSAFE",
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Procedure } from "../procedure.model.ts";
2
3
  import { CreateProcedureChange, DropProcedureChange } from "./procedure.base.ts";
3
4
  export type CommentProcedure = CreateCommentOnProcedure | DropCommentOnProcedure;
@@ -12,7 +13,7 @@ export declare class CreateCommentOnProcedure extends CreateProcedureChange {
12
13
  });
13
14
  get creates(): `comment:${string}`[];
14
15
  get requires(): `procedure:${string}`[];
15
- serialize(): string;
16
+ serialize(_options?: SerializeOptions): string;
16
17
  }
17
18
  export declare class DropCommentOnProcedure extends DropProcedureChange {
18
19
  readonly procedure: Procedure;
@@ -22,5 +23,5 @@ export declare class DropCommentOnProcedure extends DropProcedureChange {
22
23
  });
23
24
  get drops(): `comment:${string}`[];
24
25
  get requires(): (`comment:${string}` | `procedure:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -17,7 +17,7 @@ export class CreateCommentOnProcedure extends CreateProcedureChange {
17
17
  get requires() {
18
18
  return [this.procedure.stableId];
19
19
  }
20
- serialize() {
20
+ serialize(_options) {
21
21
  return [
22
22
  "COMMENT ON",
23
23
  this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION",
@@ -41,7 +41,7 @@ export class DropCommentOnProcedure extends DropProcedureChange {
41
41
  get requires() {
42
42
  return [stableId.comment(this.procedure.stableId), this.procedure.stableId];
43
43
  }
44
- serialize() {
44
+ serialize(_options) {
45
45
  return [
46
46
  "COMMENT ON",
47
47
  this.procedure.kind === "p" ? "PROCEDURE" : "FUNCTION",
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Procedure } from "../procedure.model.ts";
2
3
  import { CreateProcedureChange } from "./procedure.base.ts";
3
4
  /**
@@ -38,5 +39,5 @@ export declare class CreateProcedure extends CreateProcedureChange {
38
39
  });
39
40
  get creates(): `procedure:${string}`[];
40
41
  get requires(): string[];
41
- serialize(): string;
42
+ serialize(_options?: SerializeOptions): string;
42
43
  }