@aws-sdk/client-eks 3.1113.0 → 3.1114.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 (65) hide show
  1. package/README.md +35 -0
  2. package/dist-cjs/index.js +381 -123
  3. package/dist-es/EKS.js +14 -0
  4. package/dist-es/commands/ActivateCertificateAuthorityCommand.js +4 -0
  5. package/dist-es/commands/CreateCertificateAuthorityCommand.js +4 -0
  6. package/dist-es/commands/DeleteCertificateAuthorityCommand.js +4 -0
  7. package/dist-es/commands/DescribeCertificateAuthorityCommand.js +4 -0
  8. package/dist-es/commands/ListCertificateAuthoritiesCommand.js +4 -0
  9. package/dist-es/commands/index.js +5 -0
  10. package/dist-es/models/enums.js +76 -52
  11. package/dist-es/models/errors.js +29 -29
  12. package/dist-es/pagination/ListCertificateAuthoritiesPaginator.js +4 -0
  13. package/dist-es/pagination/index.js +1 -0
  14. package/dist-es/schemas/schemas_0.js +166 -36
  15. package/dist-es/waiters/index.js +1 -0
  16. package/dist-es/waiters/waitForCertificateAuthorityUpdateComplete.js +49 -0
  17. package/dist-types/EKS.d.ts +48 -0
  18. package/dist-types/EKSClient.d.ts +7 -2
  19. package/dist-types/commands/ActivateCertificateAuthorityCommand.d.ts +139 -0
  20. package/dist-types/commands/AssociateEncryptionConfigCommand.d.ts +2 -2
  21. package/dist-types/commands/AssociateIdentityProviderConfigCommand.d.ts +2 -2
  22. package/dist-types/commands/CancelUpdateCommand.d.ts +2 -2
  23. package/dist-types/commands/CreateCertificateAuthorityCommand.d.ts +149 -0
  24. package/dist-types/commands/CreateClusterCommand.d.ts +4 -0
  25. package/dist-types/commands/DeleteCertificateAuthorityCommand.d.ts +134 -0
  26. package/dist-types/commands/DeleteClusterCommand.d.ts +4 -0
  27. package/dist-types/commands/DeregisterClusterCommand.d.ts +4 -0
  28. package/dist-types/commands/DescribeCertificateAuthorityCommand.d.ts +104 -0
  29. package/dist-types/commands/DescribeClusterCommand.d.ts +4 -0
  30. package/dist-types/commands/DescribeUpdateCommand.d.ts +2 -2
  31. package/dist-types/commands/DisassociateIdentityProviderConfigCommand.d.ts +2 -2
  32. package/dist-types/commands/ListCertificateAuthoritiesCommand.d.ts +102 -0
  33. package/dist-types/commands/RegisterClusterCommand.d.ts +4 -0
  34. package/dist-types/commands/UpdateAddonCommand.d.ts +2 -2
  35. package/dist-types/commands/UpdateCapabilityCommand.d.ts +2 -2
  36. package/dist-types/commands/UpdateClusterConfigCommand.d.ts +2 -2
  37. package/dist-types/commands/UpdateClusterVersionCommand.d.ts +2 -2
  38. package/dist-types/commands/UpdateNodegroupConfigCommand.d.ts +2 -2
  39. package/dist-types/commands/UpdateNodegroupVersionCommand.d.ts +2 -2
  40. package/dist-types/commands/index.d.ts +5 -0
  41. package/dist-types/models/enums.d.ts +120 -64
  42. package/dist-types/models/errors.d.ts +37 -37
  43. package/dist-types/models/models_0.d.ts +569 -186
  44. package/dist-types/pagination/ListCertificateAuthoritiesPaginator.d.ts +7 -0
  45. package/dist-types/pagination/index.d.ts +1 -0
  46. package/dist-types/schemas/schemas_0.d.ts +20 -0
  47. package/dist-types/ts3.4/EKS.d.ts +98 -0
  48. package/dist-types/ts3.4/EKSClient.d.ts +30 -0
  49. package/dist-types/ts3.4/commands/ActivateCertificateAuthorityCommand.d.ts +42 -0
  50. package/dist-types/ts3.4/commands/CreateCertificateAuthorityCommand.d.ts +42 -0
  51. package/dist-types/ts3.4/commands/DeleteCertificateAuthorityCommand.d.ts +42 -0
  52. package/dist-types/ts3.4/commands/DescribeCertificateAuthorityCommand.d.ts +42 -0
  53. package/dist-types/ts3.4/commands/ListCertificateAuthoritiesCommand.d.ts +42 -0
  54. package/dist-types/ts3.4/commands/index.d.ts +5 -0
  55. package/dist-types/ts3.4/models/enums.d.ts +90 -58
  56. package/dist-types/ts3.4/models/errors.d.ts +14 -14
  57. package/dist-types/ts3.4/models/models_0.d.ts +103 -22
  58. package/dist-types/ts3.4/pagination/ListCertificateAuthoritiesPaginator.d.ts +11 -0
  59. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  60. package/dist-types/ts3.4/schemas/schemas_0.d.ts +20 -0
  61. package/dist-types/ts3.4/waiters/index.d.ts +1 -0
  62. package/dist-types/ts3.4/waiters/waitForCertificateAuthorityUpdateComplete.d.ts +15 -0
  63. package/dist-types/waiters/index.d.ts +1 -0
  64. package/dist-types/waiters/waitForCertificateAuthorityUpdateComplete.d.ts +15 -0
  65. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
