@flowcore/sdk 1.50.0 → 1.52.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 (212) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/esm/commands/adapter/reset-adapter.d.ts +2 -2
  3. package/esm/commands/adapter/reset-adapter.d.ts.map +1 -1
  4. package/esm/commands/adapter/reset-adapter.js +1 -1
  5. package/esm/commands/iam/permissions/get-user-permissions.d.ts +48 -0
  6. package/esm/commands/iam/permissions/get-user-permissions.d.ts.map +1 -0
  7. package/esm/commands/iam/permissions/get-user-permissions.js +45 -0
  8. package/esm/commands/iam/policies/create-policy.d.ts +89 -0
  9. package/esm/commands/iam/policies/create-policy.d.ts.map +1 -0
  10. package/esm/commands/iam/policies/create-policy.js +69 -0
  11. package/esm/commands/iam/policies/get-policy.d.ts +35 -0
  12. package/esm/commands/iam/policies/get-policy.d.ts.map +1 -0
  13. package/esm/commands/iam/policies/get-policy.js +37 -0
  14. package/esm/commands/iam/policies/id/archive-policy.d.ts +45 -0
  15. package/esm/commands/iam/policies/id/archive-policy.d.ts.map +1 -0
  16. package/esm/commands/iam/policies/id/archive-policy.js +42 -0
  17. package/esm/commands/iam/policies/id/get-policy.d.ts +45 -0
  18. package/esm/commands/iam/policies/id/get-policy.d.ts.map +1 -0
  19. package/esm/commands/iam/policies/id/get-policy.js +40 -0
  20. package/esm/commands/iam/policies/id/update-policy.d.ts +53 -0
  21. package/esm/commands/iam/policies/id/update-policy.d.ts.map +1 -0
  22. package/esm/commands/iam/policies/id/update-policy.js +46 -0
  23. package/esm/commands/iam/policy-associations/get-key-policies.d.ts +35 -0
  24. package/esm/commands/iam/policy-associations/get-key-policies.d.ts.map +1 -0
  25. package/esm/commands/iam/policy-associations/get-key-policies.js +77 -0
  26. package/esm/commands/iam/policy-associations/get-organization-policies.d.ts +35 -0
  27. package/esm/commands/iam/policy-associations/get-organization-policies.d.ts.map +1 -0
  28. package/esm/commands/iam/policy-associations/get-organization-policies.js +80 -0
  29. package/esm/commands/iam/policy-associations/get-policy-associations.d.ts +83 -0
  30. package/esm/commands/iam/policy-associations/get-policy-associations.d.ts.map +1 -0
  31. package/esm/commands/iam/policy-associations/get-policy-associations.js +109 -0
  32. package/esm/commands/iam/policy-associations/get-role-policies.d.ts +35 -0
  33. package/esm/commands/iam/policy-associations/get-role-policies.d.ts.map +1 -0
  34. package/esm/commands/iam/policy-associations/get-role-policies.js +65 -0
  35. package/esm/commands/iam/policy-associations/get-user-policies.d.ts +37 -0
  36. package/esm/commands/iam/policy-associations/get-user-policies.d.ts.map +1 -0
  37. package/esm/commands/iam/policy-associations/get-user-policies.js +37 -0
  38. package/esm/commands/iam/policy-associations/link-key-policy.d.ts +53 -0
  39. package/esm/commands/iam/policy-associations/link-key-policy.d.ts.map +1 -0
  40. package/esm/commands/iam/policy-associations/link-key-policy.js +52 -0
  41. package/esm/commands/iam/policy-associations/link-role-policy.d.ts +53 -0
  42. package/esm/commands/iam/policy-associations/link-role-policy.d.ts.map +1 -0
  43. package/esm/commands/iam/policy-associations/link-role-policy.js +52 -0
  44. package/esm/commands/iam/policy-associations/link-user-policy.d.ts +53 -0
  45. package/esm/commands/iam/policy-associations/link-user-policy.d.ts.map +1 -0
  46. package/esm/commands/iam/policy-associations/link-user-policy.js +52 -0
  47. package/esm/commands/iam/policy-associations/unlink-key-policy.d.ts +41 -0
  48. package/esm/commands/iam/policy-associations/unlink-key-policy.d.ts.map +1 -0
  49. package/esm/commands/iam/policy-associations/unlink-key-policy.js +44 -0
  50. package/esm/commands/iam/policy-associations/unlink-role-policy.d.ts +41 -0
  51. package/esm/commands/iam/policy-associations/unlink-role-policy.d.ts.map +1 -0
  52. package/esm/commands/iam/policy-associations/unlink-role-policy.js +44 -0
  53. package/esm/commands/iam/policy-associations/unlink-user-policy.d.ts +41 -0
  54. package/esm/commands/iam/policy-associations/unlink-user-policy.d.ts.map +1 -0
  55. package/esm/commands/iam/policy-associations/unlink-user-policy.js +44 -0
  56. package/esm/commands/iam/role-associations/get-key-roles.d.ts +35 -0
  57. package/esm/commands/iam/role-associations/get-key-roles.d.ts.map +1 -0
  58. package/esm/commands/iam/role-associations/get-key-roles.js +37 -0
  59. package/esm/commands/iam/role-associations/get-organization-roles.d.ts +35 -0
  60. package/esm/commands/iam/role-associations/get-organization-roles.d.ts.map +1 -0
  61. package/esm/commands/iam/role-associations/get-organization-roles.js +54 -0
  62. package/esm/commands/iam/role-associations/get-role-associations.d.ts +70 -0
  63. package/esm/commands/iam/role-associations/get-role-associations.d.ts.map +1 -0
  64. package/esm/commands/iam/role-associations/get-role-associations.js +59 -0
  65. package/esm/commands/iam/role-associations/get-user-roles.d.ts +37 -0
  66. package/esm/commands/iam/role-associations/get-user-roles.d.ts.map +1 -0
  67. package/esm/commands/iam/role-associations/get-user-roles.js +42 -0
  68. package/esm/commands/iam/role-associations/link-key-role.d.ts +53 -0
  69. package/esm/commands/iam/role-associations/link-key-role.d.ts.map +1 -0
  70. package/esm/commands/iam/role-associations/link-key-role.js +52 -0
  71. package/esm/commands/iam/role-associations/link-user-role.d.ts +53 -0
  72. package/esm/commands/iam/role-associations/link-user-role.d.ts.map +1 -0
  73. package/esm/commands/iam/role-associations/link-user-role.js +52 -0
  74. package/esm/commands/iam/role-associations/unlink-key-role.d.ts +41 -0
  75. package/esm/commands/iam/role-associations/unlink-key-role.d.ts.map +1 -0
  76. package/esm/commands/iam/role-associations/unlink-key-role.js +44 -0
  77. package/esm/commands/iam/role-associations/unlink-user-role.d.ts +41 -0
  78. package/esm/commands/iam/role-associations/unlink-user-role.d.ts.map +1 -0
  79. package/esm/commands/iam/role-associations/unlink-user-role.js +44 -0
  80. package/esm/commands/iam/roles/create-role.d.ts +60 -0
  81. package/esm/commands/iam/roles/create-role.d.ts.map +1 -0
  82. package/esm/commands/iam/roles/create-role.js +56 -0
  83. package/esm/commands/iam/roles/get-roles.d.ts +35 -0
  84. package/esm/commands/iam/roles/get-roles.d.ts.map +1 -0
  85. package/esm/commands/iam/roles/get-roles.js +37 -0
  86. package/esm/commands/iam/roles/id/archive-role.d.ts +45 -0
  87. package/esm/commands/iam/roles/id/archive-role.d.ts.map +1 -0
  88. package/esm/commands/iam/roles/id/archive-role.js +42 -0
  89. package/esm/commands/iam/roles/id/get-role.d.ts +35 -0
  90. package/esm/commands/iam/roles/id/get-role.d.ts.map +1 -0
  91. package/esm/commands/iam/roles/id/get-role.js +36 -0
  92. package/esm/commands/iam/roles/id/update-role.d.ts +47 -0
  93. package/esm/commands/iam/roles/id/update-role.d.ts.map +1 -0
  94. package/esm/commands/iam/roles/id/update-role.js +47 -0
  95. package/esm/commands/iam/tenant-iam-audit/get-audit-for-tenant.d.ts +88 -0
  96. package/esm/commands/iam/tenant-iam-audit/get-audit-for-tenant.d.ts.map +1 -0
  97. package/esm/commands/iam/tenant-iam-audit/get-audit-for-tenant.js +102 -0
  98. package/esm/commands/iam/validate/validate-key.d.ts +43 -0
  99. package/esm/commands/iam/validate/validate-key.d.ts.map +1 -0
  100. package/esm/commands/iam/validate/validate-key.js +43 -0
  101. package/esm/commands/iam/validate/validate-user.d.ts +77 -0
  102. package/esm/commands/iam/validate/validate-user.d.ts.map +1 -0
  103. package/esm/commands/iam/validate/validate-user.js +58 -0
  104. package/esm/commands/index.d.ts +33 -0
  105. package/esm/commands/index.d.ts.map +1 -1
  106. package/esm/commands/index.js +34 -0
  107. package/package.json +1 -1
  108. package/script/commands/adapter/reset-adapter.d.ts +2 -2
  109. package/script/commands/adapter/reset-adapter.d.ts.map +1 -1
  110. package/script/commands/adapter/reset-adapter.js +2 -2
  111. package/script/commands/iam/permissions/get-user-permissions.d.ts +48 -0
  112. package/script/commands/iam/permissions/get-user-permissions.d.ts.map +1 -0
  113. package/script/commands/iam/permissions/get-user-permissions.js +49 -0
  114. package/script/commands/iam/policies/create-policy.d.ts +89 -0
  115. package/script/commands/iam/policies/create-policy.d.ts.map +1 -0
  116. package/script/commands/iam/policies/create-policy.js +73 -0
  117. package/script/commands/iam/policies/get-policy.d.ts +35 -0
  118. package/script/commands/iam/policies/get-policy.d.ts.map +1 -0
  119. package/script/commands/iam/policies/get-policy.js +41 -0
  120. package/script/commands/iam/policies/id/archive-policy.d.ts +45 -0
  121. package/script/commands/iam/policies/id/archive-policy.d.ts.map +1 -0
  122. package/script/commands/iam/policies/id/archive-policy.js +46 -0
  123. package/script/commands/iam/policies/id/get-policy.d.ts +45 -0
  124. package/script/commands/iam/policies/id/get-policy.d.ts.map +1 -0
  125. package/script/commands/iam/policies/id/get-policy.js +44 -0
  126. package/script/commands/iam/policies/id/update-policy.d.ts +53 -0
  127. package/script/commands/iam/policies/id/update-policy.d.ts.map +1 -0
  128. package/script/commands/iam/policies/id/update-policy.js +50 -0
  129. package/script/commands/iam/policy-associations/get-key-policies.d.ts +35 -0
  130. package/script/commands/iam/policy-associations/get-key-policies.d.ts.map +1 -0
  131. package/script/commands/iam/policy-associations/get-key-policies.js +81 -0
  132. package/script/commands/iam/policy-associations/get-organization-policies.d.ts +35 -0
  133. package/script/commands/iam/policy-associations/get-organization-policies.d.ts.map +1 -0
  134. package/script/commands/iam/policy-associations/get-organization-policies.js +84 -0
  135. package/script/commands/iam/policy-associations/get-policy-associations.d.ts +83 -0
  136. package/script/commands/iam/policy-associations/get-policy-associations.d.ts.map +1 -0
  137. package/script/commands/iam/policy-associations/get-policy-associations.js +113 -0
  138. package/script/commands/iam/policy-associations/get-role-policies.d.ts +35 -0
  139. package/script/commands/iam/policy-associations/get-role-policies.d.ts.map +1 -0
  140. package/script/commands/iam/policy-associations/get-role-policies.js +69 -0
  141. package/script/commands/iam/policy-associations/get-user-policies.d.ts +37 -0
  142. package/script/commands/iam/policy-associations/get-user-policies.d.ts.map +1 -0
  143. package/script/commands/iam/policy-associations/get-user-policies.js +41 -0
  144. package/script/commands/iam/policy-associations/link-key-policy.d.ts +53 -0
  145. package/script/commands/iam/policy-associations/link-key-policy.d.ts.map +1 -0
  146. package/script/commands/iam/policy-associations/link-key-policy.js +56 -0
  147. package/script/commands/iam/policy-associations/link-role-policy.d.ts +53 -0
  148. package/script/commands/iam/policy-associations/link-role-policy.d.ts.map +1 -0
  149. package/script/commands/iam/policy-associations/link-role-policy.js +56 -0
  150. package/script/commands/iam/policy-associations/link-user-policy.d.ts +53 -0
  151. package/script/commands/iam/policy-associations/link-user-policy.d.ts.map +1 -0
  152. package/script/commands/iam/policy-associations/link-user-policy.js +56 -0
  153. package/script/commands/iam/policy-associations/unlink-key-policy.d.ts +41 -0
  154. package/script/commands/iam/policy-associations/unlink-key-policy.d.ts.map +1 -0
  155. package/script/commands/iam/policy-associations/unlink-key-policy.js +48 -0
  156. package/script/commands/iam/policy-associations/unlink-role-policy.d.ts +41 -0
  157. package/script/commands/iam/policy-associations/unlink-role-policy.d.ts.map +1 -0
  158. package/script/commands/iam/policy-associations/unlink-role-policy.js +48 -0
  159. package/script/commands/iam/policy-associations/unlink-user-policy.d.ts +41 -0
  160. package/script/commands/iam/policy-associations/unlink-user-policy.d.ts.map +1 -0
  161. package/script/commands/iam/policy-associations/unlink-user-policy.js +48 -0
  162. package/script/commands/iam/role-associations/get-key-roles.d.ts +35 -0
  163. package/script/commands/iam/role-associations/get-key-roles.d.ts.map +1 -0
  164. package/script/commands/iam/role-associations/get-key-roles.js +41 -0
  165. package/script/commands/iam/role-associations/get-organization-roles.d.ts +35 -0
  166. package/script/commands/iam/role-associations/get-organization-roles.d.ts.map +1 -0
  167. package/script/commands/iam/role-associations/get-organization-roles.js +58 -0
  168. package/script/commands/iam/role-associations/get-role-associations.d.ts +70 -0
  169. package/script/commands/iam/role-associations/get-role-associations.d.ts.map +1 -0
  170. package/script/commands/iam/role-associations/get-role-associations.js +63 -0
  171. package/script/commands/iam/role-associations/get-user-roles.d.ts +37 -0
  172. package/script/commands/iam/role-associations/get-user-roles.d.ts.map +1 -0
  173. package/script/commands/iam/role-associations/get-user-roles.js +46 -0
  174. package/script/commands/iam/role-associations/link-key-role.d.ts +53 -0
  175. package/script/commands/iam/role-associations/link-key-role.d.ts.map +1 -0
  176. package/script/commands/iam/role-associations/link-key-role.js +56 -0
  177. package/script/commands/iam/role-associations/link-user-role.d.ts +53 -0
  178. package/script/commands/iam/role-associations/link-user-role.d.ts.map +1 -0
  179. package/script/commands/iam/role-associations/link-user-role.js +56 -0
  180. package/script/commands/iam/role-associations/unlink-key-role.d.ts +41 -0
  181. package/script/commands/iam/role-associations/unlink-key-role.d.ts.map +1 -0
  182. package/script/commands/iam/role-associations/unlink-key-role.js +48 -0
  183. package/script/commands/iam/role-associations/unlink-user-role.d.ts +41 -0
  184. package/script/commands/iam/role-associations/unlink-user-role.d.ts.map +1 -0
  185. package/script/commands/iam/role-associations/unlink-user-role.js +48 -0
  186. package/script/commands/iam/roles/create-role.d.ts +60 -0
  187. package/script/commands/iam/roles/create-role.d.ts.map +1 -0
  188. package/script/commands/iam/roles/create-role.js +60 -0
  189. package/script/commands/iam/roles/get-roles.d.ts +35 -0
  190. package/script/commands/iam/roles/get-roles.d.ts.map +1 -0
  191. package/script/commands/iam/roles/get-roles.js +41 -0
  192. package/script/commands/iam/roles/id/archive-role.d.ts +45 -0
  193. package/script/commands/iam/roles/id/archive-role.d.ts.map +1 -0
  194. package/script/commands/iam/roles/id/archive-role.js +46 -0
  195. package/script/commands/iam/roles/id/get-role.d.ts +35 -0
  196. package/script/commands/iam/roles/id/get-role.d.ts.map +1 -0
  197. package/script/commands/iam/roles/id/get-role.js +40 -0
  198. package/script/commands/iam/roles/id/update-role.d.ts +47 -0
  199. package/script/commands/iam/roles/id/update-role.d.ts.map +1 -0
  200. package/script/commands/iam/roles/id/update-role.js +51 -0
  201. package/script/commands/iam/tenant-iam-audit/get-audit-for-tenant.d.ts +88 -0
  202. package/script/commands/iam/tenant-iam-audit/get-audit-for-tenant.d.ts.map +1 -0
  203. package/script/commands/iam/tenant-iam-audit/get-audit-for-tenant.js +106 -0
  204. package/script/commands/iam/validate/validate-key.d.ts +43 -0
  205. package/script/commands/iam/validate/validate-key.d.ts.map +1 -0
  206. package/script/commands/iam/validate/validate-key.js +47 -0
  207. package/script/commands/iam/validate/validate-user.d.ts +77 -0
  208. package/script/commands/iam/validate/validate-user.d.ts.map +1 -0
  209. package/script/commands/iam/validate/validate-user.js +62 -0
  210. package/script/commands/index.d.ts +33 -0
  211. package/script/commands/index.d.ts.map +1 -1
  212. package/script/commands/index.js +34 -0
