@aws-sdk/client-account 3.267.0 → 3.270.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 (58) hide show
  1. package/dist-cjs/Account.js +60 -0
  2. package/dist-cjs/commands/DisableRegionCommand.js +46 -0
  3. package/dist-cjs/commands/EnableRegionCommand.js +46 -0
  4. package/dist-cjs/commands/GetRegionOptStatusCommand.js +46 -0
  5. package/dist-cjs/commands/ListRegionsCommand.js +46 -0
  6. package/dist-cjs/commands/index.js +4 -0
  7. package/dist-cjs/endpoint/ruleset.js +3 -3
  8. package/dist-cjs/index.js +1 -0
  9. package/dist-cjs/models/models_0.js +62 -1
  10. package/dist-cjs/pagination/Interfaces.js +2 -0
  11. package/dist-cjs/pagination/ListRegionsPaginator.js +36 -0
  12. package/dist-cjs/pagination/index.js +5 -0
  13. package/dist-cjs/protocols/Aws_restJson1.js +330 -1
  14. package/dist-es/Account.js +60 -0
  15. package/dist-es/commands/DisableRegionCommand.js +42 -0
  16. package/dist-es/commands/EnableRegionCommand.js +42 -0
  17. package/dist-es/commands/GetRegionOptStatusCommand.js +42 -0
  18. package/dist-es/commands/ListRegionsCommand.js +42 -0
  19. package/dist-es/commands/index.js +4 -0
  20. package/dist-es/endpoint/ruleset.js +3 -3
  21. package/dist-es/index.js +1 -0
  22. package/dist-es/models/models_0.js +52 -0
  23. package/dist-es/pagination/Interfaces.js +1 -0
  24. package/dist-es/pagination/ListRegionsPaginator.js +32 -0
  25. package/dist-es/pagination/index.js +2 -0
  26. package/dist-es/protocols/Aws_restJson1.js +322 -1
  27. package/dist-types/Account.d.ts +38 -8
  28. package/dist-types/AccountClient.d.ts +6 -2
  29. package/dist-types/commands/DeleteAlternateContactCommand.d.ts +2 -2
  30. package/dist-types/commands/DisableRegionCommand.d.ts +37 -0
  31. package/dist-types/commands/EnableRegionCommand.d.ts +37 -0
  32. package/dist-types/commands/GetAlternateContactCommand.d.ts +2 -2
  33. package/dist-types/commands/GetContactInformationCommand.d.ts +1 -1
  34. package/dist-types/commands/GetRegionOptStatusCommand.d.ts +37 -0
  35. package/dist-types/commands/ListRegionsCommand.d.ts +39 -0
  36. package/dist-types/commands/PutAlternateContactCommand.d.ts +2 -2
  37. package/dist-types/commands/PutContactInformationCommand.d.ts +1 -1
  38. package/dist-types/commands/index.d.ts +4 -0
  39. package/dist-types/index.d.ts +1 -0
  40. package/dist-types/models/models_0.d.ts +259 -6
  41. package/dist-types/pagination/Interfaces.d.ts +6 -0
  42. package/dist-types/pagination/ListRegionsPaginator.d.ts +4 -0
  43. package/dist-types/pagination/index.d.ts +2 -0
  44. package/dist-types/protocols/Aws_restJson1.d.ts +12 -0
  45. package/dist-types/ts3.4/Account.d.ts +68 -0
  46. package/dist-types/ts3.4/AccountClient.d.ts +24 -0
  47. package/dist-types/ts3.4/commands/DisableRegionCommand.d.ts +32 -0
  48. package/dist-types/ts3.4/commands/EnableRegionCommand.d.ts +32 -0
  49. package/dist-types/ts3.4/commands/GetRegionOptStatusCommand.d.ts +38 -0
  50. package/dist-types/ts3.4/commands/ListRegionsCommand.d.ts +34 -0
  51. package/dist-types/ts3.4/commands/index.d.ts +4 -0
  52. package/dist-types/ts3.4/index.d.ts +1 -0
  53. package/dist-types/ts3.4/models/models_0.d.ts +74 -0
  54. package/dist-types/ts3.4/pagination/Interfaces.d.ts +7 -0
  55. package/dist-types/ts3.4/pagination/ListRegionsPaginator.d.ts +11 -0
  56. package/dist-types/ts3.4/pagination/index.d.ts +2 -0
  57. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +48 -0
  58. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- const z = "required", A = "type", B = "fn", C = "argv", D = "ref", E = "properties", F = "headers", G = "authSchemes", H = "signingName", I = "signingRegion";
