@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
@@ -33,7 +33,7 @@ export class GrantForeignDataWrapperPrivileges extends AlterForeignDataWrapperCh
33
33
  get requires() {
34
34
  return [this.foreignDataWrapper.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) {
@@ -83,7 +83,7 @@ export class RevokeForeignDataWrapperPrivileges extends AlterForeignDataWrapperC
83
83
  stableId.role(this.grantee),
84
84
  ];
85
85
  }
86
- serialize() {
86
+ serialize(_options) {
87
87
  const list = this.privileges.map((p) => p.privilege);
88
88
  const privSql = formatObjectPrivilegeList("FOREIGN DATA WRAPPER", list, this.version);
89
89
  return `REVOKE ${privSql} ON FOREIGN DATA WRAPPER ${this.foreignDataWrapper.name} FROM ${this.grantee}`;
@@ -116,7 +116,7 @@ export class RevokeGrantOptionForeignDataWrapperPrivileges extends AlterForeignD
116
116
  stableId.role(this.grantee),
117
117
  ];
118
118
  }
119
- serialize() {
119
+ serialize(_options) {
120
120
  const privSql = formatObjectPrivilegeList("FOREIGN DATA WRAPPER", this.privilegeNames, this.version);
121
121
  return `REVOKE GRANT OPTION FOR ${privSql} ON FOREIGN DATA WRAPPER ${this.foreignDataWrapper.name} FROM ${this.grantee}`;
122
122
  }
@@ -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 { ForeignTable } from "../foreign-table.model.ts";
3
4
  import { AlterForeignTableChange } from "./foreign-table.base.ts";
@@ -35,7 +36,7 @@ export declare class AlterForeignTableChangeOwner extends AlterForeignTableChang
35
36
  owner: string;
36
37
  });
37
38
  get requires(): (`role:${string}` | `foreignTable:${string}`)[];
38
- serialize(): string;
39
+ serialize(_options?: SerializeOptions): string;
39
40
  }
