@signstack/cli 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (269) hide show
  1. package/README.md +458 -0
  2. package/bin/run.js +12 -0
  3. package/dist/apps/signstack-cli/schemas/asset.schema.json +220 -0
  4. package/dist/apps/signstack-cli/schemas/blueprint.schema.json +485 -0
  5. package/dist/apps/signstack-cli/schemas/jsonata-function.schema.json +185 -0
  6. package/dist/apps/signstack-cli/schemas/schema.schema.json +97 -0
  7. package/dist/apps/signstack-cli/schemas/template.schema.json +295 -0
  8. package/dist/apps/signstack-cli/src/commands/auth/login.d.ts +25 -0
  9. package/dist/apps/signstack-cli/src/commands/auth/login.js +229 -0
  10. package/dist/apps/signstack-cli/src/commands/auth/login.js.map +1 -0
  11. package/dist/apps/signstack-cli/src/commands/auth/logout.d.ts +10 -0
  12. package/dist/apps/signstack-cli/src/commands/auth/logout.js +59 -0
  13. package/dist/apps/signstack-cli/src/commands/auth/logout.js.map +1 -0
  14. package/dist/apps/signstack-cli/src/commands/auth/whoami.d.ts +9 -0
  15. package/dist/apps/signstack-cli/src/commands/auth/whoami.js +85 -0
  16. package/dist/apps/signstack-cli/src/commands/auth/whoami.js.map +1 -0
  17. package/dist/apps/signstack-cli/src/commands/generate.d.ts +51 -0
  18. package/dist/apps/signstack-cli/src/commands/generate.js +479 -0
  19. package/dist/apps/signstack-cli/src/commands/generate.js.map +1 -0
  20. package/dist/apps/signstack-cli/src/commands/preview.d.ts +24 -0
  21. package/dist/apps/signstack-cli/src/commands/preview.js +162 -0
  22. package/dist/apps/signstack-cli/src/commands/preview.js.map +1 -0
  23. package/dist/apps/signstack-cli/src/commands/pull.d.ts +28 -0
  24. package/dist/apps/signstack-cli/src/commands/pull.js +244 -0
  25. package/dist/apps/signstack-cli/src/commands/pull.js.map +1 -0
  26. package/dist/apps/signstack-cli/src/commands/push.d.ts +46 -0
  27. package/dist/apps/signstack-cli/src/commands/push.js +460 -0
  28. package/dist/apps/signstack-cli/src/commands/push.js.map +1 -0
  29. package/dist/apps/signstack-cli/src/commands/run.d.ts +22 -0
  30. package/dist/apps/signstack-cli/src/commands/run.js +126 -0
  31. package/dist/apps/signstack-cli/src/commands/run.js.map +1 -0
  32. package/dist/apps/signstack-cli/src/commands/test.d.ts +6 -0
  33. package/dist/apps/signstack-cli/src/commands/test.js +25 -0
  34. package/dist/apps/signstack-cli/src/commands/test.js.map +1 -0
  35. package/dist/apps/signstack-cli/src/commands/validate.d.ts +59 -0
  36. package/dist/apps/signstack-cli/src/commands/validate.js +558 -0
  37. package/dist/apps/signstack-cli/src/commands/validate.js.map +1 -0
  38. package/dist/apps/signstack-cli/src/index.d.ts +1 -0
  39. package/dist/apps/signstack-cli/src/index.js +2 -0
  40. package/dist/apps/signstack-cli/src/index.js.map +1 -0
  41. package/dist/apps/signstack-cli/src/lib/api-client.d.ts +77 -0
  42. package/dist/apps/signstack-cli/src/lib/api-client.js +269 -0
  43. package/dist/apps/signstack-cli/src/lib/api-client.js.map +1 -0
  44. package/dist/apps/signstack-cli/src/lib/base-command.d.ts +38 -0
  45. package/dist/apps/signstack-cli/src/lib/base-command.js +135 -0
  46. package/dist/apps/signstack-cli/src/lib/base-command.js.map +1 -0
  47. package/dist/apps/signstack-cli/src/lib/config.d.ts +47 -0
  48. package/dist/apps/signstack-cli/src/lib/config.js +106 -0
  49. package/dist/apps/signstack-cli/src/lib/config.js.map +1 -0
  50. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.d.ts +31 -0
  51. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.js +107 -0
  52. package/dist/apps/signstack-cli/src/lib/entity-data-resolver.js.map +1 -0
  53. package/dist/apps/signstack-cli/src/lib/local-resource-loader.d.ts +72 -0
  54. package/dist/apps/signstack-cli/src/lib/local-resource-loader.js +238 -0
  55. package/dist/apps/signstack-cli/src/lib/local-resource-loader.js.map +1 -0
  56. package/dist/apps/signstack-cli/src/lib/path-utils.d.ts +4 -0
  57. package/dist/apps/signstack-cli/src/lib/path-utils.js +7 -0
  58. package/dist/apps/signstack-cli/src/lib/path-utils.js.map +1 -0
  59. package/dist/apps/signstack-cli/src/lib/payload-builder.d.ts +127 -0
  60. package/dist/apps/signstack-cli/src/lib/payload-builder.js +545 -0
  61. package/dist/apps/signstack-cli/src/lib/payload-builder.js.map +1 -0
  62. package/dist/apps/signstack-cli/src/lib/preview-handler.d.ts +95 -0
  63. package/dist/apps/signstack-cli/src/lib/preview-handler.js +611 -0
  64. package/dist/apps/signstack-cli/src/lib/preview-handler.js.map +1 -0
  65. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.d.ts +63 -0
  66. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.js +198 -0
  67. package/dist/apps/signstack-cli/src/lib/preview-output-formatter.js.map +1 -0
  68. package/dist/apps/signstack-cli/src/lib/public-api-client.d.ts +13 -0
  69. package/dist/apps/signstack-cli/src/lib/public-api-client.js +39 -0
  70. package/dist/apps/signstack-cli/src/lib/public-api-client.js.map +1 -0
  71. package/dist/apps/signstack-cli/src/lib/resource-puller.d.ts +131 -0
  72. package/dist/apps/signstack-cli/src/lib/resource-puller.js +800 -0
  73. package/dist/apps/signstack-cli/src/lib/resource-puller.js.map +1 -0
  74. package/dist/apps/signstack-cli/src/lib/resource-pusher.d.ts +87 -0
  75. package/dist/apps/signstack-cli/src/lib/resource-pusher.js +361 -0
  76. package/dist/apps/signstack-cli/src/lib/resource-pusher.js.map +1 -0
  77. package/dist/apps/signstack-cli/src/lib/resource-scanner.d.ts +29 -0
  78. package/dist/apps/signstack-cli/src/lib/resource-scanner.js +101 -0
  79. package/dist/apps/signstack-cli/src/lib/resource-scanner.js.map +1 -0
  80. package/dist/apps/signstack-cli/src/lib/resource-validator.d.ts +44 -0
  81. package/dist/apps/signstack-cli/src/lib/resource-validator.js +158 -0
  82. package/dist/apps/signstack-cli/src/lib/resource-validator.js.map +1 -0
  83. package/dist/apps/signstack-cli/src/lib/run-handler.d.ts +47 -0
  84. package/dist/apps/signstack-cli/src/lib/run-handler.js +266 -0
  85. package/dist/apps/signstack-cli/src/lib/run-handler.js.map +1 -0
  86. package/dist/apps/signstack-cli/src/lib/safe-path.d.ts +28 -0
  87. package/dist/apps/signstack-cli/src/lib/safe-path.js +44 -0
  88. package/dist/apps/signstack-cli/src/lib/safe-path.js.map +1 -0
  89. package/dist/apps/signstack-cli/src/lib/scenario-file.d.ts +35 -0
  90. package/dist/apps/signstack-cli/src/lib/scenario-file.js +80 -0
  91. package/dist/apps/signstack-cli/src/lib/scenario-file.js.map +1 -0
  92. package/dist/apps/signstack-cli/src/lib/schema-validator.d.ts +8 -0
  93. package/dist/apps/signstack-cli/src/lib/schema-validator.js +39 -0
  94. package/dist/apps/signstack-cli/src/lib/schema-validator.js.map +1 -0
  95. package/dist/apps/signstack-cli/src/lib/url-validator.d.ts +17 -0
  96. package/dist/apps/signstack-cli/src/lib/url-validator.js +61 -0
  97. package/dist/apps/signstack-cli/src/lib/url-validator.js.map +1 -0
  98. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.d.ts +25 -0
  99. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.js +133 -0
  100. package/dist/apps/signstack-cli/src/lib/yaml-document-parser.js.map +1 -0
  101. package/dist/apps/signstack-cli/src/lib/yaml-transforms.d.ts +3 -0
  102. package/dist/apps/signstack-cli/src/lib/yaml-transforms.js +32 -0
  103. package/dist/apps/signstack-cli/src/lib/yaml-transforms.js.map +1 -0
  104. package/dist/apps/signstack-cli/src/lib/yaml-writer.d.ts +47 -0
  105. package/dist/apps/signstack-cli/src/lib/yaml-writer.js +160 -0
  106. package/dist/apps/signstack-cli/src/lib/yaml-writer.js.map +1 -0
  107. package/dist/apps/signstack-cli/src/types/auth.types.d.ts +48 -0
  108. package/dist/apps/signstack-cli/src/types/auth.types.js +31 -0
  109. package/dist/apps/signstack-cli/src/types/auth.types.js.map +1 -0
  110. package/dist/apps/signstack-cli/src/types/schema.types.d.ts +14 -0
  111. package/dist/apps/signstack-cli/src/types/schema.types.js +16 -0
  112. package/dist/apps/signstack-cli/src/types/schema.types.js.map +1 -0
  113. package/dist/apps/signstack-cli/src/types/yaml.types.d.ts +144 -0
  114. package/dist/apps/signstack-cli/src/types/yaml.types.js +2 -0
  115. package/dist/apps/signstack-cli/src/types/yaml.types.js.map +1 -0
  116. package/dist/libs/common/base/src/index.d.ts +14 -0
  117. package/dist/libs/common/base/src/index.js +44 -0
  118. package/dist/libs/common/base/src/index.js.map +1 -0
  119. package/dist/libs/common/base/src/lib/address.util.d.ts +12 -0
  120. package/dist/libs/common/base/src/lib/address.util.js +55 -0
  121. package/dist/libs/common/base/src/lib/address.util.js.map +1 -0
  122. package/dist/libs/common/base/src/lib/country-code-data.d.ts +5 -0
  123. package/dist/libs/common/base/src/lib/country-code-data.js +1256 -0
  124. package/dist/libs/common/base/src/lib/country-code-data.js.map +1 -0
  125. package/dist/libs/common/base/src/lib/date.util.d.ts +13 -0
  126. package/dist/libs/common/base/src/lib/date.util.js +135 -0
  127. package/dist/libs/common/base/src/lib/date.util.js.map +1 -0
  128. package/dist/libs/common/base/src/lib/headers.d.ts +1 -0
  129. package/dist/libs/common/base/src/lib/headers.js +5 -0
  130. package/dist/libs/common/base/src/lib/headers.js.map +1 -0
  131. package/dist/libs/common/base/src/lib/jsonata.service.d.ts +32 -0
  132. package/dist/libs/common/base/src/lib/jsonata.service.js +207 -0
  133. package/dist/libs/common/base/src/lib/jsonata.service.js.map +1 -0
  134. package/dist/libs/common/base/src/lib/key-validation.constants.d.ts +37 -0
  135. package/dist/libs/common/base/src/lib/key-validation.constants.js +144 -0
  136. package/dist/libs/common/base/src/lib/key-validation.constants.js.map +1 -0
  137. package/dist/libs/common/base/src/lib/phone-util.d.ts +16 -0
  138. package/dist/libs/common/base/src/lib/phone-util.js +61 -0
  139. package/dist/libs/common/base/src/lib/phone-util.js.map +1 -0
  140. package/dist/libs/common/base/src/lib/schema-validation.util.d.ts +24 -0
  141. package/dist/libs/common/base/src/lib/schema-validation.util.js +155 -0
  142. package/dist/libs/common/base/src/lib/schema-validation.util.js.map +1 -0
  143. package/dist/libs/common/base/src/lib/string-builder.d.ts +48 -0
  144. package/dist/libs/common/base/src/lib/string-builder.js +90 -0
  145. package/dist/libs/common/base/src/lib/string-builder.js.map +1 -0
  146. package/dist/libs/common/base/src/lib/util.d.ts +20 -0
  147. package/dist/libs/common/base/src/lib/util.js +110 -0
  148. package/dist/libs/common/base/src/lib/util.js.map +1 -0
  149. package/dist/libs/signstack/base/schemas/asset.schema.json +220 -0
  150. package/dist/libs/signstack/base/schemas/blueprint.schema.json +485 -0
  151. package/dist/libs/signstack/base/schemas/jsonata-function.schema.json +185 -0
  152. package/dist/libs/signstack/base/schemas/schema.schema.json +97 -0
  153. package/dist/libs/signstack/base/schemas/template.schema.json +295 -0
  154. package/dist/libs/signstack/base/src/index.d.ts +28 -0
  155. package/dist/libs/signstack/base/src/index.js +32 -0
  156. package/dist/libs/signstack/base/src/index.js.map +1 -0
  157. package/dist/libs/signstack/base/src/lib/constants.d.ts +123 -0
  158. package/dist/libs/signstack/base/src/lib/constants.js +131 -0
  159. package/dist/libs/signstack/base/src/lib/constants.js.map +1 -0
  160. package/dist/libs/signstack/base/src/lib/hash.util.d.ts +58 -0
  161. package/dist/libs/signstack/base/src/lib/hash.util.js +90 -0
  162. package/dist/libs/signstack/base/src/lib/hash.util.js.map +1 -0
  163. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.d.ts +29 -0
  164. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.js +93 -0
  165. package/dist/libs/signstack/base/src/lib/is-schema-renderable.util.js.map +1 -0
  166. package/dist/libs/signstack/base/src/lib/models/ai-chat.d.ts +41 -0
  167. package/dist/libs/signstack/base/src/lib/models/ai-chat.js +3 -0
  168. package/dist/libs/signstack/base/src/lib/models/ai-chat.js.map +1 -0
  169. package/dist/libs/signstack/base/src/lib/models/api-key.d.ts +54 -0
  170. package/dist/libs/signstack/base/src/lib/models/api-key.js +18 -0
  171. package/dist/libs/signstack/base/src/lib/models/api-key.js.map +1 -0
  172. package/dist/libs/signstack/base/src/lib/models/asset.d.ts +101 -0
  173. package/dist/libs/signstack/base/src/lib/models/asset.js +11 -0
  174. package/dist/libs/signstack/base/src/lib/models/asset.js.map +1 -0
  175. package/dist/libs/signstack/base/src/lib/models/auth.d.ts +142 -0
  176. package/dist/libs/signstack/base/src/lib/models/auth.js +35 -0
  177. package/dist/libs/signstack/base/src/lib/models/auth.js.map +1 -0
  178. package/dist/libs/signstack/base/src/lib/models/base.d.ts +134 -0
  179. package/dist/libs/signstack/base/src/lib/models/base.js +71 -0
  180. package/dist/libs/signstack/base/src/lib/models/base.js.map +1 -0
  181. package/dist/libs/signstack/base/src/lib/models/blueprint.d.ts +311 -0
  182. package/dist/libs/signstack/base/src/lib/models/blueprint.js +9 -0
  183. package/dist/libs/signstack/base/src/lib/models/blueprint.js.map +1 -0
  184. package/dist/libs/signstack/base/src/lib/models/file.d.ts +75 -0
  185. package/dist/libs/signstack/base/src/lib/models/file.js +9 -0
  186. package/dist/libs/signstack/base/src/lib/models/file.js.map +1 -0
  187. package/dist/libs/signstack/base/src/lib/models/jsonata-function.d.ts +111 -0
  188. package/dist/libs/signstack/base/src/lib/models/jsonata-function.js +19 -0
  189. package/dist/libs/signstack/base/src/lib/models/jsonata-function.js.map +1 -0
  190. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.d.ts +132 -0
  191. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.js +22 -0
  192. package/dist/libs/signstack/base/src/lib/models/marketplace-listing.js.map +1 -0
  193. package/dist/libs/signstack/base/src/lib/models/membership.d.ts +127 -0
  194. package/dist/libs/signstack/base/src/lib/models/membership.js +22 -0
  195. package/dist/libs/signstack/base/src/lib/models/membership.js.map +1 -0
  196. package/dist/libs/signstack/base/src/lib/models/namespace.d.ts +87 -0
  197. package/dist/libs/signstack/base/src/lib/models/namespace.js +57 -0
  198. package/dist/libs/signstack/base/src/lib/models/namespace.js.map +1 -0
  199. package/dist/libs/signstack/base/src/lib/models/organization.d.ts +79 -0
  200. package/dist/libs/signstack/base/src/lib/models/organization.js +41 -0
  201. package/dist/libs/signstack/base/src/lib/models/organization.js.map +1 -0
  202. package/dist/libs/signstack/base/src/lib/models/render-job.d.ts +88 -0
  203. package/dist/libs/signstack/base/src/lib/models/render-job.js +3 -0
  204. package/dist/libs/signstack/base/src/lib/models/render-job.js.map +1 -0
  205. package/dist/libs/signstack/base/src/lib/models/resource-edge.d.ts +60 -0
  206. package/dist/libs/signstack/base/src/lib/models/resource-edge.js +202 -0
  207. package/dist/libs/signstack/base/src/lib/models/resource-edge.js.map +1 -0
  208. package/dist/libs/signstack/base/src/lib/models/scenario.d.ts +138 -0
  209. package/dist/libs/signstack/base/src/lib/models/scenario.js +14 -0
  210. package/dist/libs/signstack/base/src/lib/models/scenario.js.map +1 -0
  211. package/dist/libs/signstack/base/src/lib/models/schema.d.ts +131 -0
  212. package/dist/libs/signstack/base/src/lib/models/schema.js +44 -0
  213. package/dist/libs/signstack/base/src/lib/models/schema.js.map +1 -0
  214. package/dist/libs/signstack/base/src/lib/models/shareable-link.d.ts +215 -0
  215. package/dist/libs/signstack/base/src/lib/models/shareable-link.js +27 -0
  216. package/dist/libs/signstack/base/src/lib/models/shareable-link.js.map +1 -0
  217. package/dist/libs/signstack/base/src/lib/models/subscription.d.ts +279 -0
  218. package/dist/libs/signstack/base/src/lib/models/subscription.js +105 -0
  219. package/dist/libs/signstack/base/src/lib/models/subscription.js.map +1 -0
  220. package/dist/libs/signstack/base/src/lib/models/template.d.ts +248 -0
  221. package/dist/libs/signstack/base/src/lib/models/template.js +32 -0
  222. package/dist/libs/signstack/base/src/lib/models/template.js.map +1 -0
  223. package/dist/libs/signstack/base/src/lib/models/user.d.ts +30 -0
  224. package/dist/libs/signstack/base/src/lib/models/user.js +3 -0
  225. package/dist/libs/signstack/base/src/lib/models/user.js.map +1 -0
  226. package/dist/libs/signstack/base/src/lib/models/webhook.d.ts +223 -0
  227. package/dist/libs/signstack/base/src/lib/models/webhook.js +62 -0
  228. package/dist/libs/signstack/base/src/lib/models/webhook.js.map +1 -0
  229. package/dist/libs/signstack/base/src/lib/models/workflow.d.ts +917 -0
  230. package/dist/libs/signstack/base/src/lib/models/workflow.js +152 -0
  231. package/dist/libs/signstack/base/src/lib/models/workflow.js.map +1 -0
  232. package/dist/libs/signstack/base/src/lib/util.d.ts +92 -0
  233. package/dist/libs/signstack/base/src/lib/util.js +406 -0
  234. package/dist/libs/signstack/base/src/lib/util.js.map +1 -0
  235. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.d.ts +94 -0
  236. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.js +446 -0
  237. package/dist/libs/signstack/base/src/lib/validation/dependency-graph.js.map +1 -0
  238. package/dist/libs/signstack/base/src/lib/validation/graph.types.d.ts +57 -0
  239. package/dist/libs/signstack/base/src/lib/validation/graph.types.js +8 -0
  240. package/dist/libs/signstack/base/src/lib/validation/graph.types.js.map +1 -0
  241. package/dist/libs/signstack/base/src/lib/validation/index.d.ts +9 -0
  242. package/dist/libs/signstack/base/src/lib/validation/index.js +23 -0
  243. package/dist/libs/signstack/base/src/lib/validation/index.js.map +1 -0
  244. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.d.ts +3 -0
  245. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.js +27 -0
  246. package/dist/libs/signstack/base/src/lib/validation/resource-schemas.js.map +1 -0
  247. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.d.ts +57 -0
  248. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.js +57 -0
  249. package/dist/libs/signstack/base/src/lib/validation/schema-validation.types.js.map +1 -0
  250. package/dist/libs/signstack/base/src/lib/validation/schema-validator.d.ts +38 -0
  251. package/dist/libs/signstack/base/src/lib/validation/schema-validator.js +146 -0
  252. package/dist/libs/signstack/base/src/lib/validation/schema-validator.js.map +1 -0
  253. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.d.ts +22 -0
  254. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.js +69 -0
  255. package/dist/libs/signstack/base/src/lib/validation/validate-dependencies.js.map +1 -0
  256. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.d.ts +37 -0
  257. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.js +250 -0
  258. package/dist/libs/signstack/base/src/lib/validation/validate-resource-tree.js.map +1 -0
  259. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.d.ts +24 -0
  260. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.js +98 -0
  261. package/dist/libs/signstack/base/src/lib/validation/validate-template-inputs.js.map +1 -0
  262. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.d.ts +12 -0
  263. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.js +50 -0
  264. package/dist/libs/signstack/base/src/lib/validation/yaml-document-utils.js.map +1 -0
  265. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.d.ts +101 -0
  266. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.js +998 -0
  267. package/dist/libs/signstack/base/src/lib/yaml-spec-converter.js.map +1 -0
  268. package/oclif.manifest.json +822 -0
  269. package/package.json +101 -0
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ListingPreviewsStatus = exports.MarketplaceListingScope = void 0;
4
+ var MarketplaceListingScope;
5
+ (function (MarketplaceListingScope) {
6
+ MarketplaceListingScope["Public"] = "public";
7
+ MarketplaceListingScope["Org"] = "org";
8
+ })(MarketplaceListingScope || (exports.MarketplaceListingScope = MarketplaceListingScope = {}));
9
+ /**
10
+ * Generation state of a listing's scenario previews. Publishing returns
11
+ * immediately (202) with `pending`; per-scenario renders run as background
12
+ * jobs and the state flips to `ready` once all previews + hero image are
13
+ * generated. `failed` is reserved for a hard finalization failure. The
14
+ * library UI polls the listing until this is terminal.
15
+ */
16
+ var ListingPreviewsStatus;
17
+ (function (ListingPreviewsStatus) {
18
+ ListingPreviewsStatus["Pending"] = "pending";
19
+ ListingPreviewsStatus["Ready"] = "ready";
20
+ ListingPreviewsStatus["Failed"] = "failed";
21
+ })(ListingPreviewsStatus || (exports.ListingPreviewsStatus = ListingPreviewsStatus = {}));
22
+ //# sourceMappingURL=marketplace-listing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplace-listing.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/marketplace-listing.ts"],"names":[],"mappings":";;;AAQA,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,4CAAiB,CAAA;IACjB,sCAAW,CAAA;AACb,CAAC,EAHW,uBAAuB,uCAAvB,uBAAuB,QAGlC;AAiED;;;;;;GAMG;AACH,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,4CAAmB,CAAA;IACnB,wCAAe,CAAA;IACf,0CAAiB,CAAA;AACnB,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC"}
@@ -0,0 +1,127 @@
1
+ import { PaginationDto } from './base';
2
+ import { OrganizationRole } from './organization';
3
+ export declare enum NamespaceRole {
4
+ Admin = "admin",
5
+ Editor = "editor",
6
+ Viewer = "viewer"
7
+ }
8
+ export declare enum MembershipScopeLevel {
9
+ Org = "org",
10
+ Namespace = "namespace"
11
+ }
12
+ export interface Membership {
13
+ userId: string;
14
+ orgId: string;
15
+ scopeLevel: MembershipScopeLevel;
16
+ namespaceKey?: string;
17
+ roles: (OrganizationRole | NamespaceRole)[];
18
+ createdAt: string;
19
+ updatedAt: string;
20
+ }
21
+ export declare enum InvitationStatus {
22
+ Pending = "pending",
23
+ Accepted = "accepted",
24
+ Rejected = "rejected",
25
+ Revoked = "revoked"
26
+ }
27
+ export type InvitationActionType = Exclude<InvitationStatus, InvitationStatus.Pending>;
28
+ export interface InvitationActionTaken {
29
+ action: InvitationActionType;
30
+ at: string;
31
+ by: string;
32
+ }
33
+ export interface Invitation {
34
+ id: string;
35
+ email: string;
36
+ orgId: string;
37
+ scopeLevel: MembershipScopeLevel;
38
+ namespaceKey?: string;
39
+ roles: (OrganizationRole | NamespaceRole)[];
40
+ status: InvitationStatus;
41
+ invitedBy: string;
42
+ actionTaken?: InvitationActionTaken;
43
+ createdAt: string;
44
+ updatedAt: string;
45
+ }
46
+ export interface OrgAccessClaim {
47
+ orgId: string;
48
+ orgRoles: OrganizationRole[];
49
+ namespaceKey?: string;
50
+ namespaceRoles?: NamespaceRole[];
51
+ }
52
+ export interface SendInvitationReq {
53
+ email: string;
54
+ scopeLevel: MembershipScopeLevel;
55
+ /** Required iff `scopeLevel === MembershipScopeLevel.Namespace`. */
56
+ namespaceKey?: string;
57
+ roles: (OrganizationRole | NamespaceRole)[];
58
+ }
59
+ export interface SendInvitationResp {
60
+ invitationId: string;
61
+ }
62
+ export interface UpdateInvitationReq {
63
+ status: InvitationStatus;
64
+ }
65
+ export interface UpdateInvitationResp {
66
+ }
67
+ export interface InvitationResp extends Invitation {
68
+ org?: {
69
+ name: string;
70
+ };
71
+ namespace?: {
72
+ name: string;
73
+ };
74
+ _eTag?: string;
75
+ }
76
+ export type GetInvitationResp = InvitationResp;
77
+ /**
78
+ * Shared pagination + search query for member / invitation list endpoints.
79
+ * The BE applies sensible defaults (offset 0, limit 25, no search) when any
80
+ * field is omitted.
81
+ */
82
+ export interface ListMembersReq {
83
+ search?: string;
84
+ offset?: number;
85
+ limit?: number;
86
+ }
87
+ export type ListInvitationsReq = ListMembersReq;
88
+ export interface GetInvitationsResp {
89
+ invitations: InvitationResp[];
90
+ pagination: PaginationDto;
91
+ }
92
+ export interface GetMyInvitationsResp {
93
+ invitations: InvitationResp[];
94
+ }
95
+ export interface MemberResp {
96
+ uid: string;
97
+ firstName: string;
98
+ lastName: string;
99
+ email: string;
100
+ scopeLevel: MembershipScopeLevel;
101
+ namespaceKey?: string;
102
+ roles: (OrganizationRole | NamespaceRole)[];
103
+ removedAt?: string;
104
+ removedBy?: string;
105
+ }
106
+ export interface GetMembersResp {
107
+ members: MemberResp[];
108
+ pagination: PaginationDto;
109
+ /**
110
+ * Org Owners + Admins who have implicit access to the namespace via their
111
+ * org role (no explicit namespace-scope row). Only populated on the
112
+ * namespace-scope members endpoint, and intentionally NOT paginated —
113
+ * typically a small handful per org. UI renders these in a read-only
114
+ * "Inherited from organization" section.
115
+ */
116
+ inheritedOrgAdmins?: MemberResp[];
117
+ }
118
+ export type GetMyAccessResp = OrgAccessClaim;
119
+ export interface UpdateMemberRolesReq {
120
+ scopeLevel: MembershipScopeLevel;
121
+ namespaceKey?: string;
122
+ roles: (OrganizationRole | NamespaceRole)[];
123
+ }
124
+ export interface UpdateMemberRolesResp {
125
+ }
126
+ export interface RemoveMemberResp {
127
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InvitationStatus = exports.MembershipScopeLevel = exports.NamespaceRole = void 0;
4
+ var NamespaceRole;
5
+ (function (NamespaceRole) {
6
+ NamespaceRole["Admin"] = "admin";
7
+ NamespaceRole["Editor"] = "editor";
8
+ NamespaceRole["Viewer"] = "viewer";
9
+ })(NamespaceRole || (exports.NamespaceRole = NamespaceRole = {}));
10
+ var MembershipScopeLevel;
11
+ (function (MembershipScopeLevel) {
12
+ MembershipScopeLevel["Org"] = "org";
13
+ MembershipScopeLevel["Namespace"] = "namespace";
14
+ })(MembershipScopeLevel || (exports.MembershipScopeLevel = MembershipScopeLevel = {}));
15
+ var InvitationStatus;
16
+ (function (InvitationStatus) {
17
+ InvitationStatus["Pending"] = "pending";
18
+ InvitationStatus["Accepted"] = "accepted";
19
+ InvitationStatus["Rejected"] = "rejected";
20
+ InvitationStatus["Revoked"] = "revoked";
21
+ })(InvitationStatus || (exports.InvitationStatus = InvitationStatus = {}));
22
+ //# sourceMappingURL=membership.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"membership.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/membership.ts"],"names":[],"mappings":";;;AAGA,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;AACnB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,mCAAW,CAAA;IACX,+CAAuB,CAAA;AACzB,CAAC,EAHW,oBAAoB,oCAApB,oBAAoB,QAG/B;AAYD,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,uCAAmB,CAAA;IACnB,yCAAqB,CAAA;IACrB,yCAAqB,CAAA;IACrB,uCAAmB,CAAA;AACrB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
@@ -0,0 +1,87 @@
1
+ import { PaginationDto } from './base';
2
+ import { BrandSettings } from './organization';
3
+ /**
4
+ * Namespace model types
5
+ *
6
+ * Namespaces allow organizations to create isolated environments for
7
+ * multi-tenant use cases. Each namespace has a mode (test/live) that
8
+ * determines billing and API key behavior.
9
+ */
10
+ export declare enum NamespaceMode {
11
+ Test = "test",
12
+ Live = "live"
13
+ }
14
+ /**
15
+ * Regex for validating namespace keys:
16
+ * - Must start and end with alphanumeric character
17
+ * - Can contain lowercase letters, numbers, and hyphens
18
+ * - Length: 3-50 characters
19
+ */
20
+ export declare const NAMESPACE_KEY_REGEX: RegExp;
21
+ /**
22
+ * Default namespace key created for each organization
23
+ */
24
+ export declare const DEFAULT_TEST_NAMESPACE = "default-test";
25
+ /**
26
+ * Reserved namespace keys that cannot be used by customers
27
+ */
28
+ export declare const RESERVED_NAMESPACE_KEYS: string[];
29
+ /**
30
+ * Validates a namespace key against format and reserved name rules
31
+ */
32
+ export declare function isValidNamespaceKey(key: string): boolean;
33
+ /**
34
+ * Request to create a new namespace
35
+ */
36
+ export interface CreateNamespaceReq {
37
+ key: string;
38
+ name: string;
39
+ mode: NamespaceMode;
40
+ /** Omit when no branding on create. */
41
+ settings?: BrandSettings;
42
+ }
43
+ /**
44
+ * Request to update an existing namespace (only name is editable)
45
+ */
46
+ export interface UpdateNamespaceReq {
47
+ name: string;
48
+ settings?: BrandSettings;
49
+ }
50
+ /**
51
+ * Full namespace — returned by `GET /orgs/{orgId}/namespaces/{namespaceKey}`,
52
+ * `POST /orgs/{orgId}/namespaces`, and `PATCH /orgs/{orgId}/namespaces/{namespaceKey}`.
53
+ * The optimistic-locking handle is on the `ETag` HTTP response header
54
+ * (RFC 7232) — pass it back as `If-Match` on the next `PATCH`.
55
+ */
56
+ export interface NamespaceResp {
57
+ key: string;
58
+ name: string;
59
+ mode: NamespaceMode;
60
+ settings?: BrandSettings;
61
+ createdAt: string;
62
+ updatedAt: string;
63
+ }
64
+ /**
65
+ * Namespace list item — carries `_eTag` per item since list responses cannot
66
+ * use the `ETag` header (one header, many items).
67
+ */
68
+ export interface NamespaceListItem extends NamespaceResp {
69
+ _eTag?: string;
70
+ }
71
+ /**
72
+ * List namespaces request — supports search + pagination so the switcher
73
+ * scales to orgs with many thousands of namespaces. All fields optional;
74
+ * the BE applies defaults (offset 0, limit 25, no search filter).
75
+ */
76
+ export interface ListNamespacesReq {
77
+ search?: string;
78
+ offset?: number;
79
+ limit?: number;
80
+ }
81
+ /**
82
+ * List namespaces response
83
+ */
84
+ export interface ListNamespacesResp {
85
+ data: NamespaceListItem[];
86
+ pagination: PaginationDto;
87
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RESERVED_NAMESPACE_KEYS = exports.DEFAULT_TEST_NAMESPACE = exports.NAMESPACE_KEY_REGEX = exports.NamespaceMode = void 0;
4
+ exports.isValidNamespaceKey = isValidNamespaceKey;
5
+ /**
6
+ * Namespace model types
7
+ *
8
+ * Namespaces allow organizations to create isolated environments for
9
+ * multi-tenant use cases. Each namespace has a mode (test/live) that
10
+ * determines billing and API key behavior.
11
+ */
12
+ var NamespaceMode;
13
+ (function (NamespaceMode) {
14
+ NamespaceMode["Test"] = "test";
15
+ NamespaceMode["Live"] = "live";
16
+ })(NamespaceMode || (exports.NamespaceMode = NamespaceMode = {}));
17
+ /**
18
+ * Regex for validating namespace keys:
19
+ * - Must start and end with alphanumeric character
20
+ * - Can contain lowercase letters, numbers, and hyphens
21
+ * - Length: 3-50 characters
22
+ */
23
+ exports.NAMESPACE_KEY_REGEX = /^[a-z0-9][a-z0-9-]{1,48}[a-z0-9]$/;
24
+ /**
25
+ * Default namespace key created for each organization
26
+ */
27
+ exports.DEFAULT_TEST_NAMESPACE = 'default-test';
28
+ /**
29
+ * Reserved namespace keys that cannot be used by customers
30
+ */
31
+ exports.RESERVED_NAMESPACE_KEYS = [
32
+ 'admin',
33
+ 'api',
34
+ 'system',
35
+ 'internal',
36
+ 'default',
37
+ 'test',
38
+ 'live',
39
+ 'prod',
40
+ 'production',
41
+ 'staging',
42
+ 'dev',
43
+ 'development',
44
+ ];
45
+ /**
46
+ * Validates a namespace key against format and reserved name rules
47
+ */
48
+ function isValidNamespaceKey(key) {
49
+ if (!exports.NAMESPACE_KEY_REGEX.test(key)) {
50
+ return false;
51
+ }
52
+ if (exports.RESERVED_NAMESPACE_KEYS.includes(key)) {
53
+ return false;
54
+ }
55
+ return true;
56
+ }
57
+ //# sourceMappingURL=namespace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"namespace.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/namespace.ts"],"names":[],"mappings":";;;AAiDA,kDAQC;AAtDD;;;;;;GAMG;AACH,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,8BAAa,CAAA;AACf,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED;;;;;GAKG;AACU,QAAA,mBAAmB,GAAG,mCAAmC,CAAC;AAEvE;;GAEG;AACU,QAAA,sBAAsB,GAAG,cAAc,CAAC;AAErD;;GAEG;AACU,QAAA,uBAAuB,GAAG;IACrC,OAAO;IACP,KAAK;IACL,QAAQ;IACR,UAAU;IACV,SAAS;IACT,MAAM;IACN,MAAM;IACN,MAAM;IACN,YAAY;IACZ,SAAS;IACT,KAAK;IACL,aAAa;CACd,CAAC;AAEF;;GAEG;AACH,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,IAAI,CAAC,2BAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,+BAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,79 @@
1
+ import { UploadFile } from './base';
2
+ export declare const BrandSettingsKeys: string[];
3
+ /**
4
+ * Org-level roles a user can hold on an organization.
5
+ *
6
+ * - `Owner` — strict superset of everything; can transfer or delete the
7
+ * org; can't be removed by anyone but themselves.
8
+ * - `Admin` — manages members, namespaces, settings; implicit access to
9
+ * every namespace in the org.
10
+ * - `Billing` — billing and plan only; no namespace access.
11
+ */
12
+ export declare enum OrganizationRole {
13
+ Owner = "owner",
14
+ Admin = "admin",
15
+ Billing = "billing"
16
+ }
17
+ /**
18
+ * Brand settings for sender branding.
19
+ *
20
+ * `logoUrl` carries either a persisted URL (after upload) or an unresolved
21
+ * `UploadFile` on the client while the user is still editing the form. The
22
+ * client's update helpers are responsible for uploading the file and
23
+ * rewriting this field before it reaches the wire.
24
+ */
25
+ export interface BrandSettings {
26
+ senderName: string;
27
+ company: string;
28
+ contactEmail: string;
29
+ logoFileId: string;
30
+ logoUrl?: string | UploadFile;
31
+ senderEmail?: string;
32
+ senderEmailVerified?: boolean;
33
+ phone?: string;
34
+ address?: string;
35
+ }
36
+ /**
37
+ * Brand fields that must all be populated for a level (namespace/org) to
38
+ * count as having sender branding "set up". When all three are present the
39
+ * level supplies the entire `SenderInfo`; otherwise the lookup falls through
40
+ * to the next level (org → defaults). Sender-email verification keys are
41
+ * deliberately excluded — they belong to a separate flow and don't imply
42
+ * branding is configured.
43
+ */
44
+ export declare const RequiredBrandSettingsKeys: Array<keyof BrandSettings>;
45
+ /**
46
+ * Full organization — returned by `POST /orgs` and `PUT /orgs/{orgId}`. The
47
+ * optimistic-locking handle is on the `ETag` HTTP response header (RFC 7232) —
48
+ * pass it back as `If-Match` on the next `PUT`.
49
+ */
50
+ export interface OrganizationResp {
51
+ /** Prefixed lowercase ULID, e.g. `org_01jv8m7qfj6xj9gkz7a4s2h8e`. */
52
+ orgId: string;
53
+ name: string;
54
+ ownerId: string;
55
+ settings?: BrandSettings;
56
+ updatedAt: string;
57
+ }
58
+ /**
59
+ * Organization list item — returned by `POST /orgs/list`. Carries `_eTag`
60
+ * in the body because list responses can't multiplex per-item `ETag` headers.
61
+ */
62
+ export interface OrganizationListItem extends OrganizationResp {
63
+ _eTag?: string;
64
+ }
65
+ export interface GetOrganizationsResp {
66
+ data: OrganizationListItem[];
67
+ }
68
+ export interface CreateOrganizationReq {
69
+ name: string;
70
+ /**
71
+ * Omit when no branding is desired on create.
72
+ * Send `null` from an update flow to clear previously-saved branding.
73
+ */
74
+ settings?: BrandSettings | null;
75
+ }
76
+ export interface UpdateOrganizationReq {
77
+ name: string;
78
+ settings?: BrandSettings;
79
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequiredBrandSettingsKeys = exports.OrganizationRole = exports.BrandSettingsKeys = void 0;
4
+ exports.BrandSettingsKeys = [
5
+ 'senderName',
6
+ 'senderEmail',
7
+ 'contactEmail',
8
+ 'phone',
9
+ 'address',
10
+ 'logoUrl',
11
+ ];
12
+ /**
13
+ * Org-level roles a user can hold on an organization.
14
+ *
15
+ * - `Owner` — strict superset of everything; can transfer or delete the
16
+ * org; can't be removed by anyone but themselves.
17
+ * - `Admin` — manages members, namespaces, settings; implicit access to
18
+ * every namespace in the org.
19
+ * - `Billing` — billing and plan only; no namespace access.
20
+ */
21
+ var OrganizationRole;
22
+ (function (OrganizationRole) {
23
+ OrganizationRole["Owner"] = "owner";
24
+ OrganizationRole["Admin"] = "admin";
25
+ OrganizationRole["Billing"] = "billing";
26
+ })(OrganizationRole || (exports.OrganizationRole = OrganizationRole = {}));
27
+ /**
28
+ * Brand fields that must all be populated for a level (namespace/org) to
29
+ * count as having sender branding "set up". When all three are present the
30
+ * level supplies the entire `SenderInfo`; otherwise the lookup falls through
31
+ * to the next level (org → defaults). Sender-email verification keys are
32
+ * deliberately excluded — they belong to a separate flow and don't imply
33
+ * branding is configured.
34
+ */
35
+ exports.RequiredBrandSettingsKeys = [
36
+ 'senderName',
37
+ 'company',
38
+ 'contactEmail',
39
+ 'logoUrl'
40
+ ];
41
+ //# sourceMappingURL=organization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/organization.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAG;IAC/B,YAAY;IACZ,aAAa;IACb,cAAc;IACd,OAAO;IACP,SAAS;IACT,SAAS;CACV,CAAC;AAEF;;;;;;;;GAQG;AACH,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,mCAAe,CAAA;IACf,mCAAe,CAAA;IACf,uCAAmB,CAAA;AACrB,CAAC,EAJW,gBAAgB,gCAAhB,gBAAgB,QAI3B;AAsBD;;;;;;;GAOG;AACU,QAAA,yBAAyB,GAA+B;IACnE,YAAY;IACZ,SAAS;IACT,cAAc;IACd,SAAS;CACV,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { RenderBlueprintResp } from './blueprint';
2
+ import { RenderTemplateResp } from './template';
3
+ /**
4
+ * Async render-job models shared across backend, frontend clients, and CLI.
5
+ *
6
+ * Background: render endpoints are moving from a synchronous long-poll
7
+ * (the backend blocked the request until the pipeline finished) to an
8
+ * accept-then-poll contract. Public render endpoints return `{ jobId(s) }`
9
+ * immediately; clients poll the status endpoint until the job reaches a
10
+ * terminal state, then read `result`.
11
+ *
12
+ * Phase A adds these types + the status endpoint. The `Accepted` response
13
+ * shapes and the FE polling clients land in Phase B.
14
+ */
15
+ /** Terminal + in-flight states a render job can report. Mirrors the
16
+ * backend `RenderJobStatus` enum string values. */
17
+ export type RenderJobStatusValue = 'pending' | 'rendering' | 'completed' | 'failed';
18
+ /** Which kind of caller produced the job. Mirrors backend `RenderJobKind`. */
19
+ export type RenderJobKindValue = 'blueprint' | 'template';
20
+ /**
21
+ * Terminal result of a render job, discriminated by the job's `kind`:
22
+ * template-kind jobs resolve to `RenderTemplateResp`, blueprint-kind jobs
23
+ * to `RenderBlueprintResp`. Only present once `status === 'completed'`.
24
+ */
25
+ export type RenderJobResult = RenderTemplateResp | RenderBlueprintResp;
26
+ /**
27
+ * Response of `GET …/render-jobs/:jobId` — the polling target that
28
+ * replaces the old synchronous `awaitCompletion` long-poll. Clients poll
29
+ * this until `status` is terminal (`completed` | `failed`), then read
30
+ * `result` (on success) or `error` (on failure).
31
+ */
32
+ export interface GetRenderJobResp {
33
+ jobId: string;
34
+ kind: RenderJobKindValue;
35
+ /** Present for blueprint-kind jobs; one job renders one envelope. */
36
+ envelopeKey?: string;
37
+ status: RenderJobStatusValue;
38
+ /** Set when `status === 'failed'` — carries the first failure. */
39
+ error?: string;
40
+ /** Set when `status === 'completed'` — the rendered output. */
41
+ result?: RenderJobResult;
42
+ }
43
+ /**
44
+ * "Do X when render-job Y completes." Persisted on the render job so the
45
+ * render-events webhook can drive post-render work without the caller
46
+ * blocking on the result. This is the immutable DESCRIPTOR of the work;
47
+ * its run lifecycle is tracked separately on `continuationStatus` /
48
+ * `continuationError`. Handlers register by `kind` with the dispatcher.
49
+ */
50
+ export type RenderContinuation = {
51
+ kind: 'workflow-signed-envelope';
52
+ workflowId: string;
53
+ envelopeKey: string;
54
+ /** Participant step whose signed document this render produces. */
55
+ stepKey: string;
56
+ /** Path-in-bucket to upload the combined, finalized signed PDF to. */
57
+ outputGcsPath: string;
58
+ hashAlgorithm: 'sha256';
59
+ } | {
60
+ /**
61
+ * The whole envelope is signed by everyone. When this render
62
+ * completes, build the final signed PDF, generate the signing
63
+ * certificate, email all participants, fire the envelope-completed
64
+ * webhook, and persist the signed document on the envelope.
65
+ */
66
+ kind: 'workflow-envelope-completion';
67
+ workflowId: string;
68
+ envelopeKey: string;
69
+ } | {
70
+ kind: 'marketplace-listing-preview';
71
+ listingId: string;
72
+ scenarioId: string;
73
+ /** Carried on the job so the handler can label the preview file
74
+ * without the listing storing a per-job tracker. */
75
+ scenarioName: string;
76
+ previewIndex: number;
77
+ };
78
+ /**
79
+ * Run lifecycle of a job's continuation, tracked top-level on the job for
80
+ * race-safe atomic claims (mirrors how `status` tracks the render itself):
81
+ * - `pending` — continuation persisted, not yet dispatched
82
+ * - `running` — a dispatcher claimed it (idempotency guard against
83
+ * render-events re-delivery)
84
+ * - `done` — handler finished successfully
85
+ * - `failed` — handler threw; see `continuationError`. The render itself
86
+ * stays `completed` — only the post-render work failed.
87
+ */
88
+ export type RenderContinuationStatus = 'pending' | 'running' | 'done' | 'failed';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=render-job.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-job.js","sourceRoot":"","sources":["../../../../../../../../../libs/signstack/base/src/lib/models/render-job.ts"],"names":[],"mappings":""}
@@ -0,0 +1,60 @@
1
+ import type { TemplateSpec } from './template';
2
+ import type { AssetSpec } from './asset';
3
+ import type { JsonataFunctionSpec } from './jsonata-function';
4
+ import type { BlueprintSpec } from './blueprint';
5
+ export declare enum ResourceKind {
6
+ Blueprint = "blueprint",
7
+ Template = "template",
8
+ Schema = "schema",
9
+ Asset = "asset",
10
+ JsonataFunction = "jsonata_function"
11
+ }
12
+ export declare function toResourceCascadeKey(kind: ResourceKind | string, key: string): string;
13
+ export declare function parseResourceCascadeKey(resourceCascadeKey: string): {
14
+ kind: ResourceKind;
15
+ key: string;
16
+ };
17
+ export declare function toResourceId(kind: ResourceKind | string, key: string, version: string): string;
18
+ export declare function parseResourceId(resourceId: string): {
19
+ kind: ResourceKind;
20
+ key: string;
21
+ version: string;
22
+ };
23
+ export interface ResourceEdge {
24
+ sourceId: string;
25
+ targetId: string;
26
+ }
27
+ export interface ResourceDependencyNode {
28
+ resourceId: string;
29
+ children: ResourceDependencyNode[];
30
+ }
31
+ export interface GetResourceDependenciesResp {
32
+ resourceId: string;
33
+ edges: ResourceEdge[];
34
+ }
35
+ export interface GetResourceDependencyTreeResp {
36
+ tree: ResourceDependencyNode;
37
+ }
38
+ export interface ResourceDep {
39
+ kind: ResourceKind;
40
+ key: string;
41
+ version: string;
42
+ }
43
+ /** Template spec → direct deps: content asset, functions, input schemas. */
44
+ export declare function getTemplateDeps(spec: TemplateSpec): ResourceDep[];
45
+ /** Asset spec → direct deps: sub-assets (partials/images/styles), viewModelSchema. */
46
+ export declare function getAssetDeps(spec: AssetSpec): ResourceDep[];
47
+ /** Function spec → direct deps: param schemas, returnType schema. */
48
+ export declare function getFunctionDeps(spec: JsonataFunctionSpec): ResourceDep[];
49
+ /** Blueprint spec → direct deps: functions, input schemas, envelope templates. */
50
+ export declare function getBlueprintDeps(spec: BlueprintSpec): ResourceDep[];
51
+ /**
52
+ * Collect all transitive deps starting from a template spec.
53
+ * Walks: template → (assets, functions, schemas) → (sub-assets, function schemas) → ...
54
+ * Uses lookup functions to resolve specs for intermediate resources.
55
+ * Returns deduplicated flat array of all deps (direct + transitive).
56
+ */
57
+ export declare function collectTransitiveDeps(templateSpec: TemplateSpec, lookups: {
58
+ getAssetSpec?: (key: string, version: string) => AssetSpec | undefined;
59
+ getFunctionSpec?: (key: string, version: string) => JsonataFunctionSpec | undefined;
60
+ }): ResourceDep[];