@aws-sdk/client-marketplace-discovery 3.1027.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 (122) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +244 -0
  3. package/dist-cjs/auth/httpAuthSchemeProvider.js +46 -0
  4. package/dist-cjs/endpoint/endpointResolver.js +18 -0
  5. package/dist-cjs/endpoint/ruleset.js +7 -0
  6. package/dist-cjs/index.js +463 -0
  7. package/dist-cjs/models/MarketplaceDiscoveryServiceException.js +12 -0
  8. package/dist-cjs/models/errors.js +71 -0
  9. package/dist-cjs/runtimeConfig.browser.js +38 -0
  10. package/dist-cjs/runtimeConfig.js +54 -0
  11. package/dist-cjs/runtimeConfig.native.js +15 -0
  12. package/dist-cjs/runtimeConfig.shared.js +43 -0
  13. package/dist-cjs/schemas/schemas_0.js +951 -0
  14. package/dist-es/MarketplaceDiscovery.js +37 -0
  15. package/dist-es/MarketplaceDiscoveryClient.js +50 -0
  16. package/dist-es/auth/httpAuthExtensionConfiguration.js +38 -0
  17. package/dist-es/auth/httpAuthSchemeProvider.js +40 -0
  18. package/dist-es/commands/GetListingCommand.js +16 -0
  19. package/dist-es/commands/GetOfferCommand.js +16 -0
  20. package/dist-es/commands/GetOfferSetCommand.js +16 -0
  21. package/dist-es/commands/GetOfferTermsCommand.js +16 -0
  22. package/dist-es/commands/GetProductCommand.js +16 -0
  23. package/dist-es/commands/ListFulfillmentOptionsCommand.js +16 -0
  24. package/dist-es/commands/ListPurchaseOptionsCommand.js +16 -0
  25. package/dist-es/commands/SearchFacetsCommand.js +16 -0
  26. package/dist-es/commands/SearchListingsCommand.js +16 -0
  27. package/dist-es/commands/index.js +9 -0
  28. package/dist-es/endpoint/EndpointParameters.js +11 -0
  29. package/dist-es/endpoint/endpointResolver.js +14 -0
  30. package/dist-es/endpoint/ruleset.js +4 -0
  31. package/dist-es/extensionConfiguration.js +1 -0
  32. package/dist-es/index.js +9 -0
  33. package/dist-es/models/MarketplaceDiscoveryServiceException.js +8 -0
  34. package/dist-es/models/enums.js +146 -0
  35. package/dist-es/models/errors.js +63 -0
  36. package/dist-es/models/models_0.js +1 -0
  37. package/dist-es/pagination/GetOfferTermsPaginator.js +4 -0
  38. package/dist-es/pagination/Interfaces.js +1 -0
  39. package/dist-es/pagination/ListFulfillmentOptionsPaginator.js +4 -0
  40. package/dist-es/pagination/ListPurchaseOptionsPaginator.js +4 -0
  41. package/dist-es/pagination/SearchFacetsPaginator.js +4 -0
  42. package/dist-es/pagination/SearchListingsPaginator.js +4 -0
  43. package/dist-es/pagination/index.js +6 -0
  44. package/dist-es/runtimeConfig.browser.js +33 -0
  45. package/dist-es/runtimeConfig.js +49 -0
  46. package/dist-es/runtimeConfig.native.js +11 -0
  47. package/dist-es/runtimeConfig.shared.js +39 -0
  48. package/dist-es/runtimeExtensions.js +9 -0
  49. package/dist-es/schemas/schemas_0.js +946 -0
  50. package/dist-types/MarketplaceDiscovery.d.ts +111 -0
  51. package/dist-types/MarketplaceDiscoveryClient.d.ts +196 -0
  52. package/dist-types/auth/httpAuthExtensionConfiguration.d.ts +29 -0
  53. package/dist-types/auth/httpAuthSchemeProvider.d.ts +75 -0
  54. package/dist-types/commands/GetListingCommand.d.ts +579 -0
  55. package/dist-types/commands/GetOfferCommand.d.ts +314 -0
  56. package/dist-types/commands/GetOfferSetCommand.d.ts +192 -0
  57. package/dist-types/commands/GetOfferTermsCommand.d.ts +690 -0
  58. package/dist-types/commands/GetProductCommand.d.ts +379 -0
  59. package/dist-types/commands/ListFulfillmentOptionsCommand.d.ts +668 -0
  60. package/dist-types/commands/ListPurchaseOptionsCommand.d.ts +285 -0
  61. package/dist-types/commands/SearchFacetsCommand.d.ts +241 -0
  62. package/dist-types/commands/SearchListingsCommand.d.ts +263 -0
  63. package/dist-types/commands/index.d.ts +9 -0
  64. package/dist-types/endpoint/EndpointParameters.d.ts +44 -0
  65. package/dist-types/endpoint/endpointResolver.d.ts +8 -0
  66. package/dist-types/endpoint/ruleset.d.ts +2 -0
  67. package/dist-types/extensionConfiguration.d.ts +9 -0
  68. package/dist-types/index.d.ts +17 -0
  69. package/dist-types/models/MarketplaceDiscoveryServiceException.d.ts +14 -0
  70. package/dist-types/models/enums.d.ts +338 -0
  71. package/dist-types/models/errors.d.ts +68 -0
  72. package/dist-types/models/models_0.d.ts +2881 -0
  73. package/dist-types/pagination/GetOfferTermsPaginator.d.ts +7 -0
  74. package/dist-types/pagination/Interfaces.d.ts +8 -0
  75. package/dist-types/pagination/ListFulfillmentOptionsPaginator.d.ts +7 -0
  76. package/dist-types/pagination/ListPurchaseOptionsPaginator.d.ts +7 -0
  77. package/dist-types/pagination/SearchFacetsPaginator.d.ts +7 -0
  78. package/dist-types/pagination/SearchListingsPaginator.d.ts +7 -0
  79. package/dist-types/pagination/index.d.ts +6 -0
  80. package/dist-types/runtimeConfig.browser.d.ts +55 -0
  81. package/dist-types/runtimeConfig.d.ts +55 -0
  82. package/dist-types/runtimeConfig.native.d.ts +54 -0
  83. package/dist-types/runtimeConfig.shared.d.ts +27 -0
  84. package/dist-types/runtimeExtensions.d.ts +17 -0
  85. package/dist-types/schemas/schemas_0.d.ts +114 -0
  86. package/dist-types/ts3.4/MarketplaceDiscovery.d.ts +202 -0
  87. package/dist-types/ts3.4/MarketplaceDiscoveryClient.d.ts +175 -0
  88. package/dist-types/ts3.4/auth/httpAuthExtensionConfiguration.d.ts +32 -0
  89. package/dist-types/ts3.4/auth/httpAuthSchemeProvider.d.ts +47 -0
  90. package/dist-types/ts3.4/commands/GetListingCommand.d.ts +47 -0
  91. package/dist-types/ts3.4/commands/GetOfferCommand.d.ts +47 -0
  92. package/dist-types/ts3.4/commands/GetOfferSetCommand.d.ts +47 -0
  93. package/dist-types/ts3.4/commands/GetOfferTermsCommand.d.ts +47 -0
  94. package/dist-types/ts3.4/commands/GetProductCommand.d.ts +47 -0
  95. package/dist-types/ts3.4/commands/ListFulfillmentOptionsCommand.d.ts +51 -0
  96. package/dist-types/ts3.4/commands/ListPurchaseOptionsCommand.d.ts +51 -0
  97. package/dist-types/ts3.4/commands/SearchFacetsCommand.d.ts +47 -0
  98. package/dist-types/ts3.4/commands/SearchListingsCommand.d.ts +47 -0
  99. package/dist-types/ts3.4/commands/index.d.ts +9 -0
  100. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +45 -0
  101. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  102. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  103. package/dist-types/ts3.4/extensionConfiguration.d.ts +9 -0
  104. package/dist-types/ts3.4/index.d.ts +12 -0
  105. package/dist-types/ts3.4/models/MarketplaceDiscoveryServiceException.d.ts +9 -0
  106. package/dist-types/ts3.4/models/enums.d.ts +191 -0
  107. package/dist-types/ts3.4/models/errors.d.ts +39 -0
  108. package/dist-types/ts3.4/models/models_0.d.ts +1048 -0
  109. package/dist-types/ts3.4/pagination/GetOfferTermsPaginator.d.ts +11 -0
  110. package/dist-types/ts3.4/pagination/Interfaces.d.ts +6 -0
  111. package/dist-types/ts3.4/pagination/ListFulfillmentOptionsPaginator.d.ts +11 -0
  112. package/dist-types/ts3.4/pagination/ListPurchaseOptionsPaginator.d.ts +11 -0
  113. package/dist-types/ts3.4/pagination/SearchFacetsPaginator.d.ts +11 -0
  114. package/dist-types/ts3.4/pagination/SearchListingsPaginator.d.ts +11 -0
  115. package/dist-types/ts3.4/pagination/index.d.ts +6 -0
  116. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +102 -0
  117. package/dist-types/ts3.4/runtimeConfig.d.ts +97 -0
  118. package/dist-types/ts3.4/runtimeConfig.native.d.ts +106 -0
  119. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +32 -0
  120. package/dist-types/ts3.4/runtimeExtensions.d.ts +13 -0
  121. package/dist-types/ts3.4/schemas/schemas_0.d.ts +114 -0
  122. package/package.json +100 -0