@@ -0,0 +1,43 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { type ValidationMode, type ValidationRequestAccessItem, type ValidationResponse } from "./validate-user.js";
3
+ /**
4
+ * The input for the key validation command
5
+ */
6
+ export interface ValidateKeyInput {
7
+ /** The key id */
8
+ keyId: string;
9
+ /** The mode of validation */
10
+ mode: ValidationMode;
11
+ /** The requested access */
12
+ requestedAccess: ValidationRequestAccessItem[];
13
+ }
14
+ /**
15
+ * Validate if a key can perform actions
16
+ */
17
+ export declare class ValidateKeyCommand extends Command<ValidateKeyInput, ValidationResponse> {
18
+ /**
19
+ * Whether the command should retry on failure
20
+ */
21
+ protected retryOnFailure: boolean;
22
+ /**
23
+ * Get the method
24
+ */
25
+ protected getMethod(): string;
26
+ /**
27
+ * Get the base url
28
+ */
29
+ protected getBaseUrl(): string;
30
+ /**
31
+ * Get the path
32
+ */
33
+ protected getPath(): string;
34
+ /**
35
+ * Get the body
36
+ */
37
+ protected getBody(): Record<string, unknown>;
38
+ /**
39
+ * Parse the response
40
+ */
41
+ protected parseResponse(rawResponse: unknown): ValidationResponse;
42
+ }
43
+ //# sourceMappingURL=validate-key.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-key.d.ts","sourceRoot":"","sources":["../../../../src/commands/iam/validate/validate-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EAExB,MAAM,oBAAoB,CAAA;AAE3B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,6BAA6B;IAC7B,IAAI,EAAE,cAAc,CAAA;IACpB,2BAA2B;IAC3B,eAAe,EAAE,2BAA2B,EAAE,CAAA;CAC/C;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,OAAO,CAC7C,gBAAgB,EAChB,kBAAkB,CACnB;IACC;;OAEG;IACH,UAAmB,cAAc,UAAO;IAExC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAItC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAKrD;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB;CAG3E"}
@@ -0,0 +1,43 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { parseResponseHelper } from "../../../utils/parse-response-helper.js";
3
+ import { ValidationResponseSchema, } from "./validate-user.js";
4
+ /**
5
+ * Validate if a key can perform actions
6
+ */
7
+ export class ValidateKeyCommand extends Command {
8
+ /**
9
+ * Whether the command should retry on failure
10
+ */
11
+ retryOnFailure = true;
12
+ /**
13
+ * Get the method
14
+ */
15
+ getMethod() {
16
+ return "POST";
17
+ }
18
+ /**
19
+ * Get the base url
20
+ */
21
+ getBaseUrl() {
22
+ return "https://iam.api.flowcore.io";
23
+ }
24
+ /**
25
+ * Get the path
26
+ */
27
+ getPath() {
28
+ return `/api/v1/validate/keys/${this.input.keyId}`;
29
+ }
30
+ /**
31
+ * Get the body
32
+ */
33
+ getBody() {
34
+ const { ...rest } = this.input;
35
+ return rest;
36
+ }
37
+ /**
38
+ * Parse the response
39
+ */
40
+ parseResponse(rawResponse) {
41
+ return parseResponseHelper(ValidationResponseSchema, rawResponse);
42
+ }
43
+ }
@@ -0,0 +1,77 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { type Static, type TArray, type TBoolean, type TObject, type TString } from "@sinclair/typebox";
3
+ /**
4
+ * The mode of validation
5
+ */
6
+ export type ValidationMode = "tenant" | "organization";
7
+ /**
8
+ * The validation request access item
9
+ */
10
+ export interface ValidationRequestAccessItem {
11
+ action: string;
12
+ resource: string[];
13
+ }
14
+ /**
15
+ * The schema for a valid policy
16
+ */
17
+ export declare const ValidPolicySchema: TObject<{
18
+ policyFrn: TString;
19
+ statementId: TString;
20
+ }>;
21
+ /**
22
+ * The schema for a validation response
23
+ */
24
+ export declare const ValidationResponseSchema: TObject<{
25
+ valid: TBoolean;
26
+ checksum: TString;
27
+ validPolicies: TArray<typeof ValidPolicySchema>;
28
+ }>;
29
+ /**
30
+ * The valid policy type
31
+ */
32
+ export type ValidPolicy = Static<typeof ValidPolicySchema>;
33
+ /**
34
+ * The validation response type
35
+ */
36
+ export type ValidationResponse = Static<typeof ValidationResponseSchema>;
37
+ /**
38
+ * The input for the user validation command
39
+ */
40
+ export interface ValidateUserInput {
41
+ /** The user id */
42
+ userId: string;
43
+ /** The mode of validation */
44
+ mode: ValidationMode;
45
+ /** The requested access */
46
+ requestedAccess: ValidationRequestAccessItem[];
47
+ }
48
+ /**
49
+ * Validate if a user can perform actions
50
+ */
51
+ export declare class ValidateUserCommand extends Command<ValidateUserInput, ValidationResponse> {
52
+ /**
53
+ * Whether the command should retry on failure
54
+ */
55
+ protected retryOnFailure: boolean;
56
+ /**
57
+ * Get the method
58
+ */
59
+ protected getMethod(): string;
60
+ /**
61
+ * Get the base url
62
+ */
63
+ protected getBaseUrl(): string;
64
+ /**
65
+ * Get the path
66
+ */
67
+ protected getPath(): string;
68
+ /**
69
+ * Get the body
70
+ */
71
+ protected getBody(): Record<string, unknown>;
72
+ /**
73
+ * Parse the response
74
+ */
75
+ protected parseResponse(rawResponse: unknown): ValidationResponse;
76
+ }
77
+ //# sourceMappingURL=validate-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-user.d.ts","sourceRoot":"","sources":["../../../../src/commands/iam/validate/validate-user.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAQ,MAAM,mBAAmB,CAAA;AAE7G;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,cAAc,CAAA;AAEtD;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC;IACtC,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,EAAE,OAAO,CAAA;CACrB,CAGC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,OAAO,CAAC;IAC7C,KAAK,EAAE,QAAQ,CAAA;IACf,QAAQ,EAAE,OAAO,CAAA;IACjB,aAAa,EAAE,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;CAChD,CAIC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE1D;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAExE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,6BAA6B;IAC7B,IAAI,EAAE,cAAc,CAAA;IACpB,2BAA2B;IAC3B,eAAe,EAAE,2BAA2B,EAAE,CAAA;CAC/C;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAC9C,iBAAiB,EACjB,kBAAkB,CACnB;IACC;;OAEG;IACH,UAAmB,cAAc,UAAO;IAExC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAItC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAKrD;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,kBAAkB;CAG3E"}
@@ -0,0 +1,58 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { parseResponseHelper } from "../../../utils/parse-response-helper.js";
3
+ import { Type } from "@sinclair/typebox";
4
+ /**
5
+ * The schema for a valid policy
6
+ */
7
+ export const ValidPolicySchema = Type.Object({
8
+ policyFrn: Type.String(),
9
+ statementId: Type.String(),
10
+ });
11
+ /**
12
+ * The schema for a validation response
13
+ */
14
+ export const ValidationResponseSchema = Type.Object({
15
+ valid: Type.Boolean(),
16
+ checksum: Type.String(),
17
+ validPolicies: Type.Array(ValidPolicySchema),
18
+ });
19
+ /**
20
+ * Validate if a user can perform actions
21
+ */
22
+ export class ValidateUserCommand extends Command {
23
+ /**
24
+ * Whether the command should retry on failure
25
+ */
26
+ retryOnFailure = true;
27
+ /**
28
+ * Get the method
29
+ */
30
+ getMethod() {
31
+ return "POST";
32
+ }
33
+ /**
34
+ * Get the base url
35
+ */
36
+ getBaseUrl() {
37
+ return "https://iam.api.flowcore.io";
38
+ }
39
+ /**
40
+ * Get the path
41
+ */
42
+ getPath() {
43
+ return `/api/v1/validate/users/${this.input.userId}`;
44
+ }
45
+ /**
46
+ * Get the body
47
+ */
48
+ getBody() {
49
+ const { ...rest } = this.input;
50
+ return rest;
51
+ }
52
+ /**
53
+ * Parse the response
54
+ */
55
+ parseResponse(rawResponse) {
56
+ return parseResponseHelper(ValidationResponseSchema, rawResponse);
57
+ }
58
+ }
@@ -57,4 +57,37 @@ export * from "./scenario/scenario.delete.js";
57
57
  export * from "./scenario/scenario.fetch.js";