- import type { AccessScopeType, AddonIssueCode, AddonStatus, AMITypes, ArgoCdRole, AuthenticationMode, CancellationStatus, CapabilityDeletePropagationPolicy, CapabilityIssueCode, CapabilityStatus, CapabilityType, CapacityTypes, Category, ClusterIssueCode, ClusterStatus, ClusterVersionStatus, ConfigStatus, ConnectorConfigProvider, ControlPlaneEgressModeType, EksAnywhereSubscriptionLicenseType, EksAnywhereSubscriptionStatus, EksAnywhereSubscriptionTermUnit, ErrorCode, FargateProfileIssueCode, FargateProfileStatus, InsightsRefreshStatus, InsightStatusValue, IpFamily, LogType, NodegroupIssueCode, NodegroupStatus, NodegroupUpdateStrategies, ProvisionedControlPlaneTier, RepairAction, ResolveConflicts, ScoringStrategyType, SpreadLevel, SsoIdentityType, SupportType, TaintEffect, UpdateParamType, UpdateStatus, UpdateType, VersionStatus, WarmPoolState } from "./enums";
1
+ import type { AccessScopeType, AddonIssueCode, AddonStatus, AMITypes, ArgoCdRole, AuthenticationMode, CancellationStatus, CapabilityDeletePropagationPolicy, CapabilityIssueCode, CapabilityStatus, CapabilityType, CapacityTypes, Category, CertificateAuthorityActivatedBy, CertificateAuthorityCreatedBy, CertificateAuthorityDistributionStatus, CertificateAuthoritySigningStatus, ClusterIssueCode, ClusterStatus, ClusterVersionStatus, ConfigStatus, ConnectorConfigProvider, ControlPlaneEgressModeType, EksAnywhereSubscriptionLicenseType, EksAnywhereSubscriptionStatus, EksAnywhereSubscriptionTermUnit, ErrorCode, FargateProfileIssueCode, FargateProfileStatus, InsightsRefreshStatus, InsightStatusValue, IpFamily, LogType, NodegroupIssueCode, NodegroupStatus, NodegroupUpdateStrategies, ProvisionedControlPlaneTier, RepairAction, ResolveConflicts, ScoringStrategyType, SpreadLevel, SsoIdentityType, SupportType, TaintEffect, UpdateParamType, UpdateStatus, UpdateType, VersionStatus, WarmPoolState } from "./enums";
2
2
  /**
3
3
  * <p>The access configuration for the cluster.</p>
4
4
  * @public
@@ -127,6 +127,250 @@ export interface AccessScope {
127
127
  */
128
128
  namespaces?: string[] | undefined;
129
129
  }
