@aws-sdk/client-emr 3.238.0 → 3.241.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 (30) hide show
  1. package/dist-cjs/EMR.js +15 -0
  2. package/dist-cjs/commands/GetClusterSessionCredentialsCommand.js +46 -0
  3. package/dist-cjs/commands/index.js +1 -0
  4. package/dist-cjs/endpoint/ruleset.js +3 -3
  5. package/dist-cjs/models/models_0.js +64 -5
  6. package/dist-cjs/protocols/Aws_json1_1.js +78 -3
  7. package/dist-es/EMR.js +15 -0
  8. package/dist-es/commands/GetClusterSessionCredentialsCommand.js +42 -0
  9. package/dist-es/commands/index.js +1 -0
  10. package/dist-es/endpoint/ruleset.js +3 -3
  11. package/dist-es/models/models_0.js +55 -0
  12. package/dist-es/protocols/Aws_json1_1.js +74 -1
  13. package/dist-types/EMR.d.ts +12 -8
  14. package/dist-types/EMRClient.d.ts +3 -2
  15. package/dist-types/commands/AddJobFlowStepsCommand.d.ts +1 -3
  16. package/dist-types/commands/CreateStudioSessionMappingCommand.d.ts +1 -1
  17. package/dist-types/commands/GetClusterSessionCredentialsCommand.d.ts +38 -0
  18. package/dist-types/commands/RunJobFlowCommand.d.ts +2 -4
  19. package/dist-types/commands/index.d.ts +1 -0
  20. package/dist-types/endpoint/EndpointParameters.d.ts +1 -1
  21. package/dist-types/models/models_0.d.ts +118 -24
  22. package/dist-types/protocols/Aws_json1_1.d.ts +3 -0
  23. package/dist-types/ts3.4/EMR.d.ts +17 -0
  24. package/dist-types/ts3.4/EMRClient.d.ts +6 -0
  25. package/dist-types/ts3.4/commands/GetClusterSessionCredentialsCommand.d.ts +41 -0
  26. package/dist-types/ts3.4/commands/index.d.ts +1 -0
  27. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +1 -1
  28. package/dist-types/ts3.4/models/models_0.d.ts +65 -16
  29. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +12 -0
  30. package/package.json +4 -4