58
58
  export * from "./scenario/scenario.list.js";
59
59
  export * from "./scenario/scenario.update.js";
60
+ export * from "./iam/permissions/get-user-permissions.js";
61
+ export * from "./iam/policies/create-policy.js";
62
+ export * from "./iam/policies/get-policy.js";
63
+ export * from "./iam/policies/id/archive-policy.js";
64
+ export * from "./iam/policies/id/get-policy.js";
65
+ export * from "./iam/policies/id/update-policy.js";
66
+ export * from "./iam/policy-associations/get-key-policies.js";
67
+ export * from "./iam/policy-associations/get-organization-policies.js";
68
+ export * from "./iam/policy-associations/get-policy-associations.js";
69
+ export * from "./iam/policy-associations/get-role-policies.js";
70
+ export * from "./iam/policy-associations/get-user-policies.js";
71
+ export * from "./iam/policy-associations/link-key-policy.js";
72
+ export * from "./iam/policy-associations/link-role-policy.js";
73
+ export * from "./iam/policy-associations/link-user-policy.js";
74
+ export * from "./iam/policy-associations/unlink-key-policy.js";
75
+ export * from "./iam/policy-associations/unlink-role-policy.js";
76
+ export * from "./iam/policy-associations/unlink-user-policy.js";
77
+ export * from "./iam/role-associations/get-key-roles.js";
78
+ export * from "./iam/role-associations/get-organization-roles.js";
79
+ export * from "./iam/role-associations/get-role-associations.js";
80
+ export * from "./iam/role-associations/get-user-roles.js";
81
+ export * from "./iam/role-associations/link-key-role.js";
82
+ export * from "./iam/role-associations/link-user-role.js";
83
+ export * from "./iam/role-associations/unlink-key-role.js";
84
+ export * from "./iam/role-associations/unlink-user-role.js";
85
+ export * from "./iam/roles/create-role.js";
86
+ export * from "./iam/roles/get-roles.js";
87
+ export * from "./iam/roles/id/archive-role.js";
88
+ export * from "./iam/roles/id/get-role.js";
89
+ export * from "./iam/roles/id/update-role.js";
90
+ export * from "./iam/tenant-iam-audit/get-audit-for-tenant.js";
91
+ export * from "./iam/validate/validate-key.js";
92
+ export * from "./iam/validate/validate-user.js";
60
93
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AACA,cAAc,2CAA2C,CAAA;AACzD,cAAc,0CAA0C,CAAA;AACxD,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yCAAyC,CAAA;AAGvD,cAAc,4BAA4B,CAAA;AAG1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AAGzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,yBAAyB,CAAA;AAGvC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,6BAA6B,CAAA;AAG3C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,yCAAyC,CAAA;AACvD,cAAc,iCAAiC,CAAA;AAG/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,yCAAyC,CAAA;AACvD,cAAc,iCAAiC,CAAA;AAG/C,cAAc,mCAAmC,CAAA;AACjD,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,wDAAwD,CAAA;AACtE,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kDAAkD,CAAA;AAChE,cAAc,2CAA2C,CAAA;AACzD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,mCAAmC,CAAA;AAGjD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAG3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,gDAAgD,CAAA;AAC9D,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAG5C,cAAc,mDAAmD,CAAA;AACjE,cAAc,mDAAmD,CAAA;AACjE,cAAc,kDAAkD,CAAA;AAChE,cAAc,iDAAiD,CAAA;AAC/D,cAAc,mDAAmD,CAAA;AAGjE,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,gCAAgC,CAAA;AAG9C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"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"}
@@ -70,3 +70,37 @@ export * from "./scenario/scenario.delete.js";
70
70
  export * from "./scenario/scenario.fetch.js";
