@aws-sdk/client-billingconductor 3.194.0 → 3.196.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 (152) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist-cjs/BillingconductorClient.js +11 -8
  3. package/dist-cjs/commands/AssociateAccountsCommand.js +10 -0
  4. package/dist-cjs/commands/AssociatePricingRulesCommand.js +10 -0
  5. package/dist-cjs/commands/BatchAssociateResourcesToCustomLineItemCommand.js +10 -0
  6. package/dist-cjs/commands/BatchDisassociateResourcesFromCustomLineItemCommand.js +10 -0
  7. package/dist-cjs/commands/CreateBillingGroupCommand.js +10 -0
  8. package/dist-cjs/commands/CreateCustomLineItemCommand.js +10 -0
  9. package/dist-cjs/commands/CreatePricingPlanCommand.js +10 -0
  10. package/dist-cjs/commands/CreatePricingRuleCommand.js +10 -0
  11. package/dist-cjs/commands/DeleteBillingGroupCommand.js +10 -0
  12. package/dist-cjs/commands/DeleteCustomLineItemCommand.js +10 -0
  13. package/dist-cjs/commands/DeletePricingPlanCommand.js +10 -0
  14. package/dist-cjs/commands/DeletePricingRuleCommand.js +10 -0
  15. package/dist-cjs/commands/DisassociateAccountsCommand.js +10 -0
  16. package/dist-cjs/commands/DisassociatePricingRulesCommand.js +10 -0
  17. package/dist-cjs/commands/ListAccountAssociationsCommand.js +10 -0
  18. package/dist-cjs/commands/ListBillingGroupCostReportsCommand.js +10 -0
  19. package/dist-cjs/commands/ListBillingGroupsCommand.js +10 -0
  20. package/dist-cjs/commands/ListCustomLineItemsCommand.js +10 -0
  21. package/dist-cjs/commands/ListPricingPlansAssociatedWithPricingRuleCommand.js +10 -0
  22. package/dist-cjs/commands/ListPricingPlansCommand.js +10 -0
  23. package/dist-cjs/commands/ListPricingRulesAssociatedToPricingPlanCommand.js +10 -0
  24. package/dist-cjs/commands/ListPricingRulesCommand.js +10 -0
  25. package/dist-cjs/commands/ListResourcesAssociatedToCustomLineItemCommand.js +10 -0
  26. package/dist-cjs/commands/ListTagsForResourceCommand.js +10 -0
  27. package/dist-cjs/commands/TagResourceCommand.js +10 -0
  28. package/dist-cjs/commands/UntagResourceCommand.js +10 -0
  29. package/dist-cjs/commands/UpdateBillingGroupCommand.js +10 -0
  30. package/dist-cjs/commands/UpdateCustomLineItemCommand.js +10 -0
  31. package/dist-cjs/commands/UpdatePricingPlanCommand.js +10 -0
  32. package/dist-cjs/commands/UpdatePricingRuleCommand.js +10 -0
  33. package/dist-cjs/endpoint/EndpointParameters.js +13 -0
  34. package/dist-cjs/endpoint/endpointResolver.js +12 -0
  35. package/dist-cjs/endpoint/ruleset.js +594 -0
  36. package/dist-cjs/runtimeConfig.shared.js +3 -3
  37. package/dist-es/BillingconductorClient.js +12 -9
  38. package/dist-es/commands/AssociateAccountsCommand.js +10 -0
  39. package/dist-es/commands/AssociatePricingRulesCommand.js +10 -0
  40. package/dist-es/commands/BatchAssociateResourcesToCustomLineItemCommand.js +10 -0
  41. package/dist-es/commands/BatchDisassociateResourcesFromCustomLineItemCommand.js +10 -0
  42. package/dist-es/commands/CreateBillingGroupCommand.js +10 -0
  43. package/dist-es/commands/CreateCustomLineItemCommand.js +10 -0
  44. package/dist-es/commands/CreatePricingPlanCommand.js +10 -0
  45. package/dist-es/commands/CreatePricingRuleCommand.js +10 -0
  46. package/dist-es/commands/DeleteBillingGroupCommand.js +10 -0
  47. package/dist-es/commands/DeleteCustomLineItemCommand.js +10 -0
  48. package/dist-es/commands/DeletePricingPlanCommand.js +10 -0
  49. package/dist-es/commands/DeletePricingRuleCommand.js +10 -0
  50. package/dist-es/commands/DisassociateAccountsCommand.js +10 -0
  51. package/dist-es/commands/DisassociatePricingRulesCommand.js +10 -0
  52. package/dist-es/commands/ListAccountAssociationsCommand.js +10 -0
  53. package/dist-es/commands/ListBillingGroupCostReportsCommand.js +10 -0
  54. package/dist-es/commands/ListBillingGroupsCommand.js +10 -0
  55. package/dist-es/commands/ListCustomLineItemsCommand.js +10 -0
  56. package/dist-es/commands/ListPricingPlansAssociatedWithPricingRuleCommand.js +10 -0
  57. package/dist-es/commands/ListPricingPlansCommand.js +10 -0
  58. package/dist-es/commands/ListPricingRulesAssociatedToPricingPlanCommand.js +10 -0
  59. package/dist-es/commands/ListPricingRulesCommand.js +10 -0
  60. package/dist-es/commands/ListResourcesAssociatedToCustomLineItemCommand.js +10 -0
  61. package/dist-es/commands/ListTagsForResourceCommand.js +10 -0
  62. package/dist-es/commands/TagResourceCommand.js +10 -0
  63. package/dist-es/commands/UntagResourceCommand.js +10 -0
  64. package/dist-es/commands/UpdateBillingGroupCommand.js +10 -0
  65. package/dist-es/commands/UpdateCustomLineItemCommand.js +10 -0
  66. package/dist-es/commands/UpdatePricingPlanCommand.js +10 -0
  67. package/dist-es/commands/UpdatePricingRuleCommand.js +10 -0
  68. package/dist-es/endpoint/EndpointParameters.js +8 -0
  69. package/dist-es/endpoint/endpointResolver.js +8 -0
  70. package/dist-es/endpoint/ruleset.js +591 -0
  71. package/dist-es/runtimeConfig.shared.js +2 -2
  72. package/dist-types/BillingconductorClient.d.ts +6 -9
  73. package/dist-types/commands/AssociateAccountsCommand.d.ts +2 -0
  74. package/dist-types/commands/AssociatePricingRulesCommand.d.ts +2 -0
  75. package/dist-types/commands/BatchAssociateResourcesToCustomLineItemCommand.d.ts +2 -0
  76. package/dist-types/commands/BatchDisassociateResourcesFromCustomLineItemCommand.d.ts +2 -0
  77. package/dist-types/commands/CreateBillingGroupCommand.d.ts +2 -0
  78. package/dist-types/commands/CreateCustomLineItemCommand.d.ts +2 -0
  79. package/dist-types/commands/CreatePricingPlanCommand.d.ts +2 -0
  80. package/dist-types/commands/CreatePricingRuleCommand.d.ts +2 -0
  81. package/dist-types/commands/DeleteBillingGroupCommand.d.ts +2 -0
  82. package/dist-types/commands/DeleteCustomLineItemCommand.d.ts +2 -0
  83. package/dist-types/commands/DeletePricingPlanCommand.d.ts +2 -0
  84. package/dist-types/commands/DeletePricingRuleCommand.d.ts +2 -0
  85. package/dist-types/commands/DisassociateAccountsCommand.d.ts +2 -0
  86. package/dist-types/commands/DisassociatePricingRulesCommand.d.ts +2 -0
  87. package/dist-types/commands/ListAccountAssociationsCommand.d.ts +2 -0
  88. package/dist-types/commands/ListBillingGroupCostReportsCommand.d.ts +2 -0
  89. package/dist-types/commands/ListBillingGroupsCommand.d.ts +2 -0
  90. package/dist-types/commands/ListCustomLineItemsCommand.d.ts +2 -0
  91. package/dist-types/commands/ListPricingPlansAssociatedWithPricingRuleCommand.d.ts +2 -0
  92. package/dist-types/commands/ListPricingPlansCommand.d.ts +2 -0
  93. package/dist-types/commands/ListPricingRulesAssociatedToPricingPlanCommand.d.ts +2 -0
  94. package/dist-types/commands/ListPricingRulesCommand.d.ts +2 -0
  95. package/dist-types/commands/ListResourcesAssociatedToCustomLineItemCommand.d.ts +2 -0
  96. package/dist-types/commands/ListTagsForResourceCommand.d.ts +2 -0
  97. package/dist-types/commands/TagResourceCommand.d.ts +2 -0
  98. package/dist-types/commands/UntagResourceCommand.d.ts +2 -0
  99. package/dist-types/commands/UpdateBillingGroupCommand.d.ts +2 -0
  100. package/dist-types/commands/UpdateCustomLineItemCommand.d.ts +2 -0
  101. package/dist-types/commands/UpdatePricingPlanCommand.d.ts +2 -0
  102. package/dist-types/commands/UpdatePricingRuleCommand.d.ts +2 -0
  103. package/dist-types/endpoint/EndpointParameters.d.ts +19 -0
  104. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  105. package/dist-types/endpoint/ruleset.d.ts +2 -0
  106. package/dist-types/runtimeConfig.browser.d.ts +4 -2
  107. package/dist-types/runtimeConfig.d.ts +4 -2
  108. package/dist-types/runtimeConfig.native.d.ts +4 -2
  109. package/dist-types/runtimeConfig.shared.d.ts +3 -1
  110. package/dist-types/ts3.4/BillingconductorClient.d.ts +15 -8
  111. package/dist-types/ts3.4/commands/AssociateAccountsCommand.d.ts +2 -0
  112. package/dist-types/ts3.4/commands/AssociatePricingRulesCommand.d.ts +2 -0
  113. package/dist-types/ts3.4/commands/BatchAssociateResourcesToCustomLineItemCommand.d.ts +2 -0
  114. package/dist-types/ts3.4/commands/BatchDisassociateResourcesFromCustomLineItemCommand.d.ts +2 -0
  115. package/dist-types/ts3.4/commands/CreateBillingGroupCommand.d.ts +2 -0
  116. package/dist-types/ts3.4/commands/CreateCustomLineItemCommand.d.ts +2 -0
  117. package/dist-types/ts3.4/commands/CreatePricingPlanCommand.d.ts +2 -0
  118. package/dist-types/ts3.4/commands/CreatePricingRuleCommand.d.ts +2 -0
  119. package/dist-types/ts3.4/commands/DeleteBillingGroupCommand.d.ts +2 -0
  120. package/dist-types/ts3.4/commands/DeleteCustomLineItemCommand.d.ts +2 -0
  121. package/dist-types/ts3.4/commands/DeletePricingPlanCommand.d.ts +2 -0
  122. package/dist-types/ts3.4/commands/DeletePricingRuleCommand.d.ts +2 -0
  123. package/dist-types/ts3.4/commands/DisassociateAccountsCommand.d.ts +2 -0
  124. package/dist-types/ts3.4/commands/DisassociatePricingRulesCommand.d.ts +2 -0
  125. package/dist-types/ts3.4/commands/ListAccountAssociationsCommand.d.ts +2 -0
  126. package/dist-types/ts3.4/commands/ListBillingGroupCostReportsCommand.d.ts +2 -0
  127. package/dist-types/ts3.4/commands/ListBillingGroupsCommand.d.ts +2 -0
  128. package/dist-types/ts3.4/commands/ListCustomLineItemsCommand.d.ts +2 -0
  129. package/dist-types/ts3.4/commands/ListPricingPlansAssociatedWithPricingRuleCommand.d.ts +2 -0
  130. package/dist-types/ts3.4/commands/ListPricingPlansCommand.d.ts +2 -0
  131. package/dist-types/ts3.4/commands/ListPricingRulesAssociatedToPricingPlanCommand.d.ts +2 -0
  132. package/dist-types/ts3.4/commands/ListPricingRulesCommand.d.ts +2 -0
  133. package/dist-types/ts3.4/commands/ListResourcesAssociatedToCustomLineItemCommand.d.ts +2 -0
  134. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +2 -0
  135. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +2 -0
  136. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +2 -0
  137. package/dist-types/ts3.4/commands/UpdateBillingGroupCommand.d.ts +2 -0
  138. package/dist-types/ts3.4/commands/UpdateCustomLineItemCommand.d.ts +2 -0
  139. package/dist-types/ts3.4/commands/UpdatePricingPlanCommand.d.ts +2 -0
  140. package/dist-types/ts3.4/commands/UpdatePricingRuleCommand.d.ts +2 -0
  141. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +26 -0
  142. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  143. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  144. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +14 -4
  145. package/dist-types/ts3.4/runtimeConfig.d.ts +14 -4
  146. package/dist-types/ts3.4/runtimeConfig.native.d.ts +14 -3
  147. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +6 -1
  148. package/package.json +5 -3
  149. package/dist-cjs/endpoints.js +0 -144
  150. package/dist-es/endpoints.js +0 -140
  151. package/dist-types/endpoints.d.ts +0 -2
  152. package/dist-types/ts3.4/endpoints.d.ts +0 -2
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { UpdatePricingPlanInputFilterSensitiveLog, UpdatePricingPlanOutputFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class UpdatePricingPlanCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, UpdatePricingPlanCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "BillingconductorClient";
@@ -1,3 +1,4 @@
1
+ import { getEndpointPlugin } from "@aws-sdk/middleware-endpoint";
1
2
  import { getSerdePlugin } from "@aws-sdk/middleware-serde";
2
3
  import { Command as $Command } from "@aws-sdk/smithy-client";
3
4
  import { UpdatePricingRuleInputFilterSensitiveLog, UpdatePricingRuleOutputFilterSensitiveLog, } from "../models/models_0";
@@ -7,8 +8,17 @@ export class UpdatePricingRuleCommand extends $Command {
7
8
  super();
8
9
  this.input = input;
9
10
  }
11
+ static getEndpointParameterInstructions() {
12
+ return {
13
+ UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" },
14
+ Endpoint: { type: "builtInParams", name: "endpoint" },
15
+ Region: { type: "builtInParams", name: "region" },
16
+ UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" },
17
+ };
18
+ }
10
19
  resolveMiddleware(clientStack, configuration, options) {
11
20
  this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));