@@ -17,7 +17,7 @@ export declare enum InstanceFleetType {
17
17
  */
18
18
  export interface VolumeSpecification {
19
19
  /**
20
- * <p>The volume type. Volume types supported are gp2, io1, and standard.</p>
20
+ * <p>The volume type. Volume types supported are gp3, gp2, io1, st1, sc1, and standard.</p>
21
21
  */
22
22
  VolumeType: string | undefined;
23
23
  /**
@@ -30,7 +30,8 @@ export interface VolumeSpecification {
30
30
  */
31
31
  SizeInGB: number | undefined;
32
32
  /**
33
- * <p>The throughput, in mebibyte per second (MiB/s). This optional parameter can be a number from 125 - 1000 and is valid only for gp3 volumes.</p>
33
+ * <p>The throughput, in mebibyte per second (MiB/s). This optional parameter can be a number
34
+ * from 125 - 1000 and is valid only for gp3 volumes.</p>
34
35
  */
35
36
  Throughput?: number;
36
37
  }
@@ -140,7 +141,10 @@ export interface OnDemandProvisioningSpecification {
140
141
  export declare enum SpotProvisioningAllocationStrategy {
141
142
  CAPACITY_OPTIMIZED = "capacity-optimized"
142
143
  }
143
- export declare type SpotProvisioningTimeoutAction = "SWITCH_TO_ON_DEMAND" | "TERMINATE_CLUSTER";
144
+ export declare enum SpotProvisioningTimeoutAction {
145
+ SWITCH_TO_ON_DEMAND = "SWITCH_TO_ON_DEMAND",
146
+ TERMINATE_CLUSTER = "TERMINATE_CLUSTER"
147
+ }
144
148
  /**
145
149
  * <p>The launch specification for Spot Instances in the instance fleet, which determines the
146
150
  * defined duration, provisioning timeout behavior, and allocation strategy.</p>
@@ -517,7 +521,11 @@ export interface AutoScalingPolicy {
517
521
  */
518
522
  Rules: ScalingRule[] | undefined;
519
523
  }
520
- export declare type InstanceRoleType = "CORE" | "MASTER" | "TASK";
524
+ export declare enum InstanceRoleType {
525
+ CORE = "CORE",
526
+ MASTER = "MASTER",
527
+ TASK = "TASK"
528
+ }
521
529
  /**
522
530
  * <p>Output from an AddInstanceGroups call.</p>
523
531
  */
@@ -886,7 +894,10 @@ export interface BootstrapActionDetail {
886
894
  */
887
895
  BootstrapActionConfig?: BootstrapActionConfig;
888
896
  }
889
- export declare type StepCancellationOption = "SEND_INTERRUPT" | "TERMINATE_PROCESS";
897
+ export declare enum StepCancellationOption {
898
+ SEND_INTERRUPT = "SEND_INTERRUPT",
899
+ TERMINATE_PROCESS = "TERMINATE_PROCESS"
900
+ }
890
901
  /**
891
902
  * <p>The input argument to the <a>CancelSteps</a> operation.</p>
892
903
  */
@@ -1275,7 +1286,7 @@ export interface CreateStudioInput {
1275
1286
  */
1276
1287
  Description?: string;
1277
1288
  /**
1278
- * <p>Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO.</p>
1289
+ * <p>Specifies whether the Studio authenticates users using IAM or IAM Identity Center.</p>
1279
1290
  */
1280
1291
  AuthMode: AuthMode | string | undefined;
1281
1292
  /**
@@ -1297,7 +1308,7 @@ export interface CreateStudioInput {
1297
1308
  ServiceRole: string | undefined;
1298
1309
  /**
1299
1310
  * <p>The IAM user role that users and groups assume when logged in to an Amazon EMR
1300
- * Studio. Only specify a <code>UserRole</code> when you use Amazon Web Services SSO
1311
+ * Studio. Only specify a <code>UserRole</code> when you use IAM Identity Center
1301
1312
  * authentication. The permissions attached to the <code>UserRole</code> can be scoped down
1302
1313
  * for each user or group using session policies.</p>
1303
1314
  */
@@ -1362,14 +1373,14 @@ export interface CreateStudioSessionMappingInput {
1362
1373
  */
1363
1374
  StudioId: string | undefined;
1364
1375
  /**
1365
- * <p>The globally unique identifier (GUID) of the user or group from the Amazon Web Services SSO
1366
- * Identity Store. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>Amazon Web Services SSO Identity Store API
1376
+ * <p>The globally unique identifier (GUID) of the user or group from the IAM Identity Center
1377
+ * Identity Store. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>IAM Identity Center Identity Store API
1367
1378
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
1368
1379
  * be specified, but not both.</p>
1369
1380
  */
1370
1381
  IdentityId?: string;
1371
1382
  /**
1372
- * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Identity Store API
1383
+ * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Identity Store API
1373
1384
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
1374
1385
  * be specified, but not both.</p>
1375
1386
  */
@@ -1387,6 +1398,41 @@ export interface CreateStudioSessionMappingInput {
1387
1398
  */
1388
1399
  SessionPolicyArn: string | undefined;
1389
1400
  }
1401
+ /**
1402
+ * <p>The username and password that you use to connect to cluster endpoints.</p>
1403
+ */
1404
+ export interface UsernamePassword {
1405
+ /**
1406
+ * <p>The username associated with the temporary credentials that you use to connect to cluster endpoints.</p>
1407
+ */
1408
+ Username?: string;
1409
+ /**
1410
+ * <p>The password associated with the temporary credentials that you use to connect to cluster endpoints.</p>
1411
+ */
1412
+ Password?: string;
1413
+ }
1414
+ /**
1415
+ * <p>The credentials that you can use to connect to cluster endpoints. Credentials consist of a username and a password.</p>
1416
+ */
1417
+ export declare type Credentials = Credentials.UsernamePasswordMember | Credentials.$UnknownMember;
1418
+ export declare namespace Credentials {
1419
+ /**
1420
+ * <p>The username and password that you use to connect to cluster endpoints.</p>
1421
+ */
1422
+ interface UsernamePasswordMember {
1423
+ UsernamePassword: UsernamePassword;
1424
+ $unknown?: never;
1425
+ }
1426
+ interface $UnknownMember {
1427
+ UsernamePassword?: never;
1428
+ $unknown: [string, any];
1429
+ }
1430
+ interface Visitor<T> {
1431
+ UsernamePassword: (value: UsernamePassword) => T;
1432
+ _: (name: string, value: any) => T;
1433
+ }
1434
+ const visit: <T>(value: Credentials, visitor: Visitor<T>) => T;
1435
+ }
1390
1436
  export interface DeleteSecurityConfigurationInput {
1391
1437
  /**
1392
1438
  * <p>The name of the security configuration.</p>
@@ -1407,14 +1453,14 @@ export interface DeleteStudioSessionMappingInput {
1407
1453
  */
1408
1454
  StudioId: string | undefined;
1409
1455
  /**
1410
- * <p>The globally unique identifier (GUID) of the user or group to remove from the Amazon EMR Studio. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>Amazon Web Services SSO Identity Store API
1456
+ * <p>The globally unique identifier (GUID) of the user or group to remove from the Amazon EMR Studio. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>IAM Identity Center Identity Store API
1411
1457
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
1412
1458
  * be specified.</p>
1413
1459
  */
1414
1460
  IdentityId?: string;
1415
1461
  /**
1416
1462
  * <p>The name of the user name or group to remove from the Amazon EMR Studio. For
1417
- * more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Store API Reference</i>.
1463
+ * more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Store API Reference</i>.
1418
1464
  * Either <code>IdentityName</code> or <code>IdentityId</code> must be specified.</p>
1419
1465
  */
1420
1466
  IdentityName?: string;
@@ -1665,7 +1711,15 @@ export interface JobFlowInstancesDetail {
1665
1711
  */
1666
1712
  HadoopVersion?: string;
1667
1713
  }
1668
- export declare type StepExecutionState = "CANCELLED" | "COMPLETED" | "CONTINUE" | "FAILED" | "INTERRUPTED" | "PENDING" | "RUNNING";
1714
+ export declare enum StepExecutionState {
1715
+ CANCELLED = "CANCELLED",
1716
+ COMPLETED = "COMPLETED",
1717
+ CONTINUE = "CONTINUE",
1718
+ FAILED = "FAILED",
1719
+ INTERRUPTED = "INTERRUPTED",
1720
+ PENDING = "PENDING",
1721
+ RUNNING = "RUNNING"
1722
+ }
1669
1723
  /**
1670
1724
  * <p>The execution state of a step.</p>
1671
1725
  */
@@ -2120,7 +2174,9 @@ export declare enum StepState {
2120
2174
  PENDING = "PENDING",
2121
2175
  RUNNING = "RUNNING"
2122
2176
  }
2123
- export declare type StepStateChangeReasonCode = "NONE";
2177
+ export declare enum StepStateChangeReasonCode {
2178
+ NONE = "NONE"
2179
+ }
2124
2180
  /**
2125
2181
  * <p>The details of the step state change reason.</p>
2126
2182
  */
@@ -2259,7 +2315,7 @@ export interface Studio {
2259
2315
  */
2260
2316
  Description?: string;
2261
2317
  /**
2262
- * <p>Specifies whether the Amazon EMR Studio authenticates users using IAM or Amazon Web Services SSO.</p>
2318
+ * <p>Specifies whether the Amazon EMR Studio authenticates users using IAM or IAM Identity Center.</p>
2263
2319
  */
2264
2320
  AuthMode?: AuthMode | string;
2265
2321
  /**
@@ -2369,6 +2425,28 @@ export interface GetAutoTerminationPolicyOutput {
2369
2425
  }
2370
2426
  export interface GetBlockPublicAccessConfigurationInput {
2371
2427
  }
2428
+ export interface GetClusterSessionCredentialsInput {
2429
+ /**
2430
+ * <p>The unique identifier of the cluster.</p>
2431
+ */
2432
+ ClusterId: string | undefined;
2433
+ /**
2434
+ * <p>The Amazon Resource Name (ARN) of the runtime role for interactive workload submission on the cluster.
2435
+ * The runtime role can be a cross-account IAM role. The runtime role ARN is a combination of account ID, role name,
2436
+ * and role type using the following format: <code>arn:partition:service:region:account:resource</code>.</p>
2437
+ */
2438
+ ExecutionRoleArn: string | undefined;
2439
+ }
2440
+ export interface GetClusterSessionCredentialsOutput {
2441
+ /**
2442
+ * <p>The credentials that you can use to connect to cluster endpoints that support username-based and password-based authentication.</p>
2443
+ */
2444
+ Credentials?: Credentials;
2445
+ /**
2446
+ * <p>The time when the credentials that are returned by the <code>GetClusterSessionCredentials</code> API expire.</p>
2447
+ */
2448
+ ExpiresAt?: Date;
2449
+ }
2372
2450
  export interface GetManagedScalingPolicyInput {
2373
2451
  /**
2374
2452
  * <p>Specifies the ID of the cluster for which the managed scaling policy will be fetched.
@@ -2404,13 +2482,13 @@ export interface GetStudioSessionMappingInput {
2404
2482
  StudioId: string | undefined;
2405
2483
  /**
2406
2484
  * <p>The globally unique identifier (GUID) of the user or group. For more information, see
2407
- * <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>Amazon Web Services SSO Identity Store API
2485
+ * <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>IAM Identity Center Identity Store API
2408
2486
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
2409
2487
  * be specified.</p>
2410
2488
  */
2411
2489
  IdentityId?: string;
2412
2490
  /**
2413
- * <p>The name of the user or group to fetch. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Identity Store API
2491
+ * <p>The name of the user or group to fetch. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Identity Store API
2414
2492
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
2415
2493
  * be specified.</p>
2416
2494
  */
@@ -2434,7 +2512,7 @@ export interface SessionMappingDetail {
2434
2512
  */
2435
2513
  IdentityId?: string;
2436
2514
  /**
2437
- * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Identity Store API
2515
+ * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Identity Store API
2438
2516
  * Reference</i>.</p>
2439
2517
  */
2440
2518
  IdentityName?: string;
@@ -3266,7 +3344,7 @@ export interface StudioSummary {
3266
3344
  */
3267
3345
  Url?: string;
3268
3346
  /**
3269
- * <p>Specifies whether the Studio authenticates users using IAM or Amazon Web Services SSO.</p>
3347
+ * <p>Specifies whether the Studio authenticates users using IAM or IAM Identity Center.</p>
3270
3348
  */
3271
3349
  AuthMode?: AuthMode | string;
3272
3350
  /**
@@ -3309,12 +3387,12 @@ export interface SessionMappingSummary {
3309
3387
  */
3310
3388
  StudioId?: string;
3311
3389
  /**
3312
- * <p>The globally unique identifier (GUID) of the user or group from the Amazon Web Services SSO
3390
+ * <p>The globally unique identifier (GUID) of the user or group from the IAM Identity Center
3313
3391
  * Identity Store.</p>
3314
3392
  */
3315
3393
  IdentityId?: string;
3316
3394
  /**
3317
- * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Identity Store API
3395
+ * <p>The name of the user or group. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Identity Store API
3318
3396
  * Reference</i>.</p>
3319
3397
  */
3320
3398
  IdentityName?: string;
@@ -3672,13 +3750,13 @@ export interface UpdateStudioSessionMappingInput {
3672
3750
  StudioId: string | undefined;
3673
3751
  /**
3674
3752
  * <p>The globally unique identifier (GUID) of the user or group. For more information, see
3675
- * <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>Amazon Web Services SSO Identity Store API
3753
+ * <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserId">UserId</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-GroupId">GroupId</a> in the <i>IAM Identity Center Identity Store API
3676
3754
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
3677
3755
  * be specified.</p>
3678
3756
  */
3679
3757
  IdentityId?: string;
3680
3758
  /**
3681
- * <p>The name of the user or group to update. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>Amazon Web Services SSO Identity Store API
3759
+ * <p>The name of the user or group to update. For more information, see <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_User.html#singlesignon-Type-User-UserName">UserName</a> and <a href="https://docs.aws.amazon.com/singlesignon/latest/IdentityStoreAPIReference/API_Group.html#singlesignon-Type-Group-DisplayName">DisplayName</a> in the <i>IAM Identity Center Identity Store API
3682
3760
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
3683
3761
  * be specified.</p>
3684
3762
  */
@@ -4742,7 +4820,7 @@ export interface RunJobFlowInput {
4742
4820
  JobFlowRole?: string;
4743
4821
  /**
4744
4822
  * <p>The IAM role that Amazon EMR assumes in order to access Amazon Web Services
4745
- * resources on your behalf.</p>
4823
+ * resources on your behalf. If you've created a custom service role path, you must specify it for the service role when you launch your cluster.</p>
4746
4824
  */
4747
4825
  ServiceRole?: string;
4748
4826
  /**
@@ -5039,6 +5117,14 @@ export declare const CreateStudioOutputFilterSensitiveLog: (obj: CreateStudioOut
5039
5117
  * @internal
5040
5118
  */
5041
5119
  export declare const CreateStudioSessionMappingInputFilterSensitiveLog: (obj: CreateStudioSessionMappingInput) => any;
5120
+ /**
5121
+ * @internal
5122
+ */
5123
+ export declare const UsernamePasswordFilterSensitiveLog: (obj: UsernamePassword) => any;
5124
+ /**
5125
+ * @internal
5126
+ */
5127
+ export declare const CredentialsFilterSensitiveLog: (obj: Credentials) => any;
5042
5128
  /**
5043
5129
  * @internal
5044
5130
  */
@@ -5199,6 +5285,14 @@ export declare const GetAutoTerminationPolicyOutputFilterSensitiveLog: (obj: Get
5199
5285
  * @internal
5200
5286
  */
5201
5287
  export declare const GetBlockPublicAccessConfigurationInputFilterSensitiveLog: (obj: GetBlockPublicAccessConfigurationInput) => any;
5288
+ /**
5289
+ * @internal
5290
+ */
5291
+ export declare const GetClusterSessionCredentialsInputFilterSensitiveLog: (obj: GetClusterSessionCredentialsInput) => any;
5292
+ /**
5293
+ * @internal
5294
+ */
5295
+ export declare const GetClusterSessionCredentialsOutputFilterSensitiveLog: (obj: GetClusterSessionCredentialsOutput) => any;
5202
5296
  /**
5203
5297
  * @internal
5204
5298
  */
@@ -20,6 +20,7 @@ import { DescribeStepCommandInput, DescribeStepCommandOutput } from "../commands
20
20
  import { DescribeStudioCommandInput, DescribeStudioCommandOutput } from "../commands/DescribeStudioCommand";
21
21
  import { GetAutoTerminationPolicyCommandInput, GetAutoTerminationPolicyCommandOutput } from "../commands/GetAutoTerminationPolicyCommand";
22
22
  import { GetBlockPublicAccessConfigurationCommandInput, GetBlockPublicAccessConfigurationCommandOutput } from "../commands/GetBlockPublicAccessConfigurationCommand";
23
+ import { GetClusterSessionCredentialsCommandInput, GetClusterSessionCredentialsCommandOutput } from "../commands/GetClusterSessionCredentialsCommand";
23
24
  import { GetManagedScalingPolicyCommandInput, GetManagedScalingPolicyCommandOutput } from "../commands/GetManagedScalingPolicyCommand";
24
25
  import { GetStudioSessionMappingCommandInput, GetStudioSessionMappingCommandOutput } from "../commands/GetStudioSessionMappingCommand";
25
26
  import { ListBootstrapActionsCommandInput, ListBootstrapActionsCommandOutput } from "../commands/ListBootstrapActionsCommand";
@@ -72,6 +73,7 @@ export declare const serializeAws_json1_1DescribeStepCommand: (input: DescribeSt
72
73
  export declare const serializeAws_json1_1DescribeStudioCommand: (input: DescribeStudioCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
73
74
  export declare const serializeAws_json1_1GetAutoTerminationPolicyCommand: (input: GetAutoTerminationPolicyCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
74
75
  export declare const serializeAws_json1_1GetBlockPublicAccessConfigurationCommand: (input: GetBlockPublicAccessConfigurationCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
76
+ export declare const serializeAws_json1_1GetClusterSessionCredentialsCommand: (input: GetClusterSessionCredentialsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
75
77
  export declare const serializeAws_json1_1GetManagedScalingPolicyCommand: (input: GetManagedScalingPolicyCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
76
78
  export declare const serializeAws_json1_1GetStudioSessionMappingCommand: (input: GetStudioSessionMappingCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
77
79
  export declare const serializeAws_json1_1ListBootstrapActionsCommand: (input: ListBootstrapActionsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
@@ -124,6 +126,7 @@ export declare const deserializeAws_json1_1DescribeStepCommand: (output: __HttpR
124
126
  export declare const deserializeAws_json1_1DescribeStudioCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DescribeStudioCommandOutput>;
125
127
  export declare const deserializeAws_json1_1GetAutoTerminationPolicyCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetAutoTerminationPolicyCommandOutput>;
126
128
  export declare const deserializeAws_json1_1GetBlockPublicAccessConfigurationCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetBlockPublicAccessConfigurationCommandOutput>;
129
+ export declare const deserializeAws_json1_1GetClusterSessionCredentialsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetClusterSessionCredentialsCommandOutput>;
127
130
  export declare const deserializeAws_json1_1GetManagedScalingPolicyCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetManagedScalingPolicyCommandOutput>;
128
131
  export declare const deserializeAws_json1_1GetStudioSessionMappingCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetStudioSessionMappingCommandOutput>;
129
132
  export declare const deserializeAws_json1_1ListBootstrapActionsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ListBootstrapActionsCommandOutput>;
@@ -79,6 +79,10 @@ import {
79
79
  GetBlockPublicAccessConfigurationCommandInput,
80
80
  GetBlockPublicAccessConfigurationCommandOutput,
81
81
  } from "./commands/GetBlockPublicAccessConfigurationCommand";
82
+ import {
83
+ GetClusterSessionCredentialsCommandInput,
84
+ GetClusterSessionCredentialsCommandOutput,
85
+ } from "./commands/GetClusterSessionCredentialsCommand";
82
86
  import {
83
87
  GetManagedScalingPolicyCommandInput,
84
88
  GetManagedScalingPolicyCommandOutput,
@@ -475,6 +479,19 @@ export declare class EMR extends EMRClient {
475
479
  data?: GetBlockPublicAccessConfigurationCommandOutput
476
480
  ) => void
477
481
  ): void;
482
+ getClusterSessionCredentials(
483
+ args: GetClusterSessionCredentialsCommandInput,
484
+ options?: __HttpHandlerOptions
485
+ ): Promise<GetClusterSessionCredentialsCommandOutput>;
486
+ getClusterSessionCredentials(
487
+ args: GetClusterSessionCredentialsCommandInput,
488
+ cb: (err: any, data?: GetClusterSessionCredentialsCommandOutput) => void
489
+ ): void;
490
+ getClusterSessionCredentials(
491
+ args: GetClusterSessionCredentialsCommandInput,
492
+ options: __HttpHandlerOptions,
493
+ cb: (err: any, data?: GetClusterSessionCredentialsCommandOutput) => void
494
+ ): void;
478
495
  getManagedScalingPolicy(
479
496
  args: GetManagedScalingPolicyCommandInput,
480
497
  options?: __HttpHandlerOptions
@@ -123,6 +123,10 @@ import {
123
123
  GetBlockPublicAccessConfigurationCommandInput,
124
124
  GetBlockPublicAccessConfigurationCommandOutput,
125
125
  } from "./commands/GetBlockPublicAccessConfigurationCommand";
126
+ import {
127
+ GetClusterSessionCredentialsCommandInput,
128
+ GetClusterSessionCredentialsCommandOutput,
129
+ } from "./commands/GetClusterSessionCredentialsCommand";
126
130
  import {
127
131
  GetManagedScalingPolicyCommandInput,
128
132
  GetManagedScalingPolicyCommandOutput,
@@ -277,6 +281,7 @@ export declare type ServiceInputTypes =
277
281
  | DescribeStudioCommandInput
278
282
  | GetAutoTerminationPolicyCommandInput
279
283
  | GetBlockPublicAccessConfigurationCommandInput
284
+ | GetClusterSessionCredentialsCommandInput
280
285
  | GetManagedScalingPolicyCommandInput
281
286
  | GetStudioSessionMappingCommandInput
282
287
  | ListBootstrapActionsCommandInput
@@ -330,6 +335,7 @@ export declare type ServiceOutputTypes =
330
335
  | DescribeStudioCommandOutput
331
336
  | GetAutoTerminationPolicyCommandOutput
332
337
  | GetBlockPublicAccessConfigurationCommandOutput
338
+ | GetClusterSessionCredentialsCommandOutput
333
339
  | GetManagedScalingPolicyCommandOutput
334
340
  | GetStudioSessionMappingCommandOutput
335
341
  | ListBootstrapActionsCommandOutput
@@ -0,0 +1,41 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import {
4
+ Handler,
5
+ HttpHandlerOptions as __HttpHandlerOptions,
6
+ MetadataBearer as __MetadataBearer,
7
+ MiddlewareStack,
8
+ } from "@aws-sdk/types";
9
+ import {
10
+ EMRClientResolvedConfig,
11
+ ServiceInputTypes,
12
+ ServiceOutputTypes,
13
+ } from "../EMRClient";
14
+ import {
15
+ GetClusterSessionCredentialsInput,
16
+ GetClusterSessionCredentialsOutput,
17
+ } from "../models/models_0";
18
+ export interface GetClusterSessionCredentialsCommandInput
19
+ extends GetClusterSessionCredentialsInput {}
20
+ export interface GetClusterSessionCredentialsCommandOutput
21
+ extends GetClusterSessionCredentialsOutput,
22
+ __MetadataBearer {}
23
+ export declare class GetClusterSessionCredentialsCommand extends $Command<
24
+ GetClusterSessionCredentialsCommandInput,
25
+ GetClusterSessionCredentialsCommandOutput,
26
+ EMRClientResolvedConfig
27
+ > {
28
+ readonly input: GetClusterSessionCredentialsCommandInput;
29
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
30
+ constructor(input: GetClusterSessionCredentialsCommandInput);
31
+ resolveMiddleware(
32
+ clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>,
33
+ configuration: EMRClientResolvedConfig,
34
+ options?: __HttpHandlerOptions
35
+ ): Handler<
36
+ GetClusterSessionCredentialsCommandInput,
37
+ GetClusterSessionCredentialsCommandOutput
38
+ >;
39
+ private serialize;
40
+ private deserialize;
41
+ }
@@ -18,6 +18,7 @@ export * from "./DescribeStepCommand";
18
18
  export * from "./DescribeStudioCommand";
19
19
  export * from "./GetAutoTerminationPolicyCommand";
20
20
  export * from "./GetBlockPublicAccessConfigurationCommand";
21
+ export * from "./GetClusterSessionCredentialsCommand";
21
22
  export * from "./GetManagedScalingPolicyCommand";
22
23
  export * from "./GetStudioSessionMappingCommand";
23
24
  export * from "./ListBootstrapActionsCommand";
@@ -27,7 +27,7 @@ export declare const resolveClientEndpointParameters: <T>(
27
27
  defaultSigningName: string;
28
28
  };
29
29
  export interface EndpointParameters extends __EndpointParameters {
30
- Region?: string;
30
+ Region: string;
31
31
  UseDualStack?: boolean;
32
32
  UseFIPS?: boolean;
33
33
  Endpoint?: string;
@@ -52,9 +52,10 @@ export interface OnDemandProvisioningSpecification {
52
52
  export declare enum SpotProvisioningAllocationStrategy {
53
53
  CAPACITY_OPTIMIZED = "capacity-optimized",
54
54
  }
55
- export declare type SpotProvisioningTimeoutAction =
56
- | "SWITCH_TO_ON_DEMAND"
57
- | "TERMINATE_CLUSTER";
55
+ export declare enum SpotProvisioningTimeoutAction {
56
+ SWITCH_TO_ON_DEMAND = "SWITCH_TO_ON_DEMAND",
57
+ TERMINATE_CLUSTER = "TERMINATE_CLUSTER",
58
+ }
58
59
  export interface SpotProvisioningSpecification {
59
60
  TimeoutDurationMinutes: number | undefined;
60
61
  TimeoutAction: SpotProvisioningTimeoutAction | string | undefined;
@@ -181,7 +182,11 @@ export interface AutoScalingPolicy {
181
182
  Constraints: ScalingConstraints | undefined;
182
183
  Rules: ScalingRule[] | undefined;
183
184
  }
184
- export declare type InstanceRoleType = "CORE" | "MASTER" | "TASK";
185
+ export declare enum InstanceRoleType {
186
+ CORE = "CORE",
187
+ MASTER = "MASTER",
188
+ TASK = "TASK",
189
+ }
185
190
  export interface AddInstanceGroupsOutput {
186
191
  JobFlowId?: string;
187
192
  InstanceGroupIds?: string[];
@@ -284,9 +289,10 @@ export interface BootstrapActionConfig {
284
289
  export interface BootstrapActionDetail {
285
290
  BootstrapActionConfig?: BootstrapActionConfig;
286
291
  }
287
- export declare type StepCancellationOption =
288
- | "SEND_INTERRUPT"
289
- | "TERMINATE_PROCESS";
292
+ export declare enum StepCancellationOption {
293
+ SEND_INTERRUPT = "SEND_INTERRUPT",
294
+ TERMINATE_PROCESS = "TERMINATE_PROCESS",
295
+ }
290
296
  export interface CancelStepsInput {
291
297
  ClusterId: string | undefined;
292
298
  StepIds: string[] | undefined;
@@ -442,6 +448,28 @@ export interface CreateStudioSessionMappingInput {
442
448
  IdentityType: IdentityType | string | undefined;
443
449
  SessionPolicyArn: string | undefined;
444
450
  }
451
+ export interface UsernamePassword {
452
+ Username?: string;
453
+ Password?: string;
454
+ }
455
+ export declare type Credentials =
456
+ | Credentials.UsernamePasswordMember
457
+ | Credentials.$UnknownMember;
458
+ export declare namespace Credentials {
459
+ interface UsernamePasswordMember {
460
+ UsernamePassword: UsernamePassword;
461
+ $unknown?: never;
462
+ }
463
+ interface $UnknownMember {
464
+ UsernamePassword?: never;
465
+ $unknown: [string, any];
466
+ }
467
+ interface Visitor<T> {
468
+ UsernamePassword: (value: UsernamePassword) => T;
469
+ _: (name: string, value: any) => T;
470
+ }
471
+ const visit: <T>(value: Credentials, visitor: Visitor<T>) => T;
472
+ }
445
473
  export interface DeleteSecurityConfigurationInput {
446
474
  Name: string | undefined;
447
475
  }
@@ -531,14 +559,15 @@ export interface JobFlowInstancesDetail {
531
559
  TerminationProtected?: boolean;
532
560
  HadoopVersion?: string;
533
561
  }
534
- export declare type StepExecutionState =
535
- | "CANCELLED"
536
- | "COMPLETED"
537
- | "CONTINUE"
538
- | "FAILED"
539
- | "INTERRUPTED"
540
- | "PENDING"
541
- | "RUNNING";
562
+ export declare enum StepExecutionState {
563
+ CANCELLED = "CANCELLED",
564
+ COMPLETED = "COMPLETED",
565
+ CONTINUE = "CONTINUE",
566
+ FAILED = "FAILED",
567
+ INTERRUPTED = "INTERRUPTED",
568
+ PENDING = "PENDING",
569
+ RUNNING = "RUNNING",
570
+ }
542
571
  export interface StepExecutionStatusDetail {
543
572
  State: StepExecutionState | string | undefined;
544
573
  CreationDateTime: Date | undefined;
@@ -661,7 +690,9 @@ export declare enum StepState {
661
690
  PENDING = "PENDING",
662
691
  RUNNING = "RUNNING",
663
692
  }
664
- export declare type StepStateChangeReasonCode = "NONE";
693
+ export declare enum StepStateChangeReasonCode {
694
+ NONE = "NONE",
695
+ }
665
696
  export interface StepStateChangeReason {
666
697
  Code?: StepStateChangeReasonCode | string;
667
698
  Message?: string;
@@ -728,6 +759,14 @@ export interface GetAutoTerminationPolicyOutput {
728
759
  AutoTerminationPolicy?: AutoTerminationPolicy;
729
760
  }
730
761
  export interface GetBlockPublicAccessConfigurationInput {}
762
+ export interface GetClusterSessionCredentialsInput {
763
+ ClusterId: string | undefined;
764
+ ExecutionRoleArn: string | undefined;
765
+ }
766
+ export interface GetClusterSessionCredentialsOutput {
767
+ Credentials?: Credentials;
768
+ ExpiresAt?: Date;
769
+ }
731
770
  export interface GetManagedScalingPolicyInput {
732
771
  ClusterId: string | undefined;
733
772
  }
@@ -1447,6 +1486,10 @@ export declare const CreateStudioOutputFilterSensitiveLog: (
1447
1486
  export declare const CreateStudioSessionMappingInputFilterSensitiveLog: (
1448
1487
  obj: CreateStudioSessionMappingInput
1449
1488
  ) => any;
1489
+ export declare const UsernamePasswordFilterSensitiveLog: (
1490
+ obj: UsernamePassword
1491
+ ) => any;
1492
+ export declare const CredentialsFilterSensitiveLog: (obj: Credentials) => any;
1450
1493
  export declare const DeleteSecurityConfigurationInputFilterSensitiveLog: (
1451
1494
  obj: DeleteSecurityConfigurationInput
1452
1495
  ) => any;
@@ -1553,6 +1596,12 @@ export declare const GetAutoTerminationPolicyOutputFilterSensitiveLog: (
1553
1596
  export declare const GetBlockPublicAccessConfigurationInputFilterSensitiveLog: (
1554
1597
  obj: GetBlockPublicAccessConfigurationInput
1555
1598
  ) => any;
1599
+ export declare const GetClusterSessionCredentialsInputFilterSensitiveLog: (
1600
+ obj: GetClusterSessionCredentialsInput
1601
+ ) => any;
1602
+ export declare const GetClusterSessionCredentialsOutputFilterSensitiveLog: (
1603
+ obj: GetClusterSessionCredentialsOutput
1604
+ ) => any;
1556
1605
  export declare const GetManagedScalingPolicyInputFilterSensitiveLog: (
1557
1606
  obj: GetManagedScalingPolicyInput
1558
1607
  ) => any;
@@ -83,6 +83,10 @@ import {
83
83
  GetBlockPublicAccessConfigurationCommandInput,
84
84
  GetBlockPublicAccessConfigurationCommandOutput,
85
85
  } from "../commands/GetBlockPublicAccessConfigurationCommand";
86
+ import {
87
+ GetClusterSessionCredentialsCommandInput,
88
+ GetClusterSessionCredentialsCommandOutput,
89
+ } from "../commands/GetClusterSessionCredentialsCommand";
86
90
  import {
87
91
  GetManagedScalingPolicyCommandInput,
88
92
  GetManagedScalingPolicyCommandOutput,
@@ -291,6 +295,10 @@ export declare const serializeAws_json1_1GetBlockPublicAccessConfigurationComman
291
295
  input: GetBlockPublicAccessConfigurationCommandInput,
292
296
  context: __SerdeContext
293
297
  ) => Promise<__HttpRequest>;
298
+ export declare const serializeAws_json1_1GetClusterSessionCredentialsCommand: (
299
+ input: GetClusterSessionCredentialsCommandInput,
300
+ context: __SerdeContext
301
+ ) => Promise<__HttpRequest>;
294
302
  export declare const serializeAws_json1_1GetManagedScalingPolicyCommand: (
295
303
  input: GetManagedScalingPolicyCommandInput,
296
304
  context: __SerdeContext
@@ -499,6 +507,10 @@ export declare const deserializeAws_json1_1GetBlockPublicAccessConfigurationComm
499
507
  output: __HttpResponse,
500
508
  context: __SerdeContext
501
509
  ) => Promise<GetBlockPublicAccessConfigurationCommandOutput>;
510
+ export declare const deserializeAws_json1_1GetClusterSessionCredentialsCommand: (
511
+ output: __HttpResponse,
512
+ context: __SerdeContext
513
+ ) => Promise<GetClusterSessionCredentialsCommandOutput>;
502
514
  export declare const deserializeAws_json1_1GetManagedScalingPolicyCommand: (
503
515
  output: __HttpResponse,
504
516
  context: __SerdeContext