2
- const a = "PartitionResult", b = "tree", c = "error", d = "endpoint", e = "stringEquals", f = { [z]: false, [A]: "String" }, g = { [z]: true, "default": false, [A]: "Boolean" }, h = { [D]: "Region" }, i = { [D]: "Endpoint" }, j = {}, k = { [B]: "getAttr", [C]: [{ [D]: a }, "name"] }, l = { [G]: [{ "name": "sigv4", [H]: "account", [I]: "us-east-1" }] }, m = { [c]: "FIPS and DualStack are enabled, but this partition does not support one or both", [A]: c }, n = { [c]: "FIPS is enabled but this partition does not support FIPS", [A]: c }, o = { [c]: "DualStack is enabled but this partition does not support DualStack", [A]: c }, p = { "url": "https://account.us-east-1.amazonaws.com", [E]: l, [F]: {} }, q = { [G]: [{ "name": "sigv4", [H]: "account", [I]: "cn-northwest-1" }] }, r = { "url": "https://account.cn-northwest-1.amazonaws.com.cn", [E]: q, [F]: {} }, s = [i], t = [{ [B]: "booleanEquals", [C]: [{ [D]: "UseFIPS" }, true] }], u = [{ [B]: "booleanEquals", [C]: [{ [D]: "UseDualStack" }, true] }], v = [{ [B]: "booleanEquals", [C]: [{ [D]: "UseFIPS" }, true] }, { [B]: "booleanEquals", [C]: [{ [D]: "UseDualStack" }, true] }], w = [{ [B]: "booleanEquals", [C]: [true, { [B]: "getAttr", [C]: [{ [D]: a }, "supportsFIPS"] }] }, { [B]: "booleanEquals", [C]: [true, { [B]: "getAttr", [C]: [{ [D]: a }, "supportsDualStack"] }] }], x = [{ [B]: "booleanEquals", [C]: [true, { [B]: "getAttr", [C]: [{ [D]: a }, "supportsFIPS"] }] }], y = [{ [B]: "booleanEquals", [C]: [true, { [B]: "getAttr", [C]: [{ [D]: a }, "supportsDualStack"] }] }];
3
- const _data = { version: "1.0", parameters: { Region: f, UseDualStack: g, UseFIPS: g, Endpoint: f }, rules: [{ conditions: [{ [B]: "aws.partition", [C]: [h], assign: a }], [A]: b, rules: [{ conditions: [{ [B]: "isSet", [C]: s }, { [B]: "parseURL", [C]: s, assign: "url" }], [A]: b, rules: [{ conditions: t, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [A]: c }, { [A]: b, rules: [{ conditions: u, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [A]: c }, { endpoint: { url: i, [E]: j, [F]: j }, [A]: d }] }] }, { conditions: [{ [B]: e, [C]: [k, "aws"] }], [A]: b, rules: [{ conditions: v, [A]: b, rules: [{ conditions: w, [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.api.aws", [E]: l, [F]: j }, [A]: d }] }, m] }, { conditions: t, [A]: b, rules: [{ conditions: x, [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.amazonaws.com", [E]: l, [F]: j }, [A]: d }] }, n] }, { conditions: u, [A]: b, rules: [{ conditions: y, [A]: b, rules: [{ endpoint: { url: "https://account.{Region}.api.aws", [E]: l, [F]: j }, [A]: d }] }, o] }, { endpoint: p, [A]: d }] }, { conditions: [{ [B]: e, [C]: [k, "aws-cn"] }], [A]: b, rules: [{ conditions: v, [A]: b, rules: [{ conditions: w, [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.api.amazonwebservices.com.cn", [E]: q, [F]: j }, [A]: d }] }, m] }, { conditions: t, [A]: b, rules: [{ conditions: x, [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.amazonaws.com.cn", [E]: q, [F]: j }, [A]: d }] }, n] }, { conditions: u, [A]: b, rules: [{ conditions: y, [A]: b, rules: [{ endpoint: { url: "https://account.{Region}.api.amazonwebservices.com.cn", [E]: q, [F]: j }, [A]: d }] }, o] }, { endpoint: r, [A]: d }] }, { conditions: v, [A]: b, rules: [{ conditions: w, [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", [E]: j, [F]: j }, [A]: d }] }, m] }, { conditions: t, [A]: b, rules: [{ conditions: x, [A]: b, rules: [{ [A]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.{PartitionResult#dnsSuffix}", [E]: j, [F]: j }, [A]: d }] }] }, n] }, { conditions: u, [A]: b, rules: [{ conditions: y, [A]: b, rules: [{ endpoint: { url: "https://account.{Region}.{PartitionResult#dualStackDnsSuffix}", [E]: j, [F]: j }, [A]: d }] }, o] }, { [A]: b, rules: [{ conditions: [{ [B]: e, [C]: [h, "aws-global"] }], endpoint: p, [A]: d }, { conditions: [{ [B]: e, [C]: [h, "aws-cn-global"] }], endpoint: r, [A]: d }, { endpoint: { url: "https://account.{Region}.{PartitionResult#dnsSuffix}", [E]: j, [F]: j }, [A]: d }] }] }] };
1
+ const y = "required", z = "type", A = "fn", B = "argv", C = "ref", D = "properties", E = "headers", F = "authSchemes", G = "signingName", H = "signingRegion";
2
+ const a = "isSet", b = "tree", c = "error", d = "endpoint", e = "PartitionResult", f = "stringEquals", g = { [y]: false, [z]: "String" }, h = { [y]: true, "default": false, [z]: "Boolean" }, i = { [C]: "Endpoint" }, j = {}, k = { [C]: "Region" }, l = { [A]: "getAttr", [B]: [{ [C]: e }, "name"] }, m = { [c]: "FIPS and DualStack are enabled, but this partition does not support one or both", [z]: c }, n = { [c]: "FIPS is enabled but this partition does not support FIPS", [z]: c }, o = { [c]: "DualStack is enabled but this partition does not support DualStack", [z]: c }, p = { "url": "https://account.us-east-1.amazonaws.com", [D]: { [F]: [{ "name": "sigv4", [G]: "account", [H]: "us-east-1" }] }, [E]: {} }, q = { "url": "https://account.cn-northwest-1.amazonaws.com.cn", [D]: { [F]: [{ "name": "sigv4", [G]: "account", [H]: "cn-northwest-1" }] }, [E]: {} }, r = [{ [A]: "booleanEquals", [B]: [{ [C]: "UseFIPS" }, true] }], s = [{ [A]: "booleanEquals", [B]: [{ [C]: "UseDualStack" }, true] }], t = [k], u = [{ [A]: "booleanEquals", [B]: [{ [C]: "UseFIPS" }, true] }, { [A]: "booleanEquals", [B]: [{ [C]: "UseDualStack" }, true] }], v = [{ [A]: "booleanEquals", [B]: [true, { [A]: "getAttr", [B]: [{ [C]: e }, "supportsFIPS"] }] }, { [A]: "booleanEquals", [B]: [true, { [A]: "getAttr", [B]: [{ [C]: e }, "supportsDualStack"] }] }], w = [{ [A]: "booleanEquals", [B]: [true, { [A]: "getAttr", [B]: [{ [C]: e }, "supportsFIPS"] }] }], x = [{ [A]: "booleanEquals", [B]: [true, { [A]: "getAttr", [B]: [{ [C]: e }, "supportsDualStack"] }] }];
3
+ const _data = { version: "1.0", parameters: { Region: g, UseDualStack: h, UseFIPS: h, Endpoint: g }, rules: [{ conditions: [{ [A]: a, [B]: [i] }], [z]: b, rules: [{ conditions: r, error: "Invalid Configuration: FIPS and custom endpoint are not supported", [z]: c }, { [z]: b, rules: [{ conditions: s, error: "Invalid Configuration: Dualstack and custom endpoint are not supported", [z]: c }, { endpoint: { url: i, [D]: j, [E]: j }, [z]: d }] }] }, { [z]: b, rules: [{ conditions: [{ [A]: a, [B]: t }], [z]: b, rules: [{ conditions: [{ [A]: "aws.partition", [B]: t, assign: e }], [z]: b, rules: [{ conditions: [{ [A]: f, [B]: [l, "aws"] }], [z]: b, rules: [{ conditions: u, [z]: b, rules: [{ conditions: v, [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.api.aws", [D]: j, [E]: j }, [z]: d }] }, m] }, { conditions: r, [z]: b, rules: [{ conditions: w, [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.amazonaws.com", [D]: j, [E]: j }, [z]: d }] }, n] }, { conditions: s, [z]: b, rules: [{ conditions: x, [z]: b, rules: [{ endpoint: { url: "https://account.{Region}.api.aws", [D]: j, [E]: j }, [z]: d }] }, o] }, { endpoint: p, [z]: d }] }, { conditions: [{ [A]: f, [B]: [l, "aws-cn"] }], [z]: b, rules: [{ conditions: u, [z]: b, rules: [{ conditions: v, [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.api.amazonwebservices.com.cn", [D]: j, [E]: j }, [z]: d }] }, m] }, { conditions: r, [z]: b, rules: [{ conditions: w, [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.amazonaws.com.cn", [D]: j, [E]: j }, [z]: d }] }, n] }, { conditions: s, [z]: b, rules: [{ conditions: x, [z]: b, rules: [{ endpoint: { url: "https://account.{Region}.api.amazonwebservices.com.cn", [D]: j, [E]: j }, [z]: d }] }, o] }, { endpoint: q, [z]: d }] }, { conditions: u, [z]: b, rules: [{ conditions: v, [z]: b, rules: [{ [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.{PartitionResult#dualStackDnsSuffix}", [D]: j, [E]: j }, [z]: d }] }] }, m] }, { conditions: r, [z]: b, rules: [{ conditions: w, [z]: b, rules: [{ [z]: b, rules: [{ endpoint: { url: "https://account-fips.{Region}.{PartitionResult#dnsSuffix}", [D]: j, [E]: j }, [z]: d }] }] }, n] }, { conditions: s, [z]: b, rules: [{ conditions: x, [z]: b, rules: [{ [z]: b, rules: [{ endpoint: { url: "https://account.{Region}.{PartitionResult#dualStackDnsSuffix}", [D]: j, [E]: j }, [z]: d }] }] }, o] }, { [z]: b, rules: [{ conditions: [{ [A]: f, [B]: [k, "aws-global"] }], endpoint: p, [z]: d }, { conditions: [{ [A]: f, [B]: [k, "aws-cn-global"] }], endpoint: q, [z]: d }, { endpoint: { url: "https://account.{Region}.{PartitionResult#dnsSuffix}", [D]: j, [E]: j }, [z]: d }] }] }] }, { error: "Invalid Configuration: Missing Region", [z]: c }] }] };
4
4
  export const ruleSet = _data;
package/dist-es/index.js CHANGED
@@ -2,4 +2,5 @@ export * from "./Account";
2
2
  export * from "./AccountClient";
3
3
  export * from "./commands";
4
4
  export * from "./models";
5
+ export * from "./pagination";
5
6
  export { AccountServiceException } from "./models/AccountServiceException";
@@ -58,6 +58,11 @@ export class TooManyRequestsException extends __BaseException {
58
58
  Object.setPrototypeOf(this, TooManyRequestsException.prototype);
59
59
  }
60
60
  }
61
+ export var ValidationExceptionReason;
62
+ (function (ValidationExceptionReason) {
63
+ ValidationExceptionReason["FIELD_VALIDATION_FAILED"] = "fieldValidationFailed";
64
+ ValidationExceptionReason["INVALID_REGION_OPT_TARGET"] = "invalidRegionOptTarget";
65
+ })(ValidationExceptionReason || (ValidationExceptionReason = {}));
61
66
  export class ValidationException extends __BaseException {
62
67
  constructor(opts) {
63
68
  super({
@@ -68,11 +73,37 @@ export class ValidationException extends __BaseException {
68
73
  this.name = "ValidationException";
69
74
  this.$fault = "client";
70
75
  Object.setPrototypeOf(this, ValidationException.prototype);
76
+ this.reason = opts.reason;
77
+ this.fieldList = opts.fieldList;
71
78
  }
72
79
  }
80
+ export class ConflictException extends __BaseException {
81
+ constructor(opts) {
82
+ super({
83
+ name: "ConflictException",
84
+ $fault: "client",
85
+ ...opts,
86
+ });
87
+ this.name = "ConflictException";
88
+ this.$fault = "client";
89
+ Object.setPrototypeOf(this, ConflictException.prototype);
90
+ }
91
+ }
92
+ export var RegionOptStatus;
93
+ (function (RegionOptStatus) {
94
+ RegionOptStatus["DISABLED"] = "DISABLED";
95
+ RegionOptStatus["DISABLING"] = "DISABLING";
96
+ RegionOptStatus["ENABLED"] = "ENABLED";
97
+ RegionOptStatus["ENABLED_BY_DEFAULT"] = "ENABLED_BY_DEFAULT";
98
+ RegionOptStatus["ENABLING"] = "ENABLING";
99
+ })(RegionOptStatus || (RegionOptStatus = {}));
73
100
  export const DeleteAlternateContactRequestFilterSensitiveLog = (obj) => ({
74
101
  ...obj,
75
102
  });
103
+ export const ValidationExceptionFieldFilterSensitiveLog = (obj) => ({
104
+ ...obj,
105
+ ...(obj.message && { message: SENSITIVE_STRING }),
106
+ });
76
107
  export const GetAlternateContactRequestFilterSensitiveLog = (obj) => ({
77
108
  ...obj,
78
109
  });
@@ -120,3 +151,24 @@ export const PutContactInformationRequestFilterSensitiveLog = (obj) => ({
120
151
  ...obj,
121
152
  ...(obj.ContactInformation && { ContactInformation: ContactInformationFilterSensitiveLog(obj.ContactInformation) }),
122
153
  });
154
+ export const DisableRegionRequestFilterSensitiveLog = (obj) => ({
155
+ ...obj,
156
+ });
157
+ export const EnableRegionRequestFilterSensitiveLog = (obj) => ({
158
+ ...obj,
159
+ });
160
+ export const GetRegionOptStatusRequestFilterSensitiveLog = (obj) => ({
161
+ ...obj,
162
+ });
163
+ export const GetRegionOptStatusResponseFilterSensitiveLog = (obj) => ({
164
+ ...obj,
165
+ });
166
+ export const ListRegionsRequestFilterSensitiveLog = (obj) => ({
167
+ ...obj,
168
+ });
169
+ export const RegionFilterSensitiveLog = (obj) => ({
170
+ ...obj,
171
+ });
172
+ export const ListRegionsResponseFilterSensitiveLog = (obj) => ({
173
+ ...obj,
174
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,32 @@
1
+ import { Account } from "../Account";
2
+ import { AccountClient } from "../AccountClient";
3
+ import { ListRegionsCommand } from "../commands/ListRegionsCommand";
4
+ const makePagedClientRequest = async (client, input, ...args) => {
5
+ return await client.send(new ListRegionsCommand(input), ...args);
6
+ };
7
+ const makePagedRequest = async (client, input, ...args) => {
8
+ return await client.listRegions(input, ...args);
9
+ };
10
+ export async function* paginateListRegions(config, input, ...additionalArguments) {
11
+ let token = config.startingToken || undefined;
12
+ let hasNext = true;
13
+ let page;
14
+ while (hasNext) {
15
+ input.NextToken = token;
16
+ input["MaxResults"] = config.pageSize;
17
+ if (config.client instanceof Account) {
18
+ page = await makePagedRequest(config.client, input, ...additionalArguments);
19
+ }
20
+ else if (config.client instanceof AccountClient) {
21
+ page = await makePagedClientRequest(config.client, input, ...additionalArguments);
22
+ }
23
+ else {
24
+ throw new Error("Invalid client, expected Account | AccountClient");
25
+ }
26
+ yield page;
27
+ const prevToken = token;
28
+ token = page.NextToken;
29
+ hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));
30
+ }
31
+ return undefined;
32
+ }
@@ -0,0 +1,2 @@
1
+ export * from "./Interfaces";
2
+ export * from "./ListRegionsPaginator";
@@ -1,7 +1,7 @@
1
1
  import { HttpRequest as __HttpRequest } from "@aws-sdk/protocol-http";
2
2
  import { decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map as __map, throwDefaultError, } from "@aws-sdk/smithy-client";
3
3
  import { AccountServiceException as __BaseException } from "../models/AccountServiceException";
4
- import { AccessDeniedException, InternalServerException, ResourceNotFoundException, TooManyRequestsException, ValidationException, } from "../models/models_0";
4
+ import { AccessDeniedException, ConflictException, InternalServerException, ResourceNotFoundException, TooManyRequestsException, ValidationException, } from "../models/models_0";
5
5
  export const serializeAws_restJson1DeleteAlternateContactCommand = async (input, context) => {
6
6
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
7
7
  const headers = {
@@ -23,6 +23,48 @@ export const serializeAws_restJson1DeleteAlternateContactCommand = async (input,
23
23
  body,
24
24
  });
25
25
  };
26
+ export const serializeAws_restJson1DisableRegionCommand = async (input, context) => {
27
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
28
+ const headers = {
29
+ "content-type": "application/json",
30
+ };
31
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/disableRegion";
32
+ let body;
33
+ body = JSON.stringify({
34
+ ...(input.AccountId != null && { AccountId: input.AccountId }),
35
+ ...(input.RegionName != null && { RegionName: input.RegionName }),
36
+ });
37
+ return new __HttpRequest({
38
+ protocol,
39
+ hostname,
40
+ port,
41
+ method: "POST",
42
+ headers,
43
+ path: resolvedPath,
44
+ body,
45
+ });
46
+ };
47
+ export const serializeAws_restJson1EnableRegionCommand = async (input, context) => {
48
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
49
+ const headers = {
50
+ "content-type": "application/json",
51
+ };
52
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/enableRegion";
53
+ let body;
54
+ body = JSON.stringify({
55
+ ...(input.AccountId != null && { AccountId: input.AccountId }),
56
+ ...(input.RegionName != null && { RegionName: input.RegionName }),
57
+ });
58
+ return new __HttpRequest({
59
+ protocol,
60
+ hostname,
61
+ port,
62
+ method: "POST",
63
+ headers,
64
+ path: resolvedPath,
65
+ body,
66
+ });
67
+ };
26
68
  export const serializeAws_restJson1GetAlternateContactCommand = async (input, context) => {
27
69
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
28
70
  const headers = {
@@ -64,6 +106,52 @@ export const serializeAws_restJson1GetContactInformationCommand = async (input,
64
106
  body,
65
107
  });
66
108
  };
109
+ export const serializeAws_restJson1GetRegionOptStatusCommand = async (input, context) => {
110
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
111
+ const headers = {
112
+ "content-type": "application/json",
113
+ };
114
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/getRegionOptStatus";
115
+ let body;
116
+ body = JSON.stringify({
117
+ ...(input.AccountId != null && { AccountId: input.AccountId }),
118
+ ...(input.RegionName != null && { RegionName: input.RegionName }),
119
+ });
120
+ return new __HttpRequest({
121
+ protocol,
122
+ hostname,
123
+ port,
124
+ method: "POST",
125
+ headers,
126
+ path: resolvedPath,
127
+ body,
128
+ });
129
+ };
130
+ export const serializeAws_restJson1ListRegionsCommand = async (input, context) => {
131
+ const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
132
+ const headers = {
133
+ "content-type": "application/json",
134
+ };
135
+ const resolvedPath = `${basePath?.endsWith("/") ? basePath.slice(0, -1) : basePath || ""}` + "/listRegions";
136
+ let body;
137
+ body = JSON.stringify({
138
+ ...(input.AccountId != null && { AccountId: input.AccountId }),
139
+ ...(input.MaxResults != null && { MaxResults: input.MaxResults }),
140
+ ...(input.NextToken != null && { NextToken: input.NextToken }),
141
+ ...(input.RegionOptStatusContains != null && {
142
+ RegionOptStatusContains: serializeAws_restJson1RegionOptStatusList(input.RegionOptStatusContains, context),
143
+ }),
144
+ });
145
+ return new __HttpRequest({
146
+ protocol,
147
+ hostname,
148
+ port,
149
+ method: "POST",
150
+ headers,
151
+ path: resolvedPath,
152
+ body,
153
+ });
154
+ };
67
155
  export const serializeAws_restJson1PutAlternateContactCommand = async (input, context) => {
68
156
  const { hostname, protocol = "https", port, path: basePath } = await context.endpoint();
69
157
  const headers = {
@@ -154,6 +242,90 @@ const deserializeAws_restJson1DeleteAlternateContactCommandError = async (output
154
242
  });
155
243
  }
156
244
  };
245
+ export const deserializeAws_restJson1DisableRegionCommand = async (output, context) => {
246
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
247
+ return deserializeAws_restJson1DisableRegionCommandError(output, context);
248
+ }
249
+ const contents = map({
250
+ $metadata: deserializeMetadata(output),
251
+ });
252
+ await collectBody(output.body, context);
253
+ return contents;
254
+ };
255
+ const deserializeAws_restJson1DisableRegionCommandError = async (output, context) => {
256
+ const parsedOutput = {
257
+ ...output,
258
+ body: await parseErrorBody(output.body, context),
259
+ };
260
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
261
+ switch (errorCode) {
262
+ case "AccessDeniedException":
263
+ case "com.amazonaws.account#AccessDeniedException":
264
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
265
+ case "ConflictException":
266
+ case "com.amazonaws.account#ConflictException":
267
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
268
+ case "InternalServerException":
269
+ case "com.amazonaws.account#InternalServerException":
270
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
271
+ case "TooManyRequestsException":
272
+ case "com.amazonaws.account#TooManyRequestsException":
273
+ throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context);
274
+ case "ValidationException":
275
+ case "com.amazonaws.account#ValidationException":
276
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
277
+ default:
278
+ const parsedBody = parsedOutput.body;
279
+ throwDefaultError({
280
+ output,
281
+ parsedBody,
282
+ exceptionCtor: __BaseException,
283
+ errorCode,
284
+ });
285
+ }
286
+ };
287
+ export const deserializeAws_restJson1EnableRegionCommand = async (output, context) => {
288
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
289
+ return deserializeAws_restJson1EnableRegionCommandError(output, context);
290
+ }
291
+ const contents = map({
292
+ $metadata: deserializeMetadata(output),
293
+ });
294
+ await collectBody(output.body, context);
295
+ return contents;
296
+ };
297
+ const deserializeAws_restJson1EnableRegionCommandError = async (output, context) => {
298
+ const parsedOutput = {
299
+ ...output,
300
+ body: await parseErrorBody(output.body, context),
301
+ };
302
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
303
+ switch (errorCode) {
304
+ case "AccessDeniedException":
305
+ case "com.amazonaws.account#AccessDeniedException":
306
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
307
+ case "ConflictException":
308
+ case "com.amazonaws.account#ConflictException":
309
+ throw await deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context);
310
+ case "InternalServerException":
311
+ case "com.amazonaws.account#InternalServerException":
312
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
313
+ case "TooManyRequestsException":
314
+ case "com.amazonaws.account#TooManyRequestsException":
315
+ throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context);
316
+ case "ValidationException":
317
+ case "com.amazonaws.account#ValidationException":
318
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
319
+ default:
320
+ const parsedBody = parsedOutput.body;
321
+ throwDefaultError({
322
+ output,
323
+ parsedBody,
324
+ exceptionCtor: __BaseException,
325
+ errorCode,
326
+ });
327
+ }
328
+ };
157
329
  export const deserializeAws_restJson1GetAlternateContactCommand = async (output, context) => {
158
330
  if (output.statusCode !== 200 && output.statusCode >= 300) {
159
331
  return deserializeAws_restJson1GetAlternateContactCommandError(output, context);
@@ -244,6 +416,96 @@ const deserializeAws_restJson1GetContactInformationCommandError = async (output,
244
416
  });
245
417
  }
246
418
  };
419
+ export const deserializeAws_restJson1GetRegionOptStatusCommand = async (output, context) => {
420
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
421
+ return deserializeAws_restJson1GetRegionOptStatusCommandError(output, context);
422
+ }
423
+ const contents = map({
424
+ $metadata: deserializeMetadata(output),
425
+ });
426
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
427
+ if (data.RegionName != null) {
428
+ contents.RegionName = __expectString(data.RegionName);
429
+ }
430
+ if (data.RegionOptStatus != null) {
431
+ contents.RegionOptStatus = __expectString(data.RegionOptStatus);
432
+ }
433
+ return contents;
434
+ };
435
+ const deserializeAws_restJson1GetRegionOptStatusCommandError = async (output, context) => {
436
+ const parsedOutput = {
437
+ ...output,
438
+ body: await parseErrorBody(output.body, context),
439
+ };
440
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
441
+ switch (errorCode) {
442
+ case "AccessDeniedException":
443
+ case "com.amazonaws.account#AccessDeniedException":
444
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
445
+ case "InternalServerException":
446
+ case "com.amazonaws.account#InternalServerException":
447
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
448
+ case "TooManyRequestsException":
449
+ case "com.amazonaws.account#TooManyRequestsException":
450
+ throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context);
451
+ case "ValidationException":
452
+ case "com.amazonaws.account#ValidationException":
453
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
454
+ default:
455
+ const parsedBody = parsedOutput.body;
456
+ throwDefaultError({
457
+ output,
458
+ parsedBody,
459
+ exceptionCtor: __BaseException,
460
+ errorCode,
461
+ });
462
+ }
463
+ };
464
+ export const deserializeAws_restJson1ListRegionsCommand = async (output, context) => {
465
+ if (output.statusCode !== 200 && output.statusCode >= 300) {
466
+ return deserializeAws_restJson1ListRegionsCommandError(output, context);
467
+ }
468
+ const contents = map({
469
+ $metadata: deserializeMetadata(output),
470
+ });
471
+ const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
472
+ if (data.NextToken != null) {
473
+ contents.NextToken = __expectString(data.NextToken);
474
+ }
475
+ if (data.Regions != null) {
476
+ contents.Regions = deserializeAws_restJson1RegionOptList(data.Regions, context);
477
+ }
478
+ return contents;
479
+ };
480
+ const deserializeAws_restJson1ListRegionsCommandError = async (output, context) => {
481
+ const parsedOutput = {
482
+ ...output,
483
+ body: await parseErrorBody(output.body, context),
484
+ };
485
+ const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);
486
+ switch (errorCode) {
487
+ case "AccessDeniedException":
488
+ case "com.amazonaws.account#AccessDeniedException":
489
+ throw await deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context);
490
+ case "InternalServerException":
491
+ case "com.amazonaws.account#InternalServerException":
492
+ throw await deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context);
493
+ case "TooManyRequestsException":
494
+ case "com.amazonaws.account#TooManyRequestsException":
495
+ throw await deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context);
496
+ case "ValidationException":
497
+ case "com.amazonaws.account#ValidationException":
498
+ throw await deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context);
499
+ default:
500
+ const parsedBody = parsedOutput.body;
501
+ throwDefaultError({
502
+ output,
503
+ parsedBody,
504
+ exceptionCtor: __BaseException,
505
+ errorCode,
506
+ });
507
+ }
508
+ };
247
509
  export const deserializeAws_restJson1PutAlternateContactCommand = async (output, context) => {
248
510
  if (output.statusCode !== 200 && output.statusCode >= 300) {
249
511
  return deserializeAws_restJson1PutAlternateContactCommandError(output, context);
@@ -335,6 +597,18 @@ const deserializeAws_restJson1AccessDeniedExceptionResponse = async (parsedOutpu
335
597
  });
336
598
  return __decorateServiceException(exception, parsedOutput.body);
337
599
  };