130
+ /**
131
+ * @public
132
+ */
133
+ export interface ActivateCertificateAuthorityRequest {
134
+ /**
135
+ * <p>The name of your cluster.</p>
136
+ * @public
137
+ */
138
+ clusterName: string | undefined;
139
+ /**
140
+ * <p>The ID of the certificate authority to activate as the cluster's signing certificate
141
+ * authority. This certificate authority must already exist on the cluster and have a
142
+ * <code>distributionStatus</code> of <code>COMPLETE</code>.</p>
143
+ * @public
144
+ */
145
+ certificateAuthorityId: string | undefined;
146
+ /**
147
+ * <p>A unique, case-sensitive identifier that you provide to ensure
148
+ * the idempotency of the request.</p>
149
+ * @public
150
+ */
151
+ clientRequestToken?: string | undefined;
152
+ }
153
+ /**
154
+ * <p>Summary information about a certificate authority (CA) for an Amazon EKS cluster, returned by
155
+ * <a href="https://docs.aws.amazon.com/eks/latest/APIReference/API_ListCertificateAuthorities.html">
156
+ * <code>ListCertificateAuthorities</code>
157
+ * </a> and the certificate-authority write
158
+ * operations.</p>
159
+ * @public
160
+ */
161
+ export interface CertificateAuthoritySummary {
162
+ /**
163
+ * <p>The unique identifier of the certificate authority.</p>
164
+ * @public
165
+ */
166
+ id?: string | undefined;
167
+ /**
168
+ * <p>The Unix epoch timestamp in seconds for when the certificate authority was created.</p>
169
+ * @public
170
+ */
171
+ createdAt?: Date | undefined;
172
+ /**
173
+ * <p>The entity that created the certificate authority, either <code>CUSTOMER</code> or
174
+ * <code>EKS</code>.</p>
175
+ * @public
176
+ */
177
+ createdBy?: CertificateAuthorityCreatedBy | undefined;
178
+ /**
179
+ * <p>The Unix epoch timestamp in seconds for when the certificate authority was last
180
+ * activated. This value is absent if the certificate authority has never been
181
+ * activated.</p>
182
+ * @public
183
+ */
184
+ activatedAt?: Date | undefined;
185
+ /**
186
+ * <p>The entity that most recently activated the certificate authority, either
187
+ * <code>CUSTOMER</code> or <code>EKS</code>.</p>
188
+ * @public
189
+ */
190
+ activatedBy?: CertificateAuthorityActivatedBy | undefined;
191
+ /**
192
+ * <p>The signing status of the certificate authority: <code>IN_USE</code>,
193
+ * <code>ACTIVATING</code>, or <code>NOT_USED</code>.</p>
194
+ * @public
195
+ */
196
+ signingStatus?: CertificateAuthoritySigningStatus | undefined;
197
+ /**
198
+ * <p>The distribution status of the certificate authority: <code>IN_PROGRESS</code>,
199
+ * <code>COMPLETE</code>, <code>FAILED</code>, or <code>DELETING</code>.</p>
200
+ * @public
201
+ */
202
+ distributionStatus?: CertificateAuthorityDistributionStatus | undefined;
203
+ }
204
+ /**
205
+ * <p>Contains information about the latest cancellation of an update to an Amazon EKS cluster.</p>
206
+ * @public
207
+ */
208
+ export interface Cancellation {
209
+ /**
210
+ * <p>The current status of the cancellation. Valid values are <code>InProgress</code>,
211
+ * <code>Failed</code>, and <code>Successful</code>.</p>
212
+ * @public
213
+ */
214
+ status?: CancellationStatus | undefined;
215
+ /**
216
+ * <p>A message providing additional details about the cancellation, such as the reason for
217
+ * the cancellation or failure details.</p>
218
+ * @public
219
+ */
220
+ reason?: string | undefined;
221
+ }
222
+ /**
223
+ * <p>An object representing an error when an asynchronous operation fails.</p>
224
+ * @public
225
+ */
226
+ export interface ErrorDetail {
227
+ /**
228
+ * <p>A brief description of the error. </p>
229
+ * <ul>
230
+ * <li>
231
+ * <p>
232
+ * <b>SubnetNotFound</b>: We couldn't find one of the
233
+ * subnets associated with the cluster.</p>
234
+ * </li>
235
+ * <li>
236
+ * <p>
237
+ * <b>SecurityGroupNotFound</b>: We couldn't find one
238
+ * of the security groups associated with the cluster.</p>
239
+ * </li>
240
+ * <li>
241
+ * <p>
242
+ * <b>EniLimitReached</b>: You have reached the elastic
243
+ * network interface limit for your account.</p>
244
+ * </li>
245
+ * <li>
246
+ * <p>
247
+ * <b>IpNotAvailable</b>: A subnet associated with the
248
+ * cluster doesn't have any available IP addresses.</p>
249
+ * </li>
250
+ * <li>
251
+ * <p>
252
+ * <b>AccessDenied</b>: You don't have permissions to
253
+ * perform the specified operation.</p>
254
+ * </li>
255
+ * <li>
256
+ * <p>
257
+ * <b>OperationNotPermitted</b>: The service role
258
+ * associated with the cluster doesn't have the required access permissions for
259
+ * Amazon EKS.</p>
260
+ * </li>
261
+ * <li>
262
+ * <p>
263
+ * <b>VpcIdNotFound</b>: We couldn't find the VPC
264
+ * associated with the cluster.</p>
265
+ * </li>
266
+ * </ul>
267
+ * @public
268
+ */
269
+ errorCode?: ErrorCode | undefined;
270
+ /**
271
+ * <p>A more complete description of the error.</p>
272
+ * @public
273
+ */
274
+ errorMessage?: string | undefined;
275
+ /**
276
+ * <p>An optional field that contains the resource IDs associated with the error.</p>
277
+ * @public
278
+ */
279
+ resourceIds?: string[] | undefined;
280
+ }
281
+ /**
282
+ * <p>An object representing the details of an update request.</p>
283
+ * @public
284
+ */
285
+ export interface UpdateParam {
286
+ /**
287
+ * <p>The keys associated with an update request.</p>
288
+ * @public
289
+ */
290
+ type?: UpdateParamType | undefined;
291
+ /**
292
+ * <p>The value of the keys submitted as part of an update request.</p>
293
+ * @public
294
+ */
295
+ value?: string | undefined;
296
+ }
297
+ /**
298
+ * <p>An object representing an asynchronous update.</p>
299
+ * @public
300
+ */
301
+ export interface Update {
302
+ /**
303
+ * <p>A UUID that is used to track the update.</p>
304
+ * @public
305
+ */
306
+ id?: string | undefined;
307
+ /**
308
+ * <p>The current status of the update.</p>
309
+ * @public
310
+ */
311
+ status?: UpdateStatus | undefined;
312
+ /**
313
+ * <p>The type of the update.</p>
314
+ * @public
315
+ */
316
+ type?: UpdateType | undefined;
317
+ /**
318
+ * <p>A key-value map that contains the parameters associated with the update.</p>
319
+ * @public
320
+ */
321
+ params?: UpdateParam[] | undefined;
322
+ /**
323
+ * <p>The Unix epoch timestamp at object creation.</p>
324
+ * @public
325
+ */
326
+ createdAt?: Date | undefined;
327
+ /**
328
+ * <p>Any errors associated with a <code>Failed</code> update.</p>
329
+ * @public
330
+ */
331
+ errors?: ErrorDetail[] | undefined;
332
+ /**
333
+ * <p>The latest cancellation information for the update. This field is present only if any
334
+ * cancellation is attempted for the update.</p>
335
+ * @public
336
+ */
337
+ cancellation?: Cancellation | undefined;
338
+ }
339
+ /**
340
+ * @public
341
+ */
342
+ export interface ActivateCertificateAuthorityResponse {
343
+ /**
344
+ * <p>An object representing the asynchronous update that promotes the certificate authority
345
+ * to be the cluster's signer.</p>
346
+ * @public
347
+ */
348
+ update?: Update | undefined;
349
+ /**
350
+ * <p>Summary information about the certificate authority that is being activated.</p>
351
+ * @public
352
+ */
353
+ certificateAuthority?: CertificateAuthoritySummary | undefined;
354
+ }
355
+ /**
356
+ * <p>Identifies the certificate authority that is currently signing certificates for the
357
+ * cluster.</p>
358
+ * @public
359
+ */
360
+ export interface ActiveCertificateAuthority {
361
+ /**
362
+ * <p>The unique identifier of the certificate authority that is currently signing
363
+ * certificates for the cluster.</p>
364
+ * @public
365
+ */
366
+ id?: string | undefined;
367
+ /**
368
+ * <p>The entity that activated the current signing certificate authority, either
369
+ * <code>CUSTOMER</code> or <code>EKS</code>.</p>
370
+ * @public
371
+ */
372
+ activatedBy?: CertificateAuthorityActivatedBy | undefined;
373
+ }
130
374
  /**
131
375
  * <p>An issue related to an add-on.</p>
132
376
  * @public
@@ -655,231 +899,96 @@ export interface AssociatedAccessPolicy {
655
899
  */