71
71
  export * from "./scenario/scenario.list.js";
72
72
  export * from "./scenario/scenario.update.js";
73
+ // Identity and Access Management
74
+ export * from "./iam/permissions/get-user-permissions.js";
75
+ export * from "./iam/policies/create-policy.js";
76
+ export * from "./iam/policies/get-policy.js";
77
+ export * from "./iam/policies/id/archive-policy.js";
78
+ export * from "./iam/policies/id/get-policy.js";
79
+ export * from "./iam/policies/id/update-policy.js";
80
+ export * from "./iam/policy-associations/get-key-policies.js";
81
+ export * from "./iam/policy-associations/get-organization-policies.js";
82
+ export * from "./iam/policy-associations/get-policy-associations.js";
83
+ export * from "./iam/policy-associations/get-role-policies.js";
84
+ export * from "./iam/policy-associations/get-user-policies.js";
85
+ export * from "./iam/policy-associations/link-key-policy.js";
86
+ export * from "./iam/policy-associations/link-role-policy.js";
87
+ export * from "./iam/policy-associations/link-user-policy.js";
88
+ export * from "./iam/policy-associations/unlink-key-policy.js";
89
+ export * from "./iam/policy-associations/unlink-role-policy.js";
90
+ export * from "./iam/policy-associations/unlink-user-policy.js";
91
+ export * from "./iam/role-associations/get-key-roles.js";
92
+ export * from "./iam/role-associations/get-organization-roles.js";
93
+ export * from "./iam/role-associations/get-role-associations.js";
94
+ export * from "./iam/role-associations/get-user-roles.js";
95
+ export * from "./iam/role-associations/link-key-role.js";
96
+ export * from "./iam/role-associations/link-user-role.js";
97
+ export * from "./iam/role-associations/unlink-key-role.js";
98
+ export * from "./iam/role-associations/unlink-user-role.js";
99
+ export * from "./iam/roles/create-role.js";
100
+ export * from "./iam/roles/get-roles.js";
101
+ export * from "./iam/roles/id/archive-role.js";
102
+ export * from "./iam/roles/id/get-role.js";
103
+ export * from "./iam/roles/id/update-role.js";
104
+ export * from "./iam/tenant-iam-audit/get-audit-for-tenant.js";
105
+ export * from "./iam/validate/validate-key.js";
106
+ export * from "./iam/validate/validate-user.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flowcore/sdk",
3
- "version": "1.50.0",
3
+ "version": "1.52.0",
4
4
  "description": "Flowcore SDK",
