@resolution/jira-api-client 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (785) hide show
  1. package/.eslintrc.js +3 -0
  2. package/CHANGELOG.md +11 -0
  3. package/LICENSE.md +19 -0
  4. package/README.md +12 -0
  5. package/config/api-typescript-generator.config.ts +91 -0
  6. package/config/compare-schemas.ts +307 -0
  7. package/lib/index.d.ts +15 -0
  8. package/lib/index.js +25 -0
  9. package/lib/index.js.map +1 -0
  10. package/lib/openapi/platform/base-jira-platform-api-client.d.ts +868 -0
  11. package/lib/openapi/platform/base-jira-platform-api-client.js +808 -0
  12. package/lib/openapi/platform/base-jira-platform-api-client.js.map +1 -0
  13. package/lib/openapi/platform/core/common-http-client.d.ts +196 -0
  14. package/lib/openapi/platform/core/common-http-client.js +390 -0
  15. package/lib/openapi/platform/core/common-http-client.js.map +1 -0
  16. package/lib/openapi/platform/core/common-http-service.d.ts +7 -0
  17. package/lib/openapi/platform/core/common-http-service.js +20 -0
  18. package/lib/openapi/platform/core/common-http-service.js.map +1 -0
  19. package/lib/openapi/platform/core/common-validation-schema-storage.d.ts +35 -0
  20. package/lib/openapi/platform/core/common-validation-schema-storage.js +65 -0
  21. package/lib/openapi/platform/core/common-validation-schema-storage.js.map +1 -0
  22. package/lib/openapi/platform/models/announcement-banner.d.ts +27 -0
  23. package/lib/openapi/platform/models/announcement-banner.js +30 -0
  24. package/lib/openapi/platform/models/announcement-banner.js.map +1 -0
  25. package/lib/openapi/platform/models/app-data-policies.d.ts +31 -0
  26. package/lib/openapi/platform/models/app-data-policies.js +40 -0
  27. package/lib/openapi/platform/models/app-data-policies.js.map +1 -0
  28. package/lib/openapi/platform/models/app-migration.d.ts +86 -0
  29. package/lib/openapi/platform/models/app-migration.js +67 -0
  30. package/lib/openapi/platform/models/app-migration.js.map +1 -0
  31. package/lib/openapi/platform/models/app-properties.d.ts +15 -0
  32. package/lib/openapi/platform/models/app-properties.js +18 -0
  33. package/lib/openapi/platform/models/app-properties.js.map +1 -0
  34. package/lib/openapi/platform/models/audit-records.d.ts +70 -0
  35. package/lib/openapi/platform/models/audit-records.js +62 -0
  36. package/lib/openapi/platform/models/audit-records.js.map +1 -0
  37. package/lib/openapi/platform/models/avatars.d.ts +18 -0
  38. package/lib/openapi/platform/models/avatars.js +27 -0
  39. package/lib/openapi/platform/models/avatars.js.map +1 -0
  40. package/lib/openapi/platform/models/classification-levels.d.ts +25 -0
  41. package/lib/openapi/platform/models/classification-levels.js +31 -0
  42. package/lib/openapi/platform/models/classification-levels.js.map +1 -0
  43. package/lib/openapi/platform/models/common.d.ts +1490 -0
  44. package/lib/openapi/platform/models/common.js +937 -0
  45. package/lib/openapi/platform/models/common.js.map +1 -0
  46. package/lib/openapi/platform/models/dashboards.d.ts +414 -0
  47. package/lib/openapi/platform/models/dashboards.js +325 -0
  48. package/lib/openapi/platform/models/dashboards.js.map +1 -0
  49. package/lib/openapi/platform/models/dynamic-modules.d.ts +92 -0
  50. package/lib/openapi/platform/models/dynamic-modules.js +24 -0
  51. package/lib/openapi/platform/models/dynamic-modules.js.map +1 -0
  52. package/lib/openapi/platform/models/filter-sharing.d.ts +59 -0
  53. package/lib/openapi/platform/models/filter-sharing.js +36 -0
  54. package/lib/openapi/platform/models/filter-sharing.js.map +1 -0
  55. package/lib/openapi/platform/models/filters.d.ts +183 -0
  56. package/lib/openapi/platform/models/filters.js +115 -0
  57. package/lib/openapi/platform/models/filters.js.map +1 -0
  58. package/lib/openapi/platform/models/group-and-user-picker.d.ts +49 -0
  59. package/lib/openapi/platform/models/group-and-user-picker.js +31 -0
  60. package/lib/openapi/platform/models/group-and-user-picker.js.map +1 -0
  61. package/lib/openapi/platform/models/groups.d.ts +127 -0
  62. package/lib/openapi/platform/models/groups.js +98 -0
  63. package/lib/openapi/platform/models/groups.js.map +1 -0
  64. package/lib/openapi/platform/models/issue-attachments.d.ts +124 -0
  65. package/lib/openapi/platform/models/issue-attachments.js +129 -0
  66. package/lib/openapi/platform/models/issue-attachments.js.map +1 -0
  67. package/lib/openapi/platform/models/issue-comment-properties.d.ts +10 -0
  68. package/lib/openapi/platform/models/issue-comment-properties.js +18 -0
  69. package/lib/openapi/platform/models/issue-comment-properties.js.map +1 -0
  70. package/lib/openapi/platform/models/issue-comments.d.ts +36 -0
  71. package/lib/openapi/platform/models/issue-comments.js +49 -0
  72. package/lib/openapi/platform/models/issue-comments.js.map +1 -0
  73. package/lib/openapi/platform/models/issue-custom-field-configuration-apps.d.ts +36 -0
  74. package/lib/openapi/platform/models/issue-custom-field-configuration-apps.js +53 -0
  75. package/lib/openapi/platform/models/issue-custom-field-configuration-apps.js.map +1 -0
  76. package/lib/openapi/platform/models/issue-custom-field-contexts.d.ts +417 -0
  77. package/lib/openapi/platform/models/issue-custom-field-contexts.js +458 -0
  78. package/lib/openapi/platform/models/issue-custom-field-contexts.js.map +1 -0
  79. package/lib/openapi/platform/models/issue-custom-field-options-apps.d.ts +119 -0
  80. package/lib/openapi/platform/models/issue-custom-field-options-apps.js +133 -0
  81. package/lib/openapi/platform/models/issue-custom-field-options-apps.js.map +1 -0
  82. package/lib/openapi/platform/models/issue-custom-field-options.d.ts +136 -0
  83. package/lib/openapi/platform/models/issue-custom-field-options.js +115 -0
  84. package/lib/openapi/platform/models/issue-custom-field-options.js.map +1 -0
  85. package/lib/openapi/platform/models/issue-custom-field-values-apps.d.ts +66 -0
  86. package/lib/openapi/platform/models/issue-custom-field-values-apps.js +42 -0
  87. package/lib/openapi/platform/models/issue-custom-field-values-apps.js.map +1 -0
  88. package/lib/openapi/platform/models/issue-field-configurations.d.ts +194 -0
  89. package/lib/openapi/platform/models/issue-field-configurations.js +182 -0
  90. package/lib/openapi/platform/models/issue-field-configurations.js.map +1 -0
  91. package/lib/openapi/platform/models/issue-fields.d.ts +227 -0
  92. package/lib/openapi/platform/models/issue-fields.js +119 -0
  93. package/lib/openapi/platform/models/issue-fields.js.map +1 -0
  94. package/lib/openapi/platform/models/issue-link-types.d.ts +9 -0
  95. package/lib/openapi/platform/models/issue-link-types.js +21 -0
  96. package/lib/openapi/platform/models/issue-link-types.js.map +1 -0
  97. package/lib/openapi/platform/models/issue-links.d.ts +90 -0
  98. package/lib/openapi/platform/models/issue-links.js +74 -0
  99. package/lib/openapi/platform/models/issue-links.js.map +1 -0
  100. package/lib/openapi/platform/models/issue-notification-schemes.d.ts +158 -0
  101. package/lib/openapi/platform/models/issue-notification-schemes.js +147 -0
  102. package/lib/openapi/platform/models/issue-notification-schemes.js.map +1 -0
  103. package/lib/openapi/platform/models/issue-priorities.d.ts +74 -0
  104. package/lib/openapi/platform/models/issue-priorities.js +89 -0
  105. package/lib/openapi/platform/models/issue-priorities.js.map +1 -0
  106. package/lib/openapi/platform/models/issue-properties.d.ts +80 -0
  107. package/lib/openapi/platform/models/issue-properties.js +158 -0
  108. package/lib/openapi/platform/models/issue-properties.js.map +1 -0
  109. package/lib/openapi/platform/models/issue-remote-links.d.ts +120 -0
  110. package/lib/openapi/platform/models/issue-remote-links.js +70 -0
  111. package/lib/openapi/platform/models/issue-remote-links.js.map +1 -0
  112. package/lib/openapi/platform/models/issue-resolutions.d.ts +81 -0
  113. package/lib/openapi/platform/models/issue-resolutions.js +79 -0
  114. package/lib/openapi/platform/models/issue-resolutions.js.map +1 -0
  115. package/lib/openapi/platform/models/issue-search.d.ts +196 -0
  116. package/lib/openapi/platform/models/issue-search.js +136 -0
  117. package/lib/openapi/platform/models/issue-search.js.map +1 -0
  118. package/lib/openapi/platform/models/issue-security-level.d.ts +36 -0
  119. package/lib/openapi/platform/models/issue-security-level.js +36 -0
  120. package/lib/openapi/platform/models/issue-security-level.js.map +1 -0
  121. package/lib/openapi/platform/models/issue-security-schemes.d.ts +214 -0
  122. package/lib/openapi/platform/models/issue-security-schemes.js +211 -0
  123. package/lib/openapi/platform/models/issue-security-schemes.js.map +1 -0
  124. package/lib/openapi/platform/models/issue-type-schemes.d.ts +146 -0
  125. package/lib/openapi/platform/models/issue-type-schemes.js +115 -0
  126. package/lib/openapi/platform/models/issue-type-schemes.js.map +1 -0
  127. package/lib/openapi/platform/models/issue-type-screen-schemes.d.ts +139 -0
  128. package/lib/openapi/platform/models/issue-type-screen-schemes.js +109 -0
  129. package/lib/openapi/platform/models/issue-type-screen-schemes.js.map +1 -0
  130. package/lib/openapi/platform/models/issue-types.d.ts +36 -0
  131. package/lib/openapi/platform/models/issue-types.js +28 -0
  132. package/lib/openapi/platform/models/issue-types.js.map +1 -0
  133. package/lib/openapi/platform/models/issue-votes.d.ts +18 -0
  134. package/lib/openapi/platform/models/issue-votes.js +22 -0
  135. package/lib/openapi/platform/models/issue-votes.js.map +1 -0
  136. package/lib/openapi/platform/models/issue-watchers.d.ts +27 -0
  137. package/lib/openapi/platform/models/issue-watchers.js +36 -0
  138. package/lib/openapi/platform/models/issue-watchers.js.map +1 -0
  139. package/lib/openapi/platform/models/issue-worklogs.d.ts +93 -0
  140. package/lib/openapi/platform/models/issue-worklogs.js +80 -0
  141. package/lib/openapi/platform/models/issue-worklogs.js.map +1 -0
  142. package/lib/openapi/platform/models/issues.d.ts +583 -0
  143. package/lib/openapi/platform/models/issues.js +545 -0
  144. package/lib/openapi/platform/models/issues.js.map +1 -0
  145. package/lib/openapi/platform/models/jira-expressions.d.ts +329 -0
  146. package/lib/openapi/platform/models/jira-expressions.js +180 -0
  147. package/lib/openapi/platform/models/jira-expressions.js.map +1 -0
  148. package/lib/openapi/platform/models/jira-settings.d.ts +62 -0
  149. package/lib/openapi/platform/models/jira-settings.js +49 -0
  150. package/lib/openapi/platform/models/jira-settings.js.map +1 -0
  151. package/lib/openapi/platform/models/jql-functions-apps.d.ts +61 -0
  152. package/lib/openapi/platform/models/jql-functions-apps.js +57 -0
  153. package/lib/openapi/platform/models/jql-functions-apps.js.map +1 -0
  154. package/lib/openapi/platform/models/jql.d.ts +348 -0
  155. package/lib/openapi/platform/models/jql.js +309 -0
  156. package/lib/openapi/platform/models/jql.js.map +1 -0
  157. package/lib/openapi/platform/models/labels.d.ts +20 -0
  158. package/lib/openapi/platform/models/labels.js +23 -0
  159. package/lib/openapi/platform/models/labels.js.map +1 -0
  160. package/lib/openapi/platform/models/license-metrics.d.ts +27 -0
  161. package/lib/openapi/platform/models/license-metrics.js +32 -0
  162. package/lib/openapi/platform/models/license-metrics.js.map +1 -0
  163. package/lib/openapi/platform/models/myself.d.ts +13 -0
  164. package/lib/openapi/platform/models/myself.js +17 -0
  165. package/lib/openapi/platform/models/myself.js.map +1 -0
  166. package/lib/openapi/platform/models/permission-schemes.d.ts +42 -0
  167. package/lib/openapi/platform/models/permission-schemes.js +39 -0
  168. package/lib/openapi/platform/models/permission-schemes.js.map +1 -0
  169. package/lib/openapi/platform/models/permissions.d.ts +97 -0
  170. package/lib/openapi/platform/models/permissions.js +176 -0
  171. package/lib/openapi/platform/models/permissions.js.map +1 -0
  172. package/lib/openapi/platform/models/priority-schemes.d.ts +233 -0
  173. package/lib/openapi/platform/models/priority-schemes.js +227 -0
  174. package/lib/openapi/platform/models/priority-schemes.js.map +1 -0
  175. package/lib/openapi/platform/models/project-avatars.d.ts +11 -0
  176. package/lib/openapi/platform/models/project-avatars.js +20 -0
  177. package/lib/openapi/platform/models/project-avatars.js.map +1 -0
  178. package/lib/openapi/platform/models/project-classification-levels.d.ts +8 -0
  179. package/lib/openapi/platform/models/project-classification-levels.js +17 -0
  180. package/lib/openapi/platform/models/project-classification-levels.js.map +1 -0
  181. package/lib/openapi/platform/models/project-components.d.ts +122 -0
  182. package/lib/openapi/platform/models/project-components.js +91 -0
  183. package/lib/openapi/platform/models/project-components.js.map +1 -0
  184. package/lib/openapi/platform/models/project-email.d.ts +10 -0
  185. package/lib/openapi/platform/models/project-email.js +18 -0
  186. package/lib/openapi/platform/models/project-email.js.map +1 -0
  187. package/lib/openapi/platform/models/project-features.d.ts +35 -0
  188. package/lib/openapi/platform/models/project-features.js +38 -0
  189. package/lib/openapi/platform/models/project-features.js.map +1 -0
  190. package/lib/openapi/platform/models/project-permission-schemes.d.ts +17 -0
  191. package/lib/openapi/platform/models/project-permission-schemes.js +25 -0
  192. package/lib/openapi/platform/models/project-permission-schemes.js.map +1 -0
  193. package/lib/openapi/platform/models/project-role-actors.d.ts +65 -0
  194. package/lib/openapi/platform/models/project-role-actors.js +37 -0
  195. package/lib/openapi/platform/models/project-role-actors.js.map +1 -0
  196. package/lib/openapi/platform/models/project-roles.d.ts +41 -0
  197. package/lib/openapi/platform/models/project-roles.js +34 -0
  198. package/lib/openapi/platform/models/project-roles.js.map +1 -0
  199. package/lib/openapi/platform/models/project-types.d.ts +16 -0
  200. package/lib/openapi/platform/models/project-types.js +21 -0
  201. package/lib/openapi/platform/models/project-types.js.map +1 -0
  202. package/lib/openapi/platform/models/project-versions.d.ts +110 -0
  203. package/lib/openapi/platform/models/project-versions.js +87 -0
  204. package/lib/openapi/platform/models/project-versions.js.map +1 -0
  205. package/lib/openapi/platform/models/projects.d.ts +216 -0
  206. package/lib/openapi/platform/models/projects.js +149 -0
  207. package/lib/openapi/platform/models/projects.js.map +1 -0
  208. package/lib/openapi/platform/models/screen-schemes.d.ts +94 -0
  209. package/lib/openapi/platform/models/screen-schemes.js +79 -0
  210. package/lib/openapi/platform/models/screen-schemes.js.map +1 -0
  211. package/lib/openapi/platform/models/screen-tab-fields.d.ts +19 -0
  212. package/lib/openapi/platform/models/screen-tab-fields.js +24 -0
  213. package/lib/openapi/platform/models/screen-tab-fields.js.map +1 -0
  214. package/lib/openapi/platform/models/screens.d.ts +82 -0
  215. package/lib/openapi/platform/models/screens.js +72 -0
  216. package/lib/openapi/platform/models/screens.js.map +1 -0
  217. package/lib/openapi/platform/models/server-info.d.ts +51 -0
  218. package/lib/openapi/platform/models/server-info.js +47 -0
  219. package/lib/openapi/platform/models/server-info.js.map +1 -0
  220. package/lib/openapi/platform/models/service-registry.d.ts +32 -0
  221. package/lib/openapi/platform/models/service-registry.js +34 -0
  222. package/lib/openapi/platform/models/service-registry.js.map +1 -0
  223. package/lib/openapi/platform/models/status.d.ts +95 -0
  224. package/lib/openapi/platform/models/status.js +107 -0
  225. package/lib/openapi/platform/models/status.js.map +1 -0
  226. package/lib/openapi/platform/models/time-tracking.d.ts +20 -0
  227. package/lib/openapi/platform/models/time-tracking.js +19 -0
  228. package/lib/openapi/platform/models/time-tracking.js.map +1 -0
  229. package/lib/openapi/platform/models/ui-modifications-apps.d.ts +127 -0
  230. package/lib/openapi/platform/models/ui-modifications-apps.js +85 -0
  231. package/lib/openapi/platform/models/ui-modifications-apps.js.map +1 -0
  232. package/lib/openapi/platform/models/user-search.d.ts +37 -0
  233. package/lib/openapi/platform/models/user-search.js +30 -0
  234. package/lib/openapi/platform/models/user-search.js.map +1 -0
  235. package/lib/openapi/platform/models/users.d.ts +60 -0
  236. package/lib/openapi/platform/models/users.js +53 -0
  237. package/lib/openapi/platform/models/users.js.map +1 -0
  238. package/lib/openapi/platform/models/webhooks.d.ts +147 -0
  239. package/lib/openapi/platform/models/webhooks.js +112 -0
  240. package/lib/openapi/platform/models/webhooks.js.map +1 -0
  241. package/lib/openapi/platform/models/workflow-scheme-drafts.d.ts +17 -0
  242. package/lib/openapi/platform/models/workflow-scheme-drafts.js +37 -0
  243. package/lib/openapi/platform/models/workflow-scheme-drafts.js.map +1 -0
  244. package/lib/openapi/platform/models/workflow-scheme-project-associations.d.ts +29 -0
  245. package/lib/openapi/platform/models/workflow-scheme-project-associations.js +33 -0
  246. package/lib/openapi/platform/models/workflow-scheme-project-associations.js.map +1 -0
  247. package/lib/openapi/platform/models/workflow-schemes.d.ts +217 -0
  248. package/lib/openapi/platform/models/workflow-schemes.js +261 -0
  249. package/lib/openapi/platform/models/workflow-schemes.js.map +1 -0
  250. package/lib/openapi/platform/models/workflow-transition-properties.d.ts +15 -0
  251. package/lib/openapi/platform/models/workflow-transition-properties.js +19 -0
  252. package/lib/openapi/platform/models/workflow-transition-properties.js.map +1 -0
  253. package/lib/openapi/platform/models/workflow-transition-rules.d.ts +106 -0
  254. package/lib/openapi/platform/models/workflow-transition-rules.js +117 -0
  255. package/lib/openapi/platform/models/workflow-transition-rules.js.map +1 -0
  256. package/lib/openapi/platform/models/workflows.d.ts +848 -0
  257. package/lib/openapi/platform/models/workflows.js +824 -0
  258. package/lib/openapi/platform/models/workflows.js.map +1 -0
  259. package/lib/openapi/platform/services/announcement-banner-service.d.ts +49 -0
  260. package/lib/openapi/platform/services/announcement-banner-service.js +99 -0
  261. package/lib/openapi/platform/services/announcement-banner-service.js.map +1 -0
  262. package/lib/openapi/platform/services/app-data-policies-service.d.ts +44 -0
  263. package/lib/openapi/platform/services/app-data-policies-service.js +101 -0
  264. package/lib/openapi/platform/services/app-data-policies-service.js.map +1 -0
  265. package/lib/openapi/platform/services/app-migration-service.d.ts +152 -0
  266. package/lib/openapi/platform/services/app-migration-service.js +178 -0
  267. package/lib/openapi/platform/services/app-migration-service.js.map +1 -0
  268. package/lib/openapi/platform/services/app-properties-service.d.ts +184 -0
  269. package/lib/openapi/platform/services/app-properties-service.js +325 -0
  270. package/lib/openapi/platform/services/app-properties-service.js.map +1 -0
  271. package/lib/openapi/platform/services/application-roles-service.d.ts +158 -0
  272. package/lib/openapi/platform/services/application-roles-service.js +209 -0
  273. package/lib/openapi/platform/services/application-roles-service.js.map +1 -0
  274. package/lib/openapi/platform/services/audit-records-service.d.ts +101 -0
  275. package/lib/openapi/platform/services/audit-records-service.js +125 -0
  276. package/lib/openapi/platform/services/audit-records-service.js.map +1 -0
  277. package/lib/openapi/platform/services/avatars-service.d.ts +363 -0
  278. package/lib/openapi/platform/services/avatars-service.js +523 -0
  279. package/lib/openapi/platform/services/avatars-service.js.map +1 -0
  280. package/lib/openapi/platform/services/classification-levels-service.d.ts +72 -0
  281. package/lib/openapi/platform/services/classification-levels-service.js +104 -0
  282. package/lib/openapi/platform/services/classification-levels-service.js.map +1 -0
  283. package/lib/openapi/platform/services/dashboards-service.d.ts +918 -0
  284. package/lib/openapi/platform/services/dashboards-service.js +1109 -0
  285. package/lib/openapi/platform/services/dashboards-service.js.map +1 -0
  286. package/lib/openapi/platform/services/dynamic-modules-service.d.ts +50 -0
  287. package/lib/openapi/platform/services/dynamic-modules-service.js +96 -0
  288. package/lib/openapi/platform/services/dynamic-modules-service.js.map +1 -0
  289. package/lib/openapi/platform/services/filter-sharing-service.d.ts +446 -0
  290. package/lib/openapi/platform/services/filter-sharing-service.js +565 -0
  291. package/lib/openapi/platform/services/filter-sharing-service.js.map +1 -0
  292. package/lib/openapi/platform/services/filters-service.d.ts +1320 -0
  293. package/lib/openapi/platform/services/filters-service.js +1351 -0
  294. package/lib/openapi/platform/services/filters-service.js.map +1 -0
  295. package/lib/openapi/platform/services/group-and-user-picker-service.d.ts +132 -0
  296. package/lib/openapi/platform/services/group-and-user-picker-service.js +140 -0
  297. package/lib/openapi/platform/services/group-and-user-picker-service.js.map +1 -0
  298. package/lib/openapi/platform/services/groups-service.d.ts +411 -0
  299. package/lib/openapi/platform/services/groups-service.js +448 -0
  300. package/lib/openapi/platform/services/groups-service.js.map +1 -0
  301. package/lib/openapi/platform/services/issue-attachments-service.d.ts +549 -0
  302. package/lib/openapi/platform/services/issue-attachments-service.js +724 -0
  303. package/lib/openapi/platform/services/issue-attachments-service.js.map +1 -0
  304. package/lib/openapi/platform/services/issue-comment-properties-service.d.ts +149 -0
  305. package/lib/openapi/platform/services/issue-comment-properties-service.js +239 -0
  306. package/lib/openapi/platform/services/issue-comment-properties-service.js.map +1 -0
  307. package/lib/openapi/platform/services/issue-comments-service.d.ts +528 -0
  308. package/lib/openapi/platform/services/issue-comments-service.js +563 -0
  309. package/lib/openapi/platform/services/issue-comments-service.js.map +1 -0
  310. package/lib/openapi/platform/services/issue-custom-field-configuration-apps-service.d.ts +155 -0
  311. package/lib/openapi/platform/services/issue-custom-field-configuration-apps-service.js +163 -0
  312. package/lib/openapi/platform/services/issue-custom-field-configuration-apps-service.js.map +1 -0
  313. package/lib/openapi/platform/services/issue-custom-field-contexts-service.d.ts +659 -0
  314. package/lib/openapi/platform/services/issue-custom-field-contexts-service.js +854 -0
  315. package/lib/openapi/platform/services/issue-custom-field-contexts-service.js.map +1 -0
  316. package/lib/openapi/platform/services/issue-custom-field-options-apps-service.d.ts +615 -0
  317. package/lib/openapi/platform/services/issue-custom-field-options-apps-service.js +605 -0
  318. package/lib/openapi/platform/services/issue-custom-field-options-apps-service.js.map +1 -0
  319. package/lib/openapi/platform/services/issue-custom-field-options-service.d.ts +339 -0
  320. package/lib/openapi/platform/services/issue-custom-field-options-service.js +420 -0
  321. package/lib/openapi/platform/services/issue-custom-field-options-service.js.map +1 -0
  322. package/lib/openapi/platform/services/issue-custom-field-values-apps-service.d.ts +90 -0
  323. package/lib/openapi/platform/services/issue-custom-field-values-apps-service.js +117 -0
  324. package/lib/openapi/platform/services/issue-custom-field-values-apps-service.js.map +1 -0
  325. package/lib/openapi/platform/services/issue-field-configurations-service.d.ts +561 -0
  326. package/lib/openapi/platform/services/issue-field-configurations-service.js +801 -0
  327. package/lib/openapi/platform/services/issue-field-configurations-service.js.map +1 -0
  328. package/lib/openapi/platform/services/issue-fields-service.d.ts +420 -0
  329. package/lib/openapi/platform/services/issue-fields-service.js +555 -0
  330. package/lib/openapi/platform/services/issue-fields-service.js.map +1 -0
  331. package/lib/openapi/platform/services/issue-link-types-service.d.ts +165 -0
  332. package/lib/openapi/platform/services/issue-link-types-service.js +263 -0
  333. package/lib/openapi/platform/services/issue-link-types-service.js.map +1 -0
  334. package/lib/openapi/platform/services/issue-links-service.d.ts +237 -0
  335. package/lib/openapi/platform/services/issue-links-service.js +264 -0
  336. package/lib/openapi/platform/services/issue-links-service.js.map +1 -0
  337. package/lib/openapi/platform/services/issue-navigator-settings-service.d.ts +55 -0
  338. package/lib/openapi/platform/services/issue-navigator-settings-service.js +97 -0
  339. package/lib/openapi/platform/services/issue-navigator-settings-service.js.map +1 -0
  340. package/lib/openapi/platform/services/issue-notification-schemes-service.d.ts +809 -0
  341. package/lib/openapi/platform/services/issue-notification-schemes-service.js +917 -0
  342. package/lib/openapi/platform/services/issue-notification-schemes-service.js.map +1 -0
  343. package/lib/openapi/platform/services/issue-priorities-service.d.ts +238 -0
  344. package/lib/openapi/platform/services/issue-priorities-service.js +372 -0
  345. package/lib/openapi/platform/services/issue-priorities-service.js.map +1 -0
  346. package/lib/openapi/platform/services/issue-properties-service.d.ts +368 -0
  347. package/lib/openapi/platform/services/issue-properties-service.js +439 -0
  348. package/lib/openapi/platform/services/issue-properties-service.js.map +1 -0
  349. package/lib/openapi/platform/services/issue-remote-links-service.d.ts +351 -0
  350. package/lib/openapi/platform/services/issue-remote-links-service.js +429 -0
  351. package/lib/openapi/platform/services/issue-remote-links-service.js.map +1 -0
  352. package/lib/openapi/platform/services/issue-resolutions-service.d.ts +202 -0
  353. package/lib/openapi/platform/services/issue-resolutions-service.js +346 -0
  354. package/lib/openapi/platform/services/issue-resolutions-service.js.map +1 -0
  355. package/lib/openapi/platform/services/issue-search-service.d.ts +887 -0
  356. package/lib/openapi/platform/services/issue-search-service.js +878 -0
  357. package/lib/openapi/platform/services/issue-search-service.js.map +1 -0
  358. package/lib/openapi/platform/services/issue-security-level-service.d.ts +136 -0
  359. package/lib/openapi/platform/services/issue-security-level-service.js +174 -0
  360. package/lib/openapi/platform/services/issue-security-level-service.js.map +1 -0
  361. package/lib/openapi/platform/services/issue-security-schemes-service.d.ts +530 -0
  362. package/lib/openapi/platform/services/issue-security-schemes-service.js +721 -0
  363. package/lib/openapi/platform/services/issue-security-schemes-service.js.map +1 -0
  364. package/lib/openapi/platform/services/issue-type-properties-service.d.ts +150 -0
  365. package/lib/openapi/platform/services/issue-type-properties-service.js +227 -0
  366. package/lib/openapi/platform/services/issue-type-properties-service.js.map +1 -0
  367. package/lib/openapi/platform/services/issue-type-schemes-service.d.ts +460 -0
  368. package/lib/openapi/platform/services/issue-type-schemes-service.js +615 -0
  369. package/lib/openapi/platform/services/issue-type-schemes-service.js.map +1 -0
  370. package/lib/openapi/platform/services/issue-type-screen-schemes-service.d.ts +442 -0
  371. package/lib/openapi/platform/services/issue-type-screen-schemes-service.js +606 -0
  372. package/lib/openapi/platform/services/issue-type-screen-schemes-service.js.map +1 -0
  373. package/lib/openapi/platform/services/issue-types-service.d.ts +343 -0
  374. package/lib/openapi/platform/services/issue-types-service.js +495 -0
  375. package/lib/openapi/platform/services/issue-types-service.js.map +1 -0
  376. package/lib/openapi/platform/services/issue-votes-service.d.ts +117 -0
  377. package/lib/openapi/platform/services/issue-votes-service.js +179 -0
  378. package/lib/openapi/platform/services/issue-votes-service.js.map +1 -0
  379. package/lib/openapi/platform/services/issue-watchers-service.d.ts +168 -0
  380. package/lib/openapi/platform/services/issue-watchers-service.js +236 -0
  381. package/lib/openapi/platform/services/issue-watchers-service.js.map +1 -0
  382. package/lib/openapi/platform/services/issue-worklog-properties-service.d.ts +165 -0
  383. package/lib/openapi/platform/services/issue-worklog-properties-service.js +251 -0
  384. package/lib/openapi/platform/services/issue-worklog-properties-service.js.map +1 -0
  385. package/lib/openapi/platform/services/issue-worklogs-service.d.ts +694 -0
  386. package/lib/openapi/platform/services/issue-worklogs-service.js +701 -0
  387. package/lib/openapi/platform/services/issue-worklogs-service.js.map +1 -0
  388. package/lib/openapi/platform/services/issues-service.d.ts +2356 -0
  389. package/lib/openapi/platform/services/issues-service.js +2022 -0
  390. package/lib/openapi/platform/services/issues-service.js.map +1 -0
  391. package/lib/openapi/platform/services/jira-expressions-service.d.ts +298 -0
  392. package/lib/openapi/platform/services/jira-expressions-service.js +272 -0
  393. package/lib/openapi/platform/services/jira-expressions-service.js.map +1 -0
  394. package/lib/openapi/platform/services/jira-settings-service.d.ts +236 -0
  395. package/lib/openapi/platform/services/jira-settings-service.js +325 -0
  396. package/lib/openapi/platform/services/jira-settings-service.js.map +1 -0
  397. package/lib/openapi/platform/services/jql-functions-apps-service.d.ts +113 -0
  398. package/lib/openapi/platform/services/jql-functions-apps-service.js +142 -0
  399. package/lib/openapi/platform/services/jql-functions-apps-service.js.map +1 -0
  400. package/lib/openapi/platform/services/jql-service.d.ts +623 -0
  401. package/lib/openapi/platform/services/jql-service.js +697 -0
  402. package/lib/openapi/platform/services/jql-service.js.map +1 -0
  403. package/lib/openapi/platform/services/labels-service.d.ts +34 -0
  404. package/lib/openapi/platform/services/labels-service.js +67 -0
  405. package/lib/openapi/platform/services/labels-service.js.map +1 -0
  406. package/lib/openapi/platform/services/license-metrics-service.d.ts +82 -0
  407. package/lib/openapi/platform/services/license-metrics-service.js +160 -0
  408. package/lib/openapi/platform/services/license-metrics-service.js.map +1 -0
  409. package/lib/openapi/platform/services/myself-service.d.ts +254 -0
  410. package/lib/openapi/platform/services/myself-service.js +382 -0
  411. package/lib/openapi/platform/services/myself-service.js.map +1 -0
  412. package/lib/openapi/platform/services/permission-schemes-service.d.ts +554 -0
  413. package/lib/openapi/platform/services/permission-schemes-service.js +613 -0
  414. package/lib/openapi/platform/services/permission-schemes-service.js.map +1 -0
  415. package/lib/openapi/platform/services/permissions-service.d.ts +214 -0
  416. package/lib/openapi/platform/services/permissions-service.js +281 -0
  417. package/lib/openapi/platform/services/permissions-service.js.map +1 -0
  418. package/lib/openapi/platform/services/priority-schemes-service.d.ts +578 -0
  419. package/lib/openapi/platform/services/priority-schemes-service.js +655 -0
  420. package/lib/openapi/platform/services/priority-schemes-service.js.map +1 -0
  421. package/lib/openapi/platform/services/project-avatars-service.d.ts +170 -0
  422. package/lib/openapi/platform/services/project-avatars-service.js +254 -0
  423. package/lib/openapi/platform/services/project-avatars-service.js.map +1 -0
  424. package/lib/openapi/platform/services/project-categories-service.d.ts +128 -0
  425. package/lib/openapi/platform/services/project-categories-service.js +226 -0
  426. package/lib/openapi/platform/services/project-categories-service.js.map +1 -0
  427. package/lib/openapi/platform/services/project-classification-levels-service.d.ts +90 -0
  428. package/lib/openapi/platform/services/project-classification-levels-service.js +161 -0
  429. package/lib/openapi/platform/services/project-classification-levels-service.js.map +1 -0
  430. package/lib/openapi/platform/services/project-components-service.d.ts +955 -0
  431. package/lib/openapi/platform/services/project-components-service.js +1075 -0
  432. package/lib/openapi/platform/services/project-components-service.js.map +1 -0
  433. package/lib/openapi/platform/services/project-email-service.d.ts +60 -0
  434. package/lib/openapi/platform/services/project-email-service.js +113 -0
  435. package/lib/openapi/platform/services/project-email-service.js.map +1 -0
  436. package/lib/openapi/platform/services/project-features-service.d.ts +103 -0
  437. package/lib/openapi/platform/services/project-features-service.js +155 -0
  438. package/lib/openapi/platform/services/project-features-service.js.map +1 -0
  439. package/lib/openapi/platform/services/project-key-and-name-validation-service.d.ts +59 -0
  440. package/lib/openapi/platform/services/project-key-and-name-validation-service.js +135 -0
  441. package/lib/openapi/platform/services/project-key-and-name-validation-service.js.map +1 -0
  442. package/lib/openapi/platform/services/project-permission-schemes-service.d.ts +179 -0
  443. package/lib/openapi/platform/services/project-permission-schemes-service.js +255 -0
  444. package/lib/openapi/platform/services/project-permission-schemes-service.js.map +1 -0
  445. package/lib/openapi/platform/services/project-properties-service.d.ts +147 -0
  446. package/lib/openapi/platform/services/project-properties-service.js +224 -0
  447. package/lib/openapi/platform/services/project-properties-service.js.map +1 -0
  448. package/lib/openapi/platform/services/project-role-actors-service.d.ts +351 -0
  449. package/lib/openapi/platform/services/project-role-actors-service.js +413 -0
  450. package/lib/openapi/platform/services/project-role-actors-service.js.map +1 -0
  451. package/lib/openapi/platform/services/project-roles-service.d.ts +484 -0
  452. package/lib/openapi/platform/services/project-roles-service.js +647 -0
  453. package/lib/openapi/platform/services/project-roles-service.js.map +1 -0
  454. package/lib/openapi/platform/services/project-types-service.d.ts +121 -0
  455. package/lib/openapi/platform/services/project-types-service.js +220 -0
  456. package/lib/openapi/platform/services/project-types-service.js.map +1 -0
  457. package/lib/openapi/platform/services/project-versions-service.d.ts +632 -0
  458. package/lib/openapi/platform/services/project-versions-service.js +852 -0
  459. package/lib/openapi/platform/services/project-versions-service.js.map +1 -0
  460. package/lib/openapi/platform/services/projects-service.d.ts +1622 -0
  461. package/lib/openapi/platform/services/projects-service.js +1686 -0
  462. package/lib/openapi/platform/services/projects-service.js.map +1 -0
  463. package/lib/openapi/platform/services/screen-schemes-service.d.ts +166 -0
  464. package/lib/openapi/platform/services/screen-schemes-service.js +216 -0
  465. package/lib/openapi/platform/services/screen-schemes-service.js.map +1 -0
  466. package/lib/openapi/platform/services/screen-tab-fields-service.d.ts +103 -0
  467. package/lib/openapi/platform/services/screen-tab-fields-service.js +181 -0
  468. package/lib/openapi/platform/services/screen-tab-fields-service.js.map +1 -0
  469. package/lib/openapi/platform/services/screen-tabs-service.d.ts +164 -0
  470. package/lib/openapi/platform/services/screen-tabs-service.js +278 -0
  471. package/lib/openapi/platform/services/screen-tabs-service.js.map +1 -0
  472. package/lib/openapi/platform/services/screens-service.d.ts +226 -0
  473. package/lib/openapi/platform/services/screens-service.js +346 -0
  474. package/lib/openapi/platform/services/screens-service.js.map +1 -0
  475. package/lib/openapi/platform/services/server-info-service.d.ts +40 -0
  476. package/lib/openapi/platform/services/server-info-service.js +74 -0
  477. package/lib/openapi/platform/services/server-info-service.js.map +1 -0
  478. package/lib/openapi/platform/services/service-registry-service.d.ts +32 -0
  479. package/lib/openapi/platform/services/service-registry-service.js +60 -0
  480. package/lib/openapi/platform/services/service-registry-service.js.map +1 -0
  481. package/lib/openapi/platform/services/status-service.d.ts +268 -0
  482. package/lib/openapi/platform/services/status-service.js +321 -0
  483. package/lib/openapi/platform/services/status-service.js.map +1 -0
  484. package/lib/openapi/platform/services/tasks-service.d.ts +71 -0
  485. package/lib/openapi/platform/services/tasks-service.js +126 -0
  486. package/lib/openapi/platform/services/tasks-service.js.map +1 -0
  487. package/lib/openapi/platform/services/time-tracking-service.d.ts +140 -0
  488. package/lib/openapi/platform/services/time-tracking-service.js +260 -0
  489. package/lib/openapi/platform/services/time-tracking-service.js.map +1 -0
  490. package/lib/openapi/platform/services/ui-modifications-apps-service.d.ts +212 -0
  491. package/lib/openapi/platform/services/ui-modifications-apps-service.js +262 -0
  492. package/lib/openapi/platform/services/ui-modifications-apps-service.js.map +1 -0
  493. package/lib/openapi/platform/services/user-properties-service.d.ts +218 -0
  494. package/lib/openapi/platform/services/user-properties-service.js +254 -0
  495. package/lib/openapi/platform/services/user-properties-service.js.map +1 -0
  496. package/lib/openapi/platform/services/user-search-service.d.ts +782 -0
  497. package/lib/openapi/platform/services/user-search-service.js +784 -0
  498. package/lib/openapi/platform/services/user-search-service.js.map +1 -0
  499. package/lib/openapi/platform/services/users-service.d.ts +579 -0
  500. package/lib/openapi/platform/services/users-service.js +729 -0
  501. package/lib/openapi/platform/services/users-service.js.map +1 -0
  502. package/lib/openapi/platform/services/webhooks-service.d.ts +258 -0
  503. package/lib/openapi/platform/services/webhooks-service.js +307 -0
  504. package/lib/openapi/platform/services/webhooks-service.js.map +1 -0
  505. package/lib/openapi/platform/services/workflow-scheme-drafts-service.d.ts +744 -0
  506. package/lib/openapi/platform/services/workflow-scheme-drafts-service.js +956 -0
  507. package/lib/openapi/platform/services/workflow-scheme-drafts-service.js.map +1 -0
  508. package/lib/openapi/platform/services/workflow-scheme-project-associations-service.d.ts +85 -0
  509. package/lib/openapi/platform/services/workflow-scheme-project-associations-service.js +134 -0
  510. package/lib/openapi/platform/services/workflow-scheme-project-associations-service.js.map +1 -0
  511. package/lib/openapi/platform/services/workflow-schemes-service.d.ts +843 -0
  512. package/lib/openapi/platform/services/workflow-schemes-service.js +1030 -0
  513. package/lib/openapi/platform/services/workflow-schemes-service.js.map +1 -0
  514. package/lib/openapi/platform/services/workflow-status-categories-service.d.ts +60 -0
  515. package/lib/openapi/platform/services/workflow-status-categories-service.js +115 -0
  516. package/lib/openapi/platform/services/workflow-status-categories-service.js.map +1 -0
  517. package/lib/openapi/platform/services/workflow-statuses-service.d.ts +87 -0
  518. package/lib/openapi/platform/services/workflow-statuses-service.js +142 -0
  519. package/lib/openapi/platform/services/workflow-statuses-service.js.map +1 -0
  520. package/lib/openapi/platform/services/workflow-transition-properties-service.d.ts +189 -0
  521. package/lib/openapi/platform/services/workflow-transition-properties-service.js +224 -0
  522. package/lib/openapi/platform/services/workflow-transition-properties-service.js.map +1 -0
  523. package/lib/openapi/platform/services/workflow-transition-rules-service.d.ts +319 -0
  524. package/lib/openapi/platform/services/workflow-transition-rules-service.js +326 -0
  525. package/lib/openapi/platform/services/workflow-transition-rules-service.js.map +1 -0
  526. package/lib/openapi/platform/services/workflows-service.d.ts +3032 -0
  527. package/lib/openapi/platform/services/workflows-service.js +2529 -0
  528. package/lib/openapi/platform/services/workflows-service.js.map +1 -0
  529. package/lib/openapi/platform/validation-schema-storage.d.ts +3 -0
  530. package/lib/openapi/platform/validation-schema-storage.js +144 -0
  531. package/lib/openapi/platform/validation-schema-storage.js.map +1 -0
  532. package/lib/openapi/software/base-jira-software-api-client.d.ts +426 -0
  533. package/lib/openapi/software/base-jira-software-api-client.js +444 -0
  534. package/lib/openapi/software/base-jira-software-api-client.js.map +1 -0
  535. package/lib/openapi/software/core/common-http-client.d.ts +196 -0
  536. package/lib/openapi/software/core/common-http-client.js +390 -0
  537. package/lib/openapi/software/core/common-http-client.js.map +1 -0
  538. package/lib/openapi/software/core/common-http-service.d.ts +7 -0
  539. package/lib/openapi/software/core/common-http-service.js +20 -0
  540. package/lib/openapi/software/core/common-http-service.js.map +1 -0
  541. package/lib/openapi/software/core/common-validation-schema-storage.d.ts +35 -0
  542. package/lib/openapi/software/core/common-validation-schema-storage.js +65 -0
  543. package/lib/openapi/software/core/common-validation-schema-storage.js.map +1 -0
  544. package/lib/openapi/software/models/board.d.ts +505 -0
  545. package/lib/openapi/software/models/board.js +389 -0
  546. package/lib/openapi/software/models/board.js.map +1 -0
  547. package/lib/openapi/software/services/backlog-service.d.ts +81 -0
  548. package/lib/openapi/software/services/backlog-service.js +113 -0
  549. package/lib/openapi/software/services/backlog-service.js.map +1 -0
  550. package/lib/openapi/software/services/board-service.d.ts +2254 -0
  551. package/lib/openapi/software/services/board-service.js +2653 -0
  552. package/lib/openapi/software/services/board-service.js.map +1 -0
  553. package/lib/openapi/software/services/builds-service.d.ts +368 -0
  554. package/lib/openapi/software/services/builds-service.js +230 -0
  555. package/lib/openapi/software/services/builds-service.js.map +1 -0
  556. package/lib/openapi/software/services/deployments-service.d.ts +217 -0
  557. package/lib/openapi/software/services/deployments-service.js +232 -0
  558. package/lib/openapi/software/services/deployments-service.js.map +1 -0
  559. package/lib/openapi/software/services/dev-ops-components-service.d.ts +246 -0
  560. package/lib/openapi/software/services/dev-ops-components-service.js +280 -0
  561. package/lib/openapi/software/services/dev-ops-components-service.js.map +1 -0
  562. package/lib/openapi/software/services/development-information-service.d.ts +1641 -0
  563. package/lib/openapi/software/services/development-information-service.js +474 -0
  564. package/lib/openapi/software/services/development-information-service.js.map +1 -0
  565. package/lib/openapi/software/services/epic-service.d.ts +596 -0
  566. package/lib/openapi/software/services/epic-service.js +633 -0
  567. package/lib/openapi/software/services/epic-service.js.map +1 -0
  568. package/lib/openapi/software/services/feature-flags-service.d.ts +170 -0
  569. package/lib/openapi/software/services/feature-flags-service.js +182 -0
  570. package/lib/openapi/software/services/feature-flags-service.js.map +1 -0
  571. package/lib/openapi/software/services/issue-service.d.ts +329 -0
  572. package/lib/openapi/software/services/issue-service.js +410 -0
  573. package/lib/openapi/software/services/issue-service.js.map +1 -0
  574. package/lib/openapi/software/services/operations-service.d.ts +456 -0
  575. package/lib/openapi/software/services/operations-service.js +444 -0
  576. package/lib/openapi/software/services/operations-service.js.map +1 -0
  577. package/lib/openapi/software/services/remote-links-service.d.ts +445 -0
  578. package/lib/openapi/software/services/remote-links-service.js +327 -0
  579. package/lib/openapi/software/services/remote-links-service.js.map +1 -0
  580. package/lib/openapi/software/services/security-information-service.d.ts +257 -0
  581. package/lib/openapi/software/services/security-information-service.js +310 -0
  582. package/lib/openapi/software/services/security-information-service.js.map +1 -0
  583. package/lib/openapi/software/services/sprint-service.d.ts +531 -0
  584. package/lib/openapi/software/services/sprint-service.js +665 -0
  585. package/lib/openapi/software/services/sprint-service.js.map +1 -0
  586. package/lib/openapi/software/validation-schema-storage.d.ts +3 -0
  587. package/lib/openapi/software/validation-schema-storage.js +144 -0
  588. package/lib/openapi/software/validation-schema-storage.js.map +1 -0
  589. package/package.json +37 -0
  590. package/src/index.ts +47 -0
  591. package/src/openapi/platform/base-jira-platform-api-client.ts +2298 -0
  592. package/src/openapi/platform/core/common-http-client.ts +723 -0
  593. package/src/openapi/platform/core/common-http-service.ts +22 -0
  594. package/src/openapi/platform/core/common-validation-schema-storage.ts +105 -0
  595. package/src/openapi/platform/models/announcement-banner.ts +59 -0
  596. package/src/openapi/platform/models/app-data-policies.ts +79 -0
  597. package/src/openapi/platform/models/app-migration.ts +172 -0
  598. package/src/openapi/platform/models/app-properties.ts +32 -0
  599. package/src/openapi/platform/models/audit-records.ts +140 -0
  600. package/src/openapi/platform/models/avatars.ts +48 -0
  601. package/src/openapi/platform/models/classification-levels.ts +58 -0
  602. package/src/openapi/platform/models/common.ts +2669 -0
  603. package/src/openapi/platform/models/dashboards.ts +849 -0
  604. package/src/openapi/platform/models/dynamic-modules.ts +121 -0
  605. package/src/openapi/platform/models/filter-sharing.ts +103 -0
  606. package/src/openapi/platform/models/filters.ts +319 -0
  607. package/src/openapi/platform/models/group-and-user-picker.ts +85 -0
  608. package/src/openapi/platform/models/groups.ts +247 -0
  609. package/src/openapi/platform/models/issue-attachments.ts +290 -0
  610. package/src/openapi/platform/models/issue-comment-properties.ts +27 -0
  611. package/src/openapi/platform/models/issue-comments.ts +91 -0
  612. package/src/openapi/platform/models/issue-custom-field-configuration-apps.ts +96 -0
  613. package/src/openapi/platform/models/issue-custom-field-contexts.ts +1072 -0
  614. package/src/openapi/platform/models/issue-custom-field-options-apps.ts +273 -0
  615. package/src/openapi/platform/models/issue-custom-field-options.ts +283 -0
  616. package/src/openapi/platform/models/issue-custom-field-values-apps.ts +118 -0
  617. package/src/openapi/platform/models/issue-field-configurations.ts +435 -0
  618. package/src/openapi/platform/models/issue-fields.ts +392 -0
  619. package/src/openapi/platform/models/issue-link-types.ts +28 -0
  620. package/src/openapi/platform/models/issue-links.ts +185 -0
  621. package/src/openapi/platform/models/issue-notification-schemes.ts +370 -0
  622. package/src/openapi/platform/models/issue-priorities.ts +196 -0
  623. package/src/openapi/platform/models/issue-properties.ts +259 -0
  624. package/src/openapi/platform/models/issue-remote-links.ts +207 -0
  625. package/src/openapi/platform/models/issue-resolutions.ts +180 -0
  626. package/src/openapi/platform/models/issue-search.ts +367 -0
  627. package/src/openapi/platform/models/issue-security-level.ts +76 -0
  628. package/src/openapi/platform/models/issue-security-schemes.ts +496 -0
  629. package/src/openapi/platform/models/issue-type-schemes.ts +290 -0
  630. package/src/openapi/platform/models/issue-type-screen-schemes.ts +286 -0
  631. package/src/openapi/platform/models/issue-types.ts +66 -0
  632. package/src/openapi/platform/models/issue-votes.ts +38 -0
  633. package/src/openapi/platform/models/issue-watchers.ts +67 -0
  634. package/src/openapi/platform/models/issue-worklogs.ts +190 -0
  635. package/src/openapi/platform/models/issues.ts +1268 -0
  636. package/src/openapi/platform/models/jira-expressions.ts +578 -0
  637. package/src/openapi/platform/models/jira-settings.ts +118 -0
  638. package/src/openapi/platform/models/jql-functions-apps.ts +128 -0
  639. package/src/openapi/platform/models/jql.ts +783 -0
  640. package/src/openapi/platform/models/labels.ts +42 -0
  641. package/src/openapi/platform/models/license-metrics.ts +68 -0
  642. package/src/openapi/platform/models/myself.ts +29 -0
  643. package/src/openapi/platform/models/permission-schemes.ts +89 -0
  644. package/src/openapi/platform/models/permissions.ts +308 -0
  645. package/src/openapi/platform/models/priority-schemes.ts +527 -0
  646. package/src/openapi/platform/models/project-avatars.ts +29 -0
  647. package/src/openapi/platform/models/project-classification-levels.ts +24 -0
  648. package/src/openapi/platform/models/project-components.ts +231 -0
  649. package/src/openapi/platform/models/project-email.ts +27 -0
  650. package/src/openapi/platform/models/project-features.ts +78 -0
  651. package/src/openapi/platform/models/project-permission-schemes.ts +43 -0
  652. package/src/openapi/platform/models/project-role-actors.ts +107 -0
  653. package/src/openapi/platform/models/project-roles.ts +76 -0
  654. package/src/openapi/platform/models/project-types.ts +36 -0
  655. package/src/openapi/platform/models/project-versions.ts +216 -0
  656. package/src/openapi/platform/models/projects.ts +429 -0
  657. package/src/openapi/platform/models/screen-schemes.ts +192 -0
  658. package/src/openapi/platform/models/screen-tab-fields.ts +45 -0
  659. package/src/openapi/platform/models/screens.ts +171 -0
  660. package/src/openapi/platform/models/server-info.ts +100 -0
  661. package/src/openapi/platform/models/service-registry.ts +68 -0
  662. package/src/openapi/platform/models/status.ts +229 -0
  663. package/src/openapi/platform/models/time-tracking.ts +38 -0
  664. package/src/openapi/platform/models/ui-modifications-apps.ts +229 -0
  665. package/src/openapi/platform/models/user-search.ts +69 -0
  666. package/src/openapi/platform/models/users.ts +121 -0
  667. package/src/openapi/platform/models/webhooks.ts +307 -0
  668. package/src/openapi/platform/models/workflow-scheme-drafts.ts +58 -0
  669. package/src/openapi/platform/models/workflow-scheme-project-associations.ts +68 -0
  670. package/src/openapi/platform/models/workflow-schemes.ts +545 -0
  671. package/src/openapi/platform/models/workflow-transition-properties.ts +33 -0
  672. package/src/openapi/platform/models/workflow-transition-rules.ts +261 -0
  673. package/src/openapi/platform/models/workflows.ts +1943 -0
  674. package/src/openapi/platform/services/announcement-banner-service.ts +142 -0
  675. package/src/openapi/platform/services/app-data-policies-service.ts +136 -0
  676. package/src/openapi/platform/services/app-migration-service.ts +289 -0
  677. package/src/openapi/platform/services/app-properties-service.ts +441 -0
  678. package/src/openapi/platform/services/application-roles-service.ts +247 -0
  679. package/src/openapi/platform/services/audit-records-service.ts +164 -0
  680. package/src/openapi/platform/services/avatars-service.ts +769 -0
  681. package/src/openapi/platform/services/classification-levels-service.ts +131 -0
  682. package/src/openapi/platform/services/dashboards-service.ts +1721 -0
  683. package/src/openapi/platform/services/dynamic-modules-service.ts +127 -0
  684. package/src/openapi/platform/services/filter-sharing-service.ts +687 -0
  685. package/src/openapi/platform/services/filters-service.ts +1901 -0
  686. package/src/openapi/platform/services/group-and-user-picker-service.ts +224 -0
  687. package/src/openapi/platform/services/groups-service.ts +751 -0
  688. package/src/openapi/platform/services/issue-attachments-service.ts +900 -0
  689. package/src/openapi/platform/services/issue-comment-properties-service.ts +324 -0
  690. package/src/openapi/platform/services/issue-comments-service.ts +812 -0
  691. package/src/openapi/platform/services/issue-custom-field-configuration-apps-service.ts +277 -0
  692. package/src/openapi/platform/services/issue-custom-field-contexts-service.ts +1339 -0
  693. package/src/openapi/platform/services/issue-custom-field-options-apps-service.ts +994 -0
  694. package/src/openapi/platform/services/issue-custom-field-options-service.ts +651 -0
  695. package/src/openapi/platform/services/issue-custom-field-values-apps-service.ts +201 -0
  696. package/src/openapi/platform/services/issue-field-configurations-service.ts +1294 -0
  697. package/src/openapi/platform/services/issue-fields-service.ts +837 -0
  698. package/src/openapi/platform/services/issue-link-types-service.ts +360 -0
  699. package/src/openapi/platform/services/issue-links-service.ts +345 -0
  700. package/src/openapi/platform/services/issue-navigator-settings-service.ts +119 -0
  701. package/src/openapi/platform/services/issue-notification-schemes-service.ts +1209 -0
  702. package/src/openapi/platform/services/issue-priorities-service.ts +575 -0
  703. package/src/openapi/platform/services/issue-properties-service.ts +606 -0
  704. package/src/openapi/platform/services/issue-remote-links-service.ts +597 -0
  705. package/src/openapi/platform/services/issue-resolutions-service.ts +534 -0
  706. package/src/openapi/platform/services/issue-search-service.ts +1139 -0
  707. package/src/openapi/platform/services/issue-security-level-service.ts +250 -0
  708. package/src/openapi/platform/services/issue-security-schemes-service.ts +1240 -0
  709. package/src/openapi/platform/services/issue-type-properties-service.ts +325 -0
  710. package/src/openapi/platform/services/issue-type-schemes-service.ts +940 -0
  711. package/src/openapi/platform/services/issue-type-screen-schemes-service.ts +994 -0
  712. package/src/openapi/platform/services/issue-types-service.ts +679 -0
  713. package/src/openapi/platform/services/issue-votes-service.ts +221 -0
  714. package/src/openapi/platform/services/issue-watchers-service.ts +331 -0
  715. package/src/openapi/platform/services/issue-worklog-properties-service.ts +348 -0
  716. package/src/openapi/platform/services/issue-worklogs-service.ts +1089 -0
  717. package/src/openapi/platform/services/issues-service.ts +3346 -0
  718. package/src/openapi/platform/services/jira-expressions-service.ts +407 -0
  719. package/src/openapi/platform/services/jira-settings-service.ts +415 -0
  720. package/src/openapi/platform/services/jql-functions-apps-service.ts +219 -0
  721. package/src/openapi/platform/services/jql-service.ts +896 -0
  722. package/src/openapi/platform/services/labels-service.ts +89 -0
  723. package/src/openapi/platform/services/license-metrics-service.ts +216 -0
  724. package/src/openapi/platform/services/myself-service.ts +520 -0
  725. package/src/openapi/platform/services/permission-schemes-service.ts +926 -0
  726. package/src/openapi/platform/services/permissions-service.ts +407 -0
  727. package/src/openapi/platform/services/priority-schemes-service.ts +1001 -0
  728. package/src/openapi/platform/services/project-avatars-service.ts +341 -0
  729. package/src/openapi/platform/services/project-categories-service.ts +318 -0
  730. package/src/openapi/platform/services/project-classification-levels-service.ts +232 -0
  731. package/src/openapi/platform/services/project-components-service.ts +1332 -0
  732. package/src/openapi/platform/services/project-email-service.ts +161 -0
  733. package/src/openapi/platform/services/project-features-service.ts +207 -0
  734. package/src/openapi/platform/services/project-key-and-name-validation-service.ts +200 -0
  735. package/src/openapi/platform/services/project-permission-schemes-service.ts +384 -0
  736. package/src/openapi/platform/services/project-properties-service.ts +320 -0
  737. package/src/openapi/platform/services/project-role-actors-service.ts +627 -0
  738. package/src/openapi/platform/services/project-roles-service.ts +867 -0
  739. package/src/openapi/platform/services/project-types-service.ts +297 -0
  740. package/src/openapi/platform/services/project-versions-service.ts +1287 -0
  741. package/src/openapi/platform/services/projects-service.ts +2196 -0
  742. package/src/openapi/platform/services/screen-schemes-service.ts +334 -0
  743. package/src/openapi/platform/services/screen-tab-fields-service.ts +276 -0
  744. package/src/openapi/platform/services/screen-tabs-service.ts +421 -0
  745. package/src/openapi/platform/services/screens-service.ts +528 -0
  746. package/src/openapi/platform/services/server-info-service.ts +88 -0
  747. package/src/openapi/platform/services/service-registry-service.ts +89 -0
  748. package/src/openapi/platform/services/status-service.ts +498 -0
  749. package/src/openapi/platform/services/tasks-service.ts +159 -0
  750. package/src/openapi/platform/services/time-tracking-service.ts +386 -0
  751. package/src/openapi/platform/services/ui-modifications-apps-service.ts +403 -0
  752. package/src/openapi/platform/services/user-properties-service.ts +413 -0
  753. package/src/openapi/platform/services/user-search-service.ts +1214 -0
  754. package/src/openapi/platform/services/users-service.ts +1108 -0
  755. package/src/openapi/platform/services/webhooks-service.ts +458 -0
  756. package/src/openapi/platform/services/workflow-scheme-drafts-service.ts +1313 -0
  757. package/src/openapi/platform/services/workflow-scheme-project-associations-service.ts +189 -0
  758. package/src/openapi/platform/services/workflow-schemes-service.ts +1617 -0
  759. package/src/openapi/platform/services/workflow-status-categories-service.ts +151 -0
  760. package/src/openapi/platform/services/workflow-statuses-service.ts +176 -0
  761. package/src/openapi/platform/services/workflow-transition-properties-service.ts +388 -0
  762. package/src/openapi/platform/services/workflow-transition-rules-service.ts +485 -0
  763. package/src/openapi/platform/services/workflows-service.ts +3477 -0
  764. package/src/openapi/platform/validation-schema-storage.ts +186 -0
  765. package/src/openapi/software/base-jira-software-api-client.ts +447 -0
  766. package/src/openapi/software/core/common-http-client.ts +723 -0
  767. package/src/openapi/software/core/common-http-service.ts +22 -0
  768. package/src/openapi/software/core/common-validation-schema-storage.ts +105 -0
  769. package/src/openapi/software/models/board.ts +918 -0
  770. package/src/openapi/software/services/backlog-service.ts +160 -0
  771. package/src/openapi/software/services/board-service.ts +4189 -0
  772. package/src/openapi/software/services/builds-service.ts +571 -0
  773. package/src/openapi/software/services/deployments-service.ts +403 -0
  774. package/src/openapi/software/services/dev-ops-components-service.ts +371 -0
  775. package/src/openapi/software/services/development-information-service.ts +2357 -0
  776. package/src/openapi/software/services/epic-service.ts +854 -0
  777. package/src/openapi/software/services/feature-flags-service.ts +303 -0
  778. package/src/openapi/software/services/issue-service.ts +529 -0
  779. package/src/openapi/software/services/operations-service.ts +741 -0
  780. package/src/openapi/software/services/remote-links-service.ts +653 -0
  781. package/src/openapi/software/services/security-information-service.ts +495 -0
  782. package/src/openapi/software/services/sprint-service.ts +969 -0
  783. package/src/openapi/software/validation-schema-storage.ts +186 -0
  784. package/tsconfig.build.json +7 -0
  785. package/tsconfig.json +4 -0