@@ -0,0 +1,2881 @@
1
+ import type { BillingPeriodType, DeployedOnAwsStatus, DimensionLabelType, FulfillmentOptionType, LegalDocumentType, ListingBadgeType, PricingModelType, PricingUnitType, PurchaseOptionBadgeType, PurchaseOptionFilterType, PurchaseOptionType, RateCardConstraintType, ResourceContentType, ResourceType, ReviewSourceId, SearchFacetType, SearchFilterType, SearchListingsSortBy, SearchListingsSortOrder, SelectorType, SellerEngagementContentType, SellerEngagementType, TermType } from "./enums";
2
+ /**
3
+ * <p>Describes an operating system supported by an AMI fulfillment option.</p>
4
+ * @public
5
+ */
6
+ export interface AmazonMachineImageOperatingSystem {
7
+ /**
8
+ * <p>The operating system family, such as Linux or Windows.</p>
9
+ * @public
10
+ */
11
+ operatingSystemFamilyName: string | undefined;
12
+ /**
13
+ * <p>The specific operating system name, such as Amazon Linux 2 or Windows Server 2022.</p>
14
+ * @public
15
+ */
16
+ operatingSystemName: string | undefined;
17
+ /**
18
+ * <p>The version of the operating system.</p>
19
+ * @public
20
+ */
21
+ operatingSystemVersion?: string | undefined;
22
+ }
23
+ /**
24
+ * <p>Recommended instance types for running an AMI fulfillment option.</p>
25
+ * @public
26
+ */
27
+ export interface AmazonMachineImageRecommendation {
28
+ /**
29
+ * <p>The recommended EC2 instance type for this AMI.</p>
30
+ * @public
31
+ */
32
+ instanceType: string | undefined;
33
+ }
34
+ /**
35
+ * <p>Describes an Amazon Machine Image (AMI) fulfillment option, including version details, supported operating systems, and recommended instance types.</p>
36
+ * @public
37
+ */
38
+ export interface AmazonMachineImageFulfillmentOption {
39
+ /**
40
+ * <p>The unique identifier of the fulfillment option.</p>
41
+ * @public
42
+ */
43
+ fulfillmentOptionId: string | undefined;
44
+ /**
45
+ * <p>The display name of the fulfillment option version.</p>
46
+ * @public
47
+ */
48
+ fulfillmentOptionName: string | undefined;
49
+ /**
50
+ * <p>The version identifier of the fulfillment option.</p>
51
+ * @public
52
+ */
53
+ fulfillmentOptionVersion?: string | undefined;
54
+ /**
55
+ * <p>The category of the fulfillment option.</p>
56
+ * @public
57
+ */
58
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
59
+ /**
60
+ * <p>A human-readable name for the fulfillment option type.</p>
61
+ * @public
62
+ */
63
+ fulfillmentOptionDisplayName: string | undefined;
64
+ /**
65
+ * <p>The operating systems supported by this AMI.</p>
66
+ * @public
67
+ */
68
+ operatingSystems: AmazonMachineImageOperatingSystem[] | undefined;
69
+ /**
70
+ * <p>Recommended instance types for running this AMI.</p>
71
+ * @public
72
+ */
73
+ recommendation?: AmazonMachineImageRecommendation | undefined;
74
+ /**
75
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
76
+ * @public
77
+ */
78
+ releaseNotes?: string | undefined;
79
+ /**
80
+ * <p>Instructions on how to deploy and use this fulfillment option.</p>
81
+ * @public
82
+ */
83
+ usageInstructions?: string | undefined;
84
+ }
85
+ /**
86
+ * <p>Describes an AWS service supported by a fulfillment option.</p>
87
+ * @public
88
+ */
89
+ export interface AwsSupportedService {
90
+ /**
91
+ * <p>The machine-readable identifier of the supported service.</p>
92
+ * @public
93
+ */
94
+ supportedServiceType: string | undefined;
95
+ /**
96
+ * <p>The human-readable name of the supported service.</p>
97
+ * @public
98
+ */
99
+ displayName: string | undefined;
100
+ /**
101
+ * <p>A description of the supported service.</p>
102
+ * @public
103
+ */
104
+ description: string | undefined;
105
+ }
106
+ /**
107
+ * <p>Describes an API-based fulfillment option, where the product is accessed through an API integration.</p>
108
+ * @public
109
+ */
110
+ export interface ApiFulfillmentOption {
111
+ /**
112
+ * <p>The unique identifier of the fulfillment option.</p>
113
+ * @public
114
+ */
115
+ fulfillmentOptionId: string | undefined;
116
+ /**
117
+ * <p>The category of the fulfillment option.</p>
118
+ * @public
119
+ */
120
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
121
+ /**
122
+ * <p>A human-readable name for the fulfillment option type.</p>
123
+ * @public
124
+ */
125
+ fulfillmentOptionDisplayName: string | undefined;
126
+ /**
127
+ * <p>Instructions on how to integrate with and use this API.</p>
128
+ * @public
129
+ */
130
+ usageInstructions?: string | undefined;
131
+ /**
132
+ * <p>The AWS services supported by this API integration.</p>
133
+ * @public
134
+ */
135
+ awsSupportedServices: AwsSupportedService[] | undefined;
136
+ }
137
+ /**
138
+ * @public
139
+ */
140
+ export interface GetListingInput {
141
+ /**
142
+ * <p>The unique identifier of the listing to retrieve.</p>
143
+ * @public
144
+ */
145
+ listingId: string | undefined;
146
+ }
147
+ /**
148
+ * <p>Information about a seller, including the profile identifier and display name.</p>
149
+ * @public
150
+ */
151
+ export interface SellerInformation {
152
+ /**
153
+ * <p>The unique identifier of the seller profile.</p>
154
+ * @public
155
+ */
156
+ sellerProfileId: string | undefined;
157
+ /**
158
+ * <p>The human-readable name of the seller.</p>
159
+ * @public
160
+ */
161
+ displayName: string | undefined;
162
+ }
163
+ /**
164
+ * <p>Summary information about an offer, including the offer identifier, name, and seller of record.</p>
165
+ * @public
166
+ */
167
+ export interface OfferInformation {
168
+ /**
169
+ * <p>The unique identifier of the offer.</p>
170
+ * @public
171
+ */
172
+ offerId: string | undefined;
173
+ /**
174
+ * <p>The display name of the offer.</p>
175
+ * @public
176
+ */
177
+ offerName?: string | undefined;
178
+ /**
179
+ * <p>The entity responsible for selling the product under this offer.</p>
180
+ * @public
181
+ */
182
+ sellerOfRecord: SellerInformation | undefined;
183
+ }
184
+ /**
185
+ * <p>Summary information about a product, including the identifier, name, and manufacturer.</p>
186
+ * @public
187
+ */
188
+ export interface ProductInformation {
189
+ /**
190
+ * <p>The unique identifier of the product.</p>
191
+ * @public
192
+ */
193
+ productId: string | undefined;
194
+ /**
195
+ * <p>The human-readable display name of the product.</p>
196
+ * @public
197
+ */
198
+ productName: string | undefined;
199
+ /**
200
+ * <p>The entity who manufactured the product.</p>
201
+ * @public
202
+ */
203
+ manufacturer: SellerInformation | undefined;
204
+ }
205
+ /**
206
+ * <p>A product and offer associated with a listing.</p>
207
+ * @public
208
+ */
209
+ export interface ListingAssociatedEntity {
210
+ /**
211
+ * <p>Information about the product associated with the listing.</p>
212
+ * @public
213
+ */
214
+ product?: ProductInformation | undefined;
215
+ /**
216
+ * <p>Information about the default offer associated with the listing.</p>
217
+ * @public
218
+ */
219
+ offer?: OfferInformation | undefined;
220
+ }
221
+ /**
222
+ * <p>A badge indicating a special attribute of a listing, such as free tier eligibility or Quick Launch support.</p>
223
+ * @public
224
+ */
225
+ export interface ListingBadge {
226
+ /**
227
+ * <p>The human-readable name of the badge.</p>
228
+ * @public
229
+ */
230
+ displayName: string | undefined;
231
+ /**
232
+ * <p>The machine-readable type of the badge.</p>
233
+ * @public
234
+ */
235
+ badgeType: ListingBadgeType | undefined;
236
+ }
237
+ /**
238
+ * <p>A category used to classify a listing or product into a logical group.</p>
239
+ * @public
240
+ */
241
+ export interface Category {
242
+ /**
243
+ * <p>The machine-readable identifier of the category.</p>
244
+ * @public
245
+ */
246
+ categoryId: string | undefined;
247
+ /**
248
+ * <p>The human-readable name of the category.</p>
249
+ * @public
250
+ */
251
+ displayName: string | undefined;
252
+ }
253
+ /**
254
+ * <p>A summary of a fulfillment option available for deploying or accessing a listing or product.</p>
255
+ * @public
256
+ */
257
+ export interface FulfillmentOptionSummary {
258
+ /**
259
+ * <p>The machine-readable type of the fulfillment option, such as <code>SAAS</code> or <code>AMAZON_MACHINE_IMAGE</code>.</p>
260
+ * @public
261
+ */
262
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
263
+ /**
264
+ * <p>The human-readable name of the fulfillment option type.</p>
265
+ * @public
266
+ */
267
+ displayName: string | undefined;
268
+ }
269
+ /**
270
+ * <p>A pricing model that determines how buyers are charged for a listing, such as usage-based, contract, BYOL, or free.</p>
271
+ * @public
272
+ */
273
+ export interface PricingModel {
274
+ /**
275
+ * <p>The machine-readable type of the pricing model.</p>
276
+ * @public
277
+ */
278
+ pricingModelType: PricingModelType | undefined;
279
+ /**
280
+ * <p>The human-readable name of the pricing model.</p>
281
+ * @public
282
+ */
283
+ displayName: string | undefined;
284
+ }
285
+ /**
286
+ * <p>A pricing unit that defines the billing dimension for a listing, such as users, hosts, bandwidth, or data.</p>
287
+ * @public
288
+ */
289
+ export interface PricingUnit {
290
+ /**
291
+ * <p>The machine-readable type of the pricing unit.</p>
292
+ * @public
293
+ */
294
+ pricingUnitType: PricingUnitType | undefined;
295
+ /**
296
+ * <p>The human-readable name of the pricing unit.</p>
297
+ * @public
298
+ */
299
+ displayName: string | undefined;
300
+ }
301
+ /**
302
+ * <p>An embedded promotional image for a product.</p>
303
+ * @public
304
+ */
305
+ export interface PromotionalEmbeddedImage {
306
+ /**
307
+ * <p>The title displayed when hovering over the image.</p>
308
+ * @public
309
+ */
310
+ title: string | undefined;
311
+ /**
312
+ * <p>The URL of the image file.</p>
313
+ * @public
314
+ */
315
+ url: string | undefined;
316
+ /**
317
+ * <p>An optional description of the image.</p>
318
+ * @public
319
+ */
320
+ description?: string | undefined;
321
+ }
322
+ /**
323
+ * <p>An embedded promotional video for a product.</p>
324
+ * @public
325
+ */
326
+ export interface PromotionalEmbeddedVideo {
327
+ /**
328
+ * <p>The title displayed when hovering over the video.</p>
329
+ * @public
330
+ */
331
+ title: string | undefined;
332
+ /**
333
+ * <p>The URL of the video file.</p>
334
+ * @public
335
+ */
336
+ url: string | undefined;
337
+ /**
338
+ * <p>The URL of the high-resolution preview image for the video.</p>
339
+ * @public
340
+ */
341
+ preview: string | undefined;
342
+ /**
343
+ * <p>The URL of the thumbnail image for the video.</p>
344
+ * @public
345
+ */
346
+ thumbnail: string | undefined;
347
+ /**
348
+ * <p>An optional description of the video.</p>
349
+ * @public
350
+ */
351
+ description?: string | undefined;
352
+ }
353
+ /**
354
+ * <p>Embedded promotional media for a product, such as images or videos. Each element contains exactly one media type.</p>
355
+ * @public
356
+ */
357
+ export type PromotionalMedia = PromotionalMedia.EmbeddedImageMember | PromotionalMedia.EmbeddedVideoMember | PromotionalMedia.$UnknownMember;
358
+ /**
359
+ * @public
360
+ */
361
+ export declare namespace PromotionalMedia {
362
+ /**
363
+ * <p>An embedded promotional image for a product.</p>
364
+ * @public
365
+ */
366
+ interface EmbeddedImageMember {
367
+ embeddedImage: PromotionalEmbeddedImage;
368
+ embeddedVideo?: never;
369
+ $unknown?: never;
370
+ }
371
+ /**
372
+ * <p>An embedded promotional video for a product.</p>
373
+ * @public
374
+ */
375
+ interface EmbeddedVideoMember {
376
+ embeddedImage?: never;
377
+ embeddedVideo: PromotionalEmbeddedVideo;
378
+ $unknown?: never;
379
+ }
380
+ /**
381
+ * @public
382
+ */
383
+ interface $UnknownMember {
384
+ embeddedImage?: never;
385
+ embeddedVideo?: never;
386
+ $unknown: [string, any];
387
+ }
388
+ /**
389
+ * @deprecated unused in schema-serde mode.
390
+ *
391
+ */
392
+ interface Visitor<T> {
393
+ embeddedImage: (value: PromotionalEmbeddedImage) => T;
394
+ embeddedVideo: (value: PromotionalEmbeddedVideo) => T;
395
+ _: (name: string, value: any) => T;
396
+ }
397
+ }
398
+ /**
399
+ * <p>A resource that provides supplementary information about a product, such as documentation links, support contacts, or usage instructions.</p>
400
+ * @public
401
+ */
402
+ export interface Resource {
403
+ /**
404
+ * <p>The category of the resource, such as manufacturer support or usage instructions.</p>
405
+ * @public
406
+ */
407
+ resourceType: ResourceType | undefined;
408
+ /**
409
+ * <p>The format of the resource content, such as a URL, email address, or text.</p>
410
+ * @public
411
+ */
412
+ contentType: ResourceContentType | undefined;
413
+ /**
414
+ * <p>The resource content. Interpretation depends on the content type.</p>
415
+ * @public
416
+ */
417
+ value: string | undefined;
418
+ /**
419
+ * <p>An optional human-readable label for the resource.</p>
420
+ * @public
421
+ */
422
+ displayName?: string | undefined;
423
+ }
424
+ /**
425
+ * <p>A review summary from a specific source, including the average rating and total review count.</p>
426
+ * @public
427
+ */
428
+ export interface ReviewSourceSummary {
429
+ /**
430
+ * <p>The name of the review source, such as AWS Marketplace.</p>
431
+ * @public
432
+ */
433
+ sourceName: string | undefined;
434
+ /**
435
+ * <p>The machine-readable identifier of the review source.</p>
436
+ * @public
437
+ */
438
+ sourceId: ReviewSourceId | undefined;
439
+ /**
440
+ * <p>The URL where the reviews can be accessed at the source.</p>
441
+ * @public
442
+ */
443
+ sourceUrl?: string | undefined;
444
+ /**
445
+ * <p>The average rating across all reviews from this source.</p>
446
+ * @public
447
+ */
448
+ averageRating: string | undefined;
449
+ /**
450
+ * <p>The total number of reviews available from this source.</p>
451
+ * @public
452
+ */
453
+ totalReviews: number | undefined;
454
+ }
455
+ /**
456
+ * <p>A summary of customer reviews available for a listing, aggregated by review source.</p>
457
+ * @public
458
+ */
459
+ export interface ReviewSummary {
460
+ /**
461
+ * <p>Review summaries from different sources, such as AWS Marketplace.</p>
462
+ * @public
463
+ */
464
+ reviewSourceSummaries: ReviewSourceSummary[] | undefined;
465
+ }
466
+ /**
467
+ * <p>An engagement option available to potential buyers of a product, such as requesting a private offer or a demo.</p>
468
+ * @public
469
+ */
470
+ export interface SellerEngagement {
471
+ /**
472
+ * <p>The type of engagement, such as <code>REQUEST_FOR_PRIVATE_OFFER</code> or <code>REQUEST_FOR_DEMO</code>.</p>
473
+ * @public
474
+ */
475
+ engagementType: SellerEngagementType | undefined;
476
+ /**
477
+ * <p>The format of the engagement value, such as a URL.</p>
478
+ * @public
479
+ */
480
+ contentType: SellerEngagementContentType | undefined;
481
+ /**
482
+ * <p>The engagement value, such as a URL to the engagement form.</p>
483
+ * @public
484
+ */
485
+ value: string | undefined;
486
+ }
487
+ /**
488
+ * <p>A use case describing a scenario where the product can be applied.</p>
489
+ * @public
490
+ */
491
+ export interface UseCase {
492
+ /**
493
+ * <p>A description of the use case.</p>
494
+ * @public
495
+ */
496
+ description: string | undefined;
497
+ /**
498
+ * <p>The human-readable name of the use case.</p>
499
+ * @public
500
+ */
501
+ displayName: string | undefined;
502
+ /**
503
+ * <p>The machine-readable identifier of the use case.</p>
504
+ * @public
505
+ */
506
+ value: string | undefined;
507
+ }
508
+ /**
509
+ * <p>An entry in the list of use cases for a listing.</p>
510
+ * @public
511
+ */
512
+ export interface UseCaseEntry {
513
+ /**
514
+ * <p>The use case details.</p>
515
+ * @public
516
+ */
517
+ useCase: UseCase | undefined;
518
+ }
519
+ /**
520
+ * @public
521
+ */
522
+ export interface GetListingOutput {
523
+ /**
524
+ * <p>The products and offers associated with this listing. Each entity contains product and offer information.</p>
525
+ * @public
526
+ */
527
+ associatedEntities: ListingAssociatedEntity[] | undefined;
528
+ /**
529
+ * <p>Badges indicating special attributes of the listing, such as free tier eligibility, free trial availability, or Quick Launch support.</p>
530
+ * @public
531
+ */
532
+ badges: ListingBadge[] | undefined;
533
+ /**
534
+ * <p>The name of the catalog that the listing belongs to.</p>
535
+ * @public
536
+ */
537
+ catalog: string | undefined;
538
+ /**
539
+ * <p>The categories used to classify this listing into logical groups.</p>
540
+ * @public
541
+ */
542
+ categories: Category[] | undefined;
543
+ /**
544
+ * <p>A summary of fulfillment options available for deploying or accessing the listing, such as AMI, SaaS, or Container.</p>
545
+ * @public
546
+ */
547
+ fulfillmentOptionSummaries: FulfillmentOptionSummary[] | undefined;
548
+ /**
549
+ * <p>A list of key features that the listing offers to customers.</p>
550
+ * @public
551
+ */
552
+ highlights: string[] | undefined;
553
+ /**
554
+ * <p>Optional guidance explaining how to use data in this listing. Primarily defines how to integrate with a multi-product listing.</p>
555
+ * @public
556
+ */
557
+ integrationGuide?: string | undefined;
558
+ /**
559
+ * <p>The unique identifier of the listing.</p>
560
+ * @public
561
+ */
562
+ listingId: string | undefined;
563
+ /**
564
+ * <p>The human-readable display name of the listing.</p>
565
+ * @public
566
+ */
567
+ listingName: string | undefined;
568
+ /**
569
+ * <p>The URL of the logo thumbnail image for the listing.</p>
570
+ * @public
571
+ */
572
+ logoThumbnailUrl: string | undefined;
573
+ /**
574
+ * <p>A detailed description of what the listing offers, in paragraph format.</p>
575
+ * @public
576
+ */
577
+ longDescription: string | undefined;
578
+ /**
579
+ * <p>The pricing models for offers associated with this listing, such as usage-based, contract, BYOL, or free.</p>
580
+ * @public
581
+ */
582
+ pricingModels: PricingModel[] | undefined;
583
+ /**
584
+ * <p>The pricing units that define the billing dimensions for offers associated with this listing, such as users, hosts, or data.</p>
585
+ * @public
586
+ */
587
+ pricingUnits: PricingUnit[] | undefined;
588
+ /**
589
+ * <p>Embedded promotional media provided by the creator of the product, such as images and videos.</p>
590
+ * @public
591
+ */
592
+ promotionalMedia: PromotionalMedia[] | undefined;
593
+ /**
594
+ * <p>The entity who created and published the listing.</p>
595
+ * @public
596
+ */
597
+ publisher: SellerInformation | undefined;
598
+ /**
599
+ * <p>Resources that provide further information about using the product or requesting support, such as documentation links, support contacts, and usage instructions.</p>
600
+ * @public
601
+ */
602
+ resources: Resource[] | undefined;
603
+ /**
604
+ * <p>A summary of customer reviews available for the listing, including average rating and total review count by source.</p>
605
+ * @public
606
+ */
607
+ reviewSummary?: ReviewSummary | undefined;
608
+ /**
609
+ * <p>Engagement options available to potential buyers, such as requesting a private offer or requesting a demo.</p>
610
+ * @public
611
+ */
612
+ sellerEngagements: SellerEngagement[] | undefined;
613
+ /**
614
+ * <p>A 1–3 sentence summary describing the key aspects of the listing.</p>
615
+ * @public
616
+ */
617
+ shortDescription: string | undefined;
618
+ /**
619
+ * <p>Use cases associated with the listing, describing scenarios where the product can be applied.</p>
620
+ * @public
621
+ */
622
+ useCases: UseCaseEntry[] | undefined;
623
+ }
624
+ /**
625
+ * @public
626
+ */
627
+ export interface GetOfferInput {
628
+ /**
629
+ * <p>The unique identifier of the offer to retrieve.</p>
630
+ * @public
631
+ */
632
+ offerId: string | undefined;
633
+ }
634
+ /**
635
+ * <p>Summary information about an offer set, including the identifier and seller of record.</p>
636
+ * @public
637
+ */
638
+ export interface OfferSetInformation {
639
+ /**
640
+ * <p>The unique identifier of the offer set.</p>
641
+ * @public
642
+ */
643
+ offerSetId: string | undefined;
644
+ /**
645
+ * <p>The entity responsible for selling the products under this offer set.</p>
646
+ * @public
647
+ */
648
+ sellerOfRecord: SellerInformation | undefined;
649
+ }
650
+ /**
651
+ * <p>A product and optional offer set associated with an offer.</p>
652
+ * @public
653
+ */
654
+ export interface OfferAssociatedEntity {
655
+ /**
656
+ * <p>Information about the product associated with the offer.</p>
657
+ * @public
658
+ */
659
+ product: ProductInformation | undefined;
660
+ /**
661
+ * <p>Information about the offer set, if the offer is part of a bundled offer set.</p>
662
+ * @public
663
+ */
664
+ offerSet?: OfferSetInformation | undefined;
665
+ }
666
+ /**
667
+ * <p>A badge indicating a special attribute of a purchase option, such as private pricing or future dated.</p>
668
+ * @public
669
+ */
670
+ export interface PurchaseOptionBadge {
671
+ /**
672
+ * <p>The human-readable name of the badge.</p>
673
+ * @public
674
+ */
675
+ displayName: string | undefined;
676
+ /**
677
+ * <p>The machine-readable type of the badge.</p>
678
+ * @public
679
+ */
680
+ badgeType: PurchaseOptionBadgeType | undefined;
681
+ }
682
+ /**
683
+ * @public
684
+ */
685
+ export interface GetOfferOutput {
686
+ /**
687
+ * <p>The unique identifier of the offer.</p>
688
+ * @public
689
+ */
690
+ offerId: string | undefined;
691
+ /**
692
+ * <p>The name of the catalog that the offer belongs to.</p>
693
+ * @public
694
+ */
695
+ catalog: string | undefined;
696
+ /**
697
+ * <p>The display name of the offer. This is free-form text provided by the seller.</p>
698
+ * @public
699
+ */
700
+ offerName?: string | undefined;
701
+ /**
702
+ * <p>An encoded string to be passed by the acceptor of the terms when creating an agreement.</p>
703
+ * @public
704
+ */
705
+ agreementProposalId: string | undefined;
706
+ /**
707
+ * <p>The date and time until when the offer can be procured. This value is null for offers that never expire.</p>
708
+ * @public
709
+ */
710
+ expirationTime?: Date | undefined;
711
+ /**
712
+ * <p>The date and time when the offer became available to the buyer.</p>
713
+ * @public
714
+ */
715
+ availableFromTime?: Date | undefined;
716
+ /**
717
+ * <p>The entity responsible for selling the product under this offer.</p>
718
+ * @public
719
+ */
720
+ sellerOfRecord: SellerInformation | undefined;
721
+ /**
722
+ * <p>The identifier of the existing agreement that this offer would replace. Enables agreement-based offer functionality.</p>
723
+ * @public
724
+ */
725
+ replacementAgreementId?: string | undefined;
726
+ /**
727
+ * <p>The pricing model that determines how buyers are charged, such as usage-based, contract, BYOL, or free.</p>
728
+ * @public
729
+ */
730
+ pricingModel: PricingModel | undefined;
731
+ /**
732
+ * <p>Badges indicating special attributes of the offer, such as private pricing, future dated, or replacement offer.</p>
733
+ * @public
734
+ */
735
+ badges: PurchaseOptionBadge[] | undefined;
736
+ /**
737
+ * <p>The products and offer sets associated with this offer.</p>
738
+ * @public
739
+ */
740
+ associatedEntities: OfferAssociatedEntity[] | undefined;
741
+ }
742
+ /**
743
+ * @public
744
+ */
745
+ export interface GetOfferSetInput {
746
+ /**
747
+ * <p>The unique identifier of the offer set to retrieve.</p>
748
+ * @public
749
+ */
750
+ offerSetId: string | undefined;
751
+ }
752
+ /**
753
+ * <p>A product and offer associated with an offer set.</p>
754
+ * @public
755
+ */
756
+ export interface OfferSetAssociatedEntity {
757
+ /**
758
+ * <p>Information about the product associated with the offer set.</p>
759
+ * @public
760
+ */
761
+ product: ProductInformation | undefined;
762
+ /**
763
+ * <p>Information about the offer associated with the offer set.</p>
764
+ * @public
765
+ */
766
+ offer: OfferInformation | undefined;
767
+ }
768
+ /**
769
+ * @public
770
+ */
771
+ export interface GetOfferSetOutput {
772
+ /**
773
+ * <p>The unique identifier of the offer set.</p>
774
+ * @public
775
+ */
776
+ offerSetId: string | undefined;
777
+ /**
778
+ * <p>The name of the catalog that the offer set belongs to.</p>
779
+ * @public
780
+ */
781
+ catalog: string | undefined;
782
+ /**
783
+ * <p>The display name of the offer set.</p>
784
+ * @public
785
+ */
786
+ offerSetName?: string | undefined;
787
+ /**
788
+ * <p>The date and time when the offer set became available to the buyer.</p>
789
+ * @public
790
+ */
791
+ availableFromTime?: Date | undefined;
792
+ /**
793
+ * <p>The date and time when the offer set expires and is no longer available for procurement.</p>
794
+ * @public
795
+ */
796
+ expirationTime?: Date | undefined;
797
+ /**
798
+ * <p>Detailed information about the offer set that helps buyers understand its purpose and contents.</p>
799
+ * @public
800
+ */
801
+ buyerNotes?: string | undefined;
802
+ /**
803
+ * <p>The entity responsible for selling the products under this offer set.</p>
804
+ * @public
805
+ */
806
+ sellerOfRecord: SellerInformation | undefined;
807
+ /**
808
+ * <p>Badges indicating special attributes of the offer set, such as private pricing or future dated.</p>
809
+ * @public
810
+ */
811
+ badges: PurchaseOptionBadge[] | undefined;
812
+ /**
813
+ * <p>The products and offers included in this offer set.</p>
814
+ * @public
815
+ */
816
+ associatedEntities: OfferSetAssociatedEntity[] | undefined;
817
+ }
818
+ /**
819
+ * @public
820
+ */
821
+ export interface GetOfferTermsInput {
822
+ /**
823
+ * <p>The unique identifier of the offer whose terms to retrieve.</p>
824
+ * @public
825
+ */
826
+ offerId: string | undefined;
827
+ /**
828
+ * <p>The maximum number of results that are returned per call. You can use <code>nextToken</code> to get more results.</p>
829
+ * @public
830
+ */
831
+ maxResults?: number | undefined;
832
+ /**
833
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
834
+ * @public
835
+ */
836
+ nextToken?: string | undefined;
837
+ }
838
+ /**
839
+ * <p>Defines a Bring Your Own License (BYOL) pricing term, where buyers use their existing license for the product.</p>
840
+ * @public
841
+ */
842
+ export interface ByolPricingTerm {
843
+ /**
844
+ * <p>The unique identifier of the term.</p>
845
+ * @public
846
+ */
847
+ id: string | undefined;
848
+ /**
849
+ * <p>The category of the term.</p>
850
+ * @public
851
+ */
852
+ type: TermType | undefined;
853
+ }
854
+ /**
855
+ * <p>Constraints that control how a buyer can configure a rate card.</p>
856
+ * @public
857
+ */
858
+ export interface Constraints {
859
+ /**
860
+ * <p>Whether the buyer can select multiple dimensions. Values are <code>Allowed</code> or <code>Disallowed</code>.</p>
861
+ * @public
862
+ */
863
+ multipleDimensionSelection: RateCardConstraintType | undefined;
864
+ /**
865
+ * <p>Whether the buyer can configure quantities. Values are <code>Allowed</code> or <code>Disallowed</code>.</p>
866
+ * @public
867
+ */
868
+ quantityConfiguration: RateCardConstraintType | undefined;
869
+ }
870
+ /**
871
+ * <p>A label used to group or categorize pricing dimensions, such as by region or SageMaker option.</p>
872
+ * @public
873
+ */
874
+ export interface DimensionLabel {
875
+ /**
876
+ * <p>The type of the dimension label, such as <code>Region</code> or <code>SagemakerOption</code>.</p>
877
+ * @public
878
+ */
879
+ labelType: DimensionLabelType | undefined;
880
+ /**
881
+ * <p>The value used to group dimensions together.</p>
882
+ * @public
883
+ */
884
+ labelValue: string | undefined;
885
+ /**
886
+ * <p>The human-readable display name of the label.</p>
887
+ * @public
888
+ */
889
+ displayName?: string | undefined;
890
+ }
891
+ /**
892
+ * <p>A per-unit rate within a rate card, defining the price for a specific dimension.</p>
893
+ * @public
894
+ */
895
+ export interface RateCardItem {
896
+ /**
897
+ * <p>The machine-readable key identifying the dimension being priced.</p>
898
+ * @public
899
+ */
900
+ dimensionKey: string | undefined;
901
+ /**
902
+ * <p>The human-readable name of the dimension.</p>
903
+ * @public
904
+ */
905
+ displayName: string | undefined;
906
+ /**
907
+ * <p>A description of the dimension being priced.</p>
908
+ * @public
909
+ */
910
+ description?: string | undefined;
911
+ /**
912
+ * <p>Labels used to categorize this dimension, such as by region.</p>
913
+ * @public
914
+ */
915
+ dimensionLabels?: DimensionLabel[] | undefined;
916
+ /**
917
+ * <p>The unit of measurement for the dimension.</p>
918
+ * @public
919
+ */
920
+ unit: string | undefined;
921
+ /**
922
+ * <p>The price per unit for the dimension.</p>
923
+ * @public
924
+ */
925
+ price: string | undefined;
926
+ }
927
+ /**
928
+ * <p>A selector used to choose a specific configuration within a configurable upfront rate card.</p>
929
+ * @public
930
+ */
931
+ export interface Selector {
932
+ /**
933
+ * <p>The category of the selector, such as <code>Duration</code>.</p>
934
+ * @public
935
+ */
936
+ type: SelectorType | undefined;
937
+ /**
938
+ * <p>The value of the selector.</p>
939
+ * @public
940
+ */
941
+ value: string | undefined;
942
+ }
943
+ /**
944
+ * <p>A rate card item within a configurable upfront pricing term, including a selector for choosing the configuration and per-unit rates.</p>
945
+ * @public
946
+ */
947
+ export interface ConfigurableUpfrontRateCardItem {
948
+ /**
949
+ * <p>The selector criteria for this rate card, such as duration.</p>
950
+ * @public
951
+ */
952
+ selector: Selector | undefined;
953
+ /**
954
+ * <p>Constraints on how the buyer can configure this rate card, such as whether multiple dimensions can be selected.</p>
955
+ * @public
956
+ */
957
+ constraints: Constraints | undefined;
958
+ /**
959
+ * <p>The per-unit rates for this configuration.</p>
960
+ * @public
961
+ */
962
+ rateCard: RateCardItem[] | undefined;
963
+ }
964
+ /**
965
+ * <p>Defines a configurable upfront pricing term with selectable rate cards, where buyers choose from predefined pricing configurations.</p>
966
+ * @public
967
+ */
968
+ export interface ConfigurableUpfrontPricingTerm {
969
+ /**
970
+ * <p>The unique identifier of the term.</p>
971
+ * @public
972
+ */
973
+ id: string | undefined;
974
+ /**
975
+ * <p>The category of the term.</p>
976
+ * @public
977
+ */
978
+ type: TermType | undefined;
979
+ /**
980
+ * <p>Defines the currency for the prices in this term.</p>
981
+ * @public
982
+ */
983
+ currencyCode: string | undefined;
984
+ /**
985
+ * <p>The rate cards available for selection, each with a selector, constraints, and per-unit rates.</p>
986
+ * @public
987
+ */
988
+ rateCards?: ConfigurableUpfrontRateCardItem[] | undefined;
989
+ }
990
+ /**
991
+ * <p>An entitlement granted to the buyer as part of a pricing term.</p>
992
+ * @public
993
+ */
994
+ export interface GrantItem {
995
+ /**
996
+ * <p>The machine-readable key identifying the entitlement dimension.</p>
997
+ * @public
998
+ */
999
+ dimensionKey: string | undefined;
1000
+ /**
1001
+ * <p>The human-readable name of the entitlement dimension.</p>
1002
+ * @public
1003
+ */
1004
+ displayName: string | undefined;
1005
+ /**
1006
+ * <p>A description of the entitlement.</p>
1007
+ * @public
1008
+ */
1009
+ description?: string | undefined;
1010
+ /**
1011
+ * <p>Labels used to categorize this entitlement, such as by region.</p>
1012
+ * @public
1013
+ */
1014
+ dimensionLabels?: DimensionLabel[] | undefined;
1015
+ /**
1016
+ * <p>The unit of measurement for the entitlement.</p>
1017
+ * @public
1018
+ */
1019
+ unit: string | undefined;
1020
+ /**
1021
+ * <p>The maximum quantity of the entitlement that can be granted.</p>
1022
+ * @public
1023
+ */
1024
+ maxQuantity?: number | undefined;
1025
+ }
1026
+ /**
1027
+ * <p>Defines a fixed upfront pricing term with a pre-paid amount and granted entitlements.</p>
1028
+ * @public
1029
+ */
1030
+ export interface FixedUpfrontPricingTerm {
1031
+ /**
1032
+ * <p>The unique identifier of the term.</p>
1033
+ * @public
1034
+ */
1035
+ id: string | undefined;
1036
+ /**
1037
+ * <p>The category of the term.</p>
1038
+ * @public
1039
+ */
1040
+ type: TermType | undefined;
1041
+ /**
1042
+ * <p>Defines the currency for the prices in this term.</p>
1043
+ * @public
1044
+ */
1045
+ currencyCode: string | undefined;
1046
+ /**
1047
+ * <p>The duration of the fixed pricing term, in ISO 8601 format.</p>
1048
+ * @public
1049
+ */
1050
+ duration?: string | undefined;
1051
+ /**
1052
+ * <p>The price charged upfront for this term.</p>
1053
+ * @public
1054
+ */
1055
+ price: string | undefined;
1056
+ /**
1057
+ * <p>The entitlements granted to the buyer as part of this term.</p>
1058
+ * @public
1059
+ */
1060
+ grants: GrantItem[] | undefined;
1061
+ }
1062
+ /**
1063
+ * <p>Defines a free trial pricing term that enables customers to try the product before purchasing.</p>
1064
+ * @public
1065
+ */
1066
+ export interface FreeTrialPricingTerm {
1067
+ /**
1068
+ * <p>The unique identifier of the term.</p>
1069
+ * @public
1070
+ */
1071
+ id: string | undefined;
1072
+ /**
1073
+ * <p>The category of the term.</p>
1074
+ * @public
1075
+ */
1076
+ type: TermType | undefined;
1077
+ /**
1078
+ * <p>The duration of the free trial period.</p>
1079
+ * @public
1080
+ */
1081
+ duration?: string | undefined;
1082
+ /**
1083
+ * <p>The entitlements granted to the buyer during the free trial.</p>
1084
+ * @public
1085
+ */
1086
+ grants: GrantItem[] | undefined;
1087
+ }
1088
+ /**
1089
+ * <p>A legal document associated with a legal term, such as a EULA or data subscription agreement.</p>
1090
+ * @public
1091
+ */
1092
+ export interface DocumentItem {
1093
+ /**
1094
+ * <p>The category of the legal document, such as <code>StandardEula</code> or <code>CustomEula</code>.</p>
1095
+ * @public
1096
+ */
1097
+ type: LegalDocumentType | undefined;
1098
+ /**
1099
+ * <p>The URL where the legal document can be accessed.</p>
1100
+ * @public
1101
+ */
1102
+ url: string | undefined;
1103
+ /**
1104
+ * <p>The version of the standard contract, if applicable.</p>
1105
+ * @public
1106
+ */
1107
+ version?: string | undefined;
1108
+ }
1109
+ /**
1110
+ * <p>Defines a legal term containing documents proposed to buyers, such as EULAs and data subscription agreements.</p>
1111
+ * @public
1112
+ */
1113
+ export interface LegalTerm {
1114
+ /**
1115
+ * <p>The unique identifier of the term.</p>
1116
+ * @public
1117
+ */
1118
+ id: string | undefined;
1119
+ /**
1120
+ * <p>The category of the term.</p>
1121
+ * @public
1122
+ */
1123
+ type: TermType | undefined;
1124
+ /**
1125
+ * <p>The legal documents proposed to the buyer as part of this term.</p>
1126
+ * @public
1127
+ */
1128
+ documents: DocumentItem[] | undefined;
1129
+ }
1130
+ /**
1131
+ * <p>A payment installment within a payment schedule term.</p>
1132
+ * @public
1133
+ */
1134
+ export interface ScheduleItem {
1135
+ /**
1136
+ * <p>The date when the payment is due.</p>
1137
+ * @public
1138
+ */
1139
+ chargeDate: Date | undefined;
1140
+ /**
1141
+ * <p>The amount to be charged on the charge date.</p>
1142
+ * @public
1143
+ */
1144
+ chargeAmount: string | undefined;
1145
+ }
1146
+ /**
1147
+ * <p>Defines a payment schedule term with installment payments at specified dates.</p>
1148
+ * @public
1149
+ */
1150
+ export interface PaymentScheduleTerm {
1151
+ /**
1152
+ * <p>The unique identifier of the term.</p>
1153
+ * @public
1154
+ */
1155
+ id: string | undefined;
1156
+ /**
1157
+ * <p>The category of the term.</p>
1158
+ * @public
1159
+ */
1160
+ type: TermType | undefined;
1161
+ /**
1162
+ * <p>Defines the currency for the prices in this term.</p>
1163
+ * @public
1164
+ */
1165
+ currencyCode: string | undefined;
1166
+ /**
1167
+ * <p>The payment schedule installments, each with a charge date and amount.</p>
1168
+ * @public
1169
+ */
1170
+ schedule: ScheduleItem[] | undefined;
1171
+ }
1172
+ /**
1173
+ * <p>Defines a recurring payment term with fixed charges at regular billing intervals.</p>
1174
+ * @public
1175
+ */
1176
+ export interface RecurringPaymentTerm {
1177
+ /**
1178
+ * <p>The unique identifier of the term.</p>
1179
+ * @public
1180
+ */
1181
+ id: string | undefined;
1182
+ /**
1183
+ * <p>The category of the term.</p>
1184
+ * @public
1185
+ */
1186
+ type: TermType | undefined;
1187
+ /**
1188
+ * <p>Defines the currency for the prices in this term.</p>
1189
+ * @public
1190
+ */
1191
+ currencyCode: string | undefined;
1192
+ /**
1193
+ * <p>The billing period frequency, such as <code>Monthly</code>.</p>
1194
+ * @public
1195
+ */
1196
+ billingPeriod: BillingPeriodType | undefined;
1197
+ /**
1198
+ * <p>The amount charged each billing period.</p>
1199
+ * @public
1200
+ */
1201
+ price: string | undefined;
1202
+ }
1203
+ /**
1204
+ * <p>Defines a renewal term that enables automatic agreement renewal.</p>
1205
+ * @public
1206
+ */
1207
+ export interface RenewalTerm {
1208
+ /**
1209
+ * <p>The unique identifier of the term.</p>
1210
+ * @public
1211
+ */
1212
+ id: string | undefined;
1213
+ /**
1214
+ * <p>The category of the term.</p>
1215
+ * @public
1216
+ */
1217
+ type: TermType | undefined;
1218
+ }
1219
+ /**
1220
+ * <p>Defines a support term that includes the refund policy for the offer.</p>
1221
+ * @public
1222
+ */
1223
+ export interface SupportTerm {
1224
+ /**
1225
+ * <p>The unique identifier of the term.</p>
1226
+ * @public
1227
+ */
1228
+ id: string | undefined;
1229
+ /**
1230
+ * <p>The category of the term.</p>
1231
+ * @public
1232
+ */
1233
+ type: TermType | undefined;
1234
+ /**
1235
+ * <p>The refund policy description for the offer.</p>
1236
+ * @public
1237
+ */
1238
+ refundPolicy: string | undefined;
1239
+ }
1240
+ /**
1241
+ * <p>A rate card within a usage-based pricing term, containing per-unit rates.</p>
1242
+ * @public
1243
+ */
1244
+ export interface UsageBasedRateCardItem {
1245
+ /**
1246
+ * <p>The per-unit rates for this usage-based rate card.</p>
1247
+ * @public
1248
+ */
1249
+ rateCard: RateCardItem[] | undefined;
1250
+ }
1251
+ /**
1252
+ * <p>Defines a usage-based pricing term (typically pay-as-you-go), where buyers are charged based on product usage.</p>
1253
+ * @public
1254
+ */
1255
+ export interface UsageBasedPricingTerm {
1256
+ /**
1257
+ * <p>The unique identifier of the term.</p>
1258
+ * @public
1259
+ */
1260
+ id: string | undefined;
1261
+ /**
1262
+ * <p>The category of the term.</p>
1263
+ * @public
1264
+ */
1265
+ type: TermType | undefined;
1266
+ /**
1267
+ * <p>Defines the currency for the prices in this term.</p>
1268
+ * @public
1269
+ */
1270
+ currencyCode: string | undefined;
1271
+ /**
1272
+ * <p>The rate cards containing per-unit rates for usage-based pricing.</p>
1273
+ * @public
1274
+ */
1275
+ rateCards: UsageBasedRateCardItem[] | undefined;
1276
+ }
1277
+ /**
1278
+ * <p>Defines a validity term that specifies the duration or date range of an agreement.</p>
1279
+ * @public
1280
+ */
1281
+ export interface ValidityTerm {
1282
+ /**
1283
+ * <p>The unique identifier of the term.</p>
1284
+ * @public
1285
+ */
1286
+ id: string | undefined;
1287
+ /**
1288
+ * <p>The category of the term.</p>
1289
+ * @public
1290
+ */
1291
+ type: TermType | undefined;
1292
+ /**
1293
+ * <p>The duration of the agreement, in ISO 8601 format.</p>
1294
+ * @public
1295
+ */
1296
+ agreementDuration?: string | undefined;
1297
+ /**
1298
+ * <p>The date when the agreement ends.</p>
1299
+ * @public
1300
+ */
1301
+ agreementEndDate?: Date | undefined;
1302
+ /**
1303
+ * <p>The date when the agreement starts.</p>
1304
+ * @public
1305
+ */
1306
+ agreementStartDate?: Date | undefined;
1307
+ }
1308
+ /**
1309
+ * <p>Defines a variable payment term with a maximum total charge amount.</p>
1310
+ * @public
1311
+ */
1312
+ export interface VariablePaymentTerm {
1313
+ /**
1314
+ * <p>The unique identifier of the term.</p>
1315
+ * @public
1316
+ */
1317
+ id: string | undefined;
1318
+ /**
1319
+ * <p>The category of the term.</p>
1320
+ * @public
1321
+ */
1322
+ type: TermType | undefined;
1323
+ /**
1324
+ * <p>Defines the currency for the prices in this term.</p>
1325
+ * @public
1326
+ */
1327
+ currencyCode: string | undefined;
1328
+ /**
1329
+ * <p>The maximum total amount that can be charged under this term.</p>
1330
+ * @public
1331
+ */
1332
+ maxTotalChargeAmount: string | undefined;
1333
+ }
1334
+ /**
1335
+ * <p>A term attached to an offer. Each element contains exactly one term type, such as a pricing term, legal term, or payment schedule term.</p>
1336
+ * @public
1337
+ */
1338
+ export type OfferTerm = OfferTerm.ByolPricingTermMember | OfferTerm.ConfigurableUpfrontPricingTermMember | OfferTerm.FixedUpfrontPricingTermMember | OfferTerm.FreeTrialPricingTermMember | OfferTerm.LegalTermMember | OfferTerm.PaymentScheduleTermMember | OfferTerm.RecurringPaymentTermMember | OfferTerm.RenewalTermMember | OfferTerm.SupportTermMember | OfferTerm.UsageBasedPricingTermMember | OfferTerm.ValidityTermMember | OfferTerm.VariablePaymentTermMember | OfferTerm.$UnknownMember;
1339
+ /**
1340
+ * @public
1341
+ */
1342
+ export declare namespace OfferTerm {
1343
+ /**
1344
+ * <p>Defines a Bring Your Own License (BYOL) pricing term, where buyers use their existing license for the product.</p>
1345
+ * @public
1346
+ */
1347
+ interface ByolPricingTermMember {
1348
+ byolPricingTerm: ByolPricingTerm;
1349
+ configurableUpfrontPricingTerm?: never;
1350
+ fixedUpfrontPricingTerm?: never;
1351
+ freeTrialPricingTerm?: never;
1352
+ legalTerm?: never;
1353
+ paymentScheduleTerm?: never;
1354
+ recurringPaymentTerm?: never;
1355
+ renewalTerm?: never;
1356
+ supportTerm?: never;
1357
+ usageBasedPricingTerm?: never;
1358
+ validityTerm?: never;
1359
+ variablePaymentTerm?: never;
1360
+ $unknown?: never;
1361
+ }
1362
+ /**
1363
+ * <p>Defines a configurable upfront pricing term with selectable rate cards, where buyers choose from predefined pricing configurations.</p>
1364
+ * @public
1365
+ */
1366
+ interface ConfigurableUpfrontPricingTermMember {
1367
+ byolPricingTerm?: never;
1368
+ configurableUpfrontPricingTerm: ConfigurableUpfrontPricingTerm;
1369
+ fixedUpfrontPricingTerm?: never;
1370
+ freeTrialPricingTerm?: never;
1371
+ legalTerm?: never;
1372
+ paymentScheduleTerm?: never;
1373
+ recurringPaymentTerm?: never;
1374
+ renewalTerm?: never;
1375
+ supportTerm?: never;
1376
+ usageBasedPricingTerm?: never;
1377
+ validityTerm?: never;
1378
+ variablePaymentTerm?: never;
1379
+ $unknown?: never;
1380
+ }
1381
+ /**
1382
+ * <p>Defines a fixed upfront pricing term with a pre-paid amount and granted entitlements.</p>
1383
+ * @public
1384
+ */
1385
+ interface FixedUpfrontPricingTermMember {
1386
+ byolPricingTerm?: never;
1387
+ configurableUpfrontPricingTerm?: never;
1388
+ fixedUpfrontPricingTerm: FixedUpfrontPricingTerm;
1389
+ freeTrialPricingTerm?: never;
1390
+ legalTerm?: never;
1391
+ paymentScheduleTerm?: never;
1392
+ recurringPaymentTerm?: never;
1393
+ renewalTerm?: never;
1394
+ supportTerm?: never;
1395
+ usageBasedPricingTerm?: never;
1396
+ validityTerm?: never;
1397
+ variablePaymentTerm?: never;
1398
+ $unknown?: never;
1399
+ }
1400
+ /**
1401
+ * <p>Defines a free trial pricing term that enables customers to try the product before purchasing.</p>
1402
+ * @public
1403
+ */
1404
+ interface FreeTrialPricingTermMember {
1405
+ byolPricingTerm?: never;
1406
+ configurableUpfrontPricingTerm?: never;
1407
+ fixedUpfrontPricingTerm?: never;
1408
+ freeTrialPricingTerm: FreeTrialPricingTerm;
1409
+ legalTerm?: never;
1410
+ paymentScheduleTerm?: never;
1411
+ recurringPaymentTerm?: never;
1412
+ renewalTerm?: never;
1413
+ supportTerm?: never;
1414
+ usageBasedPricingTerm?: never;
1415
+ validityTerm?: never;
1416
+ variablePaymentTerm?: never;
1417
+ $unknown?: never;
1418
+ }
1419
+ /**
1420
+ * <p>Defines a legal term containing documents proposed to buyers, such as EULAs and data subscription agreements.</p>
1421
+ * @public
1422
+ */
1423
+ interface LegalTermMember {
1424
+ byolPricingTerm?: never;
1425
+ configurableUpfrontPricingTerm?: never;
1426
+ fixedUpfrontPricingTerm?: never;
1427
+ freeTrialPricingTerm?: never;
1428
+ legalTerm: LegalTerm;
1429
+ paymentScheduleTerm?: never;
1430
+ recurringPaymentTerm?: never;
1431
+ renewalTerm?: never;
1432
+ supportTerm?: never;
1433
+ usageBasedPricingTerm?: never;
1434
+ validityTerm?: never;
1435
+ variablePaymentTerm?: never;
1436
+ $unknown?: never;
1437
+ }
1438
+ /**
1439
+ * <p>Defines a payment schedule term with installment payments at specified dates.</p>
1440
+ * @public
1441
+ */
1442
+ interface PaymentScheduleTermMember {
1443
+ byolPricingTerm?: never;
1444
+ configurableUpfrontPricingTerm?: never;
1445
+ fixedUpfrontPricingTerm?: never;
1446
+ freeTrialPricingTerm?: never;
1447
+ legalTerm?: never;
1448
+ paymentScheduleTerm: PaymentScheduleTerm;
1449
+ recurringPaymentTerm?: never;
1450
+ renewalTerm?: never;
1451
+ supportTerm?: never;
1452
+ usageBasedPricingTerm?: never;
1453
+ validityTerm?: never;
1454
+ variablePaymentTerm?: never;
1455
+ $unknown?: never;
1456
+ }
1457
+ /**
1458
+ * <p>Defines a recurring payment term with fixed charges at regular billing intervals.</p>
1459
+ * @public
1460
+ */
1461
+ interface RecurringPaymentTermMember {
1462
+ byolPricingTerm?: never;
1463
+ configurableUpfrontPricingTerm?: never;
1464
+ fixedUpfrontPricingTerm?: never;
1465
+ freeTrialPricingTerm?: never;
1466
+ legalTerm?: never;
1467
+ paymentScheduleTerm?: never;
1468
+ recurringPaymentTerm: RecurringPaymentTerm;
1469
+ renewalTerm?: never;
1470
+ supportTerm?: never;
1471
+ usageBasedPricingTerm?: never;
1472
+ validityTerm?: never;
1473
+ variablePaymentTerm?: never;
1474
+ $unknown?: never;
1475
+ }
1476
+ /**
1477
+ * <p>Defines a renewal term that enables automatic agreement renewal.</p>
1478
+ * @public
1479
+ */
1480
+ interface RenewalTermMember {
1481
+ byolPricingTerm?: never;
1482
+ configurableUpfrontPricingTerm?: never;
1483
+ fixedUpfrontPricingTerm?: never;
1484
+ freeTrialPricingTerm?: never;
1485
+ legalTerm?: never;
1486
+ paymentScheduleTerm?: never;
1487
+ recurringPaymentTerm?: never;
1488
+ renewalTerm: RenewalTerm;
1489
+ supportTerm?: never;
1490
+ usageBasedPricingTerm?: never;
1491
+ validityTerm?: never;
1492
+ variablePaymentTerm?: never;
1493
+ $unknown?: never;
1494
+ }
1495
+ /**
1496
+ * <p>Defines a support term that includes the refund policy for the offer.</p>
1497
+ * @public
1498
+ */
1499
+ interface SupportTermMember {
1500
+ byolPricingTerm?: never;
1501
+ configurableUpfrontPricingTerm?: never;
1502
+ fixedUpfrontPricingTerm?: never;
1503
+ freeTrialPricingTerm?: never;
1504
+ legalTerm?: never;
1505
+ paymentScheduleTerm?: never;
1506
+ recurringPaymentTerm?: never;
1507
+ renewalTerm?: never;
1508
+ supportTerm: SupportTerm;
1509
+ usageBasedPricingTerm?: never;
1510
+ validityTerm?: never;
1511
+ variablePaymentTerm?: never;
1512
+ $unknown?: never;
1513
+ }
1514
+ /**
1515
+ * <p>Defines a usage-based pricing term (typically pay-as-you-go), where buyers are charged based on product usage.</p>
1516
+ * @public
1517
+ */
1518
+ interface UsageBasedPricingTermMember {
1519
+ byolPricingTerm?: never;
1520
+ configurableUpfrontPricingTerm?: never;
1521
+ fixedUpfrontPricingTerm?: never;
1522
+ freeTrialPricingTerm?: never;
1523
+ legalTerm?: never;
1524
+ paymentScheduleTerm?: never;
1525
+ recurringPaymentTerm?: never;
1526
+ renewalTerm?: never;
1527
+ supportTerm?: never;
1528
+ usageBasedPricingTerm: UsageBasedPricingTerm;
1529
+ validityTerm?: never;
1530
+ variablePaymentTerm?: never;
1531
+ $unknown?: never;
1532
+ }
1533
+ /**
1534
+ * <p>Defines a validity term that specifies the duration or date range of an agreement.</p>
1535
+ * @public
1536
+ */
1537
+ interface ValidityTermMember {
1538
+ byolPricingTerm?: never;
1539
+ configurableUpfrontPricingTerm?: never;
1540
+ fixedUpfrontPricingTerm?: never;
1541
+ freeTrialPricingTerm?: never;
1542
+ legalTerm?: never;
1543
+ paymentScheduleTerm?: never;
1544
+ recurringPaymentTerm?: never;
1545
+ renewalTerm?: never;
1546
+ supportTerm?: never;
1547
+ usageBasedPricingTerm?: never;
1548
+ validityTerm: ValidityTerm;
1549
+ variablePaymentTerm?: never;
1550
+ $unknown?: never;
1551
+ }
1552
+ /**
1553
+ * <p>Defines a variable payment term with a maximum total charge amount.</p>
1554
+ * @public
1555
+ */
1556
+ interface VariablePaymentTermMember {
1557
+ byolPricingTerm?: never;
1558
+ configurableUpfrontPricingTerm?: never;
1559
+ fixedUpfrontPricingTerm?: never;
1560
+ freeTrialPricingTerm?: never;
1561
+ legalTerm?: never;
1562
+ paymentScheduleTerm?: never;
1563
+ recurringPaymentTerm?: never;
1564
+ renewalTerm?: never;
1565
+ supportTerm?: never;
1566
+ usageBasedPricingTerm?: never;
1567
+ validityTerm?: never;
1568
+ variablePaymentTerm: VariablePaymentTerm;
1569
+ $unknown?: never;
1570
+ }
1571
+ /**
1572
+ * @public
1573
+ */
1574
+ interface $UnknownMember {
1575
+ byolPricingTerm?: never;
1576
+ configurableUpfrontPricingTerm?: never;
1577
+ fixedUpfrontPricingTerm?: never;
1578
+ freeTrialPricingTerm?: never;
1579
+ legalTerm?: never;
1580
+ paymentScheduleTerm?: never;
1581
+ recurringPaymentTerm?: never;
1582
+ renewalTerm?: never;
1583
+ supportTerm?: never;
1584
+ usageBasedPricingTerm?: never;
1585
+ validityTerm?: never;
1586
+ variablePaymentTerm?: never;
1587
+ $unknown: [string, any];
1588
+ }
1589
+ /**
1590
+ * @deprecated unused in schema-serde mode.
1591
+ *
1592
+ */
1593
+ interface Visitor<T> {
1594
+ byolPricingTerm: (value: ByolPricingTerm) => T;
1595
+ configurableUpfrontPricingTerm: (value: ConfigurableUpfrontPricingTerm) => T;
1596
+ fixedUpfrontPricingTerm: (value: FixedUpfrontPricingTerm) => T;
1597
+ freeTrialPricingTerm: (value: FreeTrialPricingTerm) => T;
1598
+ legalTerm: (value: LegalTerm) => T;
1599
+ paymentScheduleTerm: (value: PaymentScheduleTerm) => T;
1600
+ recurringPaymentTerm: (value: RecurringPaymentTerm) => T;
1601
+ renewalTerm: (value: RenewalTerm) => T;
1602
+ supportTerm: (value: SupportTerm) => T;
1603
+ usageBasedPricingTerm: (value: UsageBasedPricingTerm) => T;
1604
+ validityTerm: (value: ValidityTerm) => T;
1605
+ variablePaymentTerm: (value: VariablePaymentTerm) => T;
1606
+ _: (name: string, value: any) => T;
1607
+ }
1608
+ }
1609
+ /**
1610
+ * @public
1611
+ */
1612
+ export interface GetOfferTermsOutput {
1613
+ /**
1614
+ * <p>The terms attached to the offer. Each element contains exactly one term type.</p>
1615
+ * @public
1616
+ */
1617
+ offerTerms: OfferTerm[] | undefined;
1618
+ /**
1619
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
1620
+ * @public
1621
+ */
1622
+ nextToken?: string | undefined;
1623
+ }
1624
+ /**
1625
+ * @public
1626
+ */
1627
+ export interface GetProductInput {
1628
+ /**
1629
+ * <p>The unique identifier of the product to retrieve.</p>
1630
+ * @public
1631
+ */
1632
+ productId: string | undefined;
1633
+ }
1634
+ /**
1635
+ * @public
1636
+ */
1637
+ export interface GetProductOutput {
1638
+ /**
1639
+ * <p>The unique identifier of the product.</p>
1640
+ * @public
1641
+ */
1642
+ productId: string | undefined;
1643
+ /**
1644
+ * <p>The name of the catalog that the product belongs to.</p>
1645
+ * @public
1646
+ */
1647
+ catalog: string | undefined;
1648
+ /**
1649
+ * <p>The human-readable display name of the product.</p>
1650
+ * @public
1651
+ */
1652
+ productName: string | undefined;
1653
+ /**
1654
+ * <p>Indicates whether the product is deployed on AWS infrastructure.</p>
1655
+ * @public
1656
+ */
1657
+ deployedOnAws: DeployedOnAwsStatus | undefined;
1658
+ /**
1659
+ * <p>A 1–3 sentence summary describing the key aspects of the product.</p>
1660
+ * @public
1661
+ */
1662
+ shortDescription: string | undefined;
1663
+ /**
1664
+ * <p>A detailed description of what the product does, in paragraph format.</p>
1665
+ * @public
1666
+ */
1667
+ longDescription: string | undefined;
1668
+ /**
1669
+ * <p>The entity who manufactured the product.</p>
1670
+ * @public
1671
+ */
1672
+ manufacturer: SellerInformation | undefined;
1673
+ /**
1674
+ * <p>The URL of the logo thumbnail image for the product.</p>
1675
+ * @public
1676
+ */
1677
+ logoThumbnailUrl: string | undefined;
1678
+ /**
1679
+ * <p>A summary of fulfillment options available for deploying or accessing the product, such as AMI, SaaS, or Container.</p>
1680
+ * @public
1681
+ */
1682
+ fulfillmentOptionSummaries: FulfillmentOptionSummary[] | undefined;
1683
+ /**
1684
+ * <p>The categories used to classify this product into logical groups.</p>
1685
+ * @public
1686
+ */
1687
+ categories: Category[] | undefined;
1688
+ /**
1689
+ * <p>A list of key features that the product offers to customers.</p>
1690
+ * @public
1691
+ */
1692
+ highlights: string[] | undefined;
1693
+ /**
1694
+ * <p>Embedded promotional media provided by the creator of the product, such as images and videos.</p>
1695
+ * @public
1696
+ */
1697
+ promotionalMedia: PromotionalMedia[] | undefined;
1698
+ /**
1699
+ * <p>Resources that provide further information about using the product or requesting support, such as documentation links, support contacts, and usage instructions.</p>
1700
+ * @public
1701
+ */
1702
+ resources: Resource[] | undefined;
1703
+ /**
1704
+ * <p>Engagement options available to potential buyers, such as requesting a private offer or requesting a demo.</p>
1705
+ * @public
1706
+ */
1707
+ sellerEngagements: SellerEngagement[] | undefined;
1708
+ }
1709
+ /**
1710
+ * @public
1711
+ */
1712
+ export interface ListFulfillmentOptionsInput {
1713
+ /**
1714
+ * <p>The unique identifier of the product for which to list fulfillment options.</p>
1715
+ * @public
1716
+ */
1717
+ productId: string | undefined;
1718
+ /**
1719
+ * <p>The maximum number of results that are returned per call. You can use <code>nextToken</code> to get more results.</p>
1720
+ * @public
1721
+ */
1722
+ maxResults?: number | undefined;
1723
+ /**
1724
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
1725
+ * @public
1726
+ */
1727
+ nextToken?: string | undefined;
1728
+ }
1729
+ /**
1730
+ * <p>Describes an AWS CloudFormation template fulfillment option for infrastructure deployment.</p>
1731
+ * @public
1732
+ */
1733
+ export interface CloudFormationFulfillmentOption {
1734
+ /**
1735
+ * <p>The unique identifier of the fulfillment option.</p>
1736
+ * @public
1737
+ */
1738
+ fulfillmentOptionId: string | undefined;
1739
+ /**
1740
+ * <p>The display name of the fulfillment option version.</p>
1741
+ * @public
1742
+ */
1743
+ fulfillmentOptionName: string | undefined;
1744
+ /**
1745
+ * <p>The category of the fulfillment option.</p>
1746
+ * @public
1747
+ */
1748
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
1749
+ /**
1750
+ * <p>A human-readable name for the fulfillment option type.</p>
1751
+ * @public
1752
+ */
1753
+ fulfillmentOptionDisplayName: string | undefined;
1754
+ /**
1755
+ * <p>The version identifier of the fulfillment option.</p>
1756
+ * @public
1757
+ */
1758
+ fulfillmentOptionVersion?: string | undefined;
1759
+ /**
1760
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
1761
+ * @public
1762
+ */
1763
+ releaseNotes?: string | undefined;
1764
+ /**
1765
+ * <p>Instructions on how to deploy and use this CloudFormation template.</p>
1766
+ * @public
1767
+ */
1768
+ usageInstructions?: string | undefined;
1769
+ }
1770
+ /**
1771
+ * <p>Describes an operating system supported by a container fulfillment option.</p>
1772
+ * @public
1773
+ */
1774
+ export interface ContainerOperatingSystem {
1775
+ /**
1776
+ * <p>The operating system family, such as Linux.</p>
1777
+ * @public
1778
+ */
1779
+ operatingSystemFamilyName: string | undefined;
1780
+ /**
1781
+ * <p>The specific operating system name.</p>
1782
+ * @public
1783
+ */
1784
+ operatingSystemName: string | undefined;
1785
+ }
1786
+ /**
1787
+ * <p>Describes a container image fulfillment option for container-based deployment.</p>
1788
+ * @public
1789
+ */
1790
+ export interface ContainerFulfillmentOption {
1791
+ /**
1792
+ * <p>The unique identifier of the fulfillment option.</p>
1793
+ * @public
1794
+ */
1795
+ fulfillmentOptionId: string | undefined;
1796
+ /**
1797
+ * <p>The display name of the fulfillment option version.</p>
1798
+ * @public
1799
+ */
1800
+ fulfillmentOptionName: string | undefined;
1801
+ /**
1802
+ * <p>The category of the fulfillment option.</p>
1803
+ * @public
1804
+ */
1805
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
1806
+ /**
1807
+ * <p>A human-readable name for the fulfillment option type.</p>
1808
+ * @public
1809
+ */
1810
+ fulfillmentOptionDisplayName: string | undefined;
1811
+ /**
1812
+ * <p>The version identifier of the fulfillment option.</p>
1813
+ * @public
1814
+ */
1815
+ fulfillmentOptionVersion?: string | undefined;
1816
+ /**
1817
+ * <p>The operating systems supported by this container image.</p>
1818
+ * @public
1819
+ */
1820
+ operatingSystems?: ContainerOperatingSystem[] | undefined;
1821
+ /**
1822
+ * <p>The AWS services supported by this container deployment.</p>
1823
+ * @public
1824
+ */
1825
+ awsSupportedServices?: AwsSupportedService[] | undefined;
1826
+ /**
1827
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
1828
+ * @public
1829
+ */
1830
+ releaseNotes?: string | undefined;
1831
+ /**
1832
+ * <p>Instructions on how to deploy and use this container image.</p>
1833
+ * @public
1834
+ */
1835
+ usageInstructions?: string | undefined;
1836
+ }
1837
+ /**
1838
+ * <p>Describes a data artifact within a Data Exchange fulfillment option.</p>
1839
+ * @public
1840
+ */
1841
+ export interface DataArtifact {
1842
+ /**
1843
+ * <p>A description of the data artifact.</p>
1844
+ * @public
1845
+ */
1846
+ description?: string | undefined;
1847
+ /**
1848
+ * <p>The Amazon Resource Name (ARN) of the data artifact.</p>
1849
+ * @public
1850
+ */
1851
+ resourceArn?: string | undefined;
1852
+ /**
1853
+ * <p>The type of the data artifact resource.</p>
1854
+ * @public
1855
+ */
1856
+ resourceType: string | undefined;
1857
+ /**
1858
+ * <p>The classification of sensitive data contained in the dataset.</p>
1859
+ * @public
1860
+ */
1861
+ dataClassification: string | undefined;
1862
+ }
1863
+ /**
1864
+ * <p>Describes an AWS Data Exchange fulfillment option for data set delivery.</p>
1865
+ * @public
1866
+ */
1867
+ export interface DataExchangeFulfillmentOption {
1868
+ /**
1869
+ * <p>The unique identifier of the fulfillment option.</p>
1870
+ * @public
1871
+ */
1872
+ fulfillmentOptionId: string | undefined;
1873
+ /**
1874
+ * <p>The category of the fulfillment option.</p>
1875
+ * @public
1876
+ */
1877
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
1878
+ /**
1879
+ * <p>A human-readable name for the fulfillment option type.</p>
1880
+ * @public
1881
+ */
1882
+ fulfillmentOptionDisplayName: string | undefined;
1883
+ /**
1884
+ * <p>The data artifacts included in this Data Exchange fulfillment option.</p>
1885
+ * @public
1886
+ */
1887
+ dataArtifacts?: DataArtifact[] | undefined;
1888
+ }
1889
+ /**
1890
+ * <p>Describes an EC2 Image Builder component fulfillment option.</p>
1891
+ * @public
1892
+ */
1893
+ export interface Ec2ImageBuilderComponentFulfillmentOption {
1894
+ /**
1895
+ * <p>The unique identifier of the fulfillment option.</p>
1896
+ * @public
1897
+ */
1898
+ fulfillmentOptionId: string | undefined;
1899
+ /**
1900
+ * <p>The display name of the fulfillment option version.</p>
1901
+ * @public
1902
+ */
1903
+ fulfillmentOptionName: string | undefined;
1904
+ /**
1905
+ * <p>The category of the fulfillment option.</p>
1906
+ * @public
1907
+ */
1908
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
1909
+ /**
1910
+ * <p>A human-readable name for the fulfillment option type.</p>
1911
+ * @public
1912
+ */
1913
+ fulfillmentOptionDisplayName: string | undefined;
1914
+ /**
1915
+ * <p>The version identifier of the fulfillment option.</p>
1916
+ * @public
1917
+ */
1918
+ fulfillmentOptionVersion?: string | undefined;
1919
+ /**
1920
+ * <p>The operating systems supported by this EC2 Image Builder component.</p>
1921
+ * @public
1922
+ */
1923
+ operatingSystems?: ContainerOperatingSystem[] | undefined;
1924
+ /**
1925
+ * <p>The AWS services supported by this EC2 Image Builder component.</p>
1926
+ * @public
1927
+ */
1928
+ awsSupportedServices?: AwsSupportedService[] | undefined;
1929
+ /**
1930
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
1931
+ * @public
1932
+ */
1933
+ releaseNotes?: string | undefined;
1934
+ /**
1935
+ * <p>Instructions on how to deploy and use this EC2 Image Builder component.</p>
1936
+ * @public
1937
+ */
1938
+ usageInstructions?: string | undefined;
1939
+ }
1940
+ /**
1941
+ * <p>Describes an operating system supported by an EKS add-on fulfillment option.</p>
1942
+ * @public
1943
+ */
1944
+ export interface EksAddOnOperatingSystem {
1945
+ /**
1946
+ * <p>The operating system family, such as Linux.</p>
1947
+ * @public
1948
+ */
1949
+ operatingSystemFamilyName: string | undefined;
1950
+ /**
1951
+ * <p>The specific operating system name.</p>
1952
+ * @public
1953
+ */
1954
+ operatingSystemName: string | undefined;
1955
+ }
1956
+ /**
1957
+ * <p>Describes an Amazon EKS add-on fulfillment option.</p>
1958
+ * @public
1959
+ */
1960
+ export interface EksAddOnFulfillmentOption {
1961
+ /**
1962
+ * <p>The unique identifier of the fulfillment option.</p>
1963
+ * @public
1964
+ */
1965
+ fulfillmentOptionId: string | undefined;
1966
+ /**
1967
+ * <p>The display name of the fulfillment option version.</p>
1968
+ * @public
1969
+ */
1970
+ fulfillmentOptionName: string | undefined;
1971
+ /**
1972
+ * <p>The category of the fulfillment option.</p>
1973
+ * @public
1974
+ */
1975
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
1976
+ /**
1977
+ * <p>A human-readable name for the fulfillment option type.</p>
1978
+ * @public
1979
+ */
1980
+ fulfillmentOptionDisplayName: string | undefined;
1981
+ /**
1982
+ * <p>The version identifier of the fulfillment option.</p>
1983
+ * @public
1984
+ */
1985
+ fulfillmentOptionVersion?: string | undefined;
1986
+ /**
1987
+ * <p>The operating systems supported by this EKS add-on.</p>
1988
+ * @public
1989
+ */
1990
+ operatingSystems?: EksAddOnOperatingSystem[] | undefined;
1991
+ /**
1992
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
1993
+ * @public
1994
+ */
1995
+ releaseNotes?: string | undefined;
1996
+ /**
1997
+ * <p>Instructions on how to deploy and use this EKS add-on.</p>
1998
+ * @public
1999
+ */
2000
+ usageInstructions?: string | undefined;
2001
+ /**
2002
+ * <p>The AWS services supported by this EKS add-on.</p>
2003
+ * @public
2004
+ */
2005
+ awsSupportedServices?: AwsSupportedService[] | undefined;
2006
+ }
2007
+ /**
2008
+ * <p>Describes an operating system supported by a Helm chart fulfillment option.</p>
2009
+ * @public
2010
+ */
2011
+ export interface HelmOperatingSystem {
2012
+ /**
2013
+ * <p>The operating system family, such as Linux.</p>
2014
+ * @public
2015
+ */
2016
+ operatingSystemFamilyName: string | undefined;
2017
+ /**
2018
+ * <p>The specific operating system name.</p>
2019
+ * @public
2020
+ */
2021
+ operatingSystemName: string | undefined;
2022
+ }
2023
+ /**
2024
+ * <p>Describes a Helm chart fulfillment option for Kubernetes deployment.</p>
2025
+ * @public
2026
+ */
2027
+ export interface HelmFulfillmentOption {
2028
+ /**
2029
+ * <p>The unique identifier of the fulfillment option.</p>
2030
+ * @public
2031
+ */
2032
+ fulfillmentOptionId: string | undefined;
2033
+ /**
2034
+ * <p>The display name of the fulfillment option version.</p>
2035
+ * @public
2036
+ */
2037
+ fulfillmentOptionName: string | undefined;
2038
+ /**
2039
+ * <p>The category of the fulfillment option.</p>
2040
+ * @public
2041
+ */
2042
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
2043
+ /**
2044
+ * <p>A human-readable name for the fulfillment option type.</p>
2045
+ * @public
2046
+ */
2047
+ fulfillmentOptionDisplayName: string | undefined;
2048
+ /**
2049
+ * <p>The version identifier of the fulfillment option.</p>
2050
+ * @public
2051
+ */
2052
+ fulfillmentOptionVersion?: string | undefined;
2053
+ /**
2054
+ * <p>The operating systems supported by this Helm chart.</p>
2055
+ * @public
2056
+ */
2057
+ operatingSystems?: HelmOperatingSystem[] | undefined;
2058
+ /**
2059
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
2060
+ * @public
2061
+ */
2062
+ releaseNotes?: string | undefined;
2063
+ /**
2064
+ * <p>The AWS services supported by this Helm chart deployment.</p>
2065
+ * @public
2066
+ */
2067
+ awsSupportedServices?: AwsSupportedService[] | undefined;
2068
+ /**
2069
+ * <p>Instructions on how to deploy and use this Helm chart.</p>
2070
+ * @public
2071
+ */
2072
+ usageInstructions?: string | undefined;
2073
+ }
2074
+ /**
2075
+ * <p>Describes a professional services fulfillment option.</p>
2076
+ * @public
2077
+ */
2078
+ export interface ProfessionalServicesFulfillmentOption {
2079
+ /**
2080
+ * <p>The unique identifier of the fulfillment option.</p>
2081
+ * @public
2082
+ */
2083
+ fulfillmentOptionId: string | undefined;
2084
+ /**
2085
+ * <p>The category of the fulfillment option.</p>
2086
+ * @public
2087
+ */
2088
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
2089
+ /**
2090
+ * <p>A human-readable name for the fulfillment option type.</p>
2091
+ * @public
2092
+ */
2093
+ fulfillmentOptionDisplayName: string | undefined;
2094
+ }
2095
+ /**
2096
+ * <p>Describes a Software as a Service (SaaS) fulfillment option.</p>
2097
+ * @public
2098
+ */
2099
+ export interface SaasFulfillmentOption {
2100
+ /**
2101
+ * <p>The unique identifier of the fulfillment option.</p>
2102
+ * @public
2103
+ */
2104
+ fulfillmentOptionId: string | undefined;
2105
+ /**
2106
+ * <p>The category of the fulfillment option.</p>
2107
+ * @public
2108
+ */
2109
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
2110
+ /**
2111
+ * <p>A human-readable name for the fulfillment option type.</p>
2112
+ * @public
2113
+ */
2114
+ fulfillmentOptionDisplayName: string | undefined;
2115
+ /**
2116
+ * <p>The URL of the seller's software registration landing page.</p>
2117
+ * @public
2118
+ */
2119
+ fulfillmentUrl?: string | undefined;
2120
+ /**
2121
+ * <p>Instructions on how to access and use this SaaS product.</p>
2122
+ * @public
2123
+ */
2124
+ usageInstructions?: string | undefined;
2125
+ }
2126
+ /**
2127
+ * <p>Recommended instance types for training and inference with a SageMaker algorithm.</p>
2128
+ * @public
2129
+ */
2130
+ export interface SageMakerAlgorithmRecommendation {
2131
+ /**
2132
+ * <p>The recommended instance type for batch inference.</p>
2133
+ * @public
2134
+ */
2135
+ recommendedBatchTransformInstanceType: string | undefined;
2136
+ /**
2137
+ * <p>The recommended instance type for real-time inference.</p>
2138
+ * @public
2139
+ */
2140
+ recommendedRealtimeInferenceInstanceType?: string | undefined;
2141
+ /**
2142
+ * <p>The recommended instance type for training.</p>
2143
+ * @public
2144
+ */
2145
+ recommendedTrainingInstanceType: string | undefined;
2146
+ }
2147
+ /**
2148
+ * <p>Describes an Amazon SageMaker algorithm fulfillment option, including version details and recommended instance types.</p>
2149
+ * @public
2150
+ */
2151
+ export interface SageMakerAlgorithmFulfillmentOption {
2152
+ /**
2153
+ * <p>The unique identifier of the fulfillment option.</p>
2154
+ * @public
2155
+ */
2156
+ fulfillmentOptionId: string | undefined;
2157
+ /**
2158
+ * <p>The category of the fulfillment option.</p>
2159
+ * @public
2160
+ */
2161
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
2162
+ /**
2163
+ * <p>A human-readable name for the fulfillment option type.</p>
2164
+ * @public
2165
+ */
2166
+ fulfillmentOptionDisplayName: string | undefined;
2167
+ /**
2168
+ * <p>The version identifier of the fulfillment option.</p>
2169
+ * @public
2170
+ */
2171
+ fulfillmentOptionVersion?: string | undefined;
2172
+ /**
2173
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
2174
+ * @public
2175
+ */
2176
+ releaseNotes?: string | undefined;
2177
+ /**
2178
+ * <p>Instructions on how to use this SageMaker algorithm.</p>
2179
+ * @public
2180
+ */
2181
+ usageInstructions?: string | undefined;
2182
+ /**
2183
+ * <p>Recommended instance types for training and inference with this algorithm.</p>
2184
+ * @public
2185
+ */
2186
+ recommendation?: SageMakerAlgorithmRecommendation | undefined;
2187
+ }
2188
+ /**
2189
+ * <p>Recommended instance types for inference with a SageMaker model.</p>
2190
+ * @public
2191
+ */
2192
+ export interface SageMakerModelRecommendation {
2193
+ /**
2194
+ * <p>The recommended instance type for batch inference.</p>
2195
+ * @public
2196
+ */
2197
+ recommendedBatchTransformInstanceType: string | undefined;
2198
+ /**
2199
+ * <p>The recommended instance type for real-time inference.</p>
2200
+ * @public
2201
+ */
2202
+ recommendedRealtimeInferenceInstanceType?: string | undefined;
2203
+ }
2204
+ /**
2205
+ * <p>Describes an Amazon SageMaker model fulfillment option, including version details and recommended instance types.</p>
2206
+ * @public
2207
+ */
2208
+ export interface SageMakerModelFulfillmentOption {
2209
+ /**
2210
+ * <p>The unique identifier of the fulfillment option.</p>
2211
+ * @public
2212
+ */
2213
+ fulfillmentOptionId: string | undefined;
2214
+ /**
2215
+ * <p>The category of the fulfillment option.</p>
2216
+ * @public
2217
+ */
2218
+ fulfillmentOptionType: FulfillmentOptionType | undefined;
2219
+ /**
2220
+ * <p>A human-readable name for the fulfillment option type.</p>
2221
+ * @public
2222
+ */
2223
+ fulfillmentOptionDisplayName: string | undefined;
2224
+ /**
2225
+ * <p>The version identifier of the fulfillment option.</p>
2226
+ * @public
2227
+ */
2228
+ fulfillmentOptionVersion?: string | undefined;
2229
+ /**
2230
+ * <p>Release notes describing changes in this version of the fulfillment option.</p>
2231
+ * @public
2232
+ */
2233
+ releaseNotes?: string | undefined;
2234
+ /**
2235
+ * <p>Instructions on how to use this SageMaker model.</p>
2236
+ * @public
2237
+ */
2238
+ usageInstructions?: string | undefined;
2239
+ /**
2240
+ * <p>Recommended instance types for inference with this model.</p>
2241
+ * @public
2242
+ */
2243
+ recommendation?: SageMakerModelRecommendation | undefined;
2244
+ }
2245
+ /**
2246
+ * <p>Describes a fulfillment option for a product. Each element contains exactly one fulfillment option type.</p>
2247
+ * @public
2248
+ */
2249
+ export type FulfillmentOption = FulfillmentOption.AmazonMachineImageFulfillmentOptionMember | FulfillmentOption.ApiFulfillmentOptionMember | FulfillmentOption.CloudFormationFulfillmentOptionMember | FulfillmentOption.ContainerFulfillmentOptionMember | FulfillmentOption.DataExchangeFulfillmentOptionMember | FulfillmentOption.Ec2ImageBuilderComponentFulfillmentOptionMember | FulfillmentOption.EksAddOnFulfillmentOptionMember | FulfillmentOption.HelmFulfillmentOptionMember | FulfillmentOption.ProfessionalServicesFulfillmentOptionMember | FulfillmentOption.SaasFulfillmentOptionMember | FulfillmentOption.SageMakerAlgorithmFulfillmentOptionMember | FulfillmentOption.SageMakerModelFulfillmentOptionMember | FulfillmentOption.$UnknownMember;
2250
+ /**
2251
+ * @public
2252
+ */
2253
+ export declare namespace FulfillmentOption {
2254
+ /**
2255
+ * <p>An Amazon Machine Image (AMI) fulfillment option for EC2 deployment.</p>
2256
+ * @public
2257
+ */
2258
+ interface AmazonMachineImageFulfillmentOptionMember {
2259
+ amazonMachineImageFulfillmentOption: AmazonMachineImageFulfillmentOption;
2260
+ apiFulfillmentOption?: never;
2261
+ cloudFormationFulfillmentOption?: never;
2262
+ containerFulfillmentOption?: never;
2263
+ helmFulfillmentOption?: never;
2264
+ eksAddOnFulfillmentOption?: never;
2265
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2266
+ dataExchangeFulfillmentOption?: never;
2267
+ professionalServicesFulfillmentOption?: never;
2268
+ saasFulfillmentOption?: never;
2269
+ sageMakerAlgorithmFulfillmentOption?: never;
2270
+ sageMakerModelFulfillmentOption?: never;
2271
+ $unknown?: never;
2272
+ }
2273
+ /**
2274
+ * <p>An API-based fulfillment option for programmatic integration.</p>
2275
+ * @public
2276
+ */
2277
+ interface ApiFulfillmentOptionMember {
2278
+ amazonMachineImageFulfillmentOption?: never;
2279
+ apiFulfillmentOption: ApiFulfillmentOption;
2280
+ cloudFormationFulfillmentOption?: never;
2281
+ containerFulfillmentOption?: never;
2282
+ helmFulfillmentOption?: never;
2283
+ eksAddOnFulfillmentOption?: never;
2284
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2285
+ dataExchangeFulfillmentOption?: never;
2286
+ professionalServicesFulfillmentOption?: never;
2287
+ saasFulfillmentOption?: never;
2288
+ sageMakerAlgorithmFulfillmentOption?: never;
2289
+ sageMakerModelFulfillmentOption?: never;
2290
+ $unknown?: never;
2291
+ }
2292
+ /**
2293
+ * <p>An AWS CloudFormation template fulfillment option for infrastructure deployment.</p>
2294
+ * @public
2295
+ */
2296
+ interface CloudFormationFulfillmentOptionMember {
2297
+ amazonMachineImageFulfillmentOption?: never;
2298
+ apiFulfillmentOption?: never;
2299
+ cloudFormationFulfillmentOption: CloudFormationFulfillmentOption;
2300
+ containerFulfillmentOption?: never;
2301
+ helmFulfillmentOption?: never;
2302
+ eksAddOnFulfillmentOption?: never;
2303
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2304
+ dataExchangeFulfillmentOption?: never;
2305
+ professionalServicesFulfillmentOption?: never;
2306
+ saasFulfillmentOption?: never;
2307
+ sageMakerAlgorithmFulfillmentOption?: never;
2308
+ sageMakerModelFulfillmentOption?: never;
2309
+ $unknown?: never;
2310
+ }
2311
+ /**
2312
+ * <p>A container image fulfillment option for container-based deployment.</p>
2313
+ * @public
2314
+ */
2315
+ interface ContainerFulfillmentOptionMember {
2316
+ amazonMachineImageFulfillmentOption?: never;
2317
+ apiFulfillmentOption?: never;
2318
+ cloudFormationFulfillmentOption?: never;
2319
+ containerFulfillmentOption: ContainerFulfillmentOption;
2320
+ helmFulfillmentOption?: never;
2321
+ eksAddOnFulfillmentOption?: never;
2322
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2323
+ dataExchangeFulfillmentOption?: never;
2324
+ professionalServicesFulfillmentOption?: never;
2325
+ saasFulfillmentOption?: never;
2326
+ sageMakerAlgorithmFulfillmentOption?: never;
2327
+ sageMakerModelFulfillmentOption?: never;
2328
+ $unknown?: never;
2329
+ }
2330
+ /**
2331
+ * <p>A Helm chart fulfillment option for Kubernetes deployment.</p>
2332
+ * @public
2333
+ */
2334
+ interface HelmFulfillmentOptionMember {
2335
+ amazonMachineImageFulfillmentOption?: never;
2336
+ apiFulfillmentOption?: never;
2337
+ cloudFormationFulfillmentOption?: never;
2338
+ containerFulfillmentOption?: never;
2339
+ helmFulfillmentOption: HelmFulfillmentOption;
2340
+ eksAddOnFulfillmentOption?: never;
2341
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2342
+ dataExchangeFulfillmentOption?: never;
2343
+ professionalServicesFulfillmentOption?: never;
2344
+ saasFulfillmentOption?: never;
2345
+ sageMakerAlgorithmFulfillmentOption?: never;
2346
+ sageMakerModelFulfillmentOption?: never;
2347
+ $unknown?: never;
2348
+ }
2349
+ /**
2350
+ * <p>An Amazon EKS add-on fulfillment option.</p>
2351
+ * @public
2352
+ */
2353
+ interface EksAddOnFulfillmentOptionMember {
2354
+ amazonMachineImageFulfillmentOption?: never;
2355
+ apiFulfillmentOption?: never;
2356
+ cloudFormationFulfillmentOption?: never;
2357
+ containerFulfillmentOption?: never;
2358
+ helmFulfillmentOption?: never;
2359
+ eksAddOnFulfillmentOption: EksAddOnFulfillmentOption;
2360
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2361
+ dataExchangeFulfillmentOption?: never;
2362
+ professionalServicesFulfillmentOption?: never;
2363
+ saasFulfillmentOption?: never;
2364
+ sageMakerAlgorithmFulfillmentOption?: never;
2365
+ sageMakerModelFulfillmentOption?: never;
2366
+ $unknown?: never;
2367
+ }
2368
+ /**
2369
+ * <p>An EC2 Image Builder component fulfillment option.</p>
2370
+ * @public
2371
+ */
2372
+ interface Ec2ImageBuilderComponentFulfillmentOptionMember {
2373
+ amazonMachineImageFulfillmentOption?: never;
2374
+ apiFulfillmentOption?: never;
2375
+ cloudFormationFulfillmentOption?: never;
2376
+ containerFulfillmentOption?: never;
2377
+ helmFulfillmentOption?: never;
2378
+ eksAddOnFulfillmentOption?: never;
2379
+ ec2ImageBuilderComponentFulfillmentOption: Ec2ImageBuilderComponentFulfillmentOption;
2380
+ dataExchangeFulfillmentOption?: never;
2381
+ professionalServicesFulfillmentOption?: never;
2382
+ saasFulfillmentOption?: never;
2383
+ sageMakerAlgorithmFulfillmentOption?: never;
2384
+ sageMakerModelFulfillmentOption?: never;
2385
+ $unknown?: never;
2386
+ }
2387
+ /**
2388
+ * <p>An AWS Data Exchange fulfillment option for data set delivery.</p>
2389
+ * @public
2390
+ */
2391
+ interface DataExchangeFulfillmentOptionMember {
2392
+ amazonMachineImageFulfillmentOption?: never;
2393
+ apiFulfillmentOption?: never;
2394
+ cloudFormationFulfillmentOption?: never;
2395
+ containerFulfillmentOption?: never;
2396
+ helmFulfillmentOption?: never;
2397
+ eksAddOnFulfillmentOption?: never;
2398
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2399
+ dataExchangeFulfillmentOption: DataExchangeFulfillmentOption;
2400
+ professionalServicesFulfillmentOption?: never;
2401
+ saasFulfillmentOption?: never;
2402
+ sageMakerAlgorithmFulfillmentOption?: never;
2403
+ sageMakerModelFulfillmentOption?: never;
2404
+ $unknown?: never;
2405
+ }
2406
+ /**
2407
+ * <p>A professional services fulfillment option.</p>
2408
+ * @public
2409
+ */
2410
+ interface ProfessionalServicesFulfillmentOptionMember {
2411
+ amazonMachineImageFulfillmentOption?: never;
2412
+ apiFulfillmentOption?: never;
2413
+ cloudFormationFulfillmentOption?: never;
2414
+ containerFulfillmentOption?: never;
2415
+ helmFulfillmentOption?: never;
2416
+ eksAddOnFulfillmentOption?: never;
2417
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2418
+ dataExchangeFulfillmentOption?: never;
2419
+ professionalServicesFulfillmentOption: ProfessionalServicesFulfillmentOption;
2420
+ saasFulfillmentOption?: never;
2421
+ sageMakerAlgorithmFulfillmentOption?: never;
2422
+ sageMakerModelFulfillmentOption?: never;
2423
+ $unknown?: never;
2424
+ }
2425
+ /**
2426
+ * <p>A Software as a Service (SaaS) fulfillment option.</p>
2427
+ * @public
2428
+ */
2429
+ interface SaasFulfillmentOptionMember {
2430
+ amazonMachineImageFulfillmentOption?: never;
2431
+ apiFulfillmentOption?: never;
2432
+ cloudFormationFulfillmentOption?: never;
2433
+ containerFulfillmentOption?: never;
2434
+ helmFulfillmentOption?: never;
2435
+ eksAddOnFulfillmentOption?: never;
2436
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2437
+ dataExchangeFulfillmentOption?: never;
2438
+ professionalServicesFulfillmentOption?: never;
2439
+ saasFulfillmentOption: SaasFulfillmentOption;
2440
+ sageMakerAlgorithmFulfillmentOption?: never;
2441
+ sageMakerModelFulfillmentOption?: never;
2442
+ $unknown?: never;
2443
+ }
2444
+ /**
2445
+ * <p>An Amazon SageMaker algorithm fulfillment option.</p>
2446
+ * @public
2447
+ */
2448
+ interface SageMakerAlgorithmFulfillmentOptionMember {
2449
+ amazonMachineImageFulfillmentOption?: never;
2450
+ apiFulfillmentOption?: never;
2451
+ cloudFormationFulfillmentOption?: never;
2452
+ containerFulfillmentOption?: never;
2453
+ helmFulfillmentOption?: never;
2454
+ eksAddOnFulfillmentOption?: never;
2455
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2456
+ dataExchangeFulfillmentOption?: never;
2457
+ professionalServicesFulfillmentOption?: never;
2458
+ saasFulfillmentOption?: never;
2459
+ sageMakerAlgorithmFulfillmentOption: SageMakerAlgorithmFulfillmentOption;
2460
+ sageMakerModelFulfillmentOption?: never;
2461
+ $unknown?: never;
2462
+ }
2463
+ /**
2464
+ * <p>An Amazon SageMaker model fulfillment option.</p>
2465
+ * @public
2466
+ */
2467
+ interface SageMakerModelFulfillmentOptionMember {
2468
+ amazonMachineImageFulfillmentOption?: never;
2469
+ apiFulfillmentOption?: never;
2470
+ cloudFormationFulfillmentOption?: never;
2471
+ containerFulfillmentOption?: never;
2472
+ helmFulfillmentOption?: never;
2473
+ eksAddOnFulfillmentOption?: never;
2474
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2475
+ dataExchangeFulfillmentOption?: never;
2476
+ professionalServicesFulfillmentOption?: never;
2477
+ saasFulfillmentOption?: never;
2478
+ sageMakerAlgorithmFulfillmentOption?: never;
2479
+ sageMakerModelFulfillmentOption: SageMakerModelFulfillmentOption;
2480
+ $unknown?: never;
2481
+ }
2482
+ /**
2483
+ * @public
2484
+ */
2485
+ interface $UnknownMember {
2486
+ amazonMachineImageFulfillmentOption?: never;
2487
+ apiFulfillmentOption?: never;
2488
+ cloudFormationFulfillmentOption?: never;
2489
+ containerFulfillmentOption?: never;
2490
+ helmFulfillmentOption?: never;
2491
+ eksAddOnFulfillmentOption?: never;
2492
+ ec2ImageBuilderComponentFulfillmentOption?: never;
2493
+ dataExchangeFulfillmentOption?: never;
2494
+ professionalServicesFulfillmentOption?: never;
2495
+ saasFulfillmentOption?: never;
2496
+ sageMakerAlgorithmFulfillmentOption?: never;
2497
+ sageMakerModelFulfillmentOption?: never;
2498
+ $unknown: [string, any];
2499
+ }
2500
+ /**
2501
+ * @deprecated unused in schema-serde mode.
2502
+ *
2503
+ */
2504
+ interface Visitor<T> {
2505
+ amazonMachineImageFulfillmentOption: (value: AmazonMachineImageFulfillmentOption) => T;
2506
+ apiFulfillmentOption: (value: ApiFulfillmentOption) => T;
2507
+ cloudFormationFulfillmentOption: (value: CloudFormationFulfillmentOption) => T;
2508
+ containerFulfillmentOption: (value: ContainerFulfillmentOption) => T;
2509
+ helmFulfillmentOption: (value: HelmFulfillmentOption) => T;
2510
+ eksAddOnFulfillmentOption: (value: EksAddOnFulfillmentOption) => T;
2511
+ ec2ImageBuilderComponentFulfillmentOption: (value: Ec2ImageBuilderComponentFulfillmentOption) => T;
2512
+ dataExchangeFulfillmentOption: (value: DataExchangeFulfillmentOption) => T;
2513
+ professionalServicesFulfillmentOption: (value: ProfessionalServicesFulfillmentOption) => T;
2514
+ saasFulfillmentOption: (value: SaasFulfillmentOption) => T;
2515
+ sageMakerAlgorithmFulfillmentOption: (value: SageMakerAlgorithmFulfillmentOption) => T;
2516
+ sageMakerModelFulfillmentOption: (value: SageMakerModelFulfillmentOption) => T;
2517
+ _: (name: string, value: any) => T;
2518
+ }
2519
+ }
2520
+ /**
2521
+ * @public
2522
+ */
2523
+ export interface ListFulfillmentOptionsOutput {
2524
+ /**
2525
+ * <p>The fulfillment options available for the product. Each option describes how the buyer can deploy or access the product.</p>
2526
+ * @public
2527
+ */
2528
+ fulfillmentOptions: FulfillmentOption[] | undefined;
2529
+ /**
2530
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2531
+ * @public
2532
+ */
2533
+ nextToken?: string | undefined;
2534
+ }
2535
+ /**
2536
+ * <p>A filter used to narrow purchase option results by product, seller, type, visibility, or availability.</p>
2537
+ * @public
2538
+ */
2539
+ export interface PurchaseOptionFilter {
2540
+ /**
2541
+ * <p>The type of filter to apply, such as <code>PRODUCT_ID</code>, <code>VISIBILITY_SCOPE</code>, or <code>PURCHASE_OPTION_TYPE</code>.</p>
2542
+ * @public
2543
+ */
2544
+ filterType: PurchaseOptionFilterType | undefined;
2545
+ /**
2546
+ * <p>The values to filter by. Multiple values within the same filter are combined with OR logic.</p>
2547
+ * @public
2548
+ */
2549
+ filterValues: string[] | undefined;
2550
+ }
2551
+ /**
2552
+ * @public
2553
+ */
2554
+ export interface ListPurchaseOptionsInput {
2555
+ /**
2556
+ * <p>Filters to narrow the results. Multiple filters are combined with AND logic. Multiple values within the same filter are combined with OR logic.</p>
2557
+ * @public
2558
+ */
2559
+ filters?: PurchaseOptionFilter[] | undefined;
2560
+ /**
2561
+ * <p>The maximum number of results that are returned per call. You can use <code>nextToken</code> to get more results.</p>
2562
+ * @public
2563
+ */
2564
+ maxResults?: number | undefined;
2565
+ /**
2566
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2567
+ * @public
2568
+ */
2569
+ nextToken?: string | undefined;
2570
+ }
2571
+ /**
2572
+ * <p>A product, offer, and optional offer set associated with a purchase option.</p>
2573
+ * @public
2574
+ */
2575
+ export interface PurchaseOptionAssociatedEntity {
2576
+ /**
2577
+ * <p>Information about the product associated with the purchase option.</p>
2578
+ * @public
2579
+ */
2580
+ product: ProductInformation | undefined;
2581
+ /**
2582
+ * <p>Information about the offer associated with the purchase option.</p>
2583
+ * @public
2584
+ */
2585
+ offer: OfferInformation | undefined;
2586
+ /**
2587
+ * <p>Information about the offer set, if the purchase option is part of a bundled offer set.</p>
2588
+ * @public
2589
+ */
2590
+ offerSet?: OfferSetInformation | undefined;
2591
+ }
2592
+ /**
2593
+ * <p>Summary information about a purchase option (offer or offer set) available to the buyer, including the seller, badges, and associated products.</p>
2594
+ * @public
2595
+ */
2596
+ export interface PurchaseOptionSummary {
2597
+ /**
2598
+ * <p>The unique identifier of the purchase option.</p>
2599
+ * @public
2600
+ */
2601
+ purchaseOptionId: string | undefined;
2602
+ /**
2603
+ * <p>The name of the catalog that the purchase option belongs to.</p>
2604
+ * @public
2605
+ */
2606
+ catalog: string | undefined;
2607
+ /**
2608
+ * <p>The type of purchase option. Values are <code>OFFER</code> for a single-product offer or <code>OFFERSET</code> for a bundled offer set.</p>
2609
+ * @public
2610
+ */
2611
+ purchaseOptionType: PurchaseOptionType | undefined;
2612
+ /**
2613
+ * <p>The display name of the purchase option.</p>
2614
+ * @public
2615
+ */
2616
+ purchaseOptionName?: string | undefined;
2617
+ /**
2618
+ * <p>The date and time when the purchase option became available to the buyer.</p>
2619
+ * @public
2620
+ */
2621
+ availableFromTime?: Date | undefined;
2622
+ /**
2623
+ * <p>The date and time when the purchase option expires and is no longer available for procurement.</p>
2624
+ * @public
2625
+ */
2626
+ expirationTime?: Date | undefined;
2627
+ /**
2628
+ * <p>The entity responsible for selling the product under this purchase option.</p>
2629
+ * @public
2630
+ */
2631
+ sellerOfRecord: SellerInformation | undefined;
2632
+ /**
2633
+ * <p>Badges indicating special attributes of the purchase option, such as private pricing or future dated.</p>
2634
+ * @public
2635
+ */
2636
+ badges?: PurchaseOptionBadge[] | undefined;
2637
+ /**
2638
+ * <p>The products, offers, and offer sets associated with this purchase option.</p>
2639
+ * @public
2640
+ */
2641
+ associatedEntities: PurchaseOptionAssociatedEntity[] | undefined;
2642
+ }
2643
+ /**
2644
+ * @public
2645
+ */
2646
+ export interface ListPurchaseOptionsOutput {
2647
+ /**
2648
+ * <p>The purchase options available to the buyer. Each option is either an offer for a single product or an offer set spanning multiple products.</p>
2649
+ * @public
2650
+ */
2651
+ purchaseOptions?: PurchaseOptionSummary[] | undefined;
2652
+ /**
2653
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2654
+ * @public
2655
+ */
2656
+ nextToken?: string | undefined;
2657
+ }
2658
+ /**
2659
+ * <p>A filter used to narrow search results by attribute, such as category, pricing model, or fulfillment type.</p>
2660
+ * @public
2661
+ */
2662
+ export interface SearchFilter {
2663
+ /**
2664
+ * <p>The type of filter to apply.</p>
2665
+ * @public
2666
+ */
2667
+ filterType: SearchFilterType | undefined;
2668
+ /**
2669
+ * <p>The values to filter by. Term filters accept multiple values (OR logic). Range filters (MIN/MAX_AVERAGE_CUSTOMER_RATING) accept a single value between 0.0 and 5.0.</p>
2670
+ * @public
2671
+ */
2672
+ filterValues: string[] | undefined;
2673
+ }
2674
+ /**
2675
+ * @public
2676
+ */
2677
+ export interface SearchFacetsInput {
2678
+ /**
2679
+ * <p>The search query text to filter listings before retrieving facets.</p>
2680
+ * @public
2681
+ */
2682
+ searchText?: string | undefined;
2683
+ /**
2684
+ * <p>Filters to apply before retrieving facets. Multiple filters are combined with AND logic. Multiple values within the same filter are combined with OR logic.</p>
2685
+ * @public
2686
+ */
2687
+ filters?: SearchFilter[] | undefined;
2688
+ /**
2689
+ * <p>A list of specific facet types to retrieve. If empty or null, all available facets are returned.</p>
2690
+ * @public
2691
+ */
2692
+ facetTypes?: SearchFacetType[] | undefined;
2693
+ /**
2694
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2695
+ * @public
2696
+ */
2697
+ nextToken?: string | undefined;
2698
+ }
2699
+ /**
2700
+ * <p>A facet value with display information and a count of matching listings. Used to build filter and browse experiences.</p>
2701
+ * @public
2702
+ */
2703
+ export interface ListingFacet {
2704
+ /**
2705
+ * <p>The internal value used for filtering when passed back in a search filter.</p>
2706
+ * @public
2707
+ */
2708
+ value: string | undefined;
2709
+ /**
2710
+ * <p>The human-readable name of the facet value, suitable for display in a user interface.</p>
2711
+ * @public
2712
+ */
2713
+ displayName: string | undefined;
2714
+ /**
2715
+ * <p>The parent facet value for hierarchical facets, such as subcategories.</p>
2716
+ * @public
2717
+ */
2718
+ parent?: string | undefined;
2719
+ /**
2720
+ * <p>The number of listings matching this facet value.</p>
2721
+ * @public
2722
+ */
2723
+ count: number | undefined;
2724
+ }
2725
+ /**
2726
+ * @public
2727
+ */
2728
+ export interface SearchFacetsOutput {
2729
+ /**
2730
+ * <p>The total number of listings matching the search criteria.</p>
2731
+ * @public
2732
+ */
2733
+ totalResults: number | undefined;
2734
+ /**
2735
+ * <p>A map of facet types to their corresponding facet values. Each facet value includes a display name, internal value, and count of matching listings.</p>
2736
+ * @public
2737
+ */
2738
+ listingFacets: Partial<Record<SearchFacetType, ListingFacet[]>> | undefined;
2739
+ /**
2740
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2741
+ * @public
2742
+ */
2743
+ nextToken?: string | undefined;
2744
+ }
2745
+ /**
2746
+ * @public
2747
+ */
2748
+ export interface SearchListingsInput {
2749
+ /**
2750
+ * <p>The search query text to find relevant listings.</p>
2751
+ * @public
2752
+ */
2753
+ searchText?: string | undefined;
2754
+ /**
2755
+ * <p>Filters to narrow search results. Multiple filters are combined with AND logic. Multiple values within the same filter are combined with OR logic.</p>
2756
+ * @public
2757
+ */
2758
+ filters?: SearchFilter[] | undefined;
2759
+ /**
2760
+ * <p>The maximum number of results that are returned per call. You can use <code>nextToken</code> to get more results.</p>
2761
+ * @public
2762
+ */
2763
+ maxResults?: number | undefined;
2764
+ /**
2765
+ * <p>The field to sort results by. Valid values are <code>RELEVANCE</code> and <code>AVERAGE_CUSTOMER_RATING</code>.</p>
2766
+ * @public
2767
+ */
2768
+ sortBy?: SearchListingsSortBy | undefined;
2769
+ /**
2770
+ * <p>The sort direction. Valid values are <code>DESCENDING</code> and <code>ASCENDING</code>.</p>
2771
+ * @public
2772
+ */
2773
+ sortOrder?: SearchListingsSortOrder | undefined;
2774
+ /**
2775
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2776
+ * @public
2777
+ */
2778
+ nextToken?: string | undefined;
2779
+ }
2780
+ /**
2781
+ * <p>A product associated with a listing summary.</p>
2782
+ * @public
2783
+ */
2784
+ export interface ListingSummaryAssociatedEntity {
2785
+ /**
2786
+ * <p>Information about the associated product.</p>
2787
+ * @public
2788
+ */
2789
+ product?: ProductInformation | undefined;
2790
+ }
2791
+ /**
2792
+ * <p>Summary information about a listing returned by search operations, including the listing name, description, badges, categories, pricing models, reviews, and associated products.</p>
2793
+ * @public
2794
+ */
2795
+ export interface ListingSummary {
2796
+ /**
2797
+ * <p>The unique identifier of the listing.</p>
2798
+ * @public
2799
+ */
2800
+ listingId: string | undefined;
2801
+ /**
2802
+ * <p>The human-readable display name of the listing.</p>
2803
+ * @public
2804
+ */
2805
+ listingName: string | undefined;
2806
+ /**
2807
+ * <p>The entity who created and published the listing.</p>
2808
+ * @public
2809
+ */
2810
+ publisher: SellerInformation | undefined;
2811
+ /**
2812
+ * <p>The name of the catalog that the listing belongs to.</p>
2813
+ * @public
2814
+ */
2815
+ catalog: string | undefined;
2816
+ /**
2817
+ * <p>A 1–3 sentence summary describing the key aspects of the listing.</p>
2818
+ * @public
2819
+ */
2820
+ shortDescription: string | undefined;
2821
+ /**
2822
+ * <p>The URL of the logo thumbnail image for the listing.</p>
2823
+ * @public
2824
+ */
2825
+ logoThumbnailUrl: string | undefined;
2826
+ /**
2827
+ * <p>The categories used to classify this listing into logical groups.</p>
2828
+ * @public
2829
+ */
2830
+ categories: Category[] | undefined;
2831
+ /**
2832
+ * <p>A summary of fulfillment options available for the listing.</p>
2833
+ * @public
2834
+ */
2835
+ fulfillmentOptionSummaries: FulfillmentOptionSummary[] | undefined;
2836
+ /**
2837
+ * <p>Badges indicating special attributes of the listing.</p>
2838
+ * @public
2839
+ */
2840
+ badges: ListingBadge[] | undefined;
2841
+ /**
2842
+ * <p>A summary of customer reviews for the listing.</p>
2843
+ * @public
2844
+ */
2845
+ reviewSummary: ReviewSummary | undefined;
2846
+ /**
2847
+ * <p>The pricing models for offers associated with this listing.</p>
2848
+ * @public
2849
+ */
2850
+ pricingModels: PricingModel[] | undefined;
2851
+ /**
2852
+ * <p>The pricing units that define the billing dimensions for offers associated with this listing.</p>
2853
+ * @public
2854
+ */
2855
+ pricingUnits: PricingUnit[] | undefined;
2856
+ /**
2857
+ * <p>The products associated with this listing.</p>
2858
+ * @public
2859
+ */
2860
+ associatedEntities: ListingSummaryAssociatedEntity[] | undefined;
2861
+ }
2862
+ /**
2863
+ * @public
2864
+ */
2865
+ export interface SearchListingsOutput {
2866
+ /**
2867
+ * <p>The total number of listings matching the search criteria.</p>
2868
+ * @public
2869
+ */
2870
+ totalResults: number | undefined;
2871
+ /**
2872
+ * <p>The listing summaries matching the search criteria. Each summary includes the listing name, description, badges, categories, pricing models, reviews, and associated products.</p>
2873
+ * @public
2874
+ */
2875
+ listingSummaries: ListingSummary[] | undefined;
2876
+ /**
2877
+ * <p>If <code>nextToken</code> is returned, there are more results available. Make the call again using the returned token to retrieve the next page.</p>
2878
+ * @public
2879
+ */
2880
+ nextToken?: string | undefined;
2881
+ }