40
41
  /**
41
42
  * ALTER FOREIGN TABLE ... ADD COLUMN ...
@@ -49,7 +50,7 @@ export declare class AlterForeignTableAddColumn extends AlterForeignTableChange
49
50
  column: ColumnProps;
50
51
  });
51
52
  get requires(): `foreignTable:${string}`[];
52
- serialize(): string;
53
+ serialize(_options?: SerializeOptions): string;
53
54
  }
54
55
  /**
55
56
  * ALTER FOREIGN TABLE ... DROP COLUMN ...
@@ -63,7 +64,7 @@ export declare class AlterForeignTableDropColumn extends AlterForeignTableChange
63
64
  columnName: string;
64
65
  });
65
66
  get requires(): `foreignTable:${string}`[];
66
- serialize(): string;
67
+ serialize(_options?: SerializeOptions): string;
67
68
  }
68
69
  /**
69
70
  * ALTER FOREIGN TABLE ... ALTER COLUMN ... TYPE ...
@@ -79,7 +80,7 @@ export declare class AlterForeignTableAlterColumnType extends AlterForeignTableC
79
80
  dataType: string;
80
81
  });
81
82
  get requires(): `foreignTable:${string}`[];
82
- serialize(): string;
83
+ serialize(_options?: SerializeOptions): string;
83
84
  }
84
85
  /**
85
86
  * ALTER FOREIGN TABLE ... ALTER COLUMN ... SET DEFAULT ...
@@ -95,7 +96,7 @@ export declare class AlterForeignTableAlterColumnSetDefault extends AlterForeign
95
96
  defaultValue: string;
96
97
  });
97
98
  get requires(): `foreignTable:${string}`[];
98
- serialize(): string;
99
+ serialize(_options?: SerializeOptions): string;
99
100
  }
100
101
  /**
101
102
  * ALTER FOREIGN TABLE ... ALTER COLUMN ... DROP DEFAULT
@@ -109,7 +110,7 @@ export declare class AlterForeignTableAlterColumnDropDefault extends AlterForeig
109
110
  columnName: string;
110
111
  });
111
112
  get requires(): `foreignTable:${string}`[];
112
- serialize(): string;
113
+ serialize(_options?: SerializeOptions): string;
113
114
  }
114
115
  /**
115
116
  * ALTER FOREIGN TABLE ... ALTER COLUMN ... SET NOT NULL
@@ -123,7 +124,7 @@ export declare class AlterForeignTableAlterColumnSetNotNull extends AlterForeign
123
124
  columnName: string;
124
125
  });
125
126
  get requires(): `foreignTable:${string}`[];
126
- serialize(): string;
127
+ serialize(_options?: SerializeOptions): string;
127
128
  }
128
129
  /**
129
130
  * ALTER FOREIGN TABLE ... ALTER COLUMN ... DROP NOT NULL
@@ -137,7 +138,7 @@ export declare class AlterForeignTableAlterColumnDropNotNull extends AlterForeig
137
138
  columnName: string;
138
139
  });
139
140
  get requires(): `foreignTable:${string}`[];
140
- serialize(): string;
141
+ serialize(_options?: SerializeOptions): string;
141
142
  }
142
143
  /**
143
144
  * ALTER FOREIGN TABLE ... OPTIONS ( ADD | SET | DROP ... )
@@ -159,5 +160,5 @@ export declare class AlterForeignTableSetOptions extends AlterForeignTableChange
159
160
  }>;
160
161
  });
161
162
  get requires(): `foreignTable:${string}`[];
162
- serialize(): string;
163
+ serialize(_options?: SerializeOptions): string;
163
164
  }
@@ -16,7 +16,7 @@ export class AlterForeignTableChangeOwner extends AlterForeignTableChange {
16
16
  get requires() {
17
17
  return [this.foreignTable.stableId, stableId.role(this.owner)];
18
18
  }
19
- serialize() {
19
+ serialize(_options) {
20
20
  return [
21
21
  "ALTER FOREIGN TABLE",
22
22
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -40,7 +40,7 @@ export class AlterForeignTableAddColumn extends AlterForeignTableChange {
40
40
  get requires() {
41
41
  return [this.foreignTable.stableId];
42
42
  }
43
- serialize() {
43
+ serialize(_options) {
44
44
  const parts = [
45
45
  "ALTER FOREIGN TABLE",
46
46
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -72,7 +72,7 @@ export class AlterForeignTableDropColumn extends AlterForeignTableChange {
72
72
  get requires() {
73
73
  return [this.foreignTable.stableId];
74
74
  }
75
- serialize() {
75
+ serialize(_options) {
76
76
  return [
77
77
  "ALTER FOREIGN TABLE",
78
78
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -98,7 +98,7 @@ export class AlterForeignTableAlterColumnType extends AlterForeignTableChange {
98
98
  get requires() {
99
99
  return [this.foreignTable.stableId];
100
100
  }
101
- serialize() {
101
+ serialize(_options) {
102
102
  return [
103
103
  "ALTER FOREIGN TABLE",
104
104
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -126,7 +126,7 @@ export class AlterForeignTableAlterColumnSetDefault extends AlterForeignTableCha
126
126
  get requires() {
127
127
  return [this.foreignTable.stableId];
128
128
  }
129
- serialize() {
129
+ serialize(_options) {
130
130
  return [
131
131
  "ALTER FOREIGN TABLE",
132
132
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -152,7 +152,7 @@ export class AlterForeignTableAlterColumnDropDefault extends AlterForeignTableCh
152
152
  get requires() {
153
153
  return [this.foreignTable.stableId];
154
154
  }
155
- serialize() {
155
+ serialize(_options) {
156
156
  return [
157
157
  "ALTER FOREIGN TABLE",
158
158
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -177,7 +177,7 @@ export class AlterForeignTableAlterColumnSetNotNull extends AlterForeignTableCha
177
177
  get requires() {
178
178
  return [this.foreignTable.stableId];
179
179
  }
180
- serialize() {
180
+ serialize(_options) {
181
181
  return [
182
182
  "ALTER FOREIGN TABLE",
183
183
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -202,7 +202,7 @@ export class AlterForeignTableAlterColumnDropNotNull extends AlterForeignTableCh
202
202
  get requires() {
203
203
  return [this.foreignTable.stableId];
204
204
  }
205
- serialize() {
205
+ serialize(_options) {
206
206
  return [
207
207
  "ALTER FOREIGN TABLE",
208
208
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -227,7 +227,7 @@ export class AlterForeignTableSetOptions extends AlterForeignTableChange {
227
227
  get requires() {
228
228
  return [this.foreignTable.stableId];
229
229
  }
230
- serialize() {
230
+ serialize(_options) {
231
231
  const optionParts = [];
232
232
  for (const opt of this.options) {
233
233
  if (opt.action === "DROP") {
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { ForeignTable } from "../foreign-table.model.ts";
2
3
  import { CreateForeignTableChange, DropForeignTableChange } from "./foreign-table.base.ts";
3
4
  /**
@@ -12,7 +13,7 @@ export declare class CreateCommentOnForeignTable extends CreateForeignTableChang
12
13
  });
13
14
  get creates(): `comment:${string}`[];
14
15
  get requires(): `foreignTable:${string}`[];
15
- serialize(): string;
16
+ serialize(_options?: SerializeOptions): string;
16
17
  }
17
18
  export declare class DropCommentOnForeignTable extends DropForeignTableChange {
18
19
  readonly foreignTable: ForeignTable;
@@ -22,5 +23,5 @@ export declare class DropCommentOnForeignTable extends DropForeignTableChange {
22
23
  });
23
24
  get drops(): `comment:${string}`[];
24
25
  get requires(): (`comment:${string}` | `foreignTable:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -14,7 +14,7 @@ export class CreateCommentOnForeignTable extends CreateForeignTableChange {
14
14
  get requires() {
15
15
  return [this.foreignTable.stableId];
16
16
  }
17
- serialize() {
17
+ serialize(_options) {
18
18
  return [
19
19
  "COMMENT ON FOREIGN TABLE",
20
20
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -40,7 +40,7 @@ export class DropCommentOnForeignTable extends DropForeignTableChange {
40
40
  this.foreignTable.stableId,
41
41
  ];
42
42
  }
43
- serialize() {
43
+ serialize(_options) {
44
44
  return [
45
45
  "COMMENT ON FOREIGN TABLE",
46
46
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { ForeignTable } from "../foreign-table.model.ts";
2
3
  import { CreateForeignTableChange } from "./foreign-table.base.ts";
3
4
  /**
@@ -21,5 +22,5 @@ export declare class CreateForeignTable extends CreateForeignTableChange {
21
22
  });
22
23
  get creates(): `foreignTable:${string}`[];
23
24
  get requires(): string[];
24
- serialize(): string;
25
+ serialize(_options?: SerializeOptions): string;
25
26
  }
@@ -34,7 +34,7 @@ export class CreateForeignTable extends CreateForeignTableChange {
34
34
  dependencies.add(stableId.role(this.foreignTable.owner));
35
35
  return Array.from(dependencies);
36
36
  }
37
- serialize() {
37
+ serialize(_options) {
38
38
  const parts = ["CREATE FOREIGN TABLE"];
39
39
  // Add schema and name
40
40
  parts.push(`${this.foreignTable.schema}.${this.foreignTable.name}`);
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { ForeignTable } from "../foreign-table.model.ts";
2
3
  import { DropForeignTableChange } from "./foreign-table.base.ts";
3
4
  /**
@@ -18,5 +19,5 @@ export declare class DropForeignTable extends DropForeignTableChange {
18
19
  });
19
20
  get drops(): `foreignTable:${string}`[];
20
21
  get requires(): `foreignTable:${string}`[];
21
- serialize(): string;
22
+ serialize(_options?: SerializeOptions): string;
22
23
  }
@@ -22,7 +22,7 @@ export class DropForeignTable extends DropForeignTableChange {
22
22
  get requires() {
23
23
  return [this.foreignTable.stableId];
24
24
  }
25
- serialize() {
25
+ serialize(_options) {
26
26
  return [
27
27
  "DROP FOREIGN TABLE",
28
28
  `${this.foreignTable.schema}.${this.foreignTable.name}`,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { ForeignTable } from "../foreign-table.model.ts";
2
3
  import { AlterForeignTableChange } from "./foreign-table.base.ts";
3
4
  export type ForeignTablePrivilege = GrantForeignTablePrivileges | RevokeForeignTablePrivileges | RevokeGrantOptionForeignTablePrivileges;
@@ -34,7 +35,7 @@ export declare class GrantForeignTablePrivileges extends AlterForeignTableChange
34
35
  });
35
36
  get creates(): `acl:${string}::grantee:${string}`[];
36
37
  get requires(): (`role:${string}` | `foreignTable:${string}`)[];
37
- serialize(): string;
38
+ serialize(_options?: SerializeOptions): string;
38
39
  }
39
40
  /**
40
41
  * Revoke privileges on a foreign table.
@@ -71,7 +72,7 @@ export declare class RevokeForeignTablePrivileges extends AlterForeignTableChang
71
72
  });
72
73
  get drops(): `acl:${string}::grantee:${string}`[];
73
74
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `foreignTable:${string}`)[];
74
- serialize(): string;
75
+ serialize(_options?: SerializeOptions): string;
75
76
  }
76
77
  /**
77
78
  * Revoke grant option for privileges on a foreign table.
@@ -93,5 +94,5 @@ export declare class RevokeGrantOptionForeignTablePrivileges extends AlterForeig
93
94
  version?: number;
94
95
  });
95
96
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `foreignTable:${string}`)[];
96
- serialize(): string;
97
+ serialize(_options?: SerializeOptions): string;
97
98
  }
@@ -33,7 +33,7 @@ export class GrantForeignTablePrivileges extends AlterForeignTableChange {
33
33
  get requires() {
34
34
  return [this.foreignTable.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) {
@@ -85,7 +85,7 @@ export class RevokeForeignTablePrivileges extends AlterForeignTableChange {
85
85
  stableId.role(this.grantee),
86
86
  ];
87
87
  }
88
- serialize() {
88
+ serialize(_options) {
89
89
  const kindPrefix = getObjectKindPrefix("FOREIGN TABLE");
90
90
  const list = this.privileges.map((p) => p.privilege);
91
91
  const privSql = formatObjectPrivilegeList("FOREIGN TABLE", list, this.version);
@@ -120,7 +120,7 @@ export class RevokeGrantOptionForeignTablePrivileges extends AlterForeignTableCh
120
120
  stableId.role(this.grantee),
121
121
  ];
122
122
  }
123
- serialize() {
123
+ serialize(_options) {
124
124
  const kindPrefix = getObjectKindPrefix("FOREIGN TABLE");
125
125
  const privSql = formatObjectPrivilegeList("FOREIGN TABLE", this.privilegeNames, this.version);
126
126
  const tableName = `${this.foreignTable.schema}.${this.foreignTable.name}`;
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Server } from "../server.model.ts";
2
3
  import { AlterServerChange } from "./server.base.ts";
3
4
  /**
@@ -25,7 +26,7 @@ export declare class AlterServerChangeOwner extends AlterServerChange {
25
26
  owner: string;
26
27
  });
27
28
  get requires(): (`role:${string}` | `server:${string}`)[];
28
- serialize(): string;
29
+ serialize(_options?: SerializeOptions): string;
29
30
  }
30
31
  /**
31
32
  * ALTER SERVER ... VERSION ...
@@ -39,7 +40,7 @@ export declare class AlterServerSetVersion extends AlterServerChange {
39
40
  version: string | null;
40
41
  });
41
42
  get requires(): `server:${string}`[];
42
- serialize(): string;
43
+ serialize(_options?: SerializeOptions): string;
43
44
  }
44
45
  /**
45
46
  * ALTER SERVER ... OPTIONS ( ADD | SET | DROP ... )
@@ -61,5 +62,5 @@ export declare class AlterServerSetOptions extends AlterServerChange {
61
62
  }>;
62
63
  });
63
64
  get requires(): `server:${string}`[];
64
- serialize(): string;
65
+ serialize(_options?: SerializeOptions): string;
65
66
  }
@@ -16,7 +16,7 @@ export class AlterServerChangeOwner extends AlterServerChange {
16
16
  get requires() {
17
17
  return [this.server.stableId, stableId.role(this.owner)];
18
18
  }
19
- serialize() {
19
+ serialize(_options) {
20
20
  return ["ALTER SERVER", this.server.name, "OWNER TO", this.owner].join(" ");
21
21
  }
22
22
  }
@@ -35,7 +35,7 @@ export class AlterServerSetVersion extends AlterServerChange {
35
35
  get requires() {
36
36
  return [this.server.stableId];
37
37
  }
38
- serialize() {
38
+ serialize(_options) {
39
39
  if (this.version === null) {
40
40
  // PostgreSQL doesn't support removing version, but we'll handle it
41
41
  return ["ALTER SERVER", this.server.name, "VERSION", "''"].join(" ");
@@ -63,7 +63,7 @@ export class AlterServerSetOptions extends AlterServerChange {
63
63
  get requires() {
64
64
  return [this.server.stableId];
65
65
  }
66
- serialize() {
66
+ serialize(_options) {
67
67
  const optionParts = [];
68
68
  for (const opt of this.options) {
69
69
  if (opt.action === "DROP") {
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Server } from "../server.model.ts";
2
3
  import { CreateServerChange, DropServerChange } from "./server.base.ts";
3
4
  /**
@@ -12,7 +13,7 @@ export declare class CreateCommentOnServer extends CreateServerChange {
12
13
  });
13
14
  get creates(): `comment:${string}`[];
14
15
  get requires(): `server:${string}`[];
15
- serialize(): string;
16
+ serialize(_options?: SerializeOptions): string;
16
17
  }
17
18
  export declare class DropCommentOnServer extends DropServerChange {
18
19
  readonly server: Server;
@@ -22,5 +23,5 @@ export declare class DropCommentOnServer extends DropServerChange {
22
23
  });
23
24
  get drops(): `comment:${string}`[];
24
25
  get requires(): (`comment:${string}` | `server:${string}`)[];
25
- serialize(): string;
26
+ serialize(_options?: SerializeOptions): string;
26
27
  }
@@ -14,7 +14,7 @@ export class CreateCommentOnServer extends CreateServerChange {
14
14
  get requires() {
15
15
  return [this.server.stableId];
16
16
  }
17
- serialize() {
17
+ serialize(_options) {
18
18
  return [
19
19
  "COMMENT ON SERVER",
20
20
  this.server.name,
@@ -37,7 +37,7 @@ export class DropCommentOnServer extends DropServerChange {
37
37
  get requires() {
38
38
  return [stableId.comment(this.server.stableId), this.server.stableId];
39
39
  }
40
- serialize() {
40
+ serialize(_options) {
41
41
  return ["COMMENT ON SERVER", this.server.name, "IS NULL"].join(" ");
42
42
  }
43
43
  }
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Server } from "../server.model.ts";
2
3
  import { CreateServerChange } from "./server.base.ts";
3
4
  /**
@@ -20,5 +21,5 @@ export declare class CreateServer extends CreateServerChange {
20
21
  });
21
22
  get creates(): `server:${string}`[];
22
23
  get requires(): string[];
23
- serialize(): string;
24
+ serialize(_options?: SerializeOptions): string;
24
25
  }
@@ -31,7 +31,7 @@ export class CreateServer extends CreateServerChange {
31
31
  dependencies.add(stableId.role(this.server.owner));
32
32
  return Array.from(dependencies);
33
33
  }
34
- serialize() {
34
+ serialize(_options) {
35
35
  const parts = ["CREATE SERVER"];
36
36
  // Add server name
37
37
  parts.push(this.server.name);
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Server } from "../server.model.ts";
2
3
  import { DropServerChange } from "./server.base.ts";
3
4
  /**
@@ -18,5 +19,5 @@ export declare class DropServer extends DropServerChange {
18
19
  });
19
20
  get drops(): `server:${string}`[];
20
21
  get requires(): `server:${string}`[];
21
- serialize(): string;
22
+ serialize(_options?: SerializeOptions): string;
22
23
  }
@@ -22,7 +22,7 @@ export class DropServer extends DropServerChange {
22
22
  get requires() {
23
23
  return [this.server.stableId];
24
24
  }
25
- serialize() {
25
+ serialize(_options) {
26
26
  return ["DROP SERVER", this.server.name].join(" ");
27
27
  }
28
28
  }
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { Server } from "../server.model.ts";
2
3
  import { AlterServerChange } from "./server.base.ts";
3
4
  export type ServerPrivilege = GrantServerPrivileges | RevokeServerPrivileges | RevokeGrantOptionServerPrivileges;
@@ -34,7 +35,7 @@ export declare class GrantServerPrivileges extends AlterServerChange {
34
35
  });
35
36
  get creates(): `acl:${string}::grantee:${string}`[];
36
37
  get requires(): (`role:${string}` | `server:${string}`)[];
37
- serialize(): string;
38
+ serialize(_options?: SerializeOptions): string;
38
39
  }
39
40
  /**
40
41
  * Revoke privileges on a server.
@@ -71,7 +72,7 @@ export declare class RevokeServerPrivileges extends AlterServerChange {
71
72
  });
72
73
  get drops(): `acl:${string}::grantee:${string}`[];
73
74
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `server:${string}`)[];
74
- serialize(): string;
75
+ serialize(_options?: SerializeOptions): string;
75
76
  }
76
77
  /**
77
78
  * Revoke grant option for privileges on a server.
@@ -93,5 +94,5 @@ export declare class RevokeGrantOptionServerPrivileges extends AlterServerChange
93
94
  version?: number;
94
95
  });
95
96
  get requires(): (`acl:${string}::grantee:${string}` | `role:${string}` | `server:${string}`)[];
96
- serialize(): string;
97
+ serialize(_options?: SerializeOptions): string;
97
98
  }
@@ -33,7 +33,7 @@ export class GrantServerPrivileges extends AlterServerChange {
33
33
  get requires() {
34
34
  return [this.server.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) {
@@ -83,7 +83,7 @@ export class RevokeServerPrivileges extends AlterServerChange {
83
83
  stableId.role(this.grantee),
84
84
  ];
85
85
  }
86
- serialize() {
86
+ serialize(_options) {
87
87
  const list = this.privileges.map((p) => p.privilege);
88
88
  const privSql = formatObjectPrivilegeList("SERVER", list, this.version);
89
89
  return `REVOKE ${privSql} ON SERVER ${this.server.name} FROM ${this.grantee}`;
@@ -116,7 +116,7 @@ export class RevokeGrantOptionServerPrivileges extends AlterServerChange {
116
116
  stableId.role(this.grantee),
117
117
  ];
118
118
  }
119
- serialize() {
119
+ serialize(_options) {
120
120
  const privSql = formatObjectPrivilegeList("SERVER", this.privilegeNames, this.version);
121
121
  return `REVOKE GRANT OPTION FOR ${privSql} ON SERVER ${this.server.name} FROM ${this.grantee}`;
122
122
  }
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { UserMapping } from "../user-mapping.model.ts";
2
3
  import { AlterUserMappingChange } from "./user-mapping.base.ts";
3
4
  /**
@@ -33,5 +34,5 @@ export declare class AlterUserMappingSetOptions extends AlterUserMappingChange {
33
34
  }>;
34
35
  });
35
36
  get requires(): `userMapping:${string}:${string}`[];
36
- serialize(): string;
37
+ serialize(_options?: SerializeOptions): string;
37
38
  }
@@ -15,7 +15,7 @@ export class AlterUserMappingSetOptions extends AlterUserMappingChange {
15
15
  get requires() {
16
16
  return [this.userMapping.stableId];
17
17
  }
18
- serialize() {
18
+ serialize(_options) {
19
19
  const optionParts = [];
20
20
  for (const opt of this.options) {
21
21
  if (opt.action === "DROP") {
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { UserMapping } from "../user-mapping.model.ts";
2
3
  import { CreateUserMappingChange } from "./user-mapping.base.ts";
3
4
  /**
@@ -20,5 +21,5 @@ export declare class CreateUserMapping extends CreateUserMappingChange {
20
21
  });
21
22
  get creates(): `userMapping:${string}:${string}`[];
22
23
  get requires(): string[];
23
- serialize(): string;
24
+ serialize(_options?: SerializeOptions): string;
24
25
  }
@@ -29,7 +29,7 @@ export class CreateUserMapping extends CreateUserMappingChange {
29
29
  dependencies.add(stableId.server(this.userMapping.server));
30
30
  return Array.from(dependencies);
31
31
  }
32
- serialize() {
32
+ serialize(_options) {
33
33
  const parts = ["CREATE USER MAPPING FOR"];
34
34
  // Add user (can be CURRENT_USER, PUBLIC, etc.)
35
35
  parts.push(this.userMapping.user);
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../../integrations/serialize/serialize.types.ts";
1
2
  import type { UserMapping } from "../user-mapping.model.ts";
2
3
  import { DropUserMappingChange } from "./user-mapping.base.ts";
3
4
  /**
@@ -19,5 +20,5 @@ export declare class DropUserMapping extends DropUserMappingChange {
19
20
  });
20
21
  get drops(): `userMapping:${string}:${string}`[];
21
22
  get requires(): `userMapping:${string}:${string}`[];
22
- serialize(): string;
23
+ serialize(_options?: SerializeOptions): string;
23
24
  }
@@ -23,7 +23,7 @@ export class DropUserMapping extends DropUserMappingChange {
23
23
  get requires() {
24
24
  return [this.userMapping.stableId];
25
25
  }
26
- serialize() {
26
+ serialize(_options) {
27
27
  return [
28
28
  "DROP USER MAPPING FOR",
29
29
  this.userMapping.user,
@@ -1,3 +1,4 @@
1
+ import type { SerializeOptions } from "../../../integrations/serialize/serialize.types.ts";
1
2
  import { BaseChange } from "../../base.change.ts";
2
3
  import type { Index } from "../index.model.ts";
3
4
  import { AlterIndexChange } from "./index.base.ts";
@@ -30,7 +31,7 @@ export declare class AlterIndexSetStorageParams extends AlterIndexChange {
30
31
  keysToReset: string[];
31
32
  });
32
33
  get requires(): `index:${string}`[];
33
- serialize(): string;
34
+ serialize(_options?: SerializeOptions): string;
34
35
  }
35
36
  /**
36
37
  * ALTER INDEX ... SET STATISTICS ...
@@ -52,7 +53,7 @@ export declare class AlterIndexSetStatistics extends BaseChange {
52
53
  }>;
53
54
  });
54
55
  get requires(): `index:${string}`[];
55
- serialize(): string;
56
+ serialize(_options?: SerializeOptions): string;
56
57
  }
57
58
  /**
58
59
  * ALTER INDEX ... SET TABLESPACE ...
@@ -68,7 +69,7 @@ export declare class AlterIndexSetTablespace extends BaseChange {
68
69
  tablespace: string;
69
70
  });
70
71
  get requires(): `index:${string}`[];
71
- serialize(): string;
72
+ serialize(_options?: SerializeOptions): string;
72
73
  }
73
74
  /**
74
75
  * Replace an index by dropping and recreating it.
@@ -17,7 +17,7 @@ export class AlterIndexSetStorageParams extends AlterIndexChange {
17
17
  get requires() {
18
18
  return [this.index.stableId];
19
19
  }
20
- serialize() {
20
+ serialize(_options) {
21
21
  const head = [
22
22
  "ALTER INDEX",
23
23
  `${this.index.schema}.${this.index.name}`,
@@ -49,7 +49,7 @@ export class AlterIndexSetStatistics extends BaseChange {
49
49
  get requires() {
50
50
  return [this.index.stableId];
51
51
  }
52
- serialize() {
52
+ serialize(_options) {
53
53
  const statements = [];
54
54
  const head = [
55
55
  "ALTER INDEX",
@@ -78,7 +78,7 @@ export class AlterIndexSetTablespace extends BaseChange {
78
78
  get requires() {
79
79
  return [this.index.stableId];
80
80
  }
81
- serialize() {
81
+ serialize(_options) {
82
82
  return [
83
83
  "ALTER INDEX",
84
84
  `${this.index.schema}.${this.index.name}`,