@@ -0,0 +1,3477 @@
1
+ // DO NOT EDIT!
2
+ // This file is generated by "api-typescript-generator".
3
+ // To update this file run "yarn build:openapi".
4
+ import { z } from "zod";
5
+
6
+ import * as commonHttpClient from "../core/common-http-client";
7
+ import { CommonHttpService } from "../core/common-http-service";
8
+ import {
9
+ type CreateWorkflowDetails,
10
+ type DeprecatedWorkflow,
11
+ type PageBeanWorkflow,
12
+ registerWorkflowsValidationSchemas,
13
+ type WorkflowCapabilities,
14
+ type WorkflowCreateRequest,
15
+ type WorkflowCreateResponse,
16
+ type WorkflowCreateValidateRequest,
17
+ type WorkflowIds,
18
+ type WorkflowReadRequest,
19
+ type WorkflowReadResponse,
20
+ type WorkflowUpdateRequest,
21
+ type WorkflowUpdateResponse,
22
+ type WorkflowUpdateValidateRequestBean,
23
+ type WorkflowValidationErrorList,
24
+ } from "../models/workflows";
25
+ import { validationSchemaStorage } from "../validation-schema-storage";
26
+ /**
27
+ * This resource represents workflows. Use it to:
28
+ *
29
+ * * Get workflows
30
+ * * Create workflows
31
+ * * Update workflows
32
+ * * Delete inactive workflows
33
+ * * Get workflow capabilities
34
+ */
35
+ export class WorkflowsService extends CommonHttpService {
36
+ /**
37
+ * Creates a workflow. You can define transition rules using the shapes detailed
38
+ * in the following sections. If no transitional rules are specified the default
39
+ * system transition rules are used. Note: This only applies to company-managed
40
+ * scoped workflows. Use [bulk create
41
+ * workflows](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflows/#api-rest-api-3-workflows-create-post)
42
+ * to create both team and company-managed scoped workflows.
43
+ *
44
+ * #### Conditions ####
45
+ *
46
+ * Conditions enable workflow rules that govern whether a transition can execute.
47
+ *
48
+ * ##### Always false condition #####
49
+ *
50
+ * A condition that always fails.
51
+ *
52
+ * {
53
+ * "type": "AlwaysFalseCondition"
54
+ * }
55
+ *
56
+ * ##### Block transition until approval #####
57
+ *
58
+ * A condition that blocks issue transition if there is a pending approval.
59
+ *
60
+ * {
61
+ * "type": "BlockInProgressApprovalCondition"
62
+ * }
63
+ *
64
+ * ##### Compare number custom field condition #####
65
+ *
66
+ * A condition that allows transition if a comparison between a number custom
67
+ * field and a value is true.
68
+ *
69
+ * {
70
+ * "type": "CompareNumberCFCondition",
71
+ * "configuration": {
72
+ * "comparator": "=",
73
+ * "fieldId": "customfield_10029",
74
+ * "fieldValue": 2
75
+ * }
76
+ * }
77
+ *
78
+ * * `comparator` One of the supported comparator: `=`, `>`, and `<`.
79
+ * * `fieldId` The custom numeric field ID. Allowed field types:
80
+ *
81
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:float`
82
+ * * `com.pyxis.greenhopper.jira:jsw-story-points`
83
+ * * `fieldValue` The value for comparison.
84
+ *
85
+ * ##### Hide from user condition #####
86
+ *
87
+ * A condition that hides a transition from users. The transition can only be
88
+ * triggered from a workflow function or REST API operation.
89
+ *
90
+ * {
91
+ * "type": "RemoteOnlyCondition"
92
+ * }
93
+ *
94
+ * ##### Only assignee condition #####
95
+ *
96
+ * A condition that allows only the assignee to execute a transition.
97
+ *
98
+ * {
99
+ * "type": "AllowOnlyAssignee"
100
+ * }
101
+ *
102
+ * ##### Only Bamboo notifications workflow condition (deprecated) #####
103
+ *
104
+ * A condition that makes the transition available only to Bamboo build
105
+ * notifications.
106
+ *
107
+ * {
108
+ * "type": "OnlyBambooNotificationsCondition"
109
+ * }
110
+ *
111
+ * ##### Only reporter condition #####
112
+ *
113
+ * A condition that allows only the reporter to execute a transition.
114
+ *
115
+ * {
116
+ * "type": "AllowOnlyReporter"
117
+ * }
118
+ *
119
+ * ##### Permission condition #####
120
+ *
121
+ * A condition that allows only users with a permission to execute a transition.
122
+ *
123
+ * {
124
+ * "type": "PermissionCondition",
125
+ * "configuration": {
126
+ * "permissionKey": "BROWSE_PROJECTS"
127
+ * }
128
+ * }
129
+ *
130
+ * * `permissionKey` The permission required to perform the transition. Allowed
131
+ * values:
132
+ * [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions)
133
+ * or app defined permissions.
134
+ *
135
+ * ##### Previous status condition #####
136
+ *
137
+ * A condition that allows a transition based on whether an issue has or has not
138
+ * transitioned through a status.
139
+ *
140
+ * {
141
+ * "type": "PreviousStatusCondition",
142
+ * "configuration": {
143
+ * "ignoreLoopTransitions": true,
144
+ * "includeCurrentStatus": true,
145
+ * "mostRecentStatusOnly": true,
146
+ * "reverseCondition": true,
147
+ * "previousStatus": {
148
+ * "id": "5"
149
+ * }
150
+ * }
151
+ * }
152
+ *
153
+ * By default this condition allows the transition if the status, as defined by
154
+ * its ID in the `previousStatus` object, matches any previous issue status,
155
+ * unless:
156
+ *
157
+ * * `ignoreLoopTransitions` is `true`, then loop transitions (from and to the
158
+ * same status) are ignored.
159
+ * * `includeCurrentStatus` is `true`, then the current issue status is also
160
+ * checked.
161
+ * * `mostRecentStatusOnly` is `true`, then only the issue's preceding status
162
+ * (the one immediately before the current status) is checked.
163
+ * * `reverseCondition` is `true`, then the status must not be present.
164
+ *
165
+ * ##### Separation of duties condition #####
166
+ *
167
+ * A condition that prevents a user to perform the transition, if the user has
168
+ * already performed a transition on the issue.
169
+ *
170
+ * {
171
+ * "type": "SeparationOfDutiesCondition",
172
+ * "configuration": {
173
+ * "fromStatus": {
174
+ * "id": "5"
175
+ * },
176
+ * "toStatus": {
177
+ * "id": "6"
178
+ * }
179
+ * }
180
+ * }
181
+ *
182
+ * * `fromStatus` OPTIONAL. An object containing the ID of the source status of
183
+ * the transition that is blocked. If omitted any transition to `toStatus` is
184
+ * blocked.
185
+ * * `toStatus` An object containing the ID of the target status of the
186
+ * transition that is blocked.
187
+ *
188
+ * ##### Subtask blocking condition #####
189
+ *
190
+ * A condition that blocks transition on a parent issue if any of its subtasks are
191
+ * in any of one or more statuses.
192
+ *
193
+ * {
194
+ * "type": "SubTaskBlockingCondition",
195
+ * "configuration": {
196
+ * "statuses": [
197
+ * {
198
+ * "id": "1"
199
+ * },
200
+ * {
201
+ * "id": "3"
202
+ * }
203
+ * ]
204
+ * }
205
+ * }
206
+ *
207
+ * * `statuses` A list of objects containing status IDs.
208
+ *
209
+ * ##### User is in any group condition #####
210
+ *
211
+ * A condition that allows users belonging to any group from a list of groups to
212
+ * execute a transition.
213
+ *
214
+ * {
215
+ * "type": "UserInAnyGroupCondition",
216
+ * "configuration": {
217
+ * "groups": [
218
+ * "administrators",
219
+ * "atlassian-addons-admin"
220
+ * ]
221
+ * }
222
+ * }
223
+ *
224
+ * * `groups` A list of group names.
225
+ *
226
+ * ##### User is in any project role condition #####
227
+ *
228
+ * A condition that allows only users with at least one project roles from a list
229
+ * of project roles to execute a transition.
230
+ *
231
+ * {
232
+ * "type": "InAnyProjectRoleCondition",
233
+ * "configuration": {
234
+ * "projectRoles": [
235
+ * {
236
+ * "id": "10002"
237
+ * },
238
+ * {
239
+ * "id": "10003"
240
+ * },
241
+ * {
242
+ * "id": "10012"
243
+ * },
244
+ * {
245
+ * "id": "10013"
246
+ * }
247
+ * ]
248
+ * }
249
+ * }
250
+ *
251
+ * * `projectRoles` A list of objects containing project role IDs.
252
+ *
253
+ * ##### User is in custom field condition #####
254
+ *
255
+ * A condition that allows only users listed in a given custom field to execute
256
+ * the transition.
257
+ *
258
+ * {
259
+ * "type": "UserIsInCustomFieldCondition",
260
+ * "configuration": {
261
+ * "allowUserInField": false,
262
+ * "fieldId": "customfield_10010"
263
+ * }
264
+ * }
265
+ *
266
+ * * `allowUserInField` If `true` only a user who is listed in `fieldId` can
267
+ * perform the transition, otherwise, only a user who is not listed in `fieldId`
268
+ * can perform the transition.
269
+ * * `fieldId` The ID of the field containing the list of users.
270
+ *
271
+ * ##### User is in group condition #####
272
+ *
273
+ * A condition that allows users belonging to a group to execute a transition.
274
+ *
275
+ * {
276
+ * "type": "UserInGroupCondition",
277
+ * "configuration": {
278
+ * "group": "administrators"
279
+ * }
280
+ * }
281
+ *
282
+ * * `group` The name of the group.
283
+ *
284
+ * ##### User is in group custom field condition #####
285
+ *
286
+ * A condition that allows users belonging to a group specified in a custom field
287
+ * to execute a transition.
288
+ *
289
+ * {
290
+ * "type": "InGroupCFCondition",
291
+ * "configuration": {
292
+ * "fieldId": "customfield_10012"
293
+ * }
294
+ * }
295
+ *
296
+ * * `fieldId` The ID of the field. Allowed field types:
297
+ *
298
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker`
299
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker`
300
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:select`
301
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:multiselect`
302
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`
303
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`
304
+ * * `com.pyxis.greenhopper.jira:gh-epic-status`
305
+ *
306
+ * ##### User is in project role condition #####
307
+ *
308
+ * A condition that allows users with a project role to execute a transition.
309
+ *
310
+ * {
311
+ * "type": "InProjectRoleCondition",
312
+ * "configuration": {
313
+ * "projectRole": {
314
+ * "id": "10002"
315
+ * }
316
+ * }
317
+ * }
318
+ *
319
+ * * `projectRole` An object containing the ID of a project role.
320
+ *
321
+ * ##### Value field condition #####
322
+ *
323
+ * A conditions that allows a transition to execute if the value of a field is
324
+ * equal to a constant value or simply set.
325
+ *
326
+ * {
327
+ * "type": "ValueFieldCondition",
328
+ * "configuration": {
329
+ * "fieldId": "assignee",
330
+ * "fieldValue":
331
+ * "qm:6e1ecee6-8e64-4db6-8c85-916bb3275f51:54b56885-2bd2-4381-8239-78263442520f",
332
+ * "comparisonType": "NUMBER",
333
+ * "comparator": "="
334
+ * }
335
+ * }
336
+ *
337
+ * * `fieldId` The ID of a field used in the comparison.
338
+ * * `fieldValue` The expected value of the field.
339
+ * * `comparisonType` The type of the comparison. Allowed values: `STRING`,
340
+ * `NUMBER`, `DATE`, `DATE_WITHOUT_TIME`, or `OPTIONID`.
341
+ * * `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`,
342
+ * `!=`.
343
+ *
344
+ * **Notes:**
345
+ *
346
+ * * If you choose the comparison type `STRING`, only `=` and `!=` are valid
347
+ * options.
348
+ * * You may leave `fieldValue` empty when comparison type is `!=` to indicate
349
+ * that a value is required in the field.
350
+ * * For date fields without time format values as `yyyy-MM-dd`, and for those
351
+ * with time as `yyyy-MM-dd HH:mm`. For example, for July 16 2021 use
352
+ * `2021-07-16`, for 8:05 AM use `2021-07-16 08:05`, and for 4 PM: `2021-07-16
353
+ * 16:00`.
354
+ *
355
+ * #### Validators ####
356
+ *
357
+ * Validators check that any input made to the transition is valid before the
358
+ * transition is performed.
359
+ *
360
+ * ##### Date field validator #####
361
+ *
362
+ * A validator that compares two dates.
363
+ *
364
+ * {
365
+ * "type": "DateFieldValidator",
366
+ * "configuration": {
367
+ * "comparator": ">",
368
+ * "date1": "updated",
369
+ * "date2": "created",
370
+ * "expression": "1d",
371
+ * "includeTime": true
372
+ * }
373
+ * }
374
+ *
375
+ * * `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`, or
376
+ * `!=`.
377
+ * * `date1` The date field to validate. Allowed field types:
378
+ *
379
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`
380
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datetime`
381
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-end`
382
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-start`
383
+ * * `duedate`
384
+ * * `created`
385
+ * * `updated`
386
+ * * `resolutiondate`
387
+ * * `date2` The second date field. Required, if `expression` is not passed.
388
+ * Allowed field types:
389
+ *
390
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`
391
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datetime`
392
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-end`
393
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-start`
394
+ * * `duedate`
395
+ * * `created`
396
+ * * `updated`
397
+ * * `resolutiondate`
398
+ * * `expression` An expression specifying an offset. Required, if `date2` is
399
+ * not passed. Offsets are built with a number, with `-` as prefix for the past,
400
+ * and one of these time units: `d` for day, `w` for week, `m` for month, or `y`
401
+ * for year. For example, -2d means two days into the past and 1w means one week
402
+ * into the future. The `now` keyword enables a comparison with the current date.
403
+ * * `includeTime` If `true`, then the time part of the data is included for the
404
+ * comparison. If the field doesn't have a time part, 00:00:00 is used.
405
+ *
406
+ * ##### Windows date validator #####
407
+ *
408
+ * A validator that checks that a date falls on or after a reference date and
409
+ * before or on the reference date plus a number of days.
410
+ *
411
+ * {
412
+ * "type": "WindowsDateValidator",
413
+ * "configuration": {
414
+ * "date1": "customfield_10009",
415
+ * "date2": "created",
416
+ * "windowsDays": 5
417
+ * }
418
+ * }
419
+ *
420
+ * * `date1` The date field to validate. Allowed field types:
421
+ *
422
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`
423
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datetime`
424
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-end`
425
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-start`
426
+ * * `duedate`
427
+ * * `created`
428
+ * * `updated`
429
+ * * `resolutiondate`
430
+ * * `date2` The reference date. Allowed field types:
431
+ *
432
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`
433
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:datetime`
434
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-end`
435
+ * * `com.atlassian.jpo:jpo-custom-field-baseline-start`
436
+ * * `duedate`
437
+ * * `created`
438
+ * * `updated`
439
+ * * `resolutiondate`
440
+ * * `windowsDays` A positive integer indicating a number of days.
441
+ *
442
+ * ##### Field required validator #####
443
+ *
444
+ * A validator that checks fields are not empty. By default, if a field is not
445
+ * included in the current context it's ignored and not validated.
446
+ *
447
+ * {
448
+ * "type": "FieldRequiredValidator",
449
+ * "configuration": {
450
+ * "ignoreContext": true,
451
+ * "errorMessage": "Hey",
452
+ * "fieldIds": [
453
+ * "versions",
454
+ * "customfield_10037",
455
+ * "customfield_10003"
456
+ * ]
457
+ * }
458
+ * }
459
+ *
460
+ * * `ignoreContext` If `true`, then the context is ignored and all the fields
461
+ * are validated.
462
+ * * `errorMessage` OPTIONAL. The error message displayed when one or more
463
+ * fields are empty. A default error message is shown if an error message is not
464
+ * provided.
465
+ * * `fieldIds` The list of fields to validate.
466
+ *
467
+ * ##### Field changed validator #####
468
+ *
469
+ * A validator that checks that a field value is changed. However, this validation
470
+ * can be ignored for users from a list of groups.
471
+ *
472
+ * {
473
+ * "type": "FieldChangedValidator",
474
+ * "configuration": {
475
+ * "fieldId": "comment",
476
+ * "errorMessage": "Hey",
477
+ * "exemptedGroups": [
478
+ * "administrators",
479
+ * "atlassian-addons-admin"
480
+ * ]
481
+ * }
482
+ * }
483
+ *
484
+ * * `fieldId` The ID of a field.
485
+ * * `errorMessage` OPTIONAL. The error message displayed if the field is not
486
+ * changed. A default error message is shown if the error message is not provided.
487
+ * * `exemptedGroups` OPTIONAL. The list of groups.
488
+ *
489
+ * ##### Field has single value validator #####
490
+ *
491
+ * A validator that checks that a multi-select field has only one value.
492
+ * Optionally, the validation can ignore values copied from subtasks.
493
+ *
494
+ * {
495
+ * "type": "FieldHasSingleValueValidator",
496
+ * "configuration": {
497
+ * "fieldId": "attachment,
498
+ * "excludeSubtasks": true
499
+ * }
500
+ * }
501
+ *
502
+ * * `fieldId` The ID of a field.
503
+ * * `excludeSubtasks` If `true`, then values copied from subtasks are ignored.
504
+ *
505
+ * ##### Parent status validator #####
506
+ *
507
+ * A validator that checks the status of the parent issue of a subtask. Ìf the
508
+ * issue is not a subtask, no validation is performed.
509
+ *
510
+ * {
511
+ * "type": "ParentStatusValidator",
512
+ * "configuration": {
513
+ * "parentStatuses": [
514
+ * {
515
+ * "id":"1"
516
+ * },
517
+ * {
518
+ * "id":"2"
519
+ * }
520
+ * ]
521
+ * }
522
+ * }
523
+ *
524
+ * * `parentStatus` The list of required parent issue statuses.
525
+ *
526
+ * ##### Permission validator #####
527
+ *
528
+ * A validator that checks the user has a permission.
529
+ *
530
+ * {
531
+ * "type": "PermissionValidator",
532
+ * "configuration": {
533
+ * "permissionKey": "ADMINISTER_PROJECTS"
534
+ * }
535
+ * }
536
+ *
537
+ * * `permissionKey` The permission required to perform the transition. Allowed
538
+ * values:
539
+ * [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions)
540
+ * or app defined permissions.
541
+ *
542
+ * ##### Previous status validator #####
543
+ *
544
+ * A validator that checks if the issue has held a status.
545
+ *
546
+ * {
547
+ * "type": "PreviousStatusValidator",
548
+ * "configuration": {
549
+ * "mostRecentStatusOnly": false,
550
+ * "previousStatus": {
551
+ * "id": "15"
552
+ * }
553
+ * }
554
+ * }
555
+ *
556
+ * * `mostRecentStatusOnly` If `true`, then only the issue's preceding status
557
+ * (the one immediately before the current status) is checked.
558
+ * * `previousStatus` An object containing the ID of an issue status.
559
+ *
560
+ * ##### Regular expression validator #####
561
+ *
562
+ * A validator that checks the content of a field against a regular expression.
563
+ *
564
+ * {
565
+ * "type": "RegexpFieldValidator",
566
+ * "configuration": {
567
+ * "regExp": "[0-9]",
568
+ * "fieldId": "customfield_10029"
569
+ * }
570
+ * }
571
+ *
572
+ * * `regExp`A regular expression.
573
+ * * `fieldId` The ID of a field. Allowed field types:
574
+ *
575
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:select`
576
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:multiselect`
577
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`
578
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`
579
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:textarea`
580
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:textfield`
581
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:url`
582
+ * * `com.atlassian.jira.plugin.system.customfieldtypes:float`
583
+ * * `com.pyxis.greenhopper.jira:jsw-story-points`
584
+ * * `com.pyxis.greenhopper.jira:gh-epic-status`
585
+ * * `description`
586
+ * * `summary`
587
+ *
588
+ * ##### User permission validator #####
589
+ *
590
+ * A validator that checks if a user has a permission. Obsolete. You may encounter
591
+ * this validator when getting transition rules and can pass it when updating or
592
+ * creating rules, for example, when you want to duplicate the rules from a
593
+ * workflow on a new workflow.
594
+ *
595
+ * {
596
+ * "type": "UserPermissionValidator",
597
+ * "configuration": {
598
+ * "permissionKey": "BROWSE_PROJECTS",
599
+ * "nullAllowed": false,
600
+ * "username": "TestUser"
601
+ * }
602
+ * }
603
+ *
604
+ * * `permissionKey` The permission to be validated. Allowed values:
605
+ * [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions)
606
+ * or app defined permissions.
607
+ * * `nullAllowed` If `true`, allows the transition when `username` is empty.
608
+ * * `username` The username to validate against the `permissionKey`.
609
+ *
610
+ * #### Post functions ####
611
+ *
612
+ * Post functions carry out any additional processing required after a Jira
613
+ * workflow transition is executed.
614
+ *
615
+ * ##### Fire issue event function #####
616
+ *
617
+ * A post function that fires an event that is processed by the listeners.
618
+ *
619
+ * {
620
+ * "type": "FireIssueEventFunction",
621
+ * "configuration": {
622
+ * "event": {
623
+ * "id":"1"
624
+ * }
625
+ * }
626
+ * }
627
+ *
628
+ * **Note:** If provided, this post function overrides the default
629
+ * `FireIssueEventFunction`. Can be included once in a transition.
630
+ *
631
+ * * `event` An object containing the ID of the issue event.
632
+ *
633
+ * ##### Update issue status #####
634
+ *
635
+ * A post function that sets issue status to the linked status of the destination
636
+ * workflow status.
637
+ *
638
+ * {
639
+ * "type": "UpdateIssueStatusFunction"
640
+ * }
641
+ *
642
+ * **Note:** This post function is a default function in global and directed
643
+ * transitions. It can only be added to the initial transition and can only be
644
+ * added once.
645
+ *
646
+ * ##### Create comment #####
647
+ *
648
+ * A post function that adds a comment entered during the transition to an issue.
649
+ *
650
+ * {
651
+ * "type": "CreateCommentFunction"
652
+ * }
653
+ *
654
+ * **Note:** This post function is a default function in global and directed
655
+ * transitions. It can only be added to the initial transition and can only be
656
+ * added once.
657
+ *
658
+ * ##### Store issue #####
659
+ *
660
+ * A post function that stores updates to an issue.
661
+ *
662
+ * {
663
+ * "type": "IssueStoreFunction"
664
+ * }
665
+ *
666
+ * **Note:** This post function can only be added to the initial transition and
667
+ * can only be added once.
668
+ *
669
+ * ##### Assign to current user function #####
670
+ *
671
+ * A post function that assigns the issue to the current user if the current user
672
+ * has the `ASSIGNABLE_USER` permission.
673
+ *
674
+ * {
675
+ * "type": "AssignToCurrentUserFunction"
676
+ * }
677
+ *
678
+ * **Note:** This post function can be included once in a transition.
679
+ *
680
+ * ##### Assign to lead function #####
681
+ *
682
+ * A post function that assigns the issue to the project or component lead
683
+ * developer.
684
+ *
685
+ * {
686
+ * "type": "AssignToLeadFunction"
687
+ * }
688
+ *
689
+ * **Note:** This post function can be included once in a transition.
690
+ *
691
+ * ##### Assign to reporter function #####
692
+ *
693
+ * A post function that assigns the issue to the reporter.
694
+ *
695
+ * {
696
+ * "type": "AssignToReporterFunction"
697
+ * }
698
+ *
699
+ * **Note:** This post function can be included once in a transition.
700
+ *
701
+ * ##### Clear field value function #####
702
+ *
703
+ * A post function that clears the value from a field.
704
+ *
705
+ * {
706
+ * "type": "ClearFieldValuePostFunction",
707
+ * "configuration": {
708
+ * "fieldId": "assignee"
709
+ * }
710
+ * }
711
+ *
712
+ * * `fieldId` The ID of the field.
713
+ *
714
+ * ##### Copy value from other field function #####
715
+ *
716
+ * A post function that copies the value of one field to another, either within an
717
+ * issue or from parent to subtask.
718
+ *
719
+ * {
720
+ * "type": "CopyValueFromOtherFieldPostFunction",
721
+ * "configuration": {
722
+ * "sourceFieldId": "assignee",
723
+ * "destinationFieldId": "creator",
724
+ * "copyType": "same"
725
+ * }
726
+ * }
727
+ *
728
+ * * `sourceFieldId` The ID of the source field.
729
+ * * `destinationFieldId` The ID of the destination field.
730
+ * * `copyType` Use `same` to copy the value from a field inside the issue, or
731
+ * `parent` to copy the value from the parent issue.
732
+ *
733
+ * ##### Create Crucible review workflow function (deprecated) #####
734
+ *
735
+ * A post function that creates a Crucible review for all unreviewed code for the
736
+ * issue.
737
+ *
738
+ * {
739
+ * "type": "CreateCrucibleReviewWorkflowFunction"
740
+ * }
741
+ *
742
+ * **Note:** This post function can be included once in a transition.
743
+ *
744
+ * ##### Set issue security level based on user's project role function #####
745
+ *
746
+ * A post function that sets the issue's security level if the current user has a
747
+ * project role.
748
+ *
749
+ * {
750
+ * "type": "SetIssueSecurityFromRoleFunction",
751
+ * "configuration": {
752
+ * "projectRole": {
753
+ * "id":"10002"
754
+ * },
755
+ * "issueSecurityLevel": {
756
+ * "id":"10000"
757
+ * }
758
+ * }
759
+ * }
760
+ *
761
+ * * `projectRole` An object containing the ID of the project role.
762
+ * * `issueSecurityLevel` OPTIONAL. The object containing the ID of the security
763
+ * level. If not passed, then the security level is set to `none`.
764
+ *
765
+ * ##### Trigger a webhook function #####
766
+ *
767
+ * A post function that triggers a webhook.
768
+ *
769
+ * {
770
+ * "type": "TriggerWebhookFunction",
771
+ * "configuration": {
772
+ * "webhook": {
773
+ * "id": "1"
774
+ * }
775
+ * }
776
+ * }
777
+ *
778
+ * * `webhook` An object containing the ID of the webhook listener to trigger.
779
+ *
780
+ * ##### Update issue custom field function #####
781
+ *
782
+ * A post function that updates the content of an issue custom field.
783
+ *
784
+ * {
785
+ * "type": "UpdateIssueCustomFieldPostFunction",
786
+ * "configuration": {
787
+ * "mode": "append",
788
+ * "fieldId": "customfield_10003",
789
+ * "fieldValue": "yikes"
790
+ * }
791
+ * }
792
+ *
793
+ * * `mode` Use `replace` to override the field content with `fieldValue` or
794
+ * `append` to add `fieldValue` to the end of the field content.
795
+ * * `fieldId` The ID of the field.
796
+ * * `fieldValue` The update content.
797
+ *
798
+ * ##### Update issue field function #####
799
+ *
800
+ * A post function that updates a simple issue field.
801
+ *
802
+ * {
803
+ * "type": "UpdateIssueFieldFunction",
804
+ * "configuration": {
805
+ * "fieldId": "assignee",
806
+ * "fieldValue": "5f0c277e70b8a90025a00776"
807
+ * }
808
+ * }
809
+ *
810
+ * * `fieldId` The ID of the field. Allowed field types:
811
+ *
812
+ * * `assignee`
813
+ * * `description`
814
+ * * `environment`
815
+ * * `priority`
816
+ * * `resolution`
817
+ * * `summary`
818
+ * * `timeoriginalestimate`
819
+ * * `timeestimate`
820
+ * * `timespent`
821
+ * * `fieldValue` The update value.
822
+ * * If the `fieldId` is `assignee`, the `fieldValue` should be one of these
823
+ * values:
824
+ *
825
+ * * an account ID.
826
+ * * `automatic`.
827
+ * * a blank string, which sets the value to `unassigned`.
828
+ *
829
+ * #### Connect rules ####
830
+ *
831
+ * Connect rules are conditions, validators, and post functions of a transition
832
+ * that are registered by Connect apps. To create a rule registered by the app,
833
+ * the app must be enabled and the rule's module must exist.
834
+ *
835
+ * {
836
+ * "type": "appKey__moduleKey",
837
+ * "configuration": {
838
+ * "value":"{\"isValid\":\"true\"}"
839
+ * }
840
+ * }
841
+ *
842
+ * * `type` A Connect rule key in a form of `appKey__moduleKey`.
843
+ * * `value` The stringified JSON configuration of a Connect rule.
844
+ *
845
+ * #### Forge rules ####
846
+ *
847
+ * Forge transition rules are not yet supported.
848
+ *
849
+ * **[Permissions](#permissions) required:** *Administer Jira* [global
850
+ * permission](https://confluence.atlassian.com/x/x4dKLg).
851
+ *
852
+ * @deprecated
853
+ * @returns Returned if the workflow is created.
854
+ *
855
+ * example: {
856
+ * "entityId": "d7178e8d-bf6c-4c0c-9e90-758a0b965b67",
857
+ * "name": "Workflow 1"
858
+ * }
859
+ * @path {POST} /rest/api/3/workflow
860
+ * @scopes-current manage:jira-configuration
861
+ * @scopes-beta write:workflow:jira, read:workflow:jira
862
+ */
863
+ createWorkflow({
864
+ createWorkflowDetails,
865
+ }: {
866
+ /**
867
+ * The workflow details.
868
+ *
869
+ * @example {
870
+ * "description": "This is a workflow used for Stories and Tasks",
871
+ * "name": "Workflow 1",
872
+ * "statuses": [
873
+ * {
874
+ * "id": "1",
875
+ * "properties": {
876
+ * "jira.issue.editable": "false"
877
+ * }
878
+ * },
879
+ * {
880
+ * "id": "2"
881
+ * },
882
+ * {
883
+ * "id": "3"
884
+ * }
885
+ * ],
886
+ * "transitions": [
887
+ * {
888
+ * "from": [],
889
+ * "name": "Created",
890
+ * "to": "1",
891
+ * "type": "initial"
892
+ * },
893
+ * {
894
+ * "from": [
895
+ * "1"
896
+ * ],
897
+ * "name": "In progress",
898
+ * "properties": {
899
+ * "custom-property": "custom-value"
900
+ * },
901
+ * "rules": {
902
+ * "conditions": {
903
+ * "conditions": [
904
+ * {
905
+ * "type": "RemoteOnlyCondition"
906
+ * },
907
+ * {
908
+ * "configuration": {
909
+ * "groups": [
910
+ * "developers",
911
+ * "qa-testers"
912
+ * ]
913
+ * },
914
+ * "type": "UserInAnyGroupCondition"
915
+ * }
916
+ * ],
917
+ * "operator": "AND"
918
+ * },
919
+ * "postFunctions": [
920
+ * {
921
+ * "type": "AssignToCurrentUserFunction"
922
+ * }
923
+ * ]
924
+ * },
925
+ * "screen": {
926
+ * "id": "10001"
927
+ * },
928
+ * "to": "2",
929
+ * "type": "directed"
930
+ * },
931
+ * {
932
+ * "name": "Completed",
933
+ * "rules": {
934
+ * "postFunctions": [
935
+ * {
936
+ * "configuration": {
937
+ * "fieldId": "assignee"
938
+ * },
939
+ * "type": "ClearFieldValuePostFunction"
940
+ * }
941
+ * ],
942
+ * "validators": [
943
+ * {
944
+ * "configuration": {
945
+ * "parentStatuses": [
946
+ * {
947
+ * "id": "3"
948
+ * }
949
+ * ]
950
+ * },
951
+ * "type": "ParentStatusValidator"
952
+ * },
953
+ * {
954
+ * "configuration": {
955
+ * "permissionKey": "ADMINISTER_PROJECTS"
956
+ * },
957
+ * "type": "PermissionValidator"
958
+ * }
959
+ * ]
960
+ * },
961
+ * "to": "3",
962
+ * "type": "global"
963
+ * }
964
+ * ]
965
+ * }
966
+ */
967
+ createWorkflowDetails: CreateWorkflowDetails;
968
+ }): Promise<WorkflowIds> {
969
+ return this.getClientInstance()
970
+ .request({
971
+ path: "/rest/api/3/workflow",
972
+ method: "POST",
973
+ headers: {
974
+ "Content-Type": "application/json",
975
+ },
976
+ body: createWorkflowDetails,
977
+ })
978
+ .then(
979
+ this.getClientInstance().responseHandler({
980
+ 201: {
981
+ "application/json": "json",
982
+ },
983
+ }),
984
+ )
985
+ .then(
986
+ commonHttpClient.castResponse<{
987
+ status: 201;
988
+ mediaType: "application/json";
989
+ body: WorkflowIds;
990
+ }>(),
991
+ )
992
+ .then(
993
+ validationSchemaStorage.validator(
994
+ "WorkflowsService.createWorkflow.response",
995
+ ),
996
+ )
997
+ .then(commonHttpClient.getBody);
998
+ }
999
+ /**
1000
+ * Create workflows and related statuses.
1001
+ *
1002
+ * **[Permissions](#permissions) required:**
1003
+ *
1004
+ * * *Administer Jira* project permission to create all, including
1005
+ * global-scoped, workflows
1006
+ * * *Administer projects* project permissions to create project-scoped workflows
1007
+ *
1008
+ * @returns Returned if the request is successful.
1009
+ *
1010
+ * example: {
1011
+ * "statuses": [
1012
+ * {
1013
+ * "description": "",
1014
+ * "id": "10001",
1015
+ * "name": "To Do",
1016
+ * "scope": {
1017
+ * "type": "GLOBAL"
1018
+ * },
1019
+ * "statusCategory": "TODO",
1020
+ * "statusReference": "10001",
1021
+ * "usages": []
1022
+ * },
1023
+ * {
1024
+ * "description": "",
1025
+ * "id": "10002",
1026
+ * "name": "In Progress",
1027
+ * "scope": {
1028
+ * "type": "GLOBAL"
1029
+ * },
1030
+ * "statusCategory": "IN_PROGRESS",
1031
+ * "statusReference": "10002",
1032
+ * "usages": []
1033
+ * },
1034
+ * {
1035
+ * "description": "",
1036
+ * "id": "10003",
1037
+ * "name": "Done",
1038
+ * "scope": {
1039
+ * "type": "GLOBAL"
1040
+ * },
1041
+ * "statusCategory": "DONE",
1042
+ * "statusReference": "10003",
1043
+ * "usages": []
1044
+ * }
1045
+ * ],
1046
+ * "workflows": [
1047
+ * {
1048
+ * "description": "",
1049
+ * "id": "b9ff2384-d3b6-4d4e-9509-3ee19f607168",
1050
+ * "isEditable": true,
1051
+ * "name": "Software workflow 1",
1052
+ * "scope": {
1053
+ * "type": "GLOBAL"
1054
+ * },
1055
+ * "startPointLayout": {
1056
+ * "x": -100.00030899047852,
1057
+ * "y": -153.00020599365234
1058
+ * },
1059
+ * "statuses": [
1060
+ * {
1061
+ * "deprecated": false,
1062
+ * "layout": {
1063
+ * "x": 114.99993896484375,
1064
+ * "y": -16
1065
+ * },
1066
+ * "properties": {},
1067
+ * "statusReference": "10001"
1068
+ * },
1069
+ * {
1070
+ * "deprecated": false,
1071
+ * "layout": {
1072
+ * "x": 317.0000915527344,
1073
+ * "y": -16
1074
+ * },
1075
+ * "properties": {},
1076
+ * "statusReference": "10002"
1077
+ * },
1078
+ * {
1079
+ * "deprecated": false,
1080
+ * "layout": {
1081
+ * "x": 508.000244140625,
1082
+ * "y": -16
1083
+ * },
1084
+ * "properties": {},
1085
+ * "statusReference": "10003"
1086
+ * }
1087
+ * ],
1088
+ * "transitions": [
1089
+ * {
1090
+ * "actions": [],
1091
+ * "description": "",
1092
+ * "from": [],
1093
+ * "id": "31",
1094
+ * "name": "Done",
1095
+ * "properties": {},
1096
+ * "to": {
1097
+ * "statusReference": "10003"
1098
+ * },
1099
+ * "triggers": [],
1100
+ * "type": "GLOBAL",
1101
+ * "validators": []
1102
+ * },
1103
+ * {
1104
+ * "actions": [],
1105
+ * "description": "",
1106
+ * "from": [],
1107
+ * "id": "11",
1108
+ * "name": "To Do",
1109
+ * "properties": {},
1110
+ * "to": {
1111
+ * "statusReference": "10001"
1112
+ * },
1113
+ * "triggers": [],
1114
+ * "type": "GLOBAL",
1115
+ * "validators": []
1116
+ * },
1117
+ * {
1118
+ * "actions": [],
1119
+ * "description": "",
1120
+ * "from": [],
1121
+ * "id": "21",
1122
+ * "name": "In Progress",
1123
+ * "properties": {},
1124
+ * "to": {
1125
+ * "statusReference": "10002"
1126
+ * },
1127
+ * "triggers": [],
1128
+ * "type": "GLOBAL",
1129
+ * "validators": []
1130
+ * },
1131
+ * {
1132
+ * "actions": [],
1133
+ * "description": "",
1134
+ * "from": [],
1135
+ * "id": "1",
1136
+ * "name": "Create",
1137
+ * "properties": {},
1138
+ * "to": {
1139
+ * "statusReference": "10001"
1140
+ * },
1141
+ * "triggers": [],
1142
+ * "type": "INITIAL",
1143
+ * "validators": []
1144
+ * }
1145
+ * ],
1146
+ * "usages": [],
1147
+ * "version": {
1148
+ * "id": "f010ac1b-3dd3-43a3-aa66-0ee8a447f76e",
1149
+ * "versionNumber": 0
1150
+ * }
1151
+ * }
1152
+ * ]
1153
+ * }
1154
+ * @path {POST} /rest/api/3/workflows/create
1155
+ * @scopes-current manage:jira-configuration
1156
+ * @scopes-beta write:workflow:jira
1157
+ */
1158
+ createWorkflows({
1159
+ workflowCreateRequest,
1160
+ }: {
1161
+ /**
1162
+ * @example {
1163
+ * "scope": {
1164
+ * "type": "GLOBAL"
1165
+ * },
1166
+ * "statuses": [
1167
+ * {
1168
+ * "description": "",
1169
+ * "name": "To Do",
1170
+ * "statusCategory": "TODO",
1171
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
1172
+ * },
1173
+ * {
1174
+ * "description": "",
1175
+ * "name": "In Progress",
1176
+ * "statusCategory": "IN_PROGRESS",
1177
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
1178
+ * },
1179
+ * {
1180
+ * "description": "",
1181
+ * "name": "Done",
1182
+ * "statusCategory": "DONE",
1183
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
1184
+ * }
1185
+ * ],
1186
+ * "workflows": [
1187
+ * {
1188
+ * "description": "",
1189
+ * "name": "Software workflow 1",
1190
+ * "startPointLayout": {
1191
+ * "x": -100.00030899047852,
1192
+ * "y": -153.00020599365234
1193
+ * },
1194
+ * "statuses": [
1195
+ * {
1196
+ * "layout": {
1197
+ * "x": 114.99993896484375,
1198
+ * "y": -16
1199
+ * },
1200
+ * "properties": {},
1201
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
1202
+ * },
1203
+ * {
1204
+ * "layout": {
1205
+ * "x": 317.0000915527344,
1206
+ * "y": -16
1207
+ * },
1208
+ * "properties": {},
1209
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
1210
+ * },
1211
+ * {
1212
+ * "layout": {
1213
+ * "x": 508.000244140625,
1214
+ * "y": -16
1215
+ * },
1216
+ * "properties": {},
1217
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
1218
+ * }
1219
+ * ],
1220
+ * "transitions": [
1221
+ * {
1222
+ * "actions": [],
1223
+ * "description": "",
1224
+ * "from": [],
1225
+ * "id": "1",
1226
+ * "name": "Create",
1227
+ * "properties": {},
1228
+ * "to": {
1229
+ * "statusReference":
1230
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
1231
+ * },
1232
+ * "triggers": [],
1233
+ * "type": "INITIAL",
1234
+ * "validators": []
1235
+ * },
1236
+ * {
1237
+ * "actions": [],
1238
+ * "description": "",
1239
+ * "from": [],
1240
+ * "id": "11",
1241
+ * "name": "To Do",
1242
+ * "properties": {},
1243
+ * "to": {
1244
+ * "statusReference":
1245
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
1246
+ * },
1247
+ * "triggers": [],
1248
+ * "type": "GLOBAL",
1249
+ * "validators": []
1250
+ * },
1251
+ * {
1252
+ * "actions": [],
1253
+ * "description": "",
1254
+ * "from": [],
1255
+ * "id": "21",
1256
+ * "name": "In Progress",
1257
+ * "properties": {},
1258
+ * "to": {
1259
+ * "statusReference":
1260
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
1261
+ * },
1262
+ * "triggers": [],
1263
+ * "type": "GLOBAL",
1264
+ * "validators": []
1265
+ * },
1266
+ * {
1267
+ * "actions": [],
1268
+ * "description": "",
1269
+ * "from": [],
1270
+ * "id": "31",
1271
+ * "name": "Done",
1272
+ * "properties": {},
1273
+ * "to": {
1274
+ * "statusReference":
1275
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
1276
+ * },
1277
+ * "triggers": [],
1278
+ * "type": "GLOBAL",
1279
+ * "validators": []
1280
+ * }
1281
+ * ]
1282
+ * }
1283
+ * ]
1284
+ * }
1285
+ */
1286
+ workflowCreateRequest: WorkflowCreateRequest;
1287
+ }): Promise<WorkflowCreateResponse> {
1288
+ return this.getClientInstance()
1289
+ .request({
1290
+ path: "/rest/api/3/workflows/create",
1291
+ method: "POST",
1292
+ headers: {
1293
+ "Content-Type": "application/json",
1294
+ },
1295
+ body: workflowCreateRequest,
1296
+ })
1297
+ .then(
1298
+ this.getClientInstance().responseHandler({
1299
+ 200: {
1300
+ "application/json": "json",
1301
+ },
1302
+ }),
1303
+ )
1304
+ .then(
1305
+ commonHttpClient.castResponse<{
1306
+ status: 200;
1307
+ mediaType: "application/json";
1308
+ body: WorkflowCreateResponse;
1309
+ }>(),
1310
+ )
1311
+ .then(
1312
+ validationSchemaStorage.validator(
1313
+ "WorkflowsService.createWorkflows.response",
1314
+ ),
1315
+ )
1316
+ .then(commonHttpClient.getBody);
1317
+ }
1318
+ /**
1319
+ * Deletes a workflow.
1320
+ *
1321
+ * The workflow cannot be deleted if it is:
1322
+ *
1323
+ * * an active workflow.
1324
+ * * a system workflow.
1325
+ * * associated with any workflow scheme.
1326
+ * * associated with any draft workflow scheme.
1327
+ *
1328
+ * **[Permissions](#permissions) required:** *Administer Jira* [global
1329
+ * permission](https://confluence.atlassian.com/x/x4dKLg).
1330
+ *
1331
+ * @path {DELETE} /rest/api/3/workflow/{entityId}
1332
+ * @scopes-current manage:jira-configuration
1333
+ * @scopes-beta delete:workflow:jira
1334
+ */
1335
+ deleteInactiveWorkflow({
1336
+ entityId,
1337
+ }: {
1338
+ /** The entity ID of the workflow. */
1339
+ entityId: string;
1340
+ }): Promise<void> {
1341
+ return this.getClientInstance()
1342
+ .request({
1343
+ path: "/rest/api/3/workflow/{entityId}",
1344
+ method: "DELETE",
1345
+ pathParams: {
1346
+ entityId,
1347
+ },
1348
+ })
1349
+ .then(commonHttpClient.discardResult);
1350
+ }
1351
+ /**
1352
+ * Returns all workflows in Jira or a workflow. Deprecated, use [Get workflows
1353
+ * paginated](#api-rest-api-3-workflow-search-get).
1354
+ *
1355
+ * If the `workflowName` parameter is specified, the workflow is returned as an
1356
+ * object (not in an array). Otherwise, an array of workflow objects is returned.
1357
+ *
1358
+ * **[Permissions](#permissions) required:** *Administer Jira* [global
1359
+ * permission](https://confluence.atlassian.com/x/x4dKLg).
1360
+ *
1361
+ * @deprecated
1362
+ * @returns Returned if the request is successful.
1363
+ *
1364
+ * example: [
1365
+ * {
1366
+ * "default": true,
1367
+ * "description": "A classic Jira workflow",
1368
+ * "lastModifiedDate": "01-01-2011",
1369
+ * "lastModifiedUser": "admin",
1370
+ * "lastModifiedUserAccountId": "5b10a2844c20165700ede21g",
1371
+ * "name": "classic workflow",
1372
+ * "steps": 5
1373
+ * }
1374
+ * ]
1375
+ * @path {GET} /rest/api/3/workflow
1376
+ * @scopes-current manage:jira-configuration
1377
+ * @scopes-beta read:workflow:jira, read:project:jira, read:project-category:jira,
1378
+ * read:avatar:jira
1379
+ */
1380
+ getAllWorkflows({
1381
+ workflowName,
1382
+ }: {
1383
+ /** The name of the workflow to be returned. Only one workflow can be specified. */
1384
+ workflowName?: string;
1385
+ }): Promise<DeprecatedWorkflow[]> {
1386
+ return this.getClientInstance()
1387
+ .request({
1388
+ path: "/rest/api/3/workflow",
1389
+ method: "GET",
1390
+ query: {
1391
+ workflowName,
1392
+ },
1393
+ })
1394
+ .then(
1395
+ this.getClientInstance().responseHandler({
1396
+ 200: {
1397
+ "application/json": "json",
1398
+ },
1399
+ }),
1400
+ )
1401
+ .then(
1402
+ commonHttpClient.castResponse<{
1403
+ status: 200;
1404
+ mediaType: "application/json";
1405
+ body: DeprecatedWorkflow[];
1406
+ }>(),
1407
+ )
1408
+ .then(
1409
+ validationSchemaStorage.validator(
1410
+ "WorkflowsService.getAllWorkflows.response",
1411
+ ),
1412
+ )
1413
+ .then(commonHttpClient.getBody);
1414
+ }
1415
+ /**
1416
+ * Returns a [paginated](#pagination) list of published classic workflows. When
1417
+ * workflow names are specified, details of those workflows are returned.
1418
+ * Otherwise, all published classic workflows are returned.
1419
+ *
1420
+ * This operation does not return next-gen workflows.
1421
+ *
1422
+ * **[Permissions](#permissions) required:** *Administer Jira* [global
1423
+ * permission](https://confluence.atlassian.com/x/x4dKLg).
1424
+ *
1425
+ * @returns Returned if the request is successful.
1426
+ *
1427
+ * example: {
1428
+ * "isLast": false,
1429
+ * "maxResults": 1,
1430
+ * "startAt": 0,
1431
+ * "total": 5,
1432
+ * "values": [
1433
+ * {
1434
+ * "id": {
1435
+ * "name": "SCRUM Workflow",
1436
+ * "entityId": "5ed312c5-f7a6-4a78-a1f6-8ff7f307d063"
1437
+ * },
1438
+ * "description": "A workflow used for Software projects in the SCRUM
1439
+ * methodology",
1440
+ * "transitions": [
1441
+ * {
1442
+ * "id": "5",
1443
+ * "name": "In Progress",
1444
+ * "description": "Start working on the issue.",
1445
+ * "from": [
1446
+ * "10",
1447
+ * "13"
1448
+ * ],
1449
+ * "to": "14",
1450
+ * "type": "directed",
1451
+ * "screen": {
1452
+ * "id": "10000",
1453
+ * "name": "Issue screen"
1454
+ * },
1455
+ * "rules": {
1456
+ * "conditionsTree": {
1457
+ * "nodeType": "compound",
1458
+ * "operator": "AND",
1459
+ * "conditions": [
1460
+ * {
1461
+ * "nodeType": "simple",
1462
+ * "type": "PermissionCondition",
1463
+ * "configuration": {
1464
+ * "permissionKey": "WORK_ON_ISSUES"
1465
+ * }
1466
+ * },
1467
+ * {
1468
+ * "nodeType": "simple",
1469
+ * "type": "PermissionCondition",
1470
+ * "configuration": {
1471
+ * "permissionKey": "RESOLVE_ISSUES"
1472
+ * }
1473
+ * }
1474
+ * ]
1475
+ * },
1476
+ * "validators": [
1477
+ * {
1478
+ * "type": "FieldRequiredValidator",
1479
+ * "configuration": {
1480
+ * "errorMessage": "A custom error message",
1481
+ * "fields": [
1482
+ * "description",
1483
+ * "assignee"
1484
+ * ],
1485
+ * "ignoreContext": true
1486
+ * }
1487
+ * }
1488
+ * ],
1489
+ * "postFunctions": [
1490
+ * {
1491
+ * "type": "UpdateIssueStatusFunction"
1492
+ * },
1493
+ * {
1494
+ * "type": "GenerateChangeHistoryFunction"
1495
+ * },
1496
+ * {
1497
+ * "type": "FireIssueEventFunction"
1498
+ * }
1499
+ * ]
1500
+ * },
1501
+ * "properties": {
1502
+ * "jira.fieldscreen.id": 1
1503
+ * }
1504
+ * }
1505
+ * ],
1506
+ * "statuses": [
1507
+ * {
1508
+ * "id": "3",
1509
+ * "name": "In Progress",
1510
+ * "properties": {
1511
+ * "issueEditable": false,
1512
+ * "jira.issue.editable": "false"
1513
+ * }
1514
+ * }
1515
+ * ],
1516
+ * "isDefault": false,
1517
+ * "schemes": [
1518
+ * {
1519
+ * "id": "10001",
1520
+ * "name": "Test Workflow Scheme"
1521
+ * }
1522
+ * ],
1523
+ * "projects": [
1524
+ * {
1525
+ * "avatarUrls": {
1526
+ * "16x16": "secure/projectavatar?size=xsmall&pid=10000",
1527
+ * "24x24": "secure/projectavatar?size=small&pid=10000",
1528
+ * "32x32": "secure/projectavatar?size=medium&pid=10000",
1529
+ * "48x48": "secure/projectavatar?size=large&pid=10000"
1530
+ * },
1531
+ * "id": "10000",
1532
+ * "key": "EX",
1533
+ * "name": "Example",
1534
+ * "projectCategory": {
1535
+ * "description": "Project category description",
1536
+ * "id": "10000",
1537
+ * "name": "A project category"
1538
+ * },
1539
+ * "projectTypeKey": "ProjectTypeKey{key='software'}",
1540
+ * "self": "project/EX",
1541
+ * "simplified": false
1542
+ * }
1543
+ * ],
1544
+ * "hasDraftWorkflow": true,
1545
+ * "operations": {
1546
+ * "canEdit": true,
1547
+ * "canDelete": false
1548
+ * },
1549
+ * "created": "2018-12-10T16:30:15.000+0000",
1550
+ * "updated": "2018-12-11T11:45:13.000+0000"
1551
+ * }
1552
+ * ]
1553
+ * }
1554
+ * @path {GET} /rest/api/3/workflow/search
1555
+ * @scopes-current manage:jira-project
1556
+ * @scopes-beta read:group:jira, read:issue-security-level:jira, read:project-role:jira,
1557
+ * read:screen:jira, read:status:jira, read:user:jira, read:workflow:jira,
1558
+ * read:webhook:jira, read:avatar:jira, read:project-category:jira,
1559
+ * read:project:jira
1560
+ */
1561
+ getWorkflowsPaginated({
1562
+ startAt,
1563
+ maxResults,
1564
+ workflowName,
1565
+ expand,
1566
+ queryString,
1567
+ orderBy,
1568
+ isActive,
1569
+ }: {
1570
+ /** The index of the first item to return in a page of results (page offset). */
1571
+ startAt?: number;
1572
+ /** The maximum number of items to return per page. */
1573
+ maxResults?: number;
1574
+ /**
1575
+ * The name of a workflow to return. To include multiple workflows, provide an
1576
+ * ampersand-separated list. For example, `workflowName=name1&workflowName=name2`.
1577
+ */
1578
+ workflowName?: string[];
1579
+ /**
1580
+ * Use [expand](#expansion) to include additional information in the response.
1581
+ * This parameter accepts a comma-separated list. Expand options include:
1582
+ *
1583
+ * * `transitions` For each workflow, returns information about the transitions
1584
+ * inside the workflow.
1585
+ * * `transitions.rules` For each workflow transition, returns information about
1586
+ * its rules. Transitions are included automatically if this expand is requested.
1587
+ * * `transitions.properties` For each workflow transition, returns information
1588
+ * about its properties. Transitions are included automatically if this expand is
1589
+ * requested.
1590
+ * * `statuses` For each workflow, returns information about the statuses inside
1591
+ * the workflow.
1592
+ * * `statuses.properties` For each workflow status, returns information about
1593
+ * its properties. Statuses are included automatically if this expand is requested.
1594
+ * * `default` For each workflow, returns information about whether this is the
1595
+ * default workflow.
1596
+ * * `schemes` For each workflow, returns information about the workflow schemes
1597
+ * the workflow is assigned to.
1598
+ * * `projects` For each workflow, returns information about the projects the
1599
+ * workflow is assigned to, through workflow schemes.
1600
+ * * `hasDraftWorkflow` For each workflow, returns information about whether the
1601
+ * workflow has a draft version.
1602
+ * * `operations` For each workflow, returns information about the actions that
1603
+ * can be undertaken on the workflow.
1604
+ */
1605
+ expand?: string;
1606
+ /** String used to perform a case-insensitive partial match with workflow name. */
1607
+ queryString?: string;
1608
+ /**
1609
+ * [Order](#ordering) the results by a field:
1610
+ *
1611
+ * * `name` Sorts by workflow name.
1612
+ * * `created` Sorts by create time.
1613
+ * * `updated` Sorts by update time.
1614
+ */
1615
+ orderBy?:
1616
+ | "name"
1617
+ | "-name"
1618
+ | "+name"
1619
+ | "created"
1620
+ | "-created"
1621
+ | "+created"
1622
+ | "updated"
1623
+ | "+updated"
1624
+ | "-updated";
1625
+ /** Filters active and inactive workflows. */
1626
+ isActive?: boolean;
1627
+ }): Promise<PageBeanWorkflow> {
1628
+ return this.getClientInstance()
1629
+ .request({
1630
+ path: "/rest/api/3/workflow/search",
1631
+ method: "GET",
1632
+ query: {
1633
+ startAt,
1634
+ maxResults,
1635
+ workflowName,
1636
+ expand,
1637
+ queryString,
1638
+ orderBy,
1639
+ isActive,
1640
+ },
1641
+ })
1642
+ .then(
1643
+ this.getClientInstance().responseHandler({
1644
+ 200: {
1645
+ "application/json": "json",
1646
+ },
1647
+ }),
1648
+ )
1649
+ .then(
1650
+ commonHttpClient.castResponse<{
1651
+ status: 200;
1652
+ mediaType: "application/json";
1653
+ body: PageBeanWorkflow;
1654
+ }>(),
1655
+ )
1656
+ .then(
1657
+ validationSchemaStorage.validator(
1658
+ "WorkflowsService.getWorkflowsPaginated.response",
1659
+ ),
1660
+ )
1661
+ .then(commonHttpClient.getBody);
1662
+ }
1663
+ /**
1664
+ * Returns a list of workflows and related statuses by providing workflow names,
1665
+ * workflow IDs, or project and issue types.
1666
+ *
1667
+ * **[Permissions](#permissions) required:**
1668
+ *
1669
+ * * *Administer Jira* global permission to access all, including
1670
+ * project-scoped, workflows
1671
+ * * At least one of the *Administer projects* and *View (read-only) workflow*
1672
+ * project permissions to access project-scoped workflows
1673
+ *
1674
+ * @returns Returned if the request is successful.
1675
+ *
1676
+ * example: {
1677
+ * "statuses": [
1678
+ * {
1679
+ * "description": "",
1680
+ * "id": "10001",
1681
+ * "name": "To Do",
1682
+ * "scope": {
1683
+ * "type": "GLOBAL"
1684
+ * },
1685
+ * "statusCategory": "TODO",
1686
+ * "statusReference": "10001",
1687
+ * "usages": []
1688
+ * },
1689
+ * {
1690
+ * "description": "",
1691
+ * "id": "10002",
1692
+ * "name": "In Progress",
1693
+ * "scope": {
1694
+ * "type": "GLOBAL"
1695
+ * },
1696
+ * "statusCategory": "IN_PROGRESS",
1697
+ * "statusReference": "10002",
1698
+ * "usages": []
1699
+ * },
1700
+ * {
1701
+ * "description": "",
1702
+ * "id": "10003",
1703
+ * "name": "Done",
1704
+ * "scope": {
1705
+ * "type": "GLOBAL"
1706
+ * },
1707
+ * "statusCategory": "DONE",
1708
+ * "statusReference": "10003",
1709
+ * "usages": []
1710
+ * }
1711
+ * ],
1712
+ * "workflows": [
1713
+ * {
1714
+ * "description": "",
1715
+ * "id": "b9ff2384-d3b6-4d4e-9509-3ee19f607168",
1716
+ * "isEditable": true,
1717
+ * "name": "Workflow 1",
1718
+ * "scope": {
1719
+ * "type": "GLOBAL"
1720
+ * },
1721
+ * "startPointLayout": {
1722
+ * "x": -100.00030899047852,
1723
+ * "y": -153.00020599365234
1724
+ * },
1725
+ * "statuses": [
1726
+ * {
1727
+ * "deprecated": false,
1728
+ * "layout": {
1729
+ * "x": 114.99993896484375,
1730
+ * "y": -16
1731
+ * },
1732
+ * "properties": {},
1733
+ * "statusReference": "10001"
1734
+ * },
1735
+ * {
1736
+ * "deprecated": false,
1737
+ * "layout": {
1738
+ * "x": 317.0000915527344,
1739
+ * "y": -16
1740
+ * },
1741
+ * "properties": {},
1742
+ * "statusReference": "10002"
1743
+ * },
1744
+ * {
1745
+ * "deprecated": false,
1746
+ * "layout": {
1747
+ * "x": 508.000244140625,
1748
+ * "y": -16
1749
+ * },
1750
+ * "properties": {},
1751
+ * "statusReference": "10003"
1752
+ * }
1753
+ * ],
1754
+ * "transitions": [
1755
+ * {
1756
+ * "actions": [],
1757
+ * "description": "",
1758
+ * "from": [],
1759
+ * "id": "31",
1760
+ * "name": "Done",
1761
+ * "properties": {},
1762
+ * "to": {
1763
+ * "statusReference": "10003"
1764
+ * },
1765
+ * "triggers": [],
1766
+ * "type": "GLOBAL",
1767
+ * "validators": []
1768
+ * },
1769
+ * {
1770
+ * "actions": [],
1771
+ * "description": "",
1772
+ * "from": [],
1773
+ * "id": "11",
1774
+ * "name": "To Do",
1775
+ * "properties": {},
1776
+ * "to": {
1777
+ * "statusReference": "10001"
1778
+ * },
1779
+ * "triggers": [],
1780
+ * "type": "GLOBAL",
1781
+ * "validators": []
1782
+ * },
1783
+ * {
1784
+ * "actions": [],
1785
+ * "description": "",
1786
+ * "from": [],
1787
+ * "id": "21",
1788
+ * "name": "In Progress",
1789
+ * "properties": {},
1790
+ * "to": {
1791
+ * "statusReference": "10002"
1792
+ * },
1793
+ * "triggers": [],
1794
+ * "type": "GLOBAL",
1795
+ * "validators": []
1796
+ * },
1797
+ * {
1798
+ * "actions": [],
1799
+ * "description": "",
1800
+ * "from": [],
1801
+ * "id": "1",
1802
+ * "name": "Create",
1803
+ * "properties": {},
1804
+ * "to": {
1805
+ * "statusReference": "10001"
1806
+ * },
1807
+ * "triggers": [],
1808
+ * "type": "INITIAL",
1809
+ * "validators": []
1810
+ * }
1811
+ * ],
1812
+ * "usages": [],
1813
+ * "version": {
1814
+ * "id": "f010ac1b-3dd3-43a3-aa66-0ee8a447f76e",
1815
+ * "versionNumber": 0
1816
+ * }
1817
+ * }
1818
+ * ]
1819
+ * }
1820
+ * @path {POST} /rest/api/3/workflows
1821
+ * @scopes-current manage:jira-configuration
1822
+ * @scopes-beta read:workflow:jira
1823
+ */
1824
+ readWorkflows({
1825
+ expand,
1826
+ workflowReadRequest,
1827
+ }: {
1828
+ /**
1829
+ * Use [expand](#expansion) to include additional information in the response.
1830
+ * This parameter accepts a comma-separated list. Expand options include:
1831
+ *
1832
+ * * `workflows.usages` Returns the project and issue types that each workflow
1833
+ * is associated with.
1834
+ * * `statuses.usages` Returns the project and issue types that each status is
1835
+ * associated with.
1836
+ */
1837
+ expand?: string;
1838
+ /**
1839
+ * @example {
1840
+ * "projectAndIssueTypes": [],
1841
+ * "workflowIds": [],
1842
+ * "workflowNames": [
1843
+ * "Workflow 1",
1844
+ * "Workflow 2"
1845
+ * ]
1846
+ * }
1847
+ */
1848
+ workflowReadRequest: WorkflowReadRequest;
1849
+ }): Promise<WorkflowReadResponse> {
1850
+ return this.getClientInstance()
1851
+ .request({
1852
+ path: "/rest/api/3/workflows",
1853
+ method: "POST",
1854
+ query: {
1855
+ expand,
1856
+ },
1857
+ headers: {
1858
+ "Content-Type": "application/json",
1859
+ },
1860
+ body: workflowReadRequest,
1861
+ })
1862
+ .then(
1863
+ this.getClientInstance().responseHandler({
1864
+ 200: {
1865
+ "application/json": "json",
1866
+ },
1867
+ }),
1868
+ )
1869
+ .then(
1870
+ commonHttpClient.castResponse<{
1871
+ status: 200;
1872
+ mediaType: "application/json";
1873
+ body: WorkflowReadResponse;
1874
+ }>(),
1875
+ )
1876
+ .then(
1877
+ validationSchemaStorage.validator(
1878
+ "WorkflowsService.readWorkflows.response",
1879
+ ),
1880
+ )
1881
+ .then(commonHttpClient.getBody);
1882
+ }
1883
+ /**
1884
+ * Update workflows and related statuses.
1885
+ *
1886
+ * **[Permissions](#permissions) required:**
1887
+ *
1888
+ * * *Administer Jira* project permission to create all, including
1889
+ * global-scoped, workflows
1890
+ * * *Administer projects* project permissions to create project-scoped workflows
1891
+ *
1892
+ * @returns Returned if the request is successful.
1893
+ *
1894
+ * example: {
1895
+ * "statuses": [
1896
+ * {
1897
+ * "description": "",
1898
+ * "id": "10001",
1899
+ * "name": "To Do",
1900
+ * "scope": {
1901
+ * "type": "GLOBAL"
1902
+ * },
1903
+ * "statusCategory": "TODO",
1904
+ * "statusReference": "10001",
1905
+ * "usages": []
1906
+ * },
1907
+ * {
1908
+ * "description": "",
1909
+ * "id": "10002",
1910
+ * "name": "In Progress",
1911
+ * "scope": {
1912
+ * "type": "GLOBAL"
1913
+ * },
1914
+ * "statusCategory": "IN_PROGRESS",
1915
+ * "statusReference": "10002",
1916
+ * "usages": []
1917
+ * },
1918
+ * {
1919
+ * "description": "",
1920
+ * "id": "10003",
1921
+ * "name": "Done",
1922
+ * "scope": {
1923
+ * "type": "GLOBAL"
1924
+ * },
1925
+ * "statusCategory": "DONE",
1926
+ * "statusReference": "10003",
1927
+ * "usages": []
1928
+ * }
1929
+ * ],
1930
+ * "taskId": "10001",
1931
+ * "workflows": [
1932
+ * {
1933
+ * "description": "",
1934
+ * "id": "b9ff2384-d3b6-4d4e-9509-3ee19f607168",
1935
+ * "isEditable": true,
1936
+ * "name": "Software workflow 1",
1937
+ * "scope": {
1938
+ * "type": "GLOBAL"
1939
+ * },
1940
+ * "startPointLayout": {
1941
+ * "x": -100.00030899047852,
1942
+ * "y": -153.00020599365234
1943
+ * },
1944
+ * "statuses": [
1945
+ * {
1946
+ * "deprecated": false,
1947
+ * "layout": {
1948
+ * "x": 114.99993896484375,
1949
+ * "y": -16
1950
+ * },
1951
+ * "properties": {},
1952
+ * "statusReference": "10001"
1953
+ * },
1954
+ * {
1955
+ * "deprecated": false,
1956
+ * "layout": {
1957
+ * "x": 317.0000915527344,
1958
+ * "y": -16
1959
+ * },
1960
+ * "properties": {},
1961
+ * "statusReference": "10002"
1962
+ * },
1963
+ * {
1964
+ * "deprecated": false,
1965
+ * "layout": {
1966
+ * "x": 508.000244140625,
1967
+ * "y": -16
1968
+ * },
1969
+ * "properties": {},
1970
+ * "statusReference": "10003"
1971
+ * }
1972
+ * ],
1973
+ * "transitions": [
1974
+ * {
1975
+ * "actions": [],
1976
+ * "description": "",
1977
+ * "from": [],
1978
+ * "id": "31",
1979
+ * "name": "Done",
1980
+ * "properties": {},
1981
+ * "to": {
1982
+ * "statusReference": "10003"
1983
+ * },
1984
+ * "triggers": [],
1985
+ * "type": "GLOBAL",
1986
+ * "validators": []
1987
+ * },
1988
+ * {
1989
+ * "actions": [],
1990
+ * "description": "",
1991
+ * "from": [],
1992
+ * "id": "11",
1993
+ * "name": "To Do",
1994
+ * "properties": {},
1995
+ * "to": {
1996
+ * "statusReference": "10001"
1997
+ * },
1998
+ * "triggers": [],
1999
+ * "type": "GLOBAL",
2000
+ * "validators": []
2001
+ * },
2002
+ * {
2003
+ * "actions": [],
2004
+ * "description": "",
2005
+ * "from": [],
2006
+ * "id": "21",
2007
+ * "name": "In Progress",
2008
+ * "properties": {},
2009
+ * "to": {
2010
+ * "statusReference": "10002"
2011
+ * },
2012
+ * "triggers": [],
2013
+ * "type": "GLOBAL",
2014
+ * "validators": []
2015
+ * },
2016
+ * {
2017
+ * "actions": [],
2018
+ * "description": "",
2019
+ * "from": [],
2020
+ * "id": "1",
2021
+ * "name": "Create",
2022
+ * "properties": {},
2023
+ * "to": {
2024
+ * "statusReference": "10001"
2025
+ * },
2026
+ * "triggers": [],
2027
+ * "type": "INITIAL",
2028
+ * "validators": []
2029
+ * }
2030
+ * ],
2031
+ * "usages": [],
2032
+ * "version": {
2033
+ * "id": "f010ac1b-3dd3-43a3-aa66-0ee8a447f76e",
2034
+ * "versionNumber": 0
2035
+ * }
2036
+ * }
2037
+ * ]
2038
+ * }
2039
+ * @path {POST} /rest/api/3/workflows/update
2040
+ * @scopes-current manage:jira-configuration
2041
+ * @scopes-beta write:workflow:jira
2042
+ */
2043
+ updateWorkflows({
2044
+ expand,
2045
+ workflowUpdateRequest,
2046
+ }: {
2047
+ /**
2048
+ * Use [expand](#expansion) to include additional information in the response.
2049
+ * This parameter accepts a comma-separated list. Expand options include:
2050
+ *
2051
+ * * `workflows.usages` Returns the project and issue types that each workflow
2052
+ * is associated with.
2053
+ * * `statuses.usages` Returns the project and issue types that each status is
2054
+ * associated with.
2055
+ */
2056
+ expand?: string;
2057
+ /**
2058
+ * @example {
2059
+ * "statuses": [
2060
+ * {
2061
+ * "description": "",
2062
+ * "name": "To Do",
2063
+ * "statusCategory": "TODO",
2064
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2065
+ * },
2066
+ * {
2067
+ * "description": "",
2068
+ * "name": "In Progress",
2069
+ * "statusCategory": "IN_PROGRESS",
2070
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2071
+ * },
2072
+ * {
2073
+ * "description": "",
2074
+ * "name": "Done",
2075
+ * "statusCategory": "DONE",
2076
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
2077
+ * }
2078
+ * ],
2079
+ * "workflows": [
2080
+ * {
2081
+ * "defaultStatusMappings": [
2082
+ * {
2083
+ * "newStatusReference": "10011",
2084
+ * "oldStatusReference": "10010"
2085
+ * }
2086
+ * ],
2087
+ * "description": "",
2088
+ * "id": "10001",
2089
+ * "startPointLayout": {
2090
+ * "x": -100.00030899047852,
2091
+ * "y": -153.00020599365234
2092
+ * },
2093
+ * "statusMappings": [
2094
+ * {
2095
+ * "issueTypeId": "10002",
2096
+ * "projectId": "10003",
2097
+ * "statusMigrations": [
2098
+ * {
2099
+ * "newStatusReference": "10011",
2100
+ * "oldStatusReference": "10010"
2101
+ * }
2102
+ * ]
2103
+ * }
2104
+ * ],
2105
+ * "statuses": [
2106
+ * {
2107
+ * "layout": {
2108
+ * "x": 114.99993896484375,
2109
+ * "y": -16
2110
+ * },
2111
+ * "properties": {},
2112
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2113
+ * },
2114
+ * {
2115
+ * "layout": {
2116
+ * "x": 317.0000915527344,
2117
+ * "y": -16
2118
+ * },
2119
+ * "properties": {},
2120
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2121
+ * },
2122
+ * {
2123
+ * "layout": {
2124
+ * "x": 508.000244140625,
2125
+ * "y": -16
2126
+ * },
2127
+ * "properties": {},
2128
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
2129
+ * }
2130
+ * ],
2131
+ * "transitions": [
2132
+ * {
2133
+ * "actions": [],
2134
+ * "description": "",
2135
+ * "from": [],
2136
+ * "id": "1",
2137
+ * "name": "Create",
2138
+ * "properties": {},
2139
+ * "to": {
2140
+ * "statusReference":
2141
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2142
+ * },
2143
+ * "triggers": [],
2144
+ * "type": "INITIAL",
2145
+ * "validators": []
2146
+ * },
2147
+ * {
2148
+ * "actions": [],
2149
+ * "description": "",
2150
+ * "from": [],
2151
+ * "id": "11",
2152
+ * "name": "To Do",
2153
+ * "properties": {},
2154
+ * "to": {
2155
+ * "statusReference":
2156
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2157
+ * },
2158
+ * "triggers": [],
2159
+ * "type": "GLOBAL",
2160
+ * "validators": []
2161
+ * },
2162
+ * {
2163
+ * "actions": [],
2164
+ * "description": "",
2165
+ * "from": [],
2166
+ * "id": "21",
2167
+ * "name": "In Progress",
2168
+ * "properties": {},
2169
+ * "to": {
2170
+ * "statusReference":
2171
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2172
+ * },
2173
+ * "triggers": [],
2174
+ * "type": "GLOBAL",
2175
+ * "validators": []
2176
+ * },
2177
+ * {
2178
+ * "actions": [],
2179
+ * "description": "",
2180
+ * "from": [],
2181
+ * "id": "31",
2182
+ * "name": "Done",
2183
+ * "properties": {},
2184
+ * "to": {
2185
+ * "statusReference":
2186
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
2187
+ * },
2188
+ * "triggers": [],
2189
+ * "type": "GLOBAL",
2190
+ * "validators": []
2191
+ * }
2192
+ * ],
2193
+ * "version": {
2194
+ * "id": "6f6c988b-2590-4358-90c2-5f7960265592",
2195
+ * "versionNumber": 1
2196
+ * }
2197
+ * }
2198
+ * ]
2199
+ * }
2200
+ */
2201
+ workflowUpdateRequest: WorkflowUpdateRequest;
2202
+ }): Promise<WorkflowUpdateResponse> {
2203
+ return this.getClientInstance()
2204
+ .request({
2205
+ path: "/rest/api/3/workflows/update",
2206
+ method: "POST",
2207
+ query: {
2208
+ expand,
2209
+ },
2210
+ headers: {
2211
+ "Content-Type": "application/json",
2212
+ },
2213
+ body: workflowUpdateRequest,
2214
+ })
2215
+ .then(
2216
+ this.getClientInstance().responseHandler({
2217
+ 200: {
2218
+ "application/json": "json",
2219
+ },
2220
+ }),
2221
+ )
2222
+ .then(
2223
+ commonHttpClient.castResponse<{
2224
+ status: 200;
2225
+ mediaType: "application/json";
2226
+ body: WorkflowUpdateResponse;
2227
+ }>(),
2228
+ )
2229
+ .then(
2230
+ validationSchemaStorage.validator(
2231
+ "WorkflowsService.updateWorkflows.response",
2232
+ ),
2233
+ )
2234
+ .then(commonHttpClient.getBody);
2235
+ }
2236
+ /**
2237
+ * Validate the payload for bulk create workflows.
2238
+ *
2239
+ * **[Permissions](#permissions) required:**
2240
+ *
2241
+ * * *Administer Jira* project permission to create all, including
2242
+ * global-scoped, workflows
2243
+ * * *Administer projects* project permissions to create project-scoped workflows
2244
+ *
2245
+ * @returns Returned if the request is successful.
2246
+ *
2247
+ * example: {
2248
+ * "errors": [
2249
+ * {
2250
+ * "code": "NON_UNIQUE_STATUS_NAME",
2251
+ * "elementReference": {
2252
+ * "statusReference": "1f0443ff-47e4-4306-9c26-0af696059a43"
2253
+ * },
2254
+ * "level": "ERROR",
2255
+ * "message": "You must use a unique status name.",
2256
+ * "type": "STATUS"
2257
+ * }
2258
+ * ]
2259
+ * }
2260
+ * @path {POST} /rest/api/3/workflows/create/validation
2261
+ * @scopes-current manage:jira-configuration
2262
+ * @scopes-beta write:workflow:jira
2263
+ */
2264
+ validateCreateWorkflows({
2265
+ workflowCreateValidateRequest,
2266
+ }: {
2267
+ /**
2268
+ * @example {
2269
+ * "payload": {
2270
+ * "scope": {
2271
+ * "type": "GLOBAL"
2272
+ * },
2273
+ * "statuses": [
2274
+ * {
2275
+ * "description": "",
2276
+ * "name": "To Do",
2277
+ * "statusCategory": "TODO",
2278
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2279
+ * },
2280
+ * {
2281
+ * "description": "",
2282
+ * "name": "In Progress",
2283
+ * "statusCategory": "IN_PROGRESS",
2284
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2285
+ * },
2286
+ * {
2287
+ * "description": "",
2288
+ * "name": "Done",
2289
+ * "statusCategory": "DONE",
2290
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
2291
+ * }
2292
+ * ],
2293
+ * "workflows": [
2294
+ * {
2295
+ * "description": "",
2296
+ * "name": "Software workflow 1",
2297
+ * "startPointLayout": {
2298
+ * "x": -100.00030899047852,
2299
+ * "y": -153.00020599365234
2300
+ * },
2301
+ * "statuses": [
2302
+ * {
2303
+ * "layout": {
2304
+ * "x": 114.99993896484375,
2305
+ * "y": -16
2306
+ * },
2307
+ * "properties": {},
2308
+ * "statusReference":
2309
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2310
+ * },
2311
+ * {
2312
+ * "layout": {
2313
+ * "x": 317.0000915527344,
2314
+ * "y": -16
2315
+ * },
2316
+ * "properties": {},
2317
+ * "statusReference":
2318
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2319
+ * },
2320
+ * {
2321
+ * "layout": {
2322
+ * "x": 508.000244140625,
2323
+ * "y": -16
2324
+ * },
2325
+ * "properties": {},
2326
+ * "statusReference":
2327
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
2328
+ * }
2329
+ * ],
2330
+ * "transitions": [
2331
+ * {
2332
+ * "actions": [],
2333
+ * "description": "",
2334
+ * "from": [],
2335
+ * "id": "1",
2336
+ * "name": "Create",
2337
+ * "properties": {},
2338
+ * "to": {
2339
+ * "statusReference":
2340
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2341
+ * },
2342
+ * "triggers": [],
2343
+ * "type": "INITIAL",
2344
+ * "validators": []
2345
+ * },
2346
+ * {
2347
+ * "actions": [],
2348
+ * "description": "",
2349
+ * "from": [],
2350
+ * "id": "11",
2351
+ * "name": "To Do",
2352
+ * "properties": {},
2353
+ * "to": {
2354
+ * "statusReference":
2355
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2356
+ * },
2357
+ * "triggers": [],
2358
+ * "type": "GLOBAL",
2359
+ * "validators": []
2360
+ * },
2361
+ * {
2362
+ * "actions": [],
2363
+ * "description": "",
2364
+ * "from": [],
2365
+ * "id": "21",
2366
+ * "name": "In Progress",
2367
+ * "properties": {},
2368
+ * "to": {
2369
+ * "statusReference":
2370
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2371
+ * },
2372
+ * "triggers": [],
2373
+ * "type": "GLOBAL",
2374
+ * "validators": []
2375
+ * },
2376
+ * {
2377
+ * "actions": [],
2378
+ * "description": "",
2379
+ * "from": [],
2380
+ * "id": "31",
2381
+ * "name": "Done",
2382
+ * "properties": {},
2383
+ * "to": {
2384
+ * "statusReference":
2385
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
2386
+ * },
2387
+ * "triggers": [],
2388
+ * "type": "GLOBAL",
2389
+ * "validators": []
2390
+ * }
2391
+ * ]
2392
+ * }
2393
+ * ]
2394
+ * },
2395
+ * "validationOptions": {
2396
+ * "levels": [
2397
+ * "ERROR",
2398
+ * "WARNING"
2399
+ * ]
2400
+ * }
2401
+ * }
2402
+ */
2403
+ workflowCreateValidateRequest: WorkflowCreateValidateRequest;
2404
+ }): Promise<WorkflowValidationErrorList> {
2405
+ return this.getClientInstance()
2406
+ .request({
2407
+ path: "/rest/api/3/workflows/create/validation",
2408
+ method: "POST",
2409
+ headers: {
2410
+ "Content-Type": "application/json",
2411
+ },
2412
+ body: workflowCreateValidateRequest,
2413
+ })
2414
+ .then(
2415
+ this.getClientInstance().responseHandler({
2416
+ 200: {
2417
+ "application/json": "json",
2418
+ },
2419
+ }),
2420
+ )
2421
+ .then(
2422
+ commonHttpClient.castResponse<{
2423
+ status: 200;
2424
+ mediaType: "application/json";
2425
+ body: WorkflowValidationErrorList;
2426
+ }>(),
2427
+ )
2428
+ .then(
2429
+ validationSchemaStorage.validator(
2430
+ "WorkflowsService.validateCreateWorkflows.response",
2431
+ ),
2432
+ )
2433
+ .then(commonHttpClient.getBody);
2434
+ }
2435
+ /**
2436
+ * Validate the payload for bulk update workflows.
2437
+ *
2438
+ * **[Permissions](#permissions) required:**
2439
+ *
2440
+ * * *Administer Jira* project permission to create all, including
2441
+ * global-scoped, workflows
2442
+ * * *Administer projects* project permissions to create project-scoped workflows
2443
+ *
2444
+ * @returns Returned if the request is successful.
2445
+ *
2446
+ * example: {
2447
+ * "errors": [
2448
+ * {
2449
+ * "code": "NON_UNIQUE_STATUS_NAME",
2450
+ * "elementReference": {
2451
+ * "statusReference": "1f0443ff-47e4-4306-9c26-0af696059a43"
2452
+ * },
2453
+ * "level": "ERROR",
2454
+ * "message": "You must use a unique status name.",
2455
+ * "type": "STATUS"
2456
+ * }
2457
+ * ]
2458
+ * }
2459
+ * @path {POST} /rest/api/3/workflows/update/validation
2460
+ * @scopes-current manage:jira-configuration
2461
+ * @scopes-beta write:workflow:jira
2462
+ */
2463
+ validateUpdateWorkflows({
2464
+ workflowUpdateValidateRequestBean,
2465
+ }: {
2466
+ /**
2467
+ * @example {
2468
+ * "payload": {
2469
+ * "statuses": [
2470
+ * {
2471
+ * "description": "",
2472
+ * "name": "To Do",
2473
+ * "statusCategory": "TODO",
2474
+ * "statusReference": "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2475
+ * },
2476
+ * {
2477
+ * "description": "",
2478
+ * "name": "In Progress",
2479
+ * "statusCategory": "IN_PROGRESS",
2480
+ * "statusReference": "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2481
+ * },
2482
+ * {
2483
+ * "description": "",
2484
+ * "name": "Done",
2485
+ * "statusCategory": "DONE",
2486
+ * "statusReference": "6b3fc04d-3316-46c5-a257-65751aeb8849"
2487
+ * }
2488
+ * ],
2489
+ * "workflows": [
2490
+ * {
2491
+ * "defaultStatusMappings": [
2492
+ * {
2493
+ * "newStatusReference": "10011",
2494
+ * "oldStatusReference": "10010"
2495
+ * }
2496
+ * ],
2497
+ * "description": "",
2498
+ * "id": "10001",
2499
+ * "startPointLayout": {
2500
+ * "x": -100.00030899047852,
2501
+ * "y": -153.00020599365234
2502
+ * },
2503
+ * "statusMappings": [
2504
+ * {
2505
+ * "issueTypeId": "10002",
2506
+ * "projectId": "10003",
2507
+ * "statusMigrations": [
2508
+ * {
2509
+ * "newStatusReference": "10011",
2510
+ * "oldStatusReference": "10010"
2511
+ * }
2512
+ * ]
2513
+ * }
2514
+ * ],
2515
+ * "statuses": [
2516
+ * {
2517
+ * "layout": {
2518
+ * "x": 114.99993896484375,
2519
+ * "y": -16
2520
+ * },
2521
+ * "properties": {},
2522
+ * "statusReference":
2523
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2524
+ * },
2525
+ * {
2526
+ * "layout": {
2527
+ * "x": 317.0000915527344,
2528
+ * "y": -16
2529
+ * },
2530
+ * "properties": {},
2531
+ * "statusReference":
2532
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2533
+ * },
2534
+ * {
2535
+ * "layout": {
2536
+ * "x": 508.000244140625,
2537
+ * "y": -16
2538
+ * },
2539
+ * "properties": {},
2540
+ * "statusReference":
2541
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
2542
+ * }
2543
+ * ],
2544
+ * "transitions": [
2545
+ * {
2546
+ * "actions": [],
2547
+ * "description": "",
2548
+ * "from": [],
2549
+ * "id": "1",
2550
+ * "name": "Create",
2551
+ * "properties": {},
2552
+ * "to": {
2553
+ * "statusReference":
2554
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2555
+ * },
2556
+ * "triggers": [],
2557
+ * "type": "INITIAL",
2558
+ * "validators": []
2559
+ * },
2560
+ * {
2561
+ * "actions": [],
2562
+ * "description": "",
2563
+ * "from": [],
2564
+ * "id": "11",
2565
+ * "name": "To Do",
2566
+ * "properties": {},
2567
+ * "to": {
2568
+ * "statusReference":
2569
+ * "f0b24de5-25e7-4fab-ab94-63d81db6c0c0"
2570
+ * },
2571
+ * "triggers": [],
2572
+ * "type": "GLOBAL",
2573
+ * "validators": []
2574
+ * },
2575
+ * {
2576
+ * "actions": [],
2577
+ * "description": "",
2578
+ * "from": [],
2579
+ * "id": "21",
2580
+ * "name": "In Progress",
2581
+ * "properties": {},
2582
+ * "to": {
2583
+ * "statusReference":
2584
+ * "c7a35bf0-c127-4aa6-869f-4033730c61d8"
2585
+ * },
2586
+ * "triggers": [],
2587
+ * "type": "GLOBAL",
2588
+ * "validators": []
2589
+ * },
2590
+ * {
2591
+ * "actions": [],
2592
+ * "description": "",
2593
+ * "from": [],
2594
+ * "id": "31",
2595
+ * "name": "Done",
2596
+ * "properties": {},
2597
+ * "to": {
2598
+ * "statusReference":
2599
+ * "6b3fc04d-3316-46c5-a257-65751aeb8849"
2600
+ * },
2601
+ * "triggers": [],
2602
+ * "type": "GLOBAL",
2603
+ * "validators": []
2604
+ * }
2605
+ * ],
2606
+ * "version": {
2607
+ * "id": "6f6c988b-2590-4358-90c2-5f7960265592",
2608
+ * "versionNumber": 1
2609
+ * }
2610
+ * }
2611
+ * ]
2612
+ * },
2613
+ * "validationOptions": {
2614
+ * "levels": [
2615
+ * "ERROR",
2616
+ * "WARNING"
2617
+ * ]
2618
+ * }
2619
+ * }
2620
+ */
2621
+ workflowUpdateValidateRequestBean: WorkflowUpdateValidateRequestBean;
2622
+ }): Promise<WorkflowValidationErrorList> {
2623
+ return this.getClientInstance()
2624
+ .request({
2625
+ path: "/rest/api/3/workflows/update/validation",
2626
+ method: "POST",
2627
+ headers: {
2628
+ "Content-Type": "application/json",
2629
+ },
2630
+ body: workflowUpdateValidateRequestBean,
2631
+ })
2632
+ .then(
2633
+ this.getClientInstance().responseHandler({
2634
+ 200: {
2635
+ "application/json": "json",
2636
+ },
2637
+ }),
2638
+ )
2639
+ .then(
2640
+ commonHttpClient.castResponse<{
2641
+ status: 200;
2642
+ mediaType: "application/json";
2643
+ body: WorkflowValidationErrorList;
2644
+ }>(),
2645
+ )
2646
+ .then(
2647
+ validationSchemaStorage.validator(
2648
+ "WorkflowsService.validateUpdateWorkflows.response",
2649
+ ),
2650
+ )
2651
+ .then(commonHttpClient.getBody);
2652
+ }
2653
+ /**
2654
+ * Get the list of workflow capabilities for a specific workflow using either the
2655
+ * workflow ID, or the project and issue type ID pair. The response includes the
2656
+ * scope of the workflow, defined as global/project-based, and a list of project
2657
+ * types that the workflow is scoped to. It also includes all rules organised into
2658
+ * their broad categories (conditions, validators, actions, triggers, screens) as
2659
+ * well as the source location (Atlassian-provided, Connect, Forge).
2660
+ *
2661
+ * **[Permissions](#permissions) required:**
2662
+ *
2663
+ * * *Administer Jira* project permission to access all, including
2664
+ * global-scoped, workflows
2665
+ * * *Administer projects* project permissions to access project-scoped workflows
2666
+ *
2667
+ * The current list of Atlassian-provided rules:
2668
+ *
2669
+ * #### Validators ####
2670
+ *
2671
+ * A validator rule that checks if a user has the required permissions to execute
2672
+ * the transition in the workflow.
2673
+ *
2674
+ * ##### Permission validator #####
2675
+ *
2676
+ * A validator rule that checks if a user has the required permissions to execute
2677
+ * the transition in the workflow.
2678
+ *
2679
+ * {
2680
+ * "ruleKey": "system:check-permission-validator",
2681
+ * "parameters": {
2682
+ * "permissionKey": "ADMINISTER_PROJECTS"
2683
+ * }
2684
+ * }
2685
+ *
2686
+ * Parameters:
2687
+ *
2688
+ * * `permissionKey` The permission required to perform the transition. Allowed
2689
+ * values: [built-in Jira
2690
+ * permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions).
2691
+ *
2692
+ * ##### Parent or child blocking validator #####
2693
+ *
2694
+ * A validator to block the child issue\\u2019s transition depending on the parent
2695
+ * issue\\u2019s status.
2696
+ *
2697
+ * {
2698
+ * "ruleKey" : "system:parent-or-child-blocking-validator"
2699
+ * "parameters" : {
2700
+ * "blocker" : "PARENT"
2701
+ * "statusIds" : "1,2,3"
2702
+ * }
2703
+ * }
2704
+ *
2705
+ * Parameters:
2706
+ *
2707
+ * * `blocker` currently only supports `PARENT`.
2708
+ * * `statusIds` a comma-separated list of status IDs.
2709
+ *
2710
+ * ##### Previous status validator #####
2711
+ *
2712
+ * A validator that checks if an issue has transitioned through specified previous
2713
+ * status(es) before allowing the current transition to occur.
2714
+ *
2715
+ * {
2716
+ * "ruleKey": "system:previous-status-validator",
2717
+ * "parameters": {
2718
+ * "previousStatusIds": "10014",
2719
+ * "mostRecentStatusOnly": "true"
2720
+ * }
2721
+ * }
2722
+ *
2723
+ * Parameters:
2724
+ *
2725
+ * * `previousStatusIds` a comma-separated list of status IDs, currently only
2726
+ * support one ID.
2727
+ * * `mostRecentStatusOnly` when `true` only considers the most recent status
2728
+ * for the condition evaluation. Allowed values: `true`, `false`.
2729
+ *
2730
+ * ##### Validate a field value #####
2731
+ *
2732
+ * A validation that ensures a specific field's value meets the defined criteria
2733
+ * before allowing an issue to transition in the workflow.
2734
+ *
2735
+ * Depending on the rule type, the result will vary:
2736
+ *
2737
+ * ###### Field required ######
2738
+ *
2739
+ * {
2740
+ * "ruleKey": "system:validate-field-value",
2741
+ * "parameters": {
2742
+ * "ruleType": "fieldRequired",
2743
+ * "fieldsRequired": "assignee",
2744
+ * "ignoreContext": "true",
2745
+ * "errorMessage": "An assignee must be set!"
2746
+ * }
2747
+ * }
2748
+ *
2749
+ * Parameters:
2750
+ *
2751
+ * * `fieldsRequired` the ID of the field that is required. For a custom field,
2752
+ * it would look like `customfield_123`.
2753
+ * * `ignoreContext` controls the impact of context settings on field
2754
+ * validation. When set to `true`, the validator doesn't check a required field if
2755
+ * its context isn't configured for the current issue. When set to `false`, the
2756
+ * validator requires a field even if its context is invalid. Allowed values:
2757
+ * `true`, `false`.
2758
+ * * `errorMessage` is the error message to display if the user does not provide
2759
+ * a value during the transition. A default error message will be shown if you
2760
+ * don't provide one (Optional).
2761
+ *
2762
+ * ###### Field changed ######
2763
+ *
2764
+ * {
2765
+ * "ruleKey": "system:validate-field-value",
2766
+ * "parameters": {
2767
+ * "ruleType": "fieldChanged",
2768
+ * "groupsExemptFromValidation": "6862ac20-8672-4f68-896d-4854f5efb79e",
2769
+ * "fieldKey": "versions",
2770
+ * "errorMessage": "Affect versions must be modified before transition"
2771
+ * }
2772
+ * }
2773
+ *
2774
+ * Parameters:
2775
+ *
2776
+ * * `groupsExemptFromValidation` a comma-separated list of group IDs to be
2777
+ * exempt from the validation.
2778
+ * * `fieldKey` the ID of the field that has changed. For a custom field, it
2779
+ * would look like `customfield_123`.
2780
+ * * `errorMessage` the error message to display if the user does not provide a
2781
+ * value during the transition. A default error message will be shown if you don't
2782
+ * provide one (Optional).
2783
+ *
2784
+ * ###### Field has a single value ######
2785
+ *
2786
+ * {
2787
+ * "ruleKey": "system:validate-field-value",
2788
+ * "parameters": {
2789
+ * "ruleType": "fieldHasSingleValue",
2790
+ * "fieldKey": "created",
2791
+ * "excludeSubtasks": "true"
2792
+ * }
2793
+ * }
2794
+ *
2795
+ * Parameters:
2796
+ *
2797
+ * * `fieldKey` the ID of the field to validate. For a custom field, it would
2798
+ * look like `customfield_123`.
2799
+ * * `excludeSubtasks` Option to exclude values copied from sub-tasks. Allowed
2800
+ * values: `true`, `false`.
2801
+ *
2802
+ * ###### Field matches regular expression ######
2803
+ *
2804
+ * {
2805
+ * "ruleKey": "system:validate-field-value",
2806
+ * "parameters": {
2807
+ * "ruleType": "fieldMatchesRegularExpression",
2808
+ * "regexp": "[0-9]{4}",
2809
+ * "fieldKey": "description"
2810
+ * }
2811
+ * }
2812
+ *
2813
+ * Parameters:
2814
+ *
2815
+ * * `regexp` the regular expression used to validate the field\\u2019s content.
2816
+ * * `fieldKey` the ID of the field to validate. For a custom field, it would
2817
+ * look like `customfield_123`.
2818
+ *
2819
+ * ###### Date field comparison ######
2820
+ *
2821
+ * {
2822
+ * "ruleKey": "system:validate-field-value",
2823
+ * "parameters": {
2824
+ * "ruleType": "dateFieldComparison",
2825
+ * "date1FieldKey": "duedate",
2826
+ * "date2FieldKey": "customfield_10054",
2827
+ * "includeTime": "true",
2828
+ * "conditionSelected": ">="
2829
+ * }
2830
+ * }
2831
+ *
2832
+ * Parameters:
2833
+ *
2834
+ * * `date1FieldKey` the ID of the first field to compare. For a custom field,
2835
+ * it would look like `customfield_123`.
2836
+ * * `date2FieldKey` the ID of the second field to compare. For a custom field,
2837
+ * it would look like `customfield_123`.
2838
+ * * `includeTime` if `true`, compares both date and time. Allowed values:
2839
+ * `true`, `false`.
2840
+ * * `conditionSelected` the condition to compare with. Allowed values: `>`,
2841
+ * `>=`, `=`, `<=`, `<`, `!=`.
2842
+ *
2843
+ * ###### Date range comparison ######
2844
+ *
2845
+ * {
2846
+ * "ruleKey": "system:validate-field-value",
2847
+ * "parameters": {
2848
+ * "ruleType": "windowDateComparison",
2849
+ * "date1FieldKey": "customfield_10009",
2850
+ * "date2FieldKey": "customfield_10054",
2851
+ * "numberOfDays": "3"
2852
+ * }
2853
+ * }
2854
+ *
2855
+ * Parameters:
2856
+ *
2857
+ * * `date1FieldKey` the ID of the first field to compare. For a custom field,
2858
+ * it would look like `customfield_123`.
2859
+ * * `date2FieldKey` the ID of the second field to compare. For a custom field,
2860
+ * it would look like `customfield_123`.
2861
+ * * `numberOfDays` maximum number of days past the reference date
2862
+ * (`date2FieldKey`) to pass validation.
2863
+ *
2864
+ * This rule is composed by aggregating the following legacy rules:
2865
+ *
2866
+ * * FieldRequiredValidator
2867
+ * * FieldChangedValidator
2868
+ * * FieldHasSingleValueValidator
2869
+ * * RegexpFieldValidator
2870
+ * * DateFieldValidator
2871
+ * * WindowsDateValidator
2872
+ *
2873
+ * ##### Proforma: Forms attached validator #####
2874
+ *
2875
+ * Validates that one or more forms are attached to the issue.
2876
+ *
2877
+ * {
2878
+ * "ruleKey" : "system:proforma-forms-attached"
2879
+ * "parameters" : {}
2880
+ * }
2881
+ *
2882
+ * ##### Proforma: Forms submitted validator #####
2883
+ *
2884
+ * Validates that all forms attached to the issue have been submitted.
2885
+ *
2886
+ * {
2887
+ * "ruleKey" : "system:proforma-forms-submitted"
2888
+ * "parameters" : {}
2889
+ * }
2890
+ *
2891
+ * #### Conditions ####
2892
+ *
2893
+ * Conditions enable workflow rules that govern whether a transition can execute.
2894
+ *
2895
+ * ##### Check field value #####
2896
+ *
2897
+ * A condition rule evaluates as true if a specific field's value meets the
2898
+ * defined criteria. This rule ensures that an issue can only transition to the
2899
+ * next step in the workflow if the field's value matches the desired condition.
2900
+ *
2901
+ * {
2902
+ * "ruleKey": "system:check-field-value",
2903
+ * "parameters": {
2904
+ * "fieldId": "description",
2905
+ * "fieldValue": "[\"Done\"]",
2906
+ * "comparator": "=",
2907
+ * "comparisonType": "STRING"
2908
+ * }
2909
+ * }
2910
+ *
2911
+ * Parameters:
2912
+ *
2913
+ * * `fieldId` The ID of the field to check the value of. For non-system fields,
2914
+ * it will look like `customfield_123`. Note: `fieldId` is used interchangeably
2915
+ * with the idea of `fieldKey` here, they refer to the same field.
2916
+ * * `fieldValue` the list of values to check against the field\\u2019s value.
2917
+ * * `comparator` The comparison logic. Allowed values: `>`, `>=`, `=`, `<=`,
2918
+ * `<`, `!=`.
2919
+ * * `comparisonType` The type of data being compared. Allowed values: `STRING`,
2920
+ * `NUMBER`, `DATE`, `DATE_WITHOUT_TIME`, `OPTIONID`.
2921
+ *
2922
+ * ##### Restrict issue transition #####
2923
+ *
2924
+ * This rule ensures that issue transitions are restricted based on user accounts,
2925
+ * roles, group memberships, and permissions, maintaining control over who can
2926
+ * transition an issue. This condition evaluates as `true` if any of the following
2927
+ * criteria is met.
2928
+ *
2929
+ * {
2930
+ * "ruleKey": "system:restrict-issue-transition",
2931
+ * "parameters": {
2932
+ * "accountIds": "allow-reporter,5e68ac137d64450d01a77fa0",
2933
+ * "roleIds": "10002,10004",
2934
+ * "groupIds": "703ff44a-7dc8-4f4b-9aa6-a65bf3574fa4",
2935
+ * "permissionKeys": "ADMINISTER_PROJECTS",
2936
+ * "groupCustomFields": "customfield_10028",
2937
+ * "allowUserCustomFields":
2938
+ * "customfield_10072,customfield_10144,customfield_10007",
2939
+ * "denyUserCustomFields": "customfield_10107"
2940
+ * }
2941
+ * }
2942
+ *
2943
+ * Parameters:
2944
+ *
2945
+ * * `accountIds` a comma-separated list of the user account IDs. It also allows
2946
+ * generic values like: `allow-assignee`, `allow-reporter`, and `accountIds` Note:
2947
+ * This is only supported in team-managed projects
2948
+ * * `roleIds` a comma-separated list of role IDs.
2949
+ * * `groupIds` a comma-separated list of group IDs.
2950
+ * * `permissionKeys` a comma-separated list of permission keys. Allowed values:
2951
+ * [built-in Jira
2952
+ * permissions](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions).
2953
+ * * `groupCustomFields` a comma-separated list of group custom field IDs.
2954
+ * * `allowUserCustomFields` a comma-separated list of user custom field IDs to
2955
+ * allow for issue transition.
2956
+ * * `denyUserCustomFields` a comma-separated list of user custom field IDs to
2957
+ * deny for issue transition.
2958
+ *
2959
+ * This rule is composed by aggregating the following legacy rules:
2960
+ *
2961
+ * * AllowOnlyAssignee
2962
+ * * AllowOnlyReporter
2963
+ * * InAnyProjectRoleCondition
2964
+ * * InProjectRoleCondition
2965
+ * * UserInAnyGroupCondition
2966
+ * * UserInGroupCondition
2967
+ * * PermissionCondtion
2968
+ * * InGroupCFCondition
2969
+ * * UserIsInCustomFieldCondition
2970
+ *
2971
+ * ##### Previous status condition #####
2972
+ *
2973
+ * A condition that evaluates based on an issue's previous status(es) and specific
2974
+ * criteria.
2975
+ *
2976
+ * {
2977
+ * "ruleKey" : "system:previous-status-condition"
2978
+ * "parameters" : {
2979
+ * "previousStatusIds" : "10004",
2980
+ * "not": "true",
2981
+ * "mostRecentStatusOnly" : "true",
2982
+ * "includeCurrentStatus": "true",
2983
+ * "ignoreLoopTransitions": "true"
2984
+ * }
2985
+ * }
2986
+ *
2987
+ * Parameters:
2988
+ *
2989
+ * * `previousStatusIds` a comma-separated list of status IDs, current only
2990
+ * support one ID.
2991
+ * * `not` indicates if the condition should be reversed. When `true` it checks
2992
+ * that the issue has not been in the selected statuses. Allowed values: `true`,
2993
+ * `false`.
2994
+ * * `mostRecentStatusOnly` when true only considers the most recent status for
2995
+ * the condition evaluation. Allowed values: `true`, `false`.
2996
+ * * `includeCurrentStatus` includes the current status when evaluating if the
2997
+ * issue has been through the selected statuses. Allowed values: `true`, `false`.
2998
+ * * `ignoreLoopTransitions` ignore loop transitions. Allowed values: `true`,
2999
+ * `false`.
3000
+ *
3001
+ * ##### Parent or child blocking condition #####
3002
+ *
3003
+ * A condition to block the parent\\u2019s issue transition depending on the
3004
+ * child\\u2019s issue status.
3005
+ *
3006
+ * {
3007
+ * "ruleKey" : "system:parent-or-child-blocking-condition"
3008
+ * "parameters" : {
3009
+ * "blocker" : "CHILD",
3010
+ * "statusIds" : "1,2,3"
3011
+ * }
3012
+ * }
3013
+ *
3014
+ * Parameters:
3015
+ *
3016
+ * * `blocker` currently only supports `CHILD`.
3017
+ * * `statusIds` a comma-separated list of status IDs.
3018
+ *
3019
+ * ##### Separation of duties #####
3020
+ *
3021
+ * A condition preventing the user from performing, if the user has already
3022
+ * performed a transition on the issue.
3023
+ *
3024
+ * {
3025
+ * "ruleKey": "system:separation-of-duties",
3026
+ * "parameters": {
3027
+ * "fromStatusId": "10161",
3028
+ * "toStatusId": "10160"
3029
+ * }
3030
+ * }
3031
+ *
3032
+ * Parameters:
3033
+ *
3034
+ * * `fromStatusId` represents the status ID from which the issue is
3035
+ * transitioning. It ensures that the user performing the current transition has
3036
+ * not performed any actions when the issue was in the specified status.
3037
+ * * `toStatusId` represents the status ID to which the issue is transitioning.
3038
+ * It ensures that the user performing the current transition is not the same user
3039
+ * who has previously transitioned the issue.
3040
+ *
3041
+ * ##### Restrict transitions #####
3042
+ *
3043
+ * A condition preventing all users from transitioning the issue can also
3044
+ * optionally include APIs as well.
3045
+ *
3046
+ * {
3047
+ * "ruleKey": "system:restrict-from-all-users",
3048
+ * "parameters": {
3049
+ * "restrictMode": "users"
3050
+ * }
3051
+ * }
3052
+ *
3053
+ * Parameters:
3054
+ *
3055
+ * * `restrictMode` restricts the issue transition including/excluding APIs.
3056
+ * Allowed values: `"users"`, `"usersAndAPI"`.
3057
+ *
3058
+ * ##### Jira Service Management block until approved #####
3059
+ *
3060
+ * Block an issue transition until approval. Note: This is only supported in
3061
+ * team-managed projects.
3062
+ *
3063
+ * {
3064
+ * "ruleKey": "system:jsd-approvals-block-until-approved",
3065
+ * "parameters": {
3066
+ * "approvalConfigurationJson": "{"statusExternalUuid...}"
3067
+ * }
3068
+ * }
3069
+ *
3070
+ * Parameters:
3071
+ *
3072
+ * * `approvalConfigurationJson` a stringified JSON holding the Jira Service
3073
+ * Management approval configuration.
3074
+ *
3075
+ * ##### Jira Service Management block until rejected #####
3076
+ *
3077
+ * Block an issue transition until rejected. Note: This is only supported in
3078
+ * team-managed projects.
3079
+ *
3080
+ * {
3081
+ * "ruleKey": "system:jsd-approvals-block-until-rejected",
3082
+ * "parameters": {
3083
+ * "approvalConfigurationJson": "{"statusExternalUuid...}"
3084
+ * }
3085
+ * }
3086
+ *
3087
+ * Parameters:
3088
+ *
3089
+ * * `approvalConfigurationJson` a stringified JSON holding the Jira Service
3090
+ * Management approval configuration.
3091
+ *
3092
+ * ##### Block in progress approval #####
3093
+ *
3094
+ * Condition to block issue transition if there is pending approval. Note: This is
3095
+ * only supported in company-managed projects.
3096
+ *
3097
+ * {
3098
+ * "ruleKey": "system:block-in-progress-approval",
3099
+ * "parameters": {}
3100
+ * }
3101
+ *
3102
+ * #### Post functions ####
3103
+ *
3104
+ * Post functions carry out any additional processing required after a workflow
3105
+ * transition is executed.
3106
+ *
3107
+ * ##### Change assignee #####
3108
+ *
3109
+ * A post function rule that changes the assignee of an issue after a transition.
3110
+ *
3111
+ * {
3112
+ * "ruleKey": "system:change-assignee",
3113
+ * "parameters": {
3114
+ * "type": "to-selected-user",
3115
+ * "accountId": "example-account-id"
3116
+ * }
3117
+ * }
3118
+ *
3119
+ * Parameters:
3120
+ *
3121
+ * * `type` the parameter used to determine the new assignee. Allowed values:
3122
+ * `to-selected-user`, `to-unassigned`, `to-current-user`, `to-current-user`,
3123
+ * `to-default-user`, `to-default-user`
3124
+ * * `accountId` the account ID of the user to assign the issue to. This
3125
+ * parameter is required only when the type is `"to-selected-user"`.
3126
+ *
3127
+ * ##### Copy field value #####
3128
+ *
3129
+ * A post function that automates the process of copying values between fields
3130
+ * during a specific transition, ensuring data consistency and reducing manual
3131
+ * effort.
3132
+ *
3133
+ * {
3134
+ * "ruleKey": "system:copy-value-from-other-field",
3135
+ * "parameters": {
3136
+ * "sourceFieldKey": "description",
3137
+ * "targetFieldKey": "components",
3138
+ * "issueSource": "SAME"
3139
+ * }
3140
+ * }
3141
+ *
3142
+ * Parameters:
3143
+ *
3144
+ * * `sourceFieldKey` the field key to copy from. For a custom field, it would
3145
+ * look like `customfield_123`
3146
+ * * `targetFieldKey` the field key to copy to. For a custom field, it would
3147
+ * look like `customfield_123`
3148
+ * * `issueSource` `SAME` or `PARENT`. Defaults to `SAME` if no value is
3149
+ * provided.
3150
+ *
3151
+ * ##### Update field #####
3152
+ *
3153
+ * A post function that updates or appends a specific field with the given value.
3154
+ *
3155
+ * {
3156
+ * "ruleKey": "system:update-field",
3157
+ * "parameters": {
3158
+ * "field": "customfield_10056",
3159
+ * "value": "asdf",
3160
+ * "mode": "append"
3161
+ * }
3162
+ * }
3163
+ *
3164
+ * Parameters:
3165
+ *
3166
+ * * `field` the ID of the field to update. For a custom field, it would look
3167
+ * like `customfield_123`
3168
+ * * `value` the value to update the field with.
3169
+ * * `mode` `append` or `replace`. Determines if a value will be appended to the
3170
+ * current value, or if the current value will be replaced.
3171
+ *
3172
+ * ##### Trigger webhook #####
3173
+ *
3174
+ * A post function that automatically triggers a predefined webhook when a
3175
+ * transition occurs in the workflow.
3176
+ *
3177
+ * {
3178
+ * "ruleKey": "system:trigger-webhook",
3179
+ * "parameters": {
3180
+ * "webhookId": "1"
3181
+ * }
3182
+ * }
3183
+ *
3184
+ * Parameters:
3185
+ *
3186
+ * * `webhookId` the ID of the webhook.
3187
+ *
3188
+ * #### Screen ####
3189
+ *
3190
+ * ##### Remind people to update fields #####
3191
+ *
3192
+ * A screen rule that prompts users to update a specific field when they interact
3193
+ * with an issue screen during a transition. This rule is useful for ensuring that
3194
+ * users provide or modify necessary information before moving an issue to the
3195
+ * next step in the workflow.
3196
+ *
3197
+ * {
3198
+ * "ruleKey": "system:remind-people-to-update-fields",
3199
+ * "params": {
3200
+ * "remindingFieldIds": "assignee,customfield_10025",
3201
+ * "remindingMessage": "The message",
3202
+ * "remindingAlwaysAsk": "true"
3203
+ * }
3204
+ * }
3205
+ *
3206
+ * Parameters:
3207
+ *
3208
+ * * `remindingFieldIds` a comma-separated list of field IDs. Note: `fieldId` is
3209
+ * used interchangeably with the idea of `fieldKey` here, they refer to the same
3210
+ * field.
3211
+ * * `remindingMessage` the message to display when prompting the users to
3212
+ * update the fields.
3213
+ * * `remindingAlwaysAsk` always remind to update fields. Allowed values:
3214
+ * `true`, `false`.
3215
+ *
3216
+ * ##### Shared transition screen #####
3217
+ *
3218
+ * A common screen that is shared between transitions in a workflow.
3219
+ *
3220
+ * {
3221
+ * "ruleKey": "system:transition-screen",
3222
+ * "params": {
3223
+ * "screenId": "3"
3224
+ * }
3225
+ * }
3226
+ *
3227
+ * Parameters:
3228
+ *
3229
+ * * `screenId` the ID of the screen.
3230
+ *
3231
+ * #### Connect & Forge ####
3232
+ *
3233
+ * ##### Connect rules #####
3234
+ *
3235
+ * Validator/Condition/Post function for Connect app.
3236
+ *
3237
+ * {
3238
+ * "ruleKey": "connect:expression-validator",
3239
+ * "parameters": {
3240
+ * "appKey": "com.atlassian.app",
3241
+ * "config": "",
3242
+ * "id": "90ce590f-e90c-4cd3-8281-165ce41f2ac3",
3243
+ * "disabled": "false",
3244
+ * "tag": ""
3245
+ * }
3246
+ * }
3247
+ *
3248
+ * Parameters:
3249
+ *
3250
+ * * `ruleKey` Validator: `connect:expression-validator`, Condition:
3251
+ * `connect:expression-condition`, and Post function:
3252
+ * `connect:remote-workflow-function`
3253
+ * * `appKey` the reference to the Connect app
3254
+ * * `config` a JSON payload string describing the configuration
3255
+ * * `id` the ID of the rule
3256
+ * * `disabled` determine if the Connect app is disabled. Allowed values:
3257
+ * `true`, `false`.
3258
+ * * `tag` additional tags for the Connect app
3259
+ *
3260
+ * ##### Forge rules #####
3261
+ *
3262
+ * Validator/Condition/Post function for Forge app.
3263
+ *
3264
+ * {
3265
+ * "ruleKey": "forge:expression-validator",
3266
+ * "parameters": {
3267
+ * "key":
3268
+ * "ari:cloud:ecosystem::extension/{appId}/{environmentId}/static/{moduleKey}",
3269
+ * "config": "{"searchString":"workflow validator"}",
3270
+ * "id": "a865ddf6-bb3f-4a7b-9540-c2f8b3f9f6c2"
3271
+ * }
3272
+ * }
3273
+ *
3274
+ * Parameters:
3275
+ *
3276
+ * * `ruleKey` Validator: `forge:expression-validator`, Condition:
3277
+ * `forge:expression-condition`, and Post function: `forge:workflow-post-function`
3278
+ * * `key` the identifier for the Forge app
3279
+ * * `config` the persistent stringified JSON configuration for the Forge rule
3280
+ * * `id` the ID of the Forge rule
3281
+ *
3282
+ * @returns Returned if the request is successful.
3283
+ *
3284
+ * example: {
3285
+ * "connectRules": [
3286
+ * {
3287
+ * "addonKey": "com.atlassian.jira.refapp",
3288
+ * "createUrl": "/validators/jira-expression/create?id={validator.id}",
3289
+ * "description": "Validates if the given Jira expression is true.",
3290
+ * "editUrl": "/validators/jira-expression/edit?id={validator.id}",
3291
+ * "moduleKey": "jiraExpressionValidator",
3292
+ * "name": "Jira expression validator (by APPNAME)",
3293
+ * "ruleKey": "connect:expression-validator",
3294
+ * "ruleType": "Validator",
3295
+ * "viewUrl": "/validators/jira-expression/view?id={validator.id}"
3296
+ * }
3297
+ * ],
3298
+ * "editorScope": "GLOBAL",
3299
+ * "forgeRules": [
3300
+ * {
3301
+ * "description": "A Jira workflow validator example.",
3302
+ * "id":
3303
+ * "ari:cloud:ecosystem::extension/9df6d15f-1bbe-443e-be08-150309e8dbb0/f6a3bed3-737f-4e7a-8942-130df302b749/static/workflow-validator-example-workflow-validator",
3304
+ * "name": "workflow-validator",
3305
+ * "ruleKey": "forge:expression-validator",
3306
+ * "ruleType": "Validator"
3307
+ * }
3308
+ * ],
3309
+ * "projectTypes": [
3310
+ * "software",
3311
+ * "business"
3312
+ * ],
3313
+ * "systemRules": [
3314
+ * {
3315
+ * "description": "Automatically assign a request to someone after moving
3316
+ * the request using a particular transition.",
3317
+ * "incompatibleRuleKeys": [],
3318
+ * "isAvailableForInitialTransition": true,
3319
+ * "isVisible": true,
3320
+ * "name": "Assign a request",
3321
+ * "ruleKey": "system:change-assignee",
3322
+ * "ruleType": "Function"
3323
+ * }
3324
+ * ],
3325
+ * "triggerRules": [
3326
+ * {
3327
+ * "availableTypes": [
3328
+ * {
3329
+ * "description": "Automatically transitions the issue when a related
3330
+ * branch is created in a connected repository",
3331
+ * "name": "Branch created",
3332
+ * "type":
3333
+ * "com.atlassian.jira.plugins.jira-development-integration-plugin:branch-created-trigger"
3334
+ * }
3335
+ * ],
3336
+ * "ruleKey": "system:development-triggers"
3337
+ * }
3338
+ * ]
3339
+ * }
3340
+ * @path {GET} /rest/api/3/workflows/capabilities
3341
+ * @scopes-current manage:jira-configuration
3342
+ * @scopes-beta read:workflow:jira
3343
+ */
3344
+ workflowCapabilities({
3345
+ workflowId,
3346
+ projectId,
3347
+ issueTypeId,
3348
+ }: {
3349
+ workflowId?: string;
3350
+ projectId?: string;
3351
+ issueTypeId?: string;
3352
+ }): Promise<WorkflowCapabilities> {
3353
+ return this.getClientInstance()
3354
+ .request({
3355
+ path: "/rest/api/3/workflows/capabilities",
3356
+ method: "GET",
3357
+ query: {
3358
+ workflowId,
3359
+ projectId,
3360
+ issueTypeId,
3361
+ },
3362
+ })
3363
+ .then(
3364
+ this.getClientInstance().responseHandler({
3365
+ 200: {
3366
+ "application/json": "json",
3367
+ },
3368
+ }),
3369
+ )
3370
+ .then(
3371
+ commonHttpClient.castResponse<{
3372
+ status: 200;
3373
+ mediaType: "application/json";
3374
+ body: WorkflowCapabilities;
3375
+ }>(),
3376
+ )
3377
+ .then(
3378
+ validationSchemaStorage.validator(
3379
+ "WorkflowsService.workflowCapabilities.response",
3380
+ ),
3381
+ )
3382
+ .then(commonHttpClient.getBody);
3383
+ }
3384
+ static initialize() {
3385
+ validationSchemaStorage.registerExtensible(
3386
+ "WorkflowsService.getAllWorkflows.response",
3387
+ z
3388
+ .object({
3389
+ status: z.literal(200),
3390
+ mediaType: z.literal("application/json"),
3391
+ body: z.array(validationSchemaStorage.lazy("DeprecatedWorkflow")),
3392
+ })
3393
+ .describe("WorkflowsService.getAllWorkflows.response"),
3394
+ );
3395
+ validationSchemaStorage.registerExtensible(
3396
+ "WorkflowsService.createWorkflow.response",
3397
+ z
3398
+ .object({
3399
+ status: z.literal(201),
3400
+ mediaType: z.literal("application/json"),
3401
+ body: validationSchemaStorage.lazy("WorkflowIds"),
3402
+ })
3403
+ .describe("WorkflowsService.createWorkflow.response"),
3404
+ );
3405
+ validationSchemaStorage.registerExtensible(
3406
+ "WorkflowsService.getWorkflowsPaginated.response",
3407
+ z
3408
+ .object({
3409
+ status: z.literal(200),
3410
+ mediaType: z.literal("application/json"),
3411
+ body: validationSchemaStorage.lazy("PageBeanWorkflow"),
3412
+ })
3413
+ .describe("WorkflowsService.getWorkflowsPaginated.response"),
3414
+ );
3415
+ validationSchemaStorage.registerExtensible(
3416
+ "WorkflowsService.readWorkflows.response",
3417
+ z
3418
+ .object({
3419
+ status: z.literal(200),
3420
+ mediaType: z.literal("application/json"),
3421
+ body: validationSchemaStorage.lazy("WorkflowReadResponse"),
3422
+ })
3423
+ .describe("WorkflowsService.readWorkflows.response"),
3424
+ );
3425
+ validationSchemaStorage.registerExtensible(
3426
+ "WorkflowsService.workflowCapabilities.response",
3427
+ z
3428
+ .object({
3429
+ status: z.literal(200),
3430
+ mediaType: z.literal("application/json"),
3431
+ body: validationSchemaStorage.lazy("WorkflowCapabilities"),
3432
+ })
3433
+ .describe("WorkflowsService.workflowCapabilities.response"),
3434
+ );
3435
+ validationSchemaStorage.registerExtensible(
3436
+ "WorkflowsService.createWorkflows.response",
3437
+ z
3438
+ .object({
3439
+ status: z.literal(200),
3440
+ mediaType: z.literal("application/json"),
3441
+ body: validationSchemaStorage.lazy("WorkflowCreateResponse"),
3442
+ })
3443
+ .describe("WorkflowsService.createWorkflows.response"),
3444
+ );
3445
+ validationSchemaStorage.registerExtensible(
3446
+ "WorkflowsService.validateCreateWorkflows.response",
3447
+ z
3448
+ .object({
3449
+ status: z.literal(200),
3450
+ mediaType: z.literal("application/json"),
3451
+ body: validationSchemaStorage.lazy("WorkflowValidationErrorList"),
3452
+ })
3453
+ .describe("WorkflowsService.validateCreateWorkflows.response"),
3454
+ );
3455
+ validationSchemaStorage.registerExtensible(
3456
+ "WorkflowsService.updateWorkflows.response",
3457
+ z
3458
+ .object({
3459
+ status: z.literal(200),
3460
+ mediaType: z.literal("application/json"),
3461
+ body: validationSchemaStorage.lazy("WorkflowUpdateResponse"),
3462
+ })
3463
+ .describe("WorkflowsService.updateWorkflows.response"),
3464
+ );
3465
+ validationSchemaStorage.registerExtensible(
3466
+ "WorkflowsService.validateUpdateWorkflows.response",
3467
+ z
3468
+ .object({
3469
+ status: z.literal(200),
3470
+ mediaType: z.literal("application/json"),
3471
+ body: validationSchemaStorage.lazy("WorkflowValidationErrorList"),
3472
+ })
3473
+ .describe("WorkflowsService.validateUpdateWorkflows.response"),
3474
+ );
3475
+ validationSchemaStorage.registerOnce([registerWorkflowsValidationSchemas]);
3476
+ }
3477
+ }