656
900
  policyArn?: string | undefined;
657
901
  /**
658
- * <p>The scope of the access policy.</p>
659
- * @public
660
- */
661
- accessScope?: AccessScope | undefined;
662
- /**
663
- * <p>The date and time the <code>AccessPolicy</code> was associated with an
664
- * <code>AccessEntry</code>.</p>
665
- * @public
666
- */
667
- associatedAt?: Date | undefined;
668
- /**
669
- * <p>The Unix epoch timestamp for the last modification to the object.</p>
670
- * @public
671
- */
672
- modifiedAt?: Date | undefined;
673
- }
674
- /**
675
- * @public
676
- */
677
- export interface AssociateAccessPolicyResponse {
678
- /**
679
- * <p>The name of your cluster.</p>
680
- * @public
681
- */
682
- clusterName?: string | undefined;
683
- /**
684
- * <p>The ARN of the IAM principal for the <code>AccessEntry</code>.</p>
685
- * @public
686
- */
687
- principalArn?: string | undefined;
688
- /**
689
- * <p>The <code>AccessPolicy</code> and scope associated to the
690
- * <code>AccessEntry</code>.</p>
691
- * @public
692
- */
693
- associatedAccessPolicy?: AssociatedAccessPolicy | undefined;
694
- }
695
- /**
696
- * <p>Identifies the Key Management Service (KMS) key used to encrypt the secrets.</p>
697
- * @public
698
- */
699
- export interface Provider {
700
- /**
701
- * <p>Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric and created in
702
- * the same Amazon Web Services Region as the cluster. If the KMS key was created in a different
703
- * account, the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html">IAM principal</a> must have access to the KMS key. For more information,
704
- * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html">Allowing
705
- * users in other accounts to use a KMS key</a> in the <i>Key Management Service
706
- * Developer Guide</i>.</p>
707
- * @public
708
- */
709
- keyArn?: string | undefined;
710
- }
711
- /**
712
- * <p>The encryption configuration for the cluster.</p>
713
- * @public
714
- */
715
- export interface EncryptionConfig {
716
- /**
717
- * <p>Specifies the resources to be encrypted. The only supported value is
718
- * <code>secrets</code>.</p>
719
- * @public
720
- */
721
- resources?: string[] | undefined;
722
- /**
723
- * <p>Key Management Service (KMS) key. Either the ARN or the alias can be used.</p>
724
- * @public
725
- */
726
- provider?: Provider | undefined;
727
- }
728
- /**
729
- * @public
730
- */
731
- export interface AssociateEncryptionConfigRequest {
732
- /**
733
- * <p>The name of your cluster.</p>
734
- * @public
735
- */
736
- clusterName: string | undefined;
737
- /**
738
- * <p>The configuration you are using for encryption.</p>
739
- * @public
740
- */
741
- encryptionConfig: EncryptionConfig[] | undefined;
742
- /**
743
- * <p>A unique, case-sensitive identifier that you provide to ensure
744
- * the idempotency of the request.</p>
745
- * @public
746
- */
747
- clientRequestToken?: string | undefined;
748
- }
749
- /**
750
- * <p>Contains information about the latest cancellation of an update to an Amazon EKS cluster.</p>
751
- * @public
752
- */
753
- export interface Cancellation {
754
- /**
755
- * <p>The current status of the cancellation. Valid values are <code>InProgress</code>,
756
- * <code>Failed</code>, and <code>Successful</code>.</p>
757
- * @public
758
- */
759
- status?: CancellationStatus | undefined;
760
- /**
761
- * <p>A message providing additional details about the cancellation, such as the reason for
762
- * the cancellation or failure details.</p>
763
- * @public
764
- */
765
- reason?: string | undefined;
766
- }
767
- /**
768
- * <p>An object representing an error when an asynchronous operation fails.</p>
769
- * @public
770
- */
771
- export interface ErrorDetail {
772
- /**
773
- * <p>A brief description of the error. </p>
774
- * <ul>
775
- * <li>
776
- * <p>
777
- * <b>SubnetNotFound</b>: We couldn't find one of the
778
- * subnets associated with the cluster.</p>
779
- * </li>
780
- * <li>
781
- * <p>
782
- * <b>SecurityGroupNotFound</b>: We couldn't find one
783
- * of the security groups associated with the cluster.</p>
784
- * </li>
785
- * <li>
786
- * <p>
787
- * <b>EniLimitReached</b>: You have reached the elastic
788
- * network interface limit for your account.</p>
789
- * </li>
790
- * <li>
791
- * <p>
792
- * <b>IpNotAvailable</b>: A subnet associated with the
793
- * cluster doesn't have any available IP addresses.</p>
794
- * </li>
795
- * <li>
796
- * <p>
797
- * <b>AccessDenied</b>: You don't have permissions to
798
- * perform the specified operation.</p>
799
- * </li>
800
- * <li>
801
- * <p>
802
- * <b>OperationNotPermitted</b>: The service role
803
- * associated with the cluster doesn't have the required access permissions for
804
- * Amazon EKS.</p>
805
- * </li>
806
- * <li>
807
- * <p>
808
- * <b>VpcIdNotFound</b>: We couldn't find the VPC
809
- * associated with the cluster.</p>
810
- * </li>
811
- * </ul>
902
+ * <p>The scope of the access policy.</p>
812
903
  * @public
813
904
  */
814
- errorCode?: ErrorCode | undefined;
905
+ accessScope?: AccessScope | undefined;
815
906
  /**
816
- * <p>A more complete description of the error.</p>
907
+ * <p>The date and time the <code>AccessPolicy</code> was associated with an
908
+ * <code>AccessEntry</code>.</p>
817
909
  * @public
818
910
  */
819
- errorMessage?: string | undefined;
911
+ associatedAt?: Date | undefined;
820
912
  /**
821
- * <p>An optional field that contains the resource IDs associated with the error.</p>
913
+ * <p>The Unix epoch timestamp for the last modification to the object.</p>
822
914
  * @public
823
915
  */
824
- resourceIds?: string[] | undefined;
916
+ modifiedAt?: Date | undefined;
825
917
  }