5
5
  "homepage": "https://github.com/flowcore-io/flowcore-sdk#readme",
6
6
  "repository": {
@@ -1,6 +1,6 @@
1
- import { Command } from "@flowcore/sdk";
1
+ import { Command } from "../../common/command.js";
2
2
  /**
3
- * The input for the reset adapter command
3
+ * The input for the reset adapter command.
4
4
  */
5
5
  export interface ResetAdapterInput {
6
6
  /** The adapter ID to reset */
@@ -1 +1 @@
1
- {"version":3,"file":"reset-adapter.d.ts","sourceRoot":"","sources":["../../../src/commands/adapter/reset-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAA;IAChB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;IACvF;;OAEG;IACH,UAAmB,kBAAkB,SAAS;IAE9C;;OAEG;IACH,UAAmB,cAAc,UAAO;IAExC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,oBAAoB;CAG7E"}
1
+ {"version":3,"file":"reset-adapter.d.ts","sourceRoot":"","sources":["../../../src/commands/adapter/reset-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAEjD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iCAAiC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,oBAAoB;IACnC,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAA;IAChB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;IACvF;;OAEG;IACH,UAAmB,kBAAkB,SAAS;IAE9C;;OAEG;IACH,UAAmB,cAAc,UAAO;IAExC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAGtC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,oBAAoB;CAG7E"}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ResetAdapterCommand = void 0;
4
- const sdk_1 = require("@flowcore/sdk");
4
+ const command_js_1 = require("../../common/command.js");
5
5
  /**
6
6
  * Reset an adapter
7
7
  */
8
- class ResetAdapterCommand extends sdk_1.Command {
8
+ class ResetAdapterCommand extends command_js_1.Command {
9
9
  /**
10
10
  * The dedicated subdomain for the command
11
11
  */
@@ -0,0 +1,48 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { type Static, type TArray, type TObject, type TString } from "@sinclair/typebox";
3
+ /**
4
+ * The schema for a permission
5
+ */
6
+ export declare const UserPermissionSchema: TObject<{
7
+ tenant: TString;
8
+ type: TString;
9
+ id: TString;
10
+ action: TArray<TString>;
11
+ }>;
12
+ /**
13
+ * The permission type
14
+ */
15
+ export type UserPermission = Static<typeof UserPermissionSchema>;
16
+ /**
17
+ * The input for the user permissions command
18
+ */
19
+ export interface UserPermissionsInput {
20
+ /** The optional permission type */
21
+ type?: string;
22
+ }
23
+ /**
24
+ * Get all permissions for the current user
25
+ */
26
+ export declare class UserPermissionsCommand extends Command<UserPermissionsInput, UserPermission[]> {
27
+ /**
28
+ * Whether the command should retry on failure
29
+ */
30
+ protected retryOnFailure: boolean;
31
+ /**
32
+ * Get the method
33
+ */
34
+ protected getMethod(): string;
35
+ /**
36
+ * Get the base url
37
+ */
38
+ protected getBaseUrl(): string;
39
+ /**
40
+ * Get the path
41
+ */
42
+ protected getPath(): string;
43
+ /**
44
+ * Parse the response
45
+ */
46
+ protected parseResponse(rawResponse: unknown): UserPermission[];
47
+ }
48
+ //# sourceMappingURL=get-user-permissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-user-permissions.d.ts","sourceRoot":"","sources":["../../../../src/commands/iam/permissions/get-user-permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,KAAK,OAAO,EAAE,KAAK,OAAO,EAAQ,MAAM,mBAAmB,CAAA;AAE9F;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,OAAO,CAAC;IACzC,MAAM,EAAE,OAAO,CAAA;IACf,IAAI,EAAE,OAAO,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;CACxB,CAKC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEhE;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,OAAO,CACjD,oBAAoB,EACpB,cAAc,EAAE,CACjB;IACC;;OAEG;IACH,UAAmB,cAAc,UAAO;IAExC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAItC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,cAAc,EAAE;CAGzE"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UserPermissionsCommand = exports.UserPermissionSchema = void 0;
4
+ const command_js_1 = require("../../../common/command.js");
5
+ const parse_response_helper_js_1 = require("../../../utils/parse-response-helper.js");
6
+ const typebox_1 = require("@sinclair/typebox");
7
+ /**
8
+ * The schema for a permission
9
+ */
10
+ exports.UserPermissionSchema = typebox_1.Type.Object({
11
+ tenant: typebox_1.Type.String(),
12
+ type: typebox_1.Type.String(),
13
+ id: typebox_1.Type.String(),
14
+ action: typebox_1.Type.Array(typebox_1.Type.String()),
15
+ });
16
+ /**
17
+ * Get all permissions for the current user
18
+ */
19
+ class UserPermissionsCommand extends command_js_1.Command {
20
+ /**
21
+ * Whether the command should retry on failure
22
+ */
23
+ retryOnFailure = true;
24
+ /**
25
+ * Get the method
26
+ */
27
+ getMethod() {
28
+ return "GET";
29
+ }
30
+ /**
31
+ * Get the base url
32
+ */
33
+ getBaseUrl() {
34
+ return "https://iam.api.flowcore.io";
35
+ }
36
+ /**
37
+ * Get the path
38
+ */
39
+ getPath() {
40
+ return "/api/v1/permissions/";
41
+ }
42
+ /**
43
+ * Parse the response
44
+ */
45
+ parseResponse(rawResponse) {
46
+ return (0, parse_response_helper_js_1.parseResponseHelper)(typebox_1.Type.Array(exports.UserPermissionSchema), rawResponse);
47
+ }
48
+ }
49
+ exports.UserPermissionsCommand = UserPermissionsCommand;
@@ -0,0 +1,89 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { type Static, type TArray, type TBoolean, type TObject, type TOptional, type TString, type TUnion } from "@sinclair/typebox";
3
+ /**
4
+ * The schema for a policy statement document
5
+ */
6
+ export declare const PolicyStatementSchema: TObject<{
7
+ statementId: TOptional<TString>;
8
+ resource: TString;
9
+ action: TUnion<[TString, TArray<TString>]>;
10
+ }>;
11
+ /**
12
+ * The schema for a policy
13
+ */
14
+ export declare const PolicySchema: TObject<{
15
+ id: TString;
16
+ organizationId: TString;
17
+ name: TString;
18
+ version: TString;
19
+ policyDocuments: TArray<typeof PolicyStatementSchema>;
20
+ description: TOptional<TString>;
21
+ principal: TOptional<TString>;
22
+ flowcoreManaged: TBoolean;
23
+ archived: TOptional<TBoolean>;
24
+ frn: TString;
25
+ }>;
26
+ /**
27
+ * The Policy type
28
+ */
29
+ export type Policy = Static<typeof PolicySchema>;
30
+ /**
31
+ * The Policy Statement type
32
+ */
33
+ export type PolicyStatement = Static<typeof PolicyStatementSchema>;
34
+ /**
35
+ * The input for the policy create command
36
+ */
37
+ export interface PolicyCreateInput {
38
+ /** The organization id */
39
+ organizationId: string;
40
+ /** The name of the policy */
41
+ name: string;
42
+ /** The version of the policy */
43
+ version: string;
44
+ /** The policy documents */
45
+ policyDocuments: Array<{
46
+ /** The optional statement id */
47
+ statementId?: string;
48
+ /** The resource for this statement */
49
+ resource: string;
50
+ /** The actions for this statement */
51
+ action: string | string[];
52
+ }>;
53
+ /** The description of the policy */
54
+ description?: string;
55
+ /** The principal role that can access the resource */
56
+ principal?: string;
57
+ /** Whether the policy is managed by Flowcore */
58
+ flowcoreManaged?: boolean;
59
+ }
60
+ /**
61
+ * Create a policy
62
+ */
63
+ export declare class PolicyCreateCommand extends Command<PolicyCreateInput, Policy> {
64
+ /**
65
+ * Whether the command should retry on failure
66
+ */
67
+ protected retryOnFailure: boolean;
68
+ /**
69
+ * Get the method
70
+ */
71
+ protected getMethod(): string;
72
+ /**
73
+ * Get the base url
74
+ */
75
+ protected getBaseUrl(): string;
76
+ /**
77
+ * Get the path
78
+ */
79
+ protected getPath(): string;
80
+ /**
81
+ * Get the body
82
+ */
83
+ protected getBody(): Record<string, unknown>;
84
+ /**
85
+ * Parse the response
86
+ */
87
+ protected parseResponse(rawResponse: unknown): Policy;
88
+ }
89
+ //# sourceMappingURL=create-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-policy.d.ts","sourceRoot":"","sources":["../../../../src/commands/iam/policies/create-policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAA;AAEpD,OAAO,EACL,KAAK,MAAM,EACX,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,OAAO,EACZ,KAAK,MAAM,EAEZ,MAAM,mBAAmB,CAAA;AAE1B;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC;IAC1C,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC/B,QAAQ,EAAE,OAAO,CAAA;IACjB,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;CAC3C,CAIC,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,OAAO,CAAC;IACjC,EAAE,EAAE,OAAO,CAAA;IACX,cAAc,EAAE,OAAO,CAAA;IACvB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,EAAE,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;IACrD,WAAW,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC/B,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;IAC7B,eAAe,EAAE,QAAQ,CAAA;IACzB,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC7B,GAAG,EAAE,OAAO,CAAA;CACb,CAWC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,YAAY,CAAC,CAAA;AAEhD;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAElE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,0BAA0B;IAC1B,cAAc,EAAE,MAAM,CAAA;IACtB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,2BAA2B;IAC3B,eAAe,EAAE,KAAK,CAAC;QACrB,gCAAgC;QAChC,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,sCAAsC;QACtC,QAAQ,EAAE,MAAM,CAAA;QAChB,qCAAqC;QACrC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAC1B,CAAC,CAAA;IACF,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gDAAgD;IAChD,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,OAAO,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACzE;;OAEG;IACH,UAAmB,cAAc,UAAQ;IAEzC;;OAEG;cACgB,SAAS,IAAI,MAAM;IAItC;;OAEG;cACgB,UAAU,IAAI,MAAM;IAIvC;;OAEG;cACgB,OAAO,IAAI,MAAM;IAIpC;;OAEG;cACgB,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAOrD;;OAEG;cACgB,aAAa,CAAC,WAAW,EAAE,OAAO,GAAG,MAAM;CAG/D"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PolicyCreateCommand = exports.PolicySchema = exports.PolicyStatementSchema = void 0;
4
+ // src/contracts/policy.ts
5
+ const command_js_1 = require("../../../common/command.js");
6
+ const parse_response_helper_js_1 = require("../../../utils/parse-response-helper.js");
7
+ const typebox_1 = require("@sinclair/typebox");
8
+ /**
9
+ * The schema for a policy statement document
10
+ */
11
+ exports.PolicyStatementSchema = typebox_1.Type.Object({
12
+ statementId: typebox_1.Type.Optional(typebox_1.Type.String()),
13
+ resource: typebox_1.Type.String(),
14
+ action: typebox_1.Type.Union([typebox_1.Type.String(), typebox_1.Type.Array(typebox_1.Type.String())]),
15
+ });
16
+ /**
17
+ * The schema for a policy
18
+ */
19
+ exports.PolicySchema = typebox_1.Type.Object({
20
+ id: typebox_1.Type.String(),
21
+ organizationId: typebox_1.Type.String(),
22
+ name: typebox_1.Type.String(),
23
+ version: typebox_1.Type.String(),
24
+ policyDocuments: typebox_1.Type.Array(exports.PolicyStatementSchema),
25
+ description: typebox_1.Type.Optional(typebox_1.Type.String()),
26
+ principal: typebox_1.Type.Optional(typebox_1.Type.String()),
27
+ flowcoreManaged: typebox_1.Type.Boolean(),
28
+ archived: typebox_1.Type.Optional(typebox_1.Type.Boolean()),
29
+ frn: typebox_1.Type.String(),
30
+ });
31
+ /**
32
+ * Create a policy
33
+ */
34
+ class PolicyCreateCommand extends command_js_1.Command {
35
+ /**
36
+ * Whether the command should retry on failure
37
+ */
38
+ retryOnFailure = false;
39
+ /**
40
+ * Get the method
41
+ */
42
+ getMethod() {
43
+ return "POST";
44
+ }
45
+ /**
46
+ * Get the base url
47
+ */
48
+ getBaseUrl() {
49
+ return "https://iam.api.flowcore.io";
50
+ }
51
+ /**
52
+ * Get the path
53
+ */
54
+ getPath() {
55
+ return "/api/v1/policies/";
56
+ }
57
+ /**
58
+ * Get the body
59
+ */
60
+ getBody() {
61
+ return {
62
+ ...this.input,
63
+ flowcoreManaged: this.input.flowcoreManaged ?? false,
64
+ };
65
+ }
66
+ /**
67
+ * Parse the response
68
+ */
69
+ parseResponse(rawResponse) {
70
+ return (0, parse_response_helper_js_1.parseResponseHelper)(exports.PolicySchema, rawResponse);
71
+ }
72
+ }
73
+ exports.PolicyCreateCommand = PolicyCreateCommand;
@@ -0,0 +1,35 @@
1
+ import { Command } from "../../../common/command.js";
2
+ import { type Policy } from "./create-policy.js";
3
+ /**
4
+ * The input for the policy list command
5
+ */
6
+ export interface PolicyListInput {
7
+ /** The organization id */
8
+ organizationId?: string;
9
+ }
10
+ /**
11
+ * List policies
12
+ */
13
+ export declare class PolicyListCommand extends Command<PolicyListInput, Policy[]> {
14
+ /**
15
+ * Whether the command should retry on failure
16
+ */
17
+ protected retryOnFailure: boolean;
18
+ /**
19
+ * Get the method
20
+ */
21
+ protected getMethod(): string;
22
+ /**
23
+ * Get the base url
24
+ */
25
+ protected getBaseUrl(): string;
26
+ /**
27
+ * Get the path
28
+ */
29
+ protected getPath(): string;
30
+ /**
31
+ * Parse the response
32
+ */
33
+ protected parseResponse(rawResponse: unknown): Policy[];
34
+ }
35
+ //# sourceMappingURL=get-policy.d.ts.map