600
+ const deserializeAws_restJson1ConflictExceptionResponse = async (parsedOutput, context) => {
601
+ const contents = map({});
602
+ const data = parsedOutput.body;
603
+ if (data.message != null) {
604
+ contents.message = __expectString(data.message);
605
+ }
606
+ const exception = new ConflictException({
607
+ $metadata: deserializeMetadata(parsedOutput),
608
+ ...contents,
609
+ });
610
+ return __decorateServiceException(exception, parsedOutput.body);
611
+ };
338
612
  const deserializeAws_restJson1InternalServerExceptionResponse = async (parsedOutput, context) => {
339
613
  const contents = map({});
340
614
  const data = parsedOutput.body;
@@ -374,9 +648,15 @@ const deserializeAws_restJson1TooManyRequestsExceptionResponse = async (parsedOu
374
648
  const deserializeAws_restJson1ValidationExceptionResponse = async (parsedOutput, context) => {
375
649
  const contents = map({});
376
650
  const data = parsedOutput.body;
651
+ if (data.fieldList != null) {
652
+ contents.fieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context);
653
+ }
377
654
  if (data.message != null) {
378
655
  contents.message = __expectString(data.message);
379
656
  }
657
+ if (data.reason != null) {
658
+ contents.reason = __expectString(data.reason);
659
+ }
380
660
  const exception = new ValidationException({
381
661
  $metadata: deserializeMetadata(parsedOutput),
382
662
  ...contents,
@@ -399,6 +679,13 @@ const serializeAws_restJson1ContactInformation = (input, context) => {
399
679
  ...(input.WebsiteUrl != null && { WebsiteUrl: input.WebsiteUrl }),
400
680
  };
401
681
  };
682
+ const serializeAws_restJson1RegionOptStatusList = (input, context) => {
683
+ return input
684
+ .filter((e) => e != null)
685
+ .map((entry) => {
686
+ return entry;
687
+ });
688
+ };
402
689
  const deserializeAws_restJson1AlternateContact = (output, context) => {
403
690
  return {
404
691
  AlternateContactType: __expectString(output.AlternateContactType),
@@ -424,6 +711,40 @@ const deserializeAws_restJson1ContactInformation = (output, context) => {
424
711
  WebsiteUrl: __expectString(output.WebsiteUrl),
425
712
  };
426
713
  };
714
+ const deserializeAws_restJson1Region = (output, context) => {
715
+ return {
716
+ RegionName: __expectString(output.RegionName),
717
+ RegionOptStatus: __expectString(output.RegionOptStatus),
718
+ };
719
+ };
720
+ const deserializeAws_restJson1RegionOptList = (output, context) => {
721
+ const retVal = (output || [])
722
+ .filter((e) => e != null)
723
+ .map((entry) => {
724
+ if (entry === null) {
725
+ return null;
726
+ }
727
+ return deserializeAws_restJson1Region(entry, context);
728
+ });
729
+ return retVal;
730
+ };
731
+ const deserializeAws_restJson1ValidationExceptionField = (output, context) => {
732
+ return {
733
+ message: __expectString(output.message),
734
+ name: __expectString(output.name),
735
+ };
736
+ };
737
+ const deserializeAws_restJson1ValidationExceptionFieldList = (output, context) => {
738
+ const retVal = (output || [])
739
+ .filter((e) => e != null)
740
+ .map((entry) => {
741
+ if (entry === null) {
742
+ return null;
743
+ }
744
+ return deserializeAws_restJson1ValidationExceptionField(entry, context);
745
+ });
746
+ return retVal;
747
+ };
427
748
  const deserializeMetadata = (output) => ({
428
749
  httpStatusCode: output.statusCode,
429
750
  requestId: output.headers["x-amzn-requestid"] ?? output.headers["x-amzn-request-id"] ?? output.headers["x-amz-request-id"],
@@ -1,8 +1,12 @@
1
1
  import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types";
2
2
  import { AccountClient } from "./AccountClient";
3
3
  import { DeleteAlternateContactCommandInput, DeleteAlternateContactCommandOutput } from "./commands/DeleteAlternateContactCommand";
4
+ import { DisableRegionCommandInput, DisableRegionCommandOutput } from "./commands/DisableRegionCommand";
5
+ import { EnableRegionCommandInput, EnableRegionCommandOutput } from "./commands/EnableRegionCommand";
4
6
  import { GetAlternateContactCommandInput, GetAlternateContactCommandOutput } from "./commands/GetAlternateContactCommand";
5
7
  import { GetContactInformationCommandInput, GetContactInformationCommandOutput } from "./commands/GetContactInformationCommand";
8
+ import { GetRegionOptStatusCommandInput, GetRegionOptStatusCommandOutput } from "./commands/GetRegionOptStatusCommand";
9
+ import { ListRegionsCommandInput, ListRegionsCommandOutput } from "./commands/ListRegionsCommand";
6
10
  import { PutAlternateContactCommandInput, PutAlternateContactCommandOutput } from "./commands/PutAlternateContactCommand";
7
11
  import { PutContactInformationCommandInput, PutContactInformationCommandOutput } from "./commands/PutContactInformationCommand";
8
12
  /**
@@ -11,9 +15,9 @@ import { PutContactInformationCommandInput, PutContactInformationCommandOutput }
11
15
  export declare class Account extends AccountClient {
12
16
  /**
13
17
  * <p>Deletes the specified alternate contact from an Amazon Web Services account.</p>
14
- * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
18
+ * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
15
19
  * updating the alternate contacts</a>.</p>
16
- * <note>
20
+ * <note>
17
21
  * <p>Before you can update the alternate contact information for an
18
22
  * Amazon Web Services account that is managed by Organizations, you must first enable integration between Amazon Web Services Account Management
19
23
  * and Organizations. For more information, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/using-orgs-trusted-access.html">Enabling trusted access for
@@ -23,11 +27,23 @@ export declare class Account extends AccountClient {
23
27
  deleteAlternateContact(args: DeleteAlternateContactCommandInput, options?: __HttpHandlerOptions): Promise<DeleteAlternateContactCommandOutput>;
24
28
  deleteAlternateContact(args: DeleteAlternateContactCommandInput, cb: (err: any, data?: DeleteAlternateContactCommandOutput) => void): void;
25
29
  deleteAlternateContact(args: DeleteAlternateContactCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteAlternateContactCommandOutput) => void): void;
30
+ /**
31
+ * <p>Disables (opts-out) a particular Region for an account.</p>
32
+ */
33
+ disableRegion(args: DisableRegionCommandInput, options?: __HttpHandlerOptions): Promise<DisableRegionCommandOutput>;
34
+ disableRegion(args: DisableRegionCommandInput, cb: (err: any, data?: DisableRegionCommandOutput) => void): void;
35
+ disableRegion(args: DisableRegionCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DisableRegionCommandOutput) => void): void;
36
+ /**
37
+ * <p>Enables (opts-in) a particular Region for an account.</p>
38
+ */
39
+ enableRegion(args: EnableRegionCommandInput, options?: __HttpHandlerOptions): Promise<EnableRegionCommandOutput>;
40
+ enableRegion(args: EnableRegionCommandInput, cb: (err: any, data?: EnableRegionCommandOutput) => void): void;
41
+ enableRegion(args: EnableRegionCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: EnableRegionCommandOutput) => void): void;
26
42
  /**
27
43
  * <p>Retrieves the specified alternate contact attached to an Amazon Web Services account.</p>
28
- * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
44
+ * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
29
45
  * updating the alternate contacts</a>.</p>
30
- * <note>
46
+ * <note>
31
47
  * <p>Before you can update the alternate contact information for an
32
48
  * Amazon Web Services account that is managed by Organizations, you must first enable integration between Amazon Web Services Account Management
33
49
  * and Organizations. For more information, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/using-orgs-trusted-access.html">Enabling trusted access for
@@ -39,17 +55,31 @@ export declare class Account extends AccountClient {
39
55
  getAlternateContact(args: GetAlternateContactCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetAlternateContactCommandOutput) => void): void;
40
56
  /**
41
57
  * <p>Retrieves the primary contact information of an Amazon Web Services account.</p>
42
- * <p>For complete details about how to use the primary contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Update
58
+ * <p>For complete details about how to use the primary contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Update
43
59
  * the primary and alternate contact information</a>.</p>
44
60
  */
45
61
  getContactInformation(args: GetContactInformationCommandInput, options?: __HttpHandlerOptions): Promise<GetContactInformationCommandOutput>;
46
62
  getContactInformation(args: GetContactInformationCommandInput, cb: (err: any, data?: GetContactInformationCommandOutput) => void): void;
47
63
  getContactInformation(args: GetContactInformationCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetContactInformationCommandOutput) => void): void;
64
+ /**
65
+ * <p>Retrieves the opt-in status of a particular Region.</p>
66
+ */
67
+ getRegionOptStatus(args: GetRegionOptStatusCommandInput, options?: __HttpHandlerOptions): Promise<GetRegionOptStatusCommandOutput>;
68
+ getRegionOptStatus(args: GetRegionOptStatusCommandInput, cb: (err: any, data?: GetRegionOptStatusCommandOutput) => void): void;
69
+ getRegionOptStatus(args: GetRegionOptStatusCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetRegionOptStatusCommandOutput) => void): void;
70
+ /**
71
+ * <p>Lists all the Regions for a given account and their respective opt-in statuses.
72
+ * Optionally, this list can be filtered by the <code>region-opt-status-contains</code>
73
+ * parameter. </p>
74
+ */
75
+ listRegions(args: ListRegionsCommandInput, options?: __HttpHandlerOptions): Promise<ListRegionsCommandOutput>;
76
+ listRegions(args: ListRegionsCommandInput, cb: (err: any, data?: ListRegionsCommandOutput) => void): void;
77
+ listRegions(args: ListRegionsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListRegionsCommandOutput) => void): void;
48
78
  /**
49
79
  * <p>Modifies the specified alternate contact attached to an Amazon Web Services account.</p>
50
- * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
80
+ * <p>For complete details about how to use the alternate contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Access or
51
81
  * updating the alternate contacts</a>.</p>
52
- * <note>
82
+ * <note>
53
83
  * <p>Before you can update the alternate contact information for an
54
84
  * Amazon Web Services account that is managed by Organizations, you must first enable integration between Amazon Web Services Account Management
55
85
  * and Organizations. For more information, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/using-orgs-trusted-access.html">Enabling trusted access for
@@ -61,7 +91,7 @@ export declare class Account extends AccountClient {
61
91
  putAlternateContact(args: PutAlternateContactCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: PutAlternateContactCommandOutput) => void): void;
62
92
  /**
63
93
  * <p>Updates the primary contact information of an Amazon Web Services account.</p>
64
- * <p>For complete details about how to use the primary contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Update
94
+ * <p>For complete details about how to use the primary contact operations, see <a href="https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html">Update
65
95
  * the primary and alternate contact information</a>.</p>
66
96
  */
67
97
  putContactInformation(args: PutContactInformationCommandInput, options?: __HttpHandlerOptions): Promise<PutContactInformationCommandOutput>;