826
918
  /**
827
- * <p>An object representing the details of an update request.</p>
828
919
  * @public
829
920
  */
830
- export interface UpdateParam {
921
+ export interface AssociateAccessPolicyResponse {
831
922
  /**
832
- * <p>The keys associated with an update request.</p>
923
+ * <p>The name of your cluster.</p>
833
924
  * @public
834
925
  */
835
- type?: UpdateParamType | undefined;
926
+ clusterName?: string | undefined;
836
927
  /**
837
- * <p>The value of the keys submitted as part of an update request.</p>
928
+ * <p>The ARN of the IAM principal for the <code>AccessEntry</code>.</p>
838
929
  * @public
839
930
  */
840
- value?: string | undefined;
931
+ principalArn?: string | undefined;
932
+ /**
933
+ * <p>The <code>AccessPolicy</code> and scope associated to the
934
+ * <code>AccessEntry</code>.</p>
935
+ * @public
936
+ */
937
+ associatedAccessPolicy?: AssociatedAccessPolicy | undefined;
841
938
  }
842
939
  /**
843
- * <p>An object representing an asynchronous update.</p>
940
+ * <p>Identifies the Key Management Service (KMS) key used to encrypt the secrets.</p>
844
941
  * @public
845
942
  */
846
- export interface Update {
847
- /**
848
- * <p>A UUID that is used to track the update.</p>
849
- * @public
850
- */
851
- id?: string | undefined;
943
+ export interface Provider {
852
944
  /**
853
- * <p>The current status of the update.</p>
945
+ * <p>Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric and created in
946
+ * the same Amazon Web Services Region as the cluster. If the KMS key was created in a different
947
+ * account, the <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html">IAM principal</a> must have access to the KMS key. For more information,
948
+ * see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html">Allowing
949
+ * users in other accounts to use a KMS key</a> in the <i>Key Management Service
950
+ * Developer Guide</i>.</p>
854
951
  * @public
855
952
  */
856
- status?: UpdateStatus | undefined;
953
+ keyArn?: string | undefined;
954
+ }
955
+ /**
956
+ * <p>The encryption configuration for the cluster.</p>
957
+ * @public
958
+ */
959
+ export interface EncryptionConfig {
857
960
  /**
858
- * <p>The type of the update.</p>
961
+ * <p>Specifies the resources to be encrypted. The only supported value is
962
+ * <code>secrets</code>.</p>
859
963
  * @public
860
964
  */
861
- type?: UpdateType | undefined;
965
+ resources?: string[] | undefined;
862
966
  /**
863
- * <p>A key-value map that contains the parameters associated with the update.</p>
967
+ * <p>Key Management Service (KMS) key. Either the ARN or the alias can be used.</p>
864
968
  * @public
865
969
  */
866
- params?: UpdateParam[] | undefined;
970
+ provider?: Provider | undefined;
971
+ }
972
+ /**
973
+ * @public
974
+ */
975
+ export interface AssociateEncryptionConfigRequest {
867
976
  /**
868
- * <p>The Unix epoch timestamp at object creation.</p>
977
+ * <p>The name of your cluster.</p>
869
978
  * @public
870
979
  */
871
- createdAt?: Date | undefined;
980
+ clusterName: string | undefined;
872
981
  /**
873
- * <p>Any errors associated with a <code>Failed</code> update.</p>
982
+ * <p>The configuration you are using for encryption.</p>
874
983
  * @public
875
984
  */
876
- errors?: ErrorDetail[] | undefined;
985
+ encryptionConfig: EncryptionConfig[] | undefined;
877
986
  /**
878
- * <p>The latest cancellation information for the update. This field is present only if any
879
- * cancellation is attempted for the update.</p>
987
+ * <p>A unique, case-sensitive identifier that you provide to ensure
988
+ * the idempotency of the request.</p>
880
989
  * @public
881
990
  */
882
- cancellation?: Cancellation | undefined;
991
+ clientRequestToken?: string | undefined;
883
992
  }
884
993
  /**
885
994
  * @public
@@ -1553,6 +1662,39 @@ export interface CreateCapabilityResponse {
1553
1662
  */
1554
1663
  capability?: Capability | undefined;
1555
1664
  }
1665
+ /**
1666
+ * @public
1667
+ */
1668
+ export interface CreateCertificateAuthorityRequest {
1669
+ /**
1670
+ * <p>The name of your cluster.</p>
1671
+ * @public
1672
+ */
1673
+ clusterName: string | undefined;
1674
+ /**
1675
+ * <p>A unique, case-sensitive identifier that you provide to ensure
1676
+ * the idempotency of the request.</p>
1677
+ * @public
1678
+ */
1679
+ clientRequestToken?: string | undefined;
1680
+ }
1681
+ /**
1682
+ * @public
1683
+ */
1684
+ export interface CreateCertificateAuthorityResponse {
1685
+ /**
1686
+ * <p>An object representing the asynchronous update that adds the certificate authority to
1687
+ * the cluster's trust bundle.</p>
1688
+ * @public
1689
+ */
1690
+ update?: Update | undefined;
1691
+ /**
1692
+ * <p>Summary information about the certificate authority that was created, including its ID
1693
+ * and initial signing and distribution status.</p>
1694
+ * @public
1695
+ */
1696
+ certificateAuthority?: CertificateAuthoritySummary | undefined;
1697
+ }
1556
1698
  /**
1557
1699
  * <p>The access configuration information for the cluster.</p>
1558
1700
  * @public
@@ -2429,6 +2571,12 @@ export interface Certificate {
2429
2571
  * @public
2430
2572
  */
2431
2573
  data?: string | undefined;
2574
+ /**
2575
+ * <p>An object identifying the certificate authority that is currently signing certificates
2576
+ * for the cluster.</p>
2577
+ * @public
2578
+ */
2579
+ active?: ActiveCertificateAuthority | undefined;
2432
2580
  }