21
+ this.middlewareStack.use(getEndpointPlugin(configuration, UpdatePricingRuleCommand.getEndpointParameterInstructions()));
12
22
  const stack = clientStack.concat(this.middlewareStack);
13
23
  const { logger } = configuration;
14
24
  const clientName = "BillingconductorClient";
@@ -0,0 +1,8 @@
1
+ export const resolveClientEndpointParameters = (options) => {
2
+ return {
3
+ ...options,
4
+ useDualstackEndpoint: options.useDualstackEndpoint ?? false,
5
+ useFipsEndpoint: options.useFipsEndpoint ?? false,
6
+ defaultSigningName: "billingconductor",
7
+ };
8
+ };
@@ -0,0 +1,8 @@
1
+ import { resolveEndpoint } from "@aws-sdk/util-endpoints";
2
+ import { ruleSet } from "./ruleset";
3
+ export const defaultEndpointResolver = (endpointParams, context = {}) => {
4
+ return resolveEndpoint(ruleSet, {
5
+ endpointParams: endpointParams,
6
+ logger: context.logger,
7
+ });
8
+ };
@@ -0,0 +1,591 @@
1
+ export const ruleSet = {
2
+ version: "1.0",
3
+ parameters: {
4
+ Region: {
5
+ builtIn: "AWS::Region",
6
+ required: false,
7
+ documentation: "The AWS region used to dispatch the request.",
8
+ type: "String",
9
+ },
10
+ UseDualStack: {
11
+ builtIn: "AWS::UseDualStack",
12
+ required: true,
13
+ default: false,
14
+ documentation: "When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.",
15
+ type: "Boolean",
16
+ },
17
+ UseFIPS: {
18
+ builtIn: "AWS::UseFIPS",
19
+ required: true,
20
+ default: false,
21
+ documentation: "When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.",
22
+ type: "Boolean",
23
+ },
24
+ Endpoint: {
25
+ builtIn: "SDK::Endpoint",
26
+ required: false,
27
+ documentation: "Override the endpoint used to send this request",
28
+ type: "String",
29
+ },
30
+ },
31
+ rules: [
32
+ {
33
+ conditions: [
34
+ {
35
+ fn: "aws.partition",
36
+ argv: [
37
+ {
38
+ ref: "Region",
39
+ },
40
+ ],
41
+ assign: "PartitionResult",
42
+ },
43
+ ],
44
+ type: "tree",
45
+ rules: [
46
+ {
47
+ conditions: [
48
+ {
49
+ fn: "isSet",
50
+ argv: [
51
+ {
52
+ ref: "Endpoint",
53
+ },
54
+ ],
55
+ },
56
+ {
57
+ fn: "parseURL",
58
+ argv: [
59
+ {
60
+ ref: "Endpoint",
61
+ },
62
+ ],
63
+ assign: "url",
64
+ },
65
+ ],
66
+ type: "tree",
67
+ rules: [
68
+ {
69
+ conditions: [
70
+ {
71
+ fn: "booleanEquals",
72
+ argv: [
73
+ {
74
+ ref: "UseFIPS",
75
+ },
76
+ true,
77
+ ],
78
+ },
79
+ ],
80
+ error: "Invalid Configuration: FIPS and custom endpoint are not supported",
81
+ type: "error",
82
+ },
83
+ {
84
+ conditions: [],
85
+ type: "tree",
86
+ rules: [
87
+ {
88
+ conditions: [
89
+ {
90
+ fn: "booleanEquals",
91
+ argv: [
92
+ {
93
+ ref: "UseDualStack",
94
+ },
95
+ true,
96
+ ],
97
+ },
98
+ ],
99
+ error: "Invalid Configuration: Dualstack and custom endpoint are not supported",
100
+ type: "error",
101
+ },
102
+ {
103
+ conditions: [],
104
+ endpoint: {
105
+ url: {
106
+ ref: "Endpoint",
107
+ },
108
+ properties: {},
109
+ headers: {},
110
+ },
111
+ type: "endpoint",
112
+ },
113
+ ],
114
+ },
115
+ ],
116
+ },
117
+ {
118
+ conditions: [
119
+ {
120
+ fn: "stringEquals",
121
+ argv: [
122
+ {
123
+ fn: "getAttr",
124
+ argv: [
125
+ {
126
+ ref: "PartitionResult",
127
+ },
128
+ "name",
129
+ ],
130
+ },
131
+ "aws",
132
+ ],
133
+ },
134
+ ],
135
+ type: "tree",
136
+ rules: [
137
+ {
138
+ conditions: [
139
+ {
140
+ fn: "booleanEquals",
141
+ argv: [
142
+ {
143
+ ref: "UseFIPS",
144
+ },
145
+ true,
146
+ ],
147
+ },
148
+ {
149
+ fn: "booleanEquals",
150
+ argv: [
151
+ {
152
+ ref: "UseDualStack",
153
+ },
154
+ true,
155
+ ],
156
+ },
157
+ ],
158
+ type: "tree",
159
+ rules: [
160
+ {
161
+ conditions: [
162
+ {
163
+ fn: "booleanEquals",
164
+ argv: [
165
+ true,
166
+ {
167
+ fn: "getAttr",
168
+ argv: [
169
+ {
170
+ ref: "PartitionResult",
171
+ },
172
+ "supportsFIPS",
173
+ ],
174
+ },
175
+ ],
176
+ },
177
+ {
178
+ fn: "booleanEquals",
179
+ argv: [
180
+ true,
181
+ {
182
+ fn: "getAttr",
183
+ argv: [
184
+ {
185
+ ref: "PartitionResult",
186
+ },
187
+ "supportsDualStack",
188
+ ],
189
+ },
190
+ ],
191
+ },
192
+ ],
193
+ type: "tree",
194
+ rules: [
195
+ {
196
+ conditions: [],
197
+ endpoint: {
198
+ url: "https://billingconductor-fips.{Region}.api.aws",
199
+ properties: {
200
+ authSchemes: [
201
+ {
202
+ name: "sigv4",
203
+ signingName: "billingconductor",
204
+ signingRegion: "us-east-1",
205
+ },
206
+ ],
207
+ },
208
+ headers: {},
209
+ },
210
+ type: "endpoint",
211
+ },
212
+ ],
213
+ },
214
+ {
215
+ conditions: [],
216
+ error: "FIPS and DualStack are enabled, but this partition does not support one or both",
217
+ type: "error",
218
+ },
219
+ ],
220
+ },
221
+ {
222
+ conditions: [
223
+ {
224
+ fn: "booleanEquals",
225
+ argv: [
226
+ {
227
+ ref: "UseFIPS",
228
+ },
229
+ true,
230
+ ],
231
+ },
232
+ ],
233
+ type: "tree",
234
+ rules: [
235
+ {
236
+ conditions: [
237
+ {
238
+ fn: "booleanEquals",
239
+ argv: [
240
+ true,
241
+ {
242
+ fn: "getAttr",
243
+ argv: [
244
+ {
245
+ ref: "PartitionResult",
246
+ },
247
+ "supportsFIPS",
248
+ ],
249
+ },
250
+ ],
251
+ },
252
+ ],
253
+ type: "tree",
254
+ rules: [
255
+ {
256
+ conditions: [],
257
+ endpoint: {
258
+ url: "https://billingconductor-fips.{Region}.amazonaws.com",
259
+ properties: {
260
+ authSchemes: [
261
+ {
262
+ name: "sigv4",
263
+ signingName: "billingconductor",
264
+ signingRegion: "us-east-1",
265
+ },
266
+ ],
267
+ },
268
+ headers: {},
269
+ },
270
+ type: "endpoint",
271
+ },
272
+ ],
273
+ },
274
+ {
275
+ conditions: [],
276
+ error: "FIPS is enabled but this partition does not support FIPS",
277
+ type: "error",
278
+ },
279
+ ],
280
+ },
281
+ {
282
+ conditions: [
283
+ {
284
+ fn: "booleanEquals",
285
+ argv: [
286
+ {
287
+ ref: "UseDualStack",
288
+ },
289
+ true,
290
+ ],
291
+ },
292
+ ],
293
+ type: "tree",
294
+ rules: [
295
+ {
296
+ conditions: [
297
+ {
298
+ fn: "booleanEquals",
299
+ argv: [
300
+ true,
301
+ {
302
+ fn: "getAttr",
303
+ argv: [
304
+ {
305
+ ref: "PartitionResult",
306
+ },
307
+ "supportsDualStack",
308
+ ],
309
+ },
310
+ ],
311
+ },
312
+ ],
313
+ type: "tree",
314
+ rules: [
315
+ {
316
+ conditions: [],
317
+ endpoint: {
318
+ url: "https://billingconductor.{Region}.api.aws",
319
+ properties: {
320
+ authSchemes: [
321
+ {
322
+ name: "sigv4",
323
+ signingName: "billingconductor",
324
+ signingRegion: "us-east-1",
325
+ },
326
+ ],
327
+ },
328
+ headers: {},
329
+ },
330
+ type: "endpoint",
331
+ },
332
+ ],
333
+ },
334
+ {
335
+ conditions: [],
336
+ error: "DualStack is enabled but this partition does not support DualStack",
337
+ type: "error",
338
+ },
339
+ ],
340
+ },
341
+ {
342
+ conditions: [],
343
+ endpoint: {
344
+ url: "https://billingconductor.us-east-1.amazonaws.com",
345
+ properties: {
346
+ authSchemes: [
347
+ {
348
+ name: "sigv4",
349
+ signingName: "billingconductor",
350
+ signingRegion: "us-east-1",
351
+ },
352
+ ],
353
+ },
354
+ headers: {},
355
+ },
356
+ type: "endpoint",
357
+ },
358
+ ],
359
+ },
360
+ {
361
+ conditions: [
362
+ {
363
+ fn: "booleanEquals",
364
+ argv: [
365
+ {
366
+ ref: "UseFIPS",
367
+ },
368
+ true,
369
+ ],
370
+ },
371
+ {
372
+ fn: "booleanEquals",
373
+ argv: [
374
+ {
375
+ ref: "UseDualStack",
376
+ },
377
+ true,
378
+ ],
379
+ },
380
+ ],
381
+ type: "tree",
382
+ rules: [
383
+ {
384
+ conditions: [
385
+ {
386
+ fn: "booleanEquals",
387
+ argv: [
388
+ true,
389
+ {
390
+ fn: "getAttr",
391
+ argv: [
392
+ {
393
+ ref: "PartitionResult",
394
+ },
395
+ "supportsFIPS",
396
+ ],
397
+ },
398
+ ],
399
+ },
400
+ {
401
+ fn: "booleanEquals",
402
+ argv: [
403
+ true,
404
+ {
405
+ fn: "getAttr",
406
+ argv: [
407
+ {
408
+ ref: "PartitionResult",
409
+ },
410
+ "supportsDualStack",
411
+ ],
412
+ },
413
+ ],
414
+ },
415
+ ],
416
+ type: "tree",
417
+ rules: [
418
+ {
419
+ conditions: [],
420
+ endpoint: {
421
+ url: "https://billingconductor-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",
422
+ properties: {},
423
+ headers: {},
424
+ },
425
+ type: "endpoint",
426
+ },
427
+ ],
428
+ },
429
+ {
430
+ conditions: [],
431
+ error: "FIPS and DualStack are enabled, but this partition does not support one or both",
432
+ type: "error",
433
+ },
434
+ ],
435
+ },
436
+ {
437
+ conditions: [
438
+ {
439
+ fn: "booleanEquals",
440
+ argv: [
441
+ {
442
+ ref: "UseFIPS",
443
+ },
444
+ true,
445
+ ],
446
+ },
447
+ ],
448
+ type: "tree",
449
+ rules: [
450
+ {
451
+ conditions: [
452
+ {
453
+ fn: "booleanEquals",
454
+ argv: [
455
+ true,
456
+ {
457
+ fn: "getAttr",
458
+ argv: [
459
+ {
460
+ ref: "PartitionResult",
461
+ },
462
+ "supportsFIPS",
463
+ ],
464
+ },
465
+ ],
466
+ },
467
+ ],
468
+ type: "tree",
469
+ rules: [
470
+ {
471
+ conditions: [],
472
+ type: "tree",
473
+ rules: [
474
+ {
475
+ conditions: [],
476
+ endpoint: {
477
+ url: "https://billingconductor-fips.{Region}.{PartitionResult#dnsSuffix}",
478
+ properties: {},
479
+ headers: {},
480
+ },
481
+ type: "endpoint",
482
+ },
483
+ ],
484
+ },
485
+ ],
486
+ },
487
+ {
488
+ conditions: [],
489
+ error: "FIPS is enabled but this partition does not support FIPS",
490
+ type: "error",
491
+ },
492
+ ],
493
+ },
494
+ {
495
+ conditions: [
496
+ {
497
+ fn: "booleanEquals",
498
+ argv: [
499
+ {
500
+ ref: "UseDualStack",
501
+ },
502
+ true,
503
+ ],
504
+ },
505
+ ],
506
+ type: "tree",
507
+ rules: [
508
+ {
509
+ conditions: [
510
+ {
511
+ fn: "booleanEquals",
512
+ argv: [
513
+ true,
514
+ {
515
+ fn: "getAttr",
516
+ argv: [
517
+ {
518
+ ref: "PartitionResult",
519
+ },
520
+ "supportsDualStack",
521
+ ],
522
+ },
523
+ ],
524
+ },
525
+ ],
526
+ type: "tree",
527
+ rules: [
528
+ {
529
+ conditions: [],
530
+ endpoint: {
531
+ url: "https://billingconductor.{Region}.{PartitionResult#dualStackDnsSuffix}",
532
+ properties: {},
533
+ headers: {},
534
+ },
535
+ type: "endpoint",
536
+ },
537
+ ],
538
+ },
539
+ {
540
+ conditions: [],
541
+ error: "DualStack is enabled but this partition does not support DualStack",
542
+ type: "error",
543
+ },
544
+ ],
545
+ },
546
+ {
547
+ conditions: [],
548
+ type: "tree",
549
+ rules: [
550
+ {
551
+ conditions: [
552
+ {
553
+ fn: "stringEquals",
554
+ argv: [
555
+ {
556
+ ref: "Region",
557
+ },
558
+ "aws-global",
559
+ ],
560
+ },
561
+ ],
562
+ endpoint: {
563
+ url: "https://billingconductor.us-east-1.amazonaws.com",
564
+ properties: {
565
+ authSchemes: [
566
+ {
567
+ name: "sigv4",
568
+ signingName: "billingconductor",
569
+ signingRegion: "us-east-1",
570
+ },
571
+ ],
572
+ },
573
+ headers: {},
574
+ },
575
+ type: "endpoint",
576
+ },
577
+ {
578
+ conditions: [],
579
+ endpoint: {
580
+ url: "https://billingconductor.{Region}.{PartitionResult#dnsSuffix}",
581
+ properties: {},
582
+ headers: {},
583
+ },
584
+ type: "endpoint",
585
+ },
586
+ ],
587
+ },
588
+ ],
589
+ },
590
+ ],
591
+ };
@@ -1,10 +1,10 @@
1
1
  import { parseUrl } from "@aws-sdk/url-parser";
2
- import { defaultRegionInfoProvider } from "./endpoints";
2
+ import { defaultEndpointResolver } from "./endpoint/endpointResolver";
3
3
  export const getRuntimeConfig = (config) => ({
4
4
  apiVersion: "2021-07-30",
5
5
  disableHostPrefix: config?.disableHostPrefix ?? false,
6
+ endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
6
7
  logger: config?.logger ?? {},
7
- regionInfoProvider: config?.regionInfoProvider ?? defaultRegionInfoProvider,
8
8
  serviceId: config?.serviceId ?? "billingconductor",
9
9
  urlParser: config?.urlParser ?? parseUrl,
10
10
  });