2433
2581
  /**
2434
2582
  * <p>Indicates the status of the request to update the compute capability of your EKS Auto
@@ -4543,6 +4691,44 @@ export interface DeleteCapabilityResponse {
4543
4691
  */
4544
4692
  capability?: Capability | undefined;
4545
4693
  }
4694
+ /**
4695
+ * @public
4696
+ */
4697
+ export interface DeleteCertificateAuthorityRequest {
4698
+ /**
4699
+ * <p>The name of your cluster.</p>
4700
+ * @public
4701
+ */
4702
+ clusterName: string | undefined;
4703
+ /**
4704
+ * <p>The ID of the certificate authority to delete. You can't delete the certificate
4705
+ * authority that's currently signing certificates for the cluster.</p>
4706
+ * @public
4707
+ */
4708
+ certificateAuthorityId: string | undefined;
4709
+ /**
4710
+ * <p>A unique, case-sensitive identifier that you provide to ensure
4711
+ * the idempotency of the request.</p>
4712
+ * @public
4713
+ */
4714
+ clientRequestToken?: string | undefined;
4715
+ }
4716
+ /**
4717
+ * @public
4718
+ */
4719
+ export interface DeleteCertificateAuthorityResponse {
4720
+ /**
4721
+ * <p>An object representing the asynchronous update that removes the certificate authority
4722
+ * from the cluster's trust bundle.</p>
4723
+ * @public
4724
+ */
4725
+ update?: Update | undefined;
4726
+ /**
4727
+ * <p>Summary information about the certificate authority that is being deleted.</p>
4728
+ * @public
4729
+ */
4730
+ certificateAuthority?: CertificateAuthoritySummary | undefined;
4731
+ }
4546
4732
  /**
4547
4733
  * @public
4548
4734
  */
@@ -4884,6 +5070,148 @@ export interface DescribeCapabilityResponse {
4884
5070
  */
4885
5071
  capability?: Capability | undefined;
4886
5072
  }
5073
+ /**
5074
+ * @public
5075
+ */
5076
+ export interface DescribeCertificateAuthorityRequest {
5077
+ /**
5078
+ * <p>The name of your cluster.</p>
5079
+ * @public
5080
+ */
5081
+ clusterName: string | undefined;
5082
+ /**
5083
+ * <p>The ID of the certificate authority to describe.</p>
5084
+ * @public
5085
+ */
5086
+ certificateAuthorityId: string | undefined;
5087
+ }
5088
+ /**
5089
+ * <p>The scheduled events during which Amazon EKS may automatically activate a certificate
5090
+ * authority, computed from its validity period. These events help ensure that a cluster's
5091
+ * signing certificate authority is rotated before its certificate expires.</p>
5092
+ * @public
5093
+ */
5094
+ export interface CertificateAuthorityScheduledEvents {
5095
+ /**
5096
+ * <p>The earliest Unix epoch timestamp in seconds at which Amazon EKS may automatically activate
5097
+ * this certificate authority.</p>
5098
+ * @public
5099
+ */
5100
+ firstAutoActivation?: Date | undefined;
5101
+ /**
5102
+ * <p>The Unix epoch timestamp in seconds by which Amazon EKS will automatically activate this
5103
+ * certificate authority if you haven't already activated it.</p>
5104
+ * @public
5105
+ */
5106
+ finalAutoActivation?: Date | undefined;
5107
+ }
5108
+ /**
5109
+ * <p>The validity period of a certificate authority's certificate.</p>
5110
+ * @public
5111
+ */
5112
+ export interface CertificateAuthorityValidity {
5113
+ /**
5114
+ * <p>The Unix epoch timestamp in seconds for the start of the certificate authority's
5115
+ * validity period.</p>
5116
+ * @public
5117
+ */
5118
+ notBefore?: Date | undefined;
5119
+ /**
5120
+ * <p>The Unix epoch timestamp in seconds for the end of the certificate authority's validity
5121
+ * period.</p>
5122
+ * @public
5123
+ */
5124
+ notAfter?: Date | undefined;
5125
+ }
5126
+ /**
5127
+ * <p>An object representing a certificate authority (CA) for an Amazon EKS cluster.</p>
5128
+ * @public
5129
+ */
5130
+ export interface CertificateAuthority {
5131
+ /**
5132
+ * <p>The unique identifier of the certificate authority.</p>
5133
+ * @public
5134
+ */
5135
+ id?: string | undefined;
5136
+ /**
5137
+ * <p>The Unix epoch timestamp in seconds for when the certificate authority was created.</p>
5138
+ * @public
5139
+ */
5140
+ createdAt?: Date | undefined;
5141
+ /**
5142
+ * <p>The entity that created the certificate authority. Certificate authorities that you
5143
+ * create are <code>CUSTOMER</code>; those that Amazon EKS provisions on your behalf, such as a
5144
+ * cluster's initial certificate authority, are <code>EKS</code>.</p>
5145
+ * @public
5146
+ */
5147
+ createdBy?: CertificateAuthorityCreatedBy | undefined;
5148
+ /**
5149
+ * <p>The Unix epoch timestamp in seconds for when the certificate authority was last
5150
+ * activated as the cluster's signer. This value is absent if the certificate authority has
5151
+ * never been activated.</p>
5152
+ * @public
5153
+ */
5154
+ activatedAt?: Date | undefined;
5155
+ /**
5156
+ * <p>The entity that most recently activated the certificate authority. A value of
5157
+ * <code>EKS</code> indicates that Amazon EKS activated it automatically; <code>CUSTOMER</code>
5158
+ * indicates that you activated it.</p>
5159
+ * @public
5160
+ */
5161
+ activatedBy?: CertificateAuthorityActivatedBy | undefined;
5162
+ /**
5163
+ * <p>The signing status of the certificate authority. <code>IN_USE</code> means the
5164
+ * certificate authority is currently signing certificates for the cluster,
5165
+ * <code>ACTIVATING</code> means it's being promoted to the signer, and
5166
+ * <code>NOT_USED</code> means it's trusted by the cluster (for example, a successor CA
5167
+ * during a rotation, or a retired outgoing CA) but isn't the signer.</p>
5168
+ * @public
5169
+ */
5170
+ signingStatus?: CertificateAuthoritySigningStatus | undefined;
5171
+ /**
5172
+ * <p>The distribution status of the certificate authority, which tracks whether Amazon EKS has
5173
+ * distributed its trust to the Amazon Web Services managed components in your cluster (the control plane,
5174
+ * Amazon EKS Auto Mode instances, and Amazon Web Services Fargate nodes). Valid values are
5175
+ * <code>IN_PROGRESS</code>, <code>COMPLETE</code>, <code>FAILED</code>, and
5176
+ * <code>DELETING</code>. A successor CA can only be activated after its distribution
5177
+ * status is <code>COMPLETE</code>.</p>
5178
+ * @public
5179
+ */
5180
+ distributionStatus?: CertificateAuthorityDistributionStatus | undefined;
5181
+ /**
5182
+ * <p>The validity period of the certificate authority's certificate.</p>
5183
+ * @public
5184
+ */
5185
+ validity?: CertificateAuthorityValidity | undefined;
5186
+ /**
5187
+ * <p>The scheduled auto-activation events for the certificate authority, computed from its
5188
+ * validity period.</p>
5189
+ * @public
5190
+ */
5191
+ scheduledEvents?: CertificateAuthorityScheduledEvents | undefined;
5192
+ /**
5193
+ * <p>Indicates whether CA rollback is still available for this certificate authority. After
5194
+ * you activate a successor CA, rollback lets you revert to the outgoing CA for a limited
5195
+ * period while you finish updating any worker nodes or clients that were missed.</p>
5196
+ * @public
5197
+ */
5198
+ rollbackAvailable?: boolean | undefined;
5199
+ /**
5200
+ * <p>The Base64-encoded public certificate of the certificate authority.</p>
5201
+ * @public
5202
+ */
5203
+ data?: string | undefined;
5204
+ }
5205
+ /**
5206
+ * @public
5207
+ */
5208
+ export interface DescribeCertificateAuthorityResponse {
5209
+ /**
5210
+ * <p>An object containing detailed information about the certificate authority.</p>
5211
+ * @public
5212
+ */
5213
+ certificateAuthority?: CertificateAuthority | undefined;
5214
+ }
4887
5215
  /**
4888
5216
  * @public
4889
5217
  */
@@ -6157,6 +6485,61 @@ export interface ListCapabilitiesResponse {
6157
6485
  */
6158
6486
  nextToken?: string | undefined;
6159
6487
  }
6488
+ /**
6489
+ * @public
6490
+ */
6491
+ export interface ListCertificateAuthoritiesRequest {
6492
+ /**
6493
+ * <p>The name of your cluster.</p>
6494
+ * @public
6495
+ */
6496
+ clusterName: string | undefined;
6497
+ /**
6498
+ * <p>The maximum number of results to return in a single call. To retrieve the remaining
6499
+ * results, make another call with the returned <code>nextToken</code> value. If you don't
6500
+ * specify a value, the default is 100 results.</p>
6501
+ * @public
6502
+ */
6503
+ maxResults?: number | undefined;
6504
+ /**
6505
+ * <p>The <code>nextToken</code> value returned from a previous paginated request, where
6506
+ * <code>maxResults</code> was used and the results exceeded the value of that
6507
+ * parameter. Pagination continues from the end of the previous results that returned the
6508
+ * <code>nextToken</code> value. This value is null when there are no more results to
6509
+ * return.</p>
6510
+ * <note>
6511
+ * <p>This token should be treated as an opaque identifier that is used only to
6512
+ * retrieve the next items in a list and not for other programmatic purposes.</p>
6513
+ * </note>
6514
+ * @public
6515
+ */
6516
+ nextToken?: string | undefined;
6517
+ }
6518
+ /**
6519
+ * @public
6520
+ */
6521
+ export interface ListCertificateAuthoritiesResponse {
6522
+ /**
6523
+ * <p>A list of certificate authority summary objects, each containing basic information
6524
+ * about a certificate authority, including its ID, signing status, and distribution
6525
+ * status.</p>
6526
+ * @public
6527
+ */
6528
+ certificateAuthorities?: CertificateAuthoritySummary[] | undefined;
6529
+ /**
6530
+ * <p>The <code>nextToken</code> value to include in a future
6531
+ * <code>ListCertificateAuthorities</code> request. When the results of a
6532
+ * <code>ListCertificateAuthorities</code> request exceed <code>maxResults</code>, you
6533
+ * can use this value to retrieve the next page of results. This value is null when there
6534
+ * are no more results to return.</p>
6535
+ * <note>
6536
+ * <p>This token should be treated as an opaque identifier that is used only to
6537
+ * retrieve the next items in a list and not for other programmatic purposes.</p>
6538
+ * </note>
6539
+ * @public
6540
+ */
6541
+ nextToken?: string | undefined;
6542
+ }
6160
6543
  /**
6161
6544
  * @public
6162
6545
  */