@aws-sdk/client-emr 3.686.0 → 3.691.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.
@@ -44,7 +44,7 @@ export interface VolumeSpecification {
44
44
  * <p>The number of I/O operations per second (IOPS) that the volume supports.</p>
45
45
  * @public
46
46
  */
47
- Iops?: number;
47
+ Iops?: number | undefined;
48
48
  /**
49
49
  * <p>The volume size, in gibibytes (GiB). This can be a number from 1 - 1024. If the volume
50
50
  * type is EBS-optimized, the minimum value is 10.</p>
@@ -56,7 +56,7 @@ export interface VolumeSpecification {
56
56
  * from 125 - 1000 and is valid only for gp3 volumes.</p>
57
57
  * @public
58
58
  */
59
- Throughput?: number;
59
+ Throughput?: number | undefined;
60
60
  }
61
61
  /**
62
62
  * <p>Configuration of requested EBS block device associated with the instance group with
@@ -76,7 +76,7 @@ export interface EbsBlockDeviceConfig {
76
76
  * every instance in the instance group</p>
77
77
  * @public
78
78
  */
79
- VolumesPerInstance?: number;
79
+ VolumesPerInstance?: number | undefined;
80
80
  }
81
81
  /**
82
82
  * <p>The Amazon EBS configuration of a cluster instance.</p>
@@ -88,12 +88,12 @@ export interface EbsConfiguration {
88
88
  * instance.</p>
89
89
  * @public
90
90
  */
91
- EbsBlockDeviceConfigs?: EbsBlockDeviceConfig[];
91
+ EbsBlockDeviceConfigs?: EbsBlockDeviceConfig[] | undefined;
92
92
  /**
93
93
  * <p>Indicates whether an Amazon EBS volume is EBS-optimized.</p>
94
94
  * @public
95
95
  */
96
- EbsOptimized?: boolean;
96
+ EbsOptimized?: boolean | undefined;
97
97
  }
98
98
  /**
99
99
  * @public
@@ -150,7 +150,7 @@ export interface OnDemandCapacityReservationOptions {
150
150
  * the chosen On-Demand allocation strategy.</p>
151
151
  * @public
152
152
  */
153
- UsageStrategy?: OnDemandCapacityReservationUsageStrategy;
153
+ UsageStrategy?: OnDemandCapacityReservationUsageStrategy | undefined;
154
154
  /**
155
155
  * <p>Indicates the instance's Capacity Reservation preferences. Possible preferences
156
156
  * include:</p>
@@ -168,12 +168,12 @@ export interface OnDemandCapacityReservationOptions {
168
168
  * </ul>
169
169
  * @public
170
170
  */
171
- CapacityReservationPreference?: OnDemandCapacityReservationPreference;
171
+ CapacityReservationPreference?: OnDemandCapacityReservationPreference | undefined;
172
172
  /**
173
173
  * <p>The ARN of the Capacity Reservation resource group in which to run the instance.</p>
174
174
  * @public
175
175
  */
176
- CapacityReservationResourceGroupArn?: string;
176
+ CapacityReservationResourceGroupArn?: string | undefined;
177
177
  }
178
178
  /**
179
179
  * <p> The launch specification for On-Demand Instances in the instance fleet, which
@@ -200,7 +200,7 @@ export interface OnDemandProvisioningSpecification {
200
200
  * the allocation strategy.</p>
201
201
  * @public
202
202
  */
203
- CapacityReservationOptions?: OnDemandCapacityReservationOptions;
203
+ CapacityReservationOptions?: OnDemandCapacityReservationOptions | undefined;
204
204
  }
205
205
  /**
206
206
  * @public
@@ -280,7 +280,7 @@ export interface SpotProvisioningSpecification {
280
280
  * </note>
281
281
  * @public
282
282
  */
283
- BlockDurationMinutes?: number;
283
+ BlockDurationMinutes?: number | undefined;
284
284
  /**
285
285
  * <p>Specifies one of the following strategies to launch Spot Instance fleets:
286
286
  * <code>capacity-optimized</code>, <code>price-capacity-optimized</code>, <code>lowest-price</code>, or
@@ -290,7 +290,7 @@ export interface SpotProvisioningSpecification {
290
290
  * </note>
291
291
  * @public
292
292
  */
293
- AllocationStrategy?: SpotProvisioningAllocationStrategy;
293
+ AllocationStrategy?: SpotProvisioningAllocationStrategy | undefined;
294
294
  }
295
295
  /**
296
296
  * <p>The launch specification for On-Demand and Spot Instances in the fleet.</p>
@@ -307,7 +307,7 @@ export interface InstanceFleetProvisioningSpecifications {
307
307
  * duration, and provisioning timeout behavior.</p>
308
308
  * @public
309
309
  */
310
- SpotSpecification?: SpotProvisioningSpecification;
310
+ SpotSpecification?: SpotProvisioningSpecification | undefined;
311
311
  /**
312
312
  * <p> The launch specification for On-Demand Instances in the instance fleet, which
313
313
  * determines the allocation strategy and capacity reservation options.</p>
@@ -318,7 +318,7 @@ export interface InstanceFleetProvisioningSpecifications {
318
318
  * </note>
319
319
  * @public
320
320
  */
321
- OnDemandSpecification?: OnDemandProvisioningSpecification;
321
+ OnDemandSpecification?: OnDemandProvisioningSpecification | undefined;
322
322
  }
323
323
  /**
324
324
  * <p>The resize specification for On-Demand Instances in the instance fleet, which contains
@@ -335,18 +335,18 @@ export interface OnDemandResizingSpecification {
335
335
  * Amazon EMR SDK ModifyInstanceFleet API) or by Amazon EMR due to Amazon EC2 Spot Reclamation.</p>
336
336
  * @public
337
337
  */
338
- TimeoutDurationMinutes?: number;
338
+ TimeoutDurationMinutes?: number | undefined;
339
339
  /**
340
340
  * <p>Specifies the allocation strategy to use to launch On-Demand instances during a resize. The default is <code>lowest-price</code>.</p>
341
341
  * @public
342
342
  */
343
- AllocationStrategy?: OnDemandProvisioningAllocationStrategy;
343
+ AllocationStrategy?: OnDemandProvisioningAllocationStrategy | undefined;
344
344
  /**
345
345
  * <p>Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand
346
346
  * capacity.</p>
347
347
  * @public
348
348
  */
349
- CapacityReservationOptions?: OnDemandCapacityReservationOptions;
349
+ CapacityReservationOptions?: OnDemandCapacityReservationOptions | undefined;
350
350
  }
351
351
  /**
352
352
  * <p>The resize specification for Spot Instances in the instance fleet, which contains the
@@ -363,14 +363,14 @@ export interface SpotResizingSpecification {
363
363
  * modify-instance-fleet or Amazon EMR SDK ModifyInstanceFleet API) or by Amazon EMR due to Amazon EC2 Spot Reclamation.</p>
364
364
  * @public
365
365
  */
366
- TimeoutDurationMinutes?: number;
366
+ TimeoutDurationMinutes?: number | undefined;
367
367
  /**
368
368
  * <p>Specifies the allocation strategy to use to launch Spot instances during a resize. If you run Amazon EMR releases 6.9.0 or higher,
369
369
  * the default is <code>price-capacity-optimized</code>. If you run Amazon EMR releases 6.8.0 or lower, the default is
370
370
  * <code>capacity-optimized</code>.</p>
371
371
  * @public
372
372
  */
373
- AllocationStrategy?: SpotProvisioningAllocationStrategy;
373
+ AllocationStrategy?: SpotProvisioningAllocationStrategy | undefined;
374
374
  }
375
375
  /**
376
376
  * <p>The resize specification for On-Demand and Spot Instances in the fleet.</p>
@@ -382,13 +382,13 @@ export interface InstanceFleetResizingSpecifications {
382
382
  * allocation strategy and the resize timeout period. </p>
383
383
  * @public
384
384
  */
385
- SpotResizeSpecification?: SpotResizingSpecification;
385
+ SpotResizeSpecification?: SpotResizingSpecification | undefined;
386
386
  /**
387
387
  * <p>The resize specification for On-Demand Instances in the instance fleet, which contains
388
388
  * the allocation strategy, capacity reservation options, and the resize timeout period. </p>
389
389
  * @public
390
390
  */
391
- OnDemandResizeSpecification?: OnDemandResizingSpecification;
391
+ OnDemandResizeSpecification?: OnDemandResizingSpecification | undefined;
392
392
  }
393
393
  /**
394
394
  * @public
@@ -398,17 +398,17 @@ export interface AddInstanceFleetOutput {
398
398
  * <p>The unique identifier of the cluster.</p>
399
399
  * @public
400
400
  */
401
- ClusterId?: string;
401
+ ClusterId?: string | undefined;
402
402
  /**
403
403
  * <p>The unique identifier of the instance fleet.</p>
404
404
  * @public
405
405
  */
406
- InstanceFleetId?: string;
406
+ InstanceFleetId?: string | undefined;
407
407
  /**
408
408
  * <p>The Amazon Resource Name of the cluster.</p>
409
409
  * @public
410
410
  */
411
- ClusterArn?: string;
411
+ ClusterArn?: string | undefined;
412
412
  }
413
413
  /**
414
414
  * <p>This exception occurs when there is an internal failure in the Amazon EMR
@@ -422,7 +422,7 @@ export declare class InternalServerException extends __BaseException {
422
422
  * <p>The message associated with the exception.</p>
423
423
  * @public
424
424
  */
425
- Message?: string;
425
+ Message?: string | undefined;
426
426
  /**
427
427
  * @internal
428
428
  */
@@ -439,12 +439,12 @@ export declare class InvalidRequestException extends __BaseException {
439
439
  * <p>The error code associated with the exception.</p>
440
440
  * @public
441
441
  */
442
- ErrorCode?: string;
442
+ ErrorCode?: string | undefined;
443
443
  /**
444
444
  * <p>The message associated with the exception.</p>
445
445
  * @public
446
446
  */
447
- Message?: string;
447
+ Message?: string | undefined;
448
448
  /**
449
449
  * @internal
450
450
  */
@@ -519,7 +519,7 @@ export interface SimpleScalingPolicyConfiguration {
519
519
  * <code>ScalingAdjustment</code>, which should be expressed as a positive integer.</p>
520
520
  * @public
521
521
  */
522
- AdjustmentType?: AdjustmentType;
522
+ AdjustmentType?: AdjustmentType | undefined;
523
523
  /**
524
524
  * <p>The amount by which to scale in or scale out, based on the specified
525
525
  * <code>AdjustmentType</code>. A positive value adds to the instance group's Amazon EC2 instance count while a negative number removes instances. If
@@ -536,7 +536,7 @@ export interface SimpleScalingPolicyConfiguration {
536
536
  * trigger-related scaling activities can start. The default value is 0.</p>
537
537
  * @public
538
538
  */
539
- CoolDown?: number;
539
+ CoolDown?: number | undefined;
540
540
  }
541
541
  /**
542
542
  * <p>The type of adjustment the automatic scaling activity makes when triggered, and the
@@ -549,7 +549,7 @@ export interface ScalingAction {
549
549
  * group.</p>
550
550
  * @public
551
551
  */
552
- Market?: MarketType;
552
+ Market?: MarketType | undefined;
553
553
  /**
554
554
  * <p>The type of adjustment the automatic scaling activity makes when triggered, and the
555
555
  * periodicity of the adjustment.</p>
@@ -584,12 +584,12 @@ export interface MetricDimension {
584
584
  * <p>The dimension name.</p>
585
585
  * @public
586
586
  */
587
- Key?: string;
587
+ Key?: string | undefined;
588
588
  /**
589
589
  * <p>The dimension value.</p>
590
590
  * @public
591
591
  */
592
- Value?: string;
592
+ Value?: string | undefined;
593
593
  }
594
594
  /**
595
595
  * @public
@@ -662,7 +662,7 @@ export interface CloudWatchAlarmDefinition {
662
662
  * <code>1</code>.</p>
663
663
  * @public
664
664
  */
665
- EvaluationPeriods?: number;
665
+ EvaluationPeriods?: number | undefined;
666
666
  /**
667
667
  * <p>The name of the CloudWatch metric that is watched to determine an alarm
668
668
  * condition.</p>
@@ -674,7 +674,7 @@ export interface CloudWatchAlarmDefinition {
674
674
  * <code>AWS/ElasticMapReduce</code>.</p>
675
675
  * @public
676
676
  */
677
- Namespace?: string;
677
+ Namespace?: string | undefined;
678
678
  /**
679
679
  * <p>The period, in seconds, over which the statistic is applied. CloudWatch metrics for
680
680
  * Amazon EMR are emitted every five minutes (300 seconds), so if you specify a
@@ -687,7 +687,7 @@ export interface CloudWatchAlarmDefinition {
687
687
  * <code>AVERAGE</code>.</p>
688
688
  * @public
689
689
  */
690
- Statistic?: Statistic;
690
+ Statistic?: Statistic | undefined;
691
691
  /**
692
692
  * <p>The value against which the specified statistic is compared.</p>
693
693
  * @public
@@ -699,12 +699,12 @@ export interface CloudWatchAlarmDefinition {
699
699
  * metric.</p>
700
700
  * @public
701
701
  */
702
- Unit?: Unit;
702
+ Unit?: Unit | undefined;
703
703
  /**
704
704
  * <p>A CloudWatch metric dimension.</p>
705
705
  * @public
706
706
  */
707
- Dimensions?: MetricDimension[];
707
+ Dimensions?: MetricDimension[] | undefined;
708
708
  }
709
709
  /**
710
710
  * <p>The conditions that trigger an automatic scaling activity.</p>
@@ -736,7 +736,7 @@ export interface ScalingRule {
736
736
  * <p>A friendly, more verbose description of the automatic scaling rule.</p>
737
737
  * @public
738
738
  */
739
- Description?: string;
739
+ Description?: string | undefined;
740
740
  /**
741
741
  * <p>The conditions that trigger an automatic scaling activity.</p>
742
742
  * @public
@@ -792,17 +792,17 @@ export interface AddInstanceGroupsOutput {
792
792
  * <p>The job flow ID in which the instance groups are added.</p>
793
793
  * @public
794
794
  */
795
- JobFlowId?: string;
795
+ JobFlowId?: string | undefined;
796
796
  /**
797
797
  * <p>Instance group IDs of the newly created instance groups.</p>
798
798
  * @public
799
799
  */
800
- InstanceGroupIds?: string[];
800
+ InstanceGroupIds?: string[] | undefined;
801
801
  /**
802
802
  * <p>The Amazon Resource Name of the cluster.</p>
803
803
  * @public
804
804
  */
805
- ClusterArn?: string;
805
+ ClusterArn?: string | undefined;
806
806
  }
807
807
  /**
808
808
  * <p>Indicates that an error occurred while processing the request and that the request was
@@ -826,12 +826,12 @@ export interface KeyValue {
826
826
  * <p>The unique identifier of a key-value pair.</p>
827
827
  * @public
828
828
  */
829
- Key?: string;
829
+ Key?: string | undefined;
830
830
  /**
831
831
  * <p>The value part of the identified key.</p>
832
832
  * @public
833
833
  */
834
- Value?: string;
834
+ Value?: string | undefined;
835
835
  }
836
836
  /**
837
837
  * <p>A job flow step consisting of a JAR file whose main function will be executed. The main
@@ -845,7 +845,7 @@ export interface HadoopJarStepConfig {
845
845
  * to pass key-value pairs to your main function.</p>
846
846
  * @public
847
847
  */
848
- Properties?: KeyValue[];
848
+ Properties?: KeyValue[] | undefined;
849
849
  /**
850
850
  * <p>A path to a JAR file run during the step.</p>
851
851
  * @public
@@ -856,13 +856,13 @@ export interface HadoopJarStepConfig {
856
856
  * should specify a Main-Class in its manifest file.</p>
857
857
  * @public
858
858
  */
859
- MainClass?: string;
859
+ MainClass?: string | undefined;
860
860
  /**
861
861
  * <p>A list of command line arguments passed to the JAR file's main function when
862
862
  * executed.</p>
863
863
  * @public
864
864
  */
865
- Args?: string[];
865
+ Args?: string[] | undefined;
866
866
  }
867
867
  /**
868
868
  * <p>Specification for a cluster (job flow) step.</p>
@@ -910,7 +910,7 @@ export interface StepConfig {
910
910
  * not terminate.</p>
911
911
  * @public
912
912
  */
913
- ActionOnFailure?: ActionOnFailure;
913
+ ActionOnFailure?: ActionOnFailure | undefined;
914
914
  /**
915
915
  * <p>The JAR file used for the step.</p>
916
916
  * @public
@@ -942,7 +942,7 @@ export interface AddJobFlowStepsInput {
942
942
  * runtime role ARN.</p>
943
943
  * @public
944
944
  */
945
- ExecutionRoleArn?: string;
945
+ ExecutionRoleArn?: string | undefined;
946
946
  }
947
947
  /**
948
948
  * <p> The output for the <a>AddJobFlowSteps</a> operation. </p>
@@ -953,7 +953,7 @@ export interface AddJobFlowStepsOutput {
953
953
  * <p>The identifiers of the list of steps added to the job flow.</p>
954
954
  * @public
955
955
  */
956
- StepIds?: string[];
956
+ StepIds?: string[] | undefined;
957
957
  }
958
958
  /**
959
959
  * <p>A key-value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as
@@ -967,13 +967,13 @@ export interface Tag {
967
967
  * information, see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag</a>. </p>
968
968
  * @public
969
969
  */
970
- Key?: string;
970
+ Key?: string | undefined;
971
971
  /**
972
972
  * <p>A user-defined value, which is optional in a tag. For more information, see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-tags.html">Tag
973
973
  * Clusters</a>. </p>
974
974
  * @public
975
975
  */
976
- Value?: string;
976
+ Value?: string | undefined;
977
977
  }
978
978
  /**
979
979
  * <p>This input identifies an Amazon EMR resource and a list of tags to
@@ -1017,23 +1017,23 @@ export interface Application {
1017
1017
  * <p>The name of the application.</p>
1018
1018
  * @public
1019
1019
  */
1020
- Name?: string;
1020
+ Name?: string | undefined;
1021
1021
  /**
1022
1022
  * <p>The version of the application.</p>
1023
1023
  * @public
1024
1024
  */
1025
- Version?: string;
1025
+ Version?: string | undefined;
1026
1026
  /**
1027
1027
  * <p>Arguments for Amazon EMR to pass to the application.</p>
1028
1028
  * @public
1029
1029
  */
1030
- Args?: string[];
1030
+ Args?: string[] | undefined;
1031
1031
  /**
1032
1032
  * <p>This option is for advanced users only. This is meta information about third-party
1033
1033
  * applications that third-party vendors use for testing purposes.</p>
1034
1034
  * @public
1035
1035
  */
1036
- AdditionalInfo?: Record<string, string>;
1036
+ AdditionalInfo?: Record<string, string> | undefined;
1037
1037
  }
1038
1038
  /**
1039
1039
  * @public
@@ -1088,13 +1088,13 @@ export interface AutoScalingPolicyStateChangeReason {
1088
1088
  * failed to provision. <code>CLEANUP_FAILURE</code> indicates an error.</p>
1089
1089
  * @public
1090
1090
  */
1091
- Code?: AutoScalingPolicyStateChangeReasonCode;
1091
+ Code?: AutoScalingPolicyStateChangeReasonCode | undefined;
1092
1092
  /**
1093
1093
  * <p>A friendly, more verbose message that accompanies an automatic scaling policy state
1094
1094
  * change.</p>
1095
1095
  * @public
1096
1096
  */
1097
- Message?: string;
1097
+ Message?: string | undefined;
1098
1098
  }
1099
1099
  /**
1100
1100
  * <p>The status of an automatic scaling policy.
@@ -1106,12 +1106,12 @@ export interface AutoScalingPolicyStatus {
1106
1106
  * <p>Indicates the status of the automatic scaling policy.</p>
1107
1107
  * @public
1108
1108
  */
1109
- State?: AutoScalingPolicyState;
1109
+ State?: AutoScalingPolicyState | undefined;
1110
1110
  /**
1111
1111
  * <p>The reason for a change in status.</p>
1112
1112
  * @public
1113
1113
  */
1114
- StateChangeReason?: AutoScalingPolicyStateChangeReason;
1114
+ StateChangeReason?: AutoScalingPolicyStateChangeReason | undefined;
1115
1115
  }
1116
1116
  /**
1117
1117
  * <p>An automatic scaling policy for a core instance group or task instance group in an
@@ -1125,19 +1125,19 @@ export interface AutoScalingPolicyDescription {
1125
1125
  * <p>The status of an automatic scaling policy. </p>
1126
1126
  * @public
1127
1127
  */
1128
- Status?: AutoScalingPolicyStatus;
1128
+ Status?: AutoScalingPolicyStatus | undefined;
1129
1129
  /**
1130
1130
  * <p>The upper and lower Amazon EC2 instance limits for an automatic scaling policy.
1131
1131
  * Automatic scaling activity will not cause an instance group to grow above or below these
1132
1132
  * limits.</p>
1133
1133
  * @public
1134
1134
  */
1135
- Constraints?: ScalingConstraints;
1135
+ Constraints?: ScalingConstraints | undefined;
1136
1136
  /**
1137
1137
  * <p>The scale-in and scale-out rules that comprise the automatic scaling policy.</p>
1138
1138
  * @public
1139
1139
  */
1140
- Rules?: ScalingRule[];
1140
+ Rules?: ScalingRule[] | undefined;
1141
1141
  }
1142
1142
  /**
1143
1143
  * <p>An auto-termination policy for an Amazon EMR cluster. An auto-termination policy
@@ -1153,7 +1153,7 @@ export interface AutoTerminationPolicy {
1153
1153
  * days).</p>
1154
1154
  * @public
1155
1155
  */
1156
- IdleTimeout?: number;
1156
+ IdleTimeout?: number | undefined;
1157
1157
  }
1158
1158
  /**
1159
1159
  * <p>A list of port ranges that are permitted to allow inbound traffic from all public IP
@@ -1171,7 +1171,7 @@ export interface PortRange {
1171
1171
  * <p>The smallest port number in a specified range of port numbers.</p>
1172
1172
  * @public
1173
1173
  */
1174
- MaxRange?: number;
1174
+ MaxRange?: number | undefined;
1175
1175
  }
1176
1176
  /**
1177
1177
  * <p>Properties that describe the Amazon Web Services principal that created the
@@ -1207,7 +1207,7 @@ export interface ScriptBootstrapActionConfig {
1207
1207
  * <p>A list of command line arguments to pass to the bootstrap action script.</p>
1208
1208
  * @public
1209
1209
  */
1210
- Args?: string[];
1210
+ Args?: string[] | undefined;
1211
1211
  }
1212
1212
  /**
1213
1213
  * <p>Configuration of a bootstrap action.</p>
@@ -1234,7 +1234,7 @@ export interface BootstrapActionDetail {
1234
1234
  * <p>A description of the bootstrap action.</p>
1235
1235
  * @public
1236
1236
  */
1237
- BootstrapActionConfig?: BootstrapActionConfig;
1237
+ BootstrapActionConfig?: BootstrapActionConfig | undefined;
1238
1238
  }
1239
1239
  /**
1240
1240
  * @public
@@ -1269,7 +1269,7 @@ export interface CancelStepsInput {
1269
1269
  * <code>SEND_INTERRUPT</code>.</p>
1270
1270
  * @public
1271
1271
  */
1272
- StepCancellationOption?: StepCancellationOption;
1272
+ StepCancellationOption?: StepCancellationOption | undefined;
1273
1273
  }
1274
1274
  /**
1275
1275
  * @public
@@ -1292,17 +1292,17 @@ export interface CancelStepsInfo {
1292
1292
  * <p>The encrypted StepId of a step.</p>
1293
1293
  * @public
1294
1294
  */
1295
- StepId?: string;
1295
+ StepId?: string | undefined;
1296
1296
  /**
1297
1297
  * <p>The status of a CancelSteps Request. The value may be SUBMITTED or FAILED.</p>
1298
1298
  * @public
1299
1299
  */
1300
- Status?: CancelStepsRequestStatus;
1300
+ Status?: CancelStepsRequestStatus | undefined;
1301
1301
  /**
1302
1302
  * <p>The reason for the failure if the CancelSteps request fails.</p>
1303
1303
  * @public
1304
1304
  */
1305
- Reason?: string;
1305
+ Reason?: string | undefined;
1306
1306
  }
1307
1307
  /**
1308
1308
  * <p> The output for the <a>CancelSteps</a> operation. </p>
@@ -1314,7 +1314,7 @@ export interface CancelStepsOutput {
1314
1314
  * requests for each <code>StepID</code> specified.</p>
1315
1315
  * @public
1316
1316
  */
1317
- CancelStepsInfoList?: CancelStepsInfo[];
1317
+ CancelStepsInfoList?: CancelStepsInfo[] | undefined;
1318
1318
  }
1319
1319
  /**
1320
1320
  * <p>Provides information about the Amazon EC2 instances in a cluster grouped by
@@ -1328,14 +1328,14 @@ export interface Ec2InstanceAttributes {
1328
1328
  * master node as a user named "hadoop".</p>
1329
1329
  * @public
1330
1330
  */
1331
- Ec2KeyName?: string;
1331
+ Ec2KeyName?: string | undefined;
1332
1332
  /**
1333
1333
  * <p>Set this parameter to the identifier of the Amazon VPC subnet where you want the
1334
1334
  * cluster to launch. If you do not specify this value, and your account supports EC2-Classic,
1335
1335
  * the cluster launches in EC2-Classic.</p>
1336
1336
  * @public
1337
1337
  */
1338
- Ec2SubnetId?: string;
1338
+ Ec2SubnetId?: string | undefined;
1339
1339
  /**
1340
1340
  * <p>Applies to clusters configured with the instance fleets option. Specifies the unique
1341
1341
  * identifier of one or more Amazon EC2 subnets in which to launch Amazon EC2
@@ -1350,12 +1350,12 @@ export interface Ec2InstanceAttributes {
1350
1350
  * be specified together.</p>
1351
1351
  * @public
1352
1352
  */
1353
- RequestedEc2SubnetIds?: string[];
1353
+ RequestedEc2SubnetIds?: string[] | undefined;
1354
1354
  /**
1355
1355
  * <p>The Availability Zone in which the cluster will run. </p>
1356
1356
  * @public
1357
1357
  */
1358
- Ec2AvailabilityZone?: string;
1358
+ Ec2AvailabilityZone?: string | undefined;
1359
1359
  /**
1360
1360
  * <p>Applies to clusters configured with the instance fleets option. Specifies one or more
1361
1361
  * Availability Zones in which to launch Amazon EC2 cluster instances when the
@@ -1367,41 +1367,41 @@ export interface Ec2InstanceAttributes {
1367
1367
  * be specified together.</p>
1368
1368
  * @public
1369
1369
  */
1370
- RequestedEc2AvailabilityZones?: string[];
1370
+ RequestedEc2AvailabilityZones?: string[] | undefined;
1371
1371
  /**
1372
1372
  * <p>The IAM role that was specified when the cluster was launched. The
1373
1373
  * Amazon EC2 instances of the cluster assume this role.</p>
1374
1374
  * @public
1375
1375
  */
1376
- IamInstanceProfile?: string;
1376
+ IamInstanceProfile?: string | undefined;
1377
1377
  /**
1378
1378
  * <p>The identifier of the Amazon EC2 security group for the master node.</p>
1379
1379
  * @public
1380
1380
  */
1381
- EmrManagedMasterSecurityGroup?: string;
1381
+ EmrManagedMasterSecurityGroup?: string | undefined;
1382
1382
  /**
1383
1383
  * <p>The identifier of the Amazon EC2 security group for the core and task
1384
1384
  * nodes.</p>
1385
1385
  * @public
1386
1386
  */
1387
- EmrManagedSlaveSecurityGroup?: string;
1387
+ EmrManagedSlaveSecurityGroup?: string | undefined;
1388
1388
  /**
1389
1389
  * <p>The identifier of the Amazon EC2 security group for the Amazon EMR
1390
1390
  * service to access clusters in VPC private subnets.</p>
1391
1391
  * @public
1392
1392
  */
1393
- ServiceAccessSecurityGroup?: string;
1393
+ ServiceAccessSecurityGroup?: string | undefined;
1394
1394
  /**
1395
1395
  * <p>A list of additional Amazon EC2 security group IDs for the master node.</p>
1396
1396
  * @public
1397
1397
  */
1398
- AdditionalMasterSecurityGroups?: string[];
1398
+ AdditionalMasterSecurityGroups?: string[] | undefined;
1399
1399
  /**
1400
1400
  * <p>A list of additional Amazon EC2 security group IDs for the core and task
1401
1401
  * nodes.</p>
1402
1402
  * @public
1403
1403
  */
1404
- AdditionalSlaveSecurityGroups?: string[];
1404
+ AdditionalSlaveSecurityGroups?: string[] | undefined;
1405
1405
  }
1406
1406
  /**
1407
1407
  * @public
@@ -1440,18 +1440,18 @@ export interface KerberosAttributes {
1440
1440
  * cross-realm principal password, which must be identical across realms.</p>
1441
1441
  * @public
1442
1442
  */
1443
- CrossRealmTrustPrincipalPassword?: string;
1443
+ CrossRealmTrustPrincipalPassword?: string | undefined;
1444
1444
  /**
1445
1445
  * <p>Required only when establishing a cross-realm trust with an Active Directory domain. A
1446
1446
  * user with sufficient privileges to join resources to the domain.</p>
1447
1447
  * @public
1448
1448
  */
1449
- ADDomainJoinUser?: string;
1449
+ ADDomainJoinUser?: string | undefined;
1450
1450
  /**
1451
1451
  * <p>The Active Directory password for <code>ADDomainJoinUser</code>.</p>
1452
1452
  * @public
1453
1453
  */
1454
- ADDomainJoinPassword?: string;
1454
+ ADDomainJoinPassword?: string | undefined;
1455
1455
  }
1456
1456
  /**
1457
1457
  * @public
@@ -1489,7 +1489,7 @@ export interface PlacementGroupConfig {
1489
1489
  * is <code>SPREAD</code> for the <code>MASTER</code> instance role.</p>
1490
1490
  * @public
1491
1491
  */
1492
- PlacementStrategy?: PlacementGroupStrategy;
1492
+ PlacementStrategy?: PlacementGroupStrategy | undefined;
1493
1493
  }
1494
1494
  /**
1495
1495
  * @public
@@ -1525,18 +1525,18 @@ export interface ErrorDetail {
1525
1525
  * <p>The name or code associated with the error.</p>
1526
1526
  * @public
1527
1527
  */
1528
- ErrorCode?: string;
1528
+ ErrorCode?: string | undefined;
1529
1529
  /**
1530
1530
  * <p>A list of key value pairs that provides contextual information about why an error
1531
1531
  * occured.</p>
1532
1532
  * @public
1533
1533
  */
1534
- ErrorData?: Record<string, string>[];
1534
+ ErrorData?: Record<string, string>[] | undefined;
1535
1535
  /**
1536
1536
  * <p>A message that describes the error.</p>
1537
1537
  * @public
1538
1538
  */
1539
- ErrorMessage?: string;
1539
+ ErrorMessage?: string | undefined;
1540
1540
  }
1541
1541
  /**
1542
1542
  * @public
@@ -1582,12 +1582,12 @@ export interface ClusterStateChangeReason {
1582
1582
  * <p>The programmatic code for the state change reason.</p>
1583
1583
  * @public
1584
1584
  */
1585
- Code?: ClusterStateChangeReasonCode;
1585
+ Code?: ClusterStateChangeReasonCode | undefined;
1586
1586
  /**
1587
1587
  * <p>The descriptive message for the state change reason.</p>
1588
1588
  * @public
1589
1589
  */
1590
- Message?: string;
1590
+ Message?: string | undefined;
1591
1591
  }
1592
1592
  /**
1593
1593
  * <p>Represents the timeline of the cluster's lifecycle.</p>
@@ -1598,17 +1598,17 @@ export interface ClusterTimeline {
1598
1598
  * <p>The creation date and time of the cluster.</p>
1599
1599
  * @public
1600
1600
  */
1601
- CreationDateTime?: Date;
1601
+ CreationDateTime?: Date | undefined;
1602
1602
  /**
1603
1603
  * <p>The date and time when the cluster was ready to run steps.</p>
1604
1604
  * @public
1605
1605
  */
1606
- ReadyDateTime?: Date;
1606
+ ReadyDateTime?: Date | undefined;
1607
1607
  /**
1608
1608
  * <p>The date and time when the cluster was terminated.</p>
1609
1609
  * @public
1610
1610
  */
1611
- EndDateTime?: Date;
1611
+ EndDateTime?: Date | undefined;
1612
1612
  }
1613
1613
  /**
1614
1614
  * <p>The detailed status of the cluster.</p>
@@ -1619,25 +1619,25 @@ export interface ClusterStatus {
1619
1619
  * <p>The current state of the cluster.</p>
1620
1620
  * @public
1621
1621
  */
1622
- State?: ClusterState;
1622
+ State?: ClusterState | undefined;
1623
1623
  /**
1624
1624
  * <p>The reason for the cluster status change.</p>
1625
1625
  * @public
1626
1626
  */
1627
- StateChangeReason?: ClusterStateChangeReason;
1627
+ StateChangeReason?: ClusterStateChangeReason | undefined;
1628
1628
  /**
1629
1629
  * <p>A timeline that represents the status of a cluster over the lifetime of the
1630
1630
  * cluster.</p>
1631
1631
  * @public
1632
1632
  */
1633
- Timeline?: ClusterTimeline;
1633
+ Timeline?: ClusterTimeline | undefined;
1634
1634
  /**
1635
1635
  * <p>A list of tuples that provides information about the errors that caused a cluster to
1636
1636
  * terminate. This structure can contain up to 10 different <code>ErrorDetail</code>
1637
1637
  * tuples.</p>
1638
1638
  * @public
1639
1639
  */
1640
- ErrorDetails?: ErrorDetail[];
1640
+ ErrorDetails?: ErrorDetail[] | undefined;
1641
1641
  }
1642
1642
  /**
1643
1643
  * <p>The summary description of the cluster.</p>
@@ -1648,17 +1648,17 @@ export interface ClusterSummary {
1648
1648
  * <p>The unique identifier for the cluster.</p>
1649
1649
  * @public
1650
1650
  */
1651
- Id?: string;
1651
+ Id?: string | undefined;
1652
1652
  /**
1653
1653
  * <p>The name of the cluster.</p>
1654
1654
  * @public
1655
1655
  */
1656
- Name?: string;
1656
+ Name?: string | undefined;
1657
1657
  /**
1658
1658
  * <p>The details about the current status of the cluster.</p>
1659
1659
  * @public
1660
1660
  */
1661
- Status?: ClusterStatus;
1661
+ Status?: ClusterStatus | undefined;
1662
1662
  /**
1663
1663
  * <p>An approximation of the cost of the cluster, represented in m1.small/hours. This value
1664
1664
  * is incremented one time for every hour an m1.small instance runs. Larger instances are
@@ -1667,17 +1667,17 @@ export interface ClusterSummary {
1667
1667
  * only an approximation and does not reflect the actual billing rate.</p>
1668
1668
  * @public
1669
1669
  */
1670
- NormalizedInstanceHours?: number;
1670
+ NormalizedInstanceHours?: number | undefined;
1671
1671
  /**
1672
1672
  * <p>The Amazon Resource Name of the cluster.</p>
1673
1673
  * @public
1674
1674
  */
1675
- ClusterArn?: string;
1675
+ ClusterArn?: string | undefined;
1676
1676
  /**
1677
1677
  * <p> The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. </p>
1678
1678
  * @public
1679
1679
  */
1680
- OutpostArn?: string;
1680
+ OutpostArn?: string | undefined;
1681
1681
  }
1682
1682
  /**
1683
1683
  * <p>An entity describing an executable that runs on a cluster.</p>
@@ -1688,17 +1688,17 @@ export interface Command {
1688
1688
  * <p>The name of the command.</p>
1689
1689
  * @public
1690
1690
  */
1691
- Name?: string;
1691
+ Name?: string | undefined;
1692
1692
  /**
1693
1693
  * <p>The Amazon S3 location of the command script.</p>
1694
1694
  * @public
1695
1695
  */
1696
- ScriptPath?: string;
1696
+ ScriptPath?: string | undefined;
1697
1697
  /**
1698
1698
  * <p>Arguments for Amazon EMR to pass to the command for execution.</p>
1699
1699
  * @public
1700
1700
  */
1701
- Args?: string[];
1701
+ Args?: string[] | undefined;
1702
1702
  }
1703
1703
  /**
1704
1704
  * @public
@@ -1748,7 +1748,7 @@ export interface ComputeLimits {
1748
1748
  * split capacity allocation between On-Demand and Spot Instances. </p>
1749
1749
  * @public
1750
1750
  */
1751
- MaximumOnDemandCapacityUnits?: number;
1751
+ MaximumOnDemandCapacityUnits?: number | undefined;
1752
1752
  /**
1753
1753
  * <p> The upper boundary of Amazon EC2 units for core node type in a cluster. It is
1754
1754
  * measured through vCPU cores or instances for instance groups and measured through units for
@@ -1756,7 +1756,7 @@ export interface ComputeLimits {
1756
1756
  * parameter is used to split capacity allocation between core and task nodes. </p>
1757
1757
  * @public
1758
1758
  */
1759
- MaximumCoreCapacityUnits?: number;
1759
+ MaximumCoreCapacityUnits?: number | undefined;
1760
1760
  }
1761
1761
  /**
1762
1762
  * @public
@@ -1816,7 +1816,7 @@ export interface CreateStudioInput {
1816
1816
  * <p>A detailed description of the Amazon EMR Studio.</p>
1817
1817
  * @public
1818
1818
  */
1819
- Description?: string;
1819
+ Description?: string | undefined;
1820
1820
  /**
1821
1821
  * <p>Specifies whether the Studio authenticates users using IAM or IAM Identity Center.</p>
1822
1822
  * @public
@@ -1848,7 +1848,7 @@ export interface CreateStudioInput {
1848
1848
  * scoped down for each user or group using session policies.</p>
1849
1849
  * @public
1850
1850
  */
1851
- UserRole?: string;
1851
+ UserRole?: string | undefined;
1852
1852
  /**
1853
1853
  * <p>The ID of the Amazon EMR Studio Workspace security group. The Workspace security
1854
1854
  * group allows outbound network traffic to resources in the Engine security group, and it
@@ -1876,7 +1876,7 @@ export interface CreateStudioInput {
1876
1876
  * users to this endpoint to enter credentials.</p>
1877
1877
  * @public
1878
1878
  */
1879
- IdpAuthUrl?: string;
1879
+ IdpAuthUrl?: string | undefined;
1880
1880
  /**
1881
1881
  * <p>The name that your identity provider (IdP) uses for its <code>RelayState</code>
1882
1882
  * parameter. For example, <code>RelayState</code> or <code>TargetSource</code>. Specify this
@@ -1885,40 +1885,40 @@ export interface CreateStudioInput {
1885
1885
  * IdP.</p>
1886
1886
  * @public
1887
1887
  */
1888
- IdpRelayStateParameterName?: string;
1888
+ IdpRelayStateParameterName?: string | undefined;
1889
1889
  /**
1890
1890
  * <p>A list of tags to associate with the Amazon EMR Studio. Tags are user-defined
1891
1891
  * key-value pairs that consist of a required key string with a maximum of 128 characters, and
1892
1892
  * an optional value string with a maximum of 256 characters.</p>
1893
1893
  * @public
1894
1894
  */
1895
- Tags?: Tag[];
1895
+ Tags?: Tag[] | undefined;
1896
1896
  /**
1897
1897
  * <p>
1898
1898
  * A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is <code>false</code>.
1899
1899
  * </p>
1900
1900
  * @public
1901
1901
  */
1902
- TrustedIdentityPropagationEnabled?: boolean;
1902
+ TrustedIdentityPropagationEnabled?: boolean | undefined;
1903
1903
  /**
1904
1904
  * <p>
1905
1905
  * Specifies whether IAM Identity Center user assignment is <code>REQUIRED</code> or <code>OPTIONAL</code>. If the value is set to <code>REQUIRED</code>, users must be explicitly assigned to the Studio application to access the Studio.
1906
1906
  * </p>
1907
1907
  * @public
1908
1908
  */
1909
- IdcUserAssignment?: IdcUserAssignment;
1909
+ IdcUserAssignment?: IdcUserAssignment | undefined;
1910
1910
  /**
1911
1911
  * <p>
1912
1912
  * The ARN of the IAM Identity Center instance to create the Studio application.
1913
1913
  * </p>
1914
1914
  * @public
1915
1915
  */
1916
- IdcInstanceArn?: string;
1916
+ IdcInstanceArn?: string | undefined;
1917
1917
  /**
1918
1918
  * <p>The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.</p>
1919
1919
  * @public
1920
1920
  */
1921
- EncryptionKeyArn?: string;
1921
+ EncryptionKeyArn?: string | undefined;
1922
1922
  }
1923
1923
  /**
1924
1924
  * @public
@@ -1928,12 +1928,12 @@ export interface CreateStudioOutput {
1928
1928
  * <p>The ID of the Amazon EMR Studio.</p>
1929
1929
  * @public
1930
1930
  */
1931
- StudioId?: string;
1931
+ StudioId?: string | undefined;
1932
1932
  /**
1933
1933
  * <p>The unique Studio access URL.</p>
1934
1934
  * @public
1935
1935
  */
1936
- Url?: string;
1936
+ Url?: string | undefined;
1937
1937
  }
1938
1938
  /**
1939
1939
  * @public
@@ -1964,14 +1964,14 @@ export interface CreateStudioSessionMappingInput {
1964
1964
  * be specified, but not both.</p>
1965
1965
  * @public
1966
1966
  */
1967
- IdentityId?: string;
1967
+ IdentityId?: string | undefined;
1968
1968
  /**
1969
1969
  * <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
1970
1970
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
1971
1971
  * be specified, but not both.</p>
1972
1972
  * @public
1973
1973
  */
1974
- IdentityName?: string;
1974
+ IdentityName?: string | undefined;
1975
1975
  /**
1976
1976
  * <p>Specifies whether the identity to map to the Amazon EMR Studio is a user or a
1977
1977
  * group.</p>
@@ -1997,13 +1997,13 @@ export interface UsernamePassword {
1997
1997
  * cluster endpoints.</p>
1998
1998
  * @public
1999
1999
  */
2000
- Username?: string;
2000
+ Username?: string | undefined;
2001
2001
  /**
2002
2002
  * <p>The password associated with the temporary credentials that you use to connect to
2003
2003
  * cluster endpoints.</p>
2004
2004
  * @public
2005
2005
  */
2006
- Password?: string;
2006
+ Password?: string | undefined;
2007
2007
  }
2008
2008
  /**
2009
2009
  * <p>The credentials that you can use to connect to cluster endpoints. Credentials consist of
@@ -2076,14 +2076,14 @@ export interface DeleteStudioSessionMappingInput {
2076
2076
  * be specified.</p>
2077
2077
  * @public
2078
2078
  */
2079
- IdentityId?: string;
2079
+ IdentityId?: string | undefined;
2080
2080
  /**
2081
2081
  * <p>The name of the user name or group to remove from the Amazon EMR Studio. For
2082
2082
  * 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>.
2083
2083
  * Either <code>IdentityName</code> or <code>IdentityId</code> must be specified.</p>
2084
2084
  * @public
2085
2085
  */
2086
- IdentityName?: string;
2086
+ IdentityName?: string | undefined;
2087
2087
  /**
2088
2088
  * <p>Specifies whether the identity to delete from the Amazon EMR Studio is a user or
2089
2089
  * a group.</p>
@@ -2129,22 +2129,22 @@ export interface DescribeJobFlowsInput {
2129
2129
  * <p>Return only job flows created after this date and time.</p>
2130
2130
  * @public
2131
2131
  */
2132
- CreatedAfter?: Date;
2132
+ CreatedAfter?: Date | undefined;
2133
2133
  /**
2134
2134
  * <p>Return only job flows created before this date and time.</p>
2135
2135
  * @public
2136
2136
  */
2137
- CreatedBefore?: Date;
2137
+ CreatedBefore?: Date | undefined;
2138
2138
  /**
2139
2139
  * <p>Return only job flows whose job flow ID is contained in this list.</p>
2140
2140
  * @public
2141
2141
  */
2142
- JobFlowIds?: string[];
2142
+ JobFlowIds?: string[] | undefined;
2143
2143
  /**
2144
2144
  * <p>Return only job flows whose state is contained in this list.</p>
2145
2145
  * @public
2146
2146
  */
2147
- JobFlowStates?: JobFlowExecutionState[];
2147
+ JobFlowStates?: JobFlowExecutionState[] | undefined;
2148
2148
  }
2149
2149
  /**
2150
2150
  * <p>Describes the status of the cluster (job flow).</p>
@@ -2165,22 +2165,22 @@ export interface JobFlowExecutionStatusDetail {
2165
2165
  * <p>The start date and time of the job flow.</p>
2166
2166
  * @public
2167
2167
  */
2168
- StartDateTime?: Date;
2168
+ StartDateTime?: Date | undefined;
2169
2169
  /**
2170
2170
  * <p>The date and time when the job flow was ready to start running bootstrap actions.</p>
2171
2171
  * @public
2172
2172
  */
2173
- ReadyDateTime?: Date;
2173
+ ReadyDateTime?: Date | undefined;
2174
2174
  /**
2175
2175
  * <p>The completion date and time of the job flow.</p>
2176
2176
  * @public
2177
2177
  */
2178
- EndDateTime?: Date;
2178
+ EndDateTime?: Date | undefined;
2179
2179
  /**
2180
2180
  * <p>Description of the job flow last changed state.</p>
2181
2181
  * @public
2182
2182
  */
2183
- LastStateChangeReason?: string;
2183
+ LastStateChangeReason?: string | undefined;
2184
2184
  }
2185
2185
  /**
2186
2186
  * @public
@@ -2212,12 +2212,12 @@ export interface InstanceGroupDetail {
2212
2212
  * <p>Unique identifier for the instance group.</p>
2213
2213
  * @public
2214
2214
  */
2215
- InstanceGroupId?: string;
2215
+ InstanceGroupId?: string | undefined;
2216
2216
  /**
2217
2217
  * <p>Friendly name for the instance group.</p>
2218
2218
  * @public
2219
2219
  */
2220
- Name?: string;
2220
+ Name?: string | undefined;
2221
2221
  /**
2222
2222
  * <p>Market type of the Amazon EC2 instances used to create a cluster node.</p>
2223
2223
  * @public
@@ -2234,7 +2234,7 @@ export interface InstanceGroupDetail {
2234
2234
  * the amount equal to the On-Demand price, or specify an amount in USD.</p>
2235
2235
  * @public
2236
2236
  */
2237
- BidPrice?: string;
2237
+ BidPrice?: string | undefined;
2238
2238
  /**
2239
2239
  * <p>Amazon EC2 instance type.</p>
2240
2240
  * @public
@@ -2260,7 +2260,7 @@ export interface InstanceGroupDetail {
2260
2260
  * <p>Details regarding the state of the instance group.</p>
2261
2261
  * @public
2262
2262
  */
2263
- LastStateChangeReason?: string;
2263
+ LastStateChangeReason?: string | undefined;
2264
2264
  /**
2265
2265
  * <p>The date/time the instance group was created.</p>
2266
2266
  * @public
@@ -2270,22 +2270,22 @@ export interface InstanceGroupDetail {
2270
2270
  * <p>The date/time the instance group was started.</p>
2271
2271
  * @public
2272
2272
  */
2273
- StartDateTime?: Date;
2273
+ StartDateTime?: Date | undefined;
2274
2274
  /**
2275
2275
  * <p>The date/time the instance group was available to the cluster.</p>
2276
2276
  * @public
2277
2277
  */
2278
- ReadyDateTime?: Date;
2278
+ ReadyDateTime?: Date | undefined;
2279
2279
  /**
2280
2280
  * <p>The date/time the instance group was terminated.</p>
2281
2281
  * @public
2282
2282
  */
2283
- EndDateTime?: Date;
2283
+ EndDateTime?: Date | undefined;
2284
2284
  /**
2285
2285
  * <p>The custom AMI ID to use for the provisioned instance group.</p>
2286
2286
  * @public
2287
2287
  */
2288
- CustomAmiId?: string;
2288
+ CustomAmiId?: string | undefined;
2289
2289
  }
2290
2290
  /**
2291
2291
  * <p>The Amazon EC2 Availability Zone configuration of the cluster (job flow).</p>
@@ -2298,7 +2298,7 @@ export interface PlacementType {
2298
2298
  * for instance fleets.</p>
2299
2299
  * @public
2300
2300
  */
2301
- AvailabilityZone?: string;
2301
+ AvailabilityZone?: string | undefined;
2302
2302
  /**
2303
2303
  * <p>When multiple Availability Zones are specified, Amazon EMR evaluates them and
2304
2304
  * launches instances in the optimal Availability Zone. <code>AvailabilityZones</code> is used
@@ -2310,7 +2310,7 @@ export interface PlacementType {
2310
2310
  * </note>
2311
2311
  * @public
2312
2312
  */
2313
- AvailabilityZones?: string[];
2313
+ AvailabilityZones?: string[] | undefined;
2314
2314
  }
2315
2315
  /**
2316
2316
  * <p>Specify the type of Amazon EC2 instances that the cluster (job flow) runs
@@ -2328,12 +2328,12 @@ export interface JobFlowInstancesDetail {
2328
2328
  * private DNS name. On a public subnet, this is the public DNS name.</p>
2329
2329
  * @public
2330
2330
  */
2331
- MasterPublicDnsName?: string;
2331
+ MasterPublicDnsName?: string | undefined;
2332
2332
  /**
2333
2333
  * <p>The Amazon EC2 instance identifier of the master node.</p>
2334
2334
  * @public
2335
2335
  */
2336
- MasterInstanceId?: string;
2336
+ MasterInstanceId?: string | undefined;
2337
2337
  /**
2338
2338
  * <p>The Amazon EC2 core and task node instance type.</p>
2339
2339
  * @public
@@ -2350,7 +2350,7 @@ export interface JobFlowInstancesDetail {
2350
2350
  * <p>Details about the instance groups in a cluster.</p>
2351
2351
  * @public
2352
2352
  */
2353
- InstanceGroups?: InstanceGroupDetail[];
2353
+ InstanceGroups?: InstanceGroupDetail[] | undefined;
2354
2354
  /**
2355
2355
  * <p>An approximation of the cost of the cluster, represented in m1.small/hours. This value
2356
2356
  * is increased one time for every hour that an m1.small instance runs. Larger instances are
@@ -2360,46 +2360,46 @@ export interface JobFlowInstancesDetail {
2360
2360
  * rate.</p>
2361
2361
  * @public
2362
2362
  */
2363
- NormalizedInstanceHours?: number;
2363
+ NormalizedInstanceHours?: number | undefined;
2364
2364
  /**
2365
2365
  * <p>The name of an Amazon EC2 key pair that can be used to connect to the master
2366
2366
  * node using SSH.</p>
2367
2367
  * @public
2368
2368
  */
2369
- Ec2KeyName?: string;
2369
+ Ec2KeyName?: string | undefined;
2370
2370
  /**
2371
2371
  * <p>For clusters launched within Amazon Virtual Private Cloud, this is the identifier of the
2372
2372
  * subnet where the cluster was launched.</p>
2373
2373
  * @public
2374
2374
  */
2375
- Ec2SubnetId?: string;
2375
+ Ec2SubnetId?: string | undefined;
2376
2376
  /**
2377
2377
  * <p>The Amazon EC2 Availability Zone for the cluster.</p>
2378
2378
  * @public
2379
2379
  */
2380
- Placement?: PlacementType;
2380
+ Placement?: PlacementType | undefined;
2381
2381
  /**
2382
2382
  * <p>Specifies whether the cluster should remain available after completing all steps.</p>
2383
2383
  * @public
2384
2384
  */
2385
- KeepJobFlowAliveWhenNoSteps?: boolean;
2385
+ KeepJobFlowAliveWhenNoSteps?: boolean | undefined;
2386
2386
  /**
2387
2387
  * <p>Specifies whether the Amazon EC2 instances in the cluster are protected from
2388
2388
  * termination by API calls, user intervention, or in the event of a job-flow error.</p>
2389
2389
  * @public
2390
2390
  */
2391
- TerminationProtected?: boolean;
2391
+ TerminationProtected?: boolean | undefined;
2392
2392
  /**
2393
2393
  * <p>Indicates whether Amazon EMR should gracefully replace core nodes
2394
2394
  * that have degraded within the cluster.</p>
2395
2395
  * @public
2396
2396
  */
2397
- UnhealthyNodeReplacement?: boolean;
2397
+ UnhealthyNodeReplacement?: boolean | undefined;
2398
2398
  /**
2399
2399
  * <p>The Hadoop version for the cluster.</p>
2400
2400
  * @public
2401
2401
  */
2402
- HadoopVersion?: string;
2402
+ HadoopVersion?: string | undefined;
2403
2403
  }
2404
2404
  /**
2405
2405
  * @public
@@ -2437,17 +2437,17 @@ export interface StepExecutionStatusDetail {
2437
2437
  * <p>The start date and time of the step.</p>
2438
2438
  * @public
2439
2439
  */
2440
- StartDateTime?: Date;
2440
+ StartDateTime?: Date | undefined;
2441
2441
  /**
2442
2442
  * <p>The completion date and time of the step.</p>
2443
2443
  * @public
2444
2444
  */
2445
- EndDateTime?: Date;
2445
+ EndDateTime?: Date | undefined;
2446
2446
  /**
2447
2447
  * <p>A description of the step's current state.</p>
2448
2448
  * @public
2449
2449
  */
2450
- LastStateChangeReason?: string;
2450
+ LastStateChangeReason?: string | undefined;
2451
2451
  }
2452
2452
  /**
2453
2453
  * <p>Combines the execution state and configuration of a step.</p>
@@ -2484,20 +2484,20 @@ export interface JobFlowDetail {
2484
2484
  * <p>The location in Amazon S3 where log files for the job are stored.</p>
2485
2485
  * @public
2486
2486
  */
2487
- LogUri?: string;
2487
+ LogUri?: string | undefined;
2488
2488
  /**
2489
2489
  * <p>The KMS key used for encrypting log files. This attribute is only
2490
2490
  * available with Amazon EMR 5.30.0 and later, excluding 6.0.0.</p>
2491
2491
  * @public
2492
2492
  */
2493
- LogEncryptionKmsKeyId?: string;
2493
+ LogEncryptionKmsKeyId?: string | undefined;
2494
2494
  /**
2495
2495
  * <p>Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR
2496
2496
  * releases 4.0 and later, <code>ReleaseLabel</code> is used. To specify a custom AMI, use
2497
2497
  * <code>CustomAmiID</code>.</p>
2498
2498
  * @public
2499
2499
  */
2500
- AmiVersion?: string;
2500
+ AmiVersion?: string | undefined;
2501
2501
  /**
2502
2502
  * <p>Describes the execution status of the job flow.</p>
2503
2503
  * @public
@@ -2512,18 +2512,18 @@ export interface JobFlowDetail {
2512
2512
  * <p>A list of steps run by the job flow.</p>
2513
2513
  * @public
2514
2514
  */
2515
- Steps?: StepDetail[];
2515
+ Steps?: StepDetail[] | undefined;
2516
2516
  /**
2517
2517
  * <p>A list of the bootstrap actions run by the job flow.</p>
2518
2518
  * @public
2519
2519
  */
2520
- BootstrapActions?: BootstrapActionDetail[];
2520
+ BootstrapActions?: BootstrapActionDetail[] | undefined;
2521
2521
  /**
2522
2522
  * <p>A list of strings set by third-party software when the job flow is launched. If you are
2523
2523
  * not using third-party software to manage the job flow, this value is empty.</p>
2524
2524
  * @public
2525
2525
  */
2526
- SupportedProducts?: string[];
2526
+ SupportedProducts?: string[] | undefined;
2527
2527
  /**
2528
2528
  * <p>Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When <code>true</code>, IAM principals in the Amazon Web Services account can perform Amazon EMR cluster
2529
2529
  * actions that their IAM policies allow. When <code>false</code>, only the
@@ -2535,19 +2535,19 @@ export interface JobFlowDetail {
2535
2535
  * <a href="https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html">create-cluster</a> command, or the Amazon Web Services Management Console.</p>
2536
2536
  * @public
2537
2537
  */
2538
- VisibleToAllUsers?: boolean;
2538
+ VisibleToAllUsers?: boolean | undefined;
2539
2539
  /**
2540
2540
  * <p>The IAM role that was specified when the job flow was launched. The
2541
2541
  * Amazon EC2 instances of the job flow assume this role.</p>
2542
2542
  * @public
2543
2543
  */
2544
- JobFlowRole?: string;
2544
+ JobFlowRole?: string | undefined;
2545
2545
  /**
2546
2546
  * <p>The IAM role that is assumed by the Amazon EMR service to access
2547
2547
  * Amazon Web Services resources on your behalf.</p>
2548
2548
  * @public
2549
2549
  */
2550
- ServiceRole?: string;
2550
+ ServiceRole?: string | undefined;
2551
2551
  /**
2552
2552
  * <p>An IAM role for automatic scaling policies. The default role is
2553
2553
  * <code>EMR_AutoScaling_DefaultRole</code>. The IAM role provides a way for
@@ -2555,7 +2555,7 @@ export interface JobFlowDetail {
2555
2555
  * terminate Amazon EC2 instances in an instance group.</p>
2556
2556
  * @public
2557
2557
  */
2558
- AutoScalingRole?: string;
2558
+ AutoScalingRole?: string | undefined;
2559
2559
  /**
2560
2560
  * <p>The way that individual Amazon EC2 instances terminate when an automatic
2561
2561
  * scale-in activity occurs or an instance group is resized.
@@ -2569,7 +2569,7 @@ export interface JobFlowDetail {
2569
2569
  * HDFS corruption. <code>TERMINATE_AT_TASK_COMPLETION</code> available only in Amazon EMR releases 4.1.0 and later, and is the default for releases of Amazon EMR earlier than 5.1.0.</p>
2570
2570
  * @public
2571
2571
  */
2572
- ScaleDownBehavior?: ScaleDownBehavior;
2572
+ ScaleDownBehavior?: ScaleDownBehavior | undefined;
2573
2573
  }
2574
2574
  /**
2575
2575
  * <p> The output for the <a>DescribeJobFlows</a> operation. </p>
@@ -2580,7 +2580,7 @@ export interface DescribeJobFlowsOutput {
2580
2580
  * <p>A list of job flows matching the parameters supplied.</p>
2581
2581
  * @public
2582
2582
  */
2583
- JobFlows?: JobFlowDetail[];
2583
+ JobFlows?: JobFlowDetail[] | undefined;
2584
2584
  }
2585
2585
  /**
2586
2586
  * @public
@@ -2619,7 +2619,7 @@ export interface ExecutionEngineConfig {
2619
2619
  * <p>The type of execution engine. A value of <code>EMR</code> specifies an Amazon EMR cluster.</p>
2620
2620
  * @public
2621
2621
  */
2622
- Type?: ExecutionEngineType;
2622
+ Type?: ExecutionEngineType | undefined;
2623
2623
  /**
2624
2624
  * <p>An optional unique ID of an Amazon EC2 security group to associate with the
2625
2625
  * master instance of the Amazon EMR cluster for this notebook execution. For more
@@ -2628,12 +2628,12 @@ export interface ExecutionEngineConfig {
2628
2628
  * <i>EMR Management Guide</i>.</p>
2629
2629
  * @public
2630
2630
  */
2631
- MasterInstanceSecurityGroupId?: string;
2631
+ MasterInstanceSecurityGroupId?: string | undefined;
2632
2632
  /**
2633
2633
  * <p>The execution role ARN required for the notebook execution.</p>
2634
2634
  * @public
2635
2635
  */
2636
- ExecutionRoleArn?: string;
2636
+ ExecutionRoleArn?: string | undefined;
2637
2637
  }
2638
2638
  /**
2639
2639
  * <p>The Amazon S3 location that stores the notebook execution input.</p>
@@ -2644,13 +2644,13 @@ export interface NotebookS3LocationForOutput {
2644
2644
  * <p>The Amazon S3 bucket that stores the notebook execution input.</p>
2645
2645
  * @public
2646
2646
  */
2647
- Bucket?: string;
2647
+ Bucket?: string | undefined;
2648
2648
  /**
2649
2649
  * <p>The key to the Amazon S3 location that stores the notebook execution
2650
2650
  * input.</p>
2651
2651
  * @public
2652
2652
  */
2653
- Key?: string;
2653
+ Key?: string | undefined;
2654
2654
  }
2655
2655
  /**
2656
2656
  * @public
@@ -2672,13 +2672,13 @@ export interface OutputNotebookS3LocationForOutput {
2672
2672
  * <p>The Amazon S3 bucket that stores the notebook execution output.</p>
2673
2673
  * @public
2674
2674
  */
2675
- Bucket?: string;
2675
+ Bucket?: string | undefined;
2676
2676
  /**
2677
2677
  * <p>The key to the Amazon S3 location that stores the notebook execution
2678
2678
  * output.</p>
2679
2679
  * @public
2680
2680
  */
2681
- Key?: string;
2681
+ Key?: string | undefined;
2682
2682
  }
2683
2683
  /**
2684
2684
  * @public
@@ -2710,29 +2710,29 @@ export interface NotebookExecution {
2710
2710
  * <p>The unique identifier of a notebook execution.</p>
2711
2711
  * @public
2712
2712
  */
2713
- NotebookExecutionId?: string;
2713
+ NotebookExecutionId?: string | undefined;
2714
2714
  /**
2715
2715
  * <p>The unique identifier of the Amazon EMR Notebook that is used for the notebook
2716
2716
  * execution.</p>
2717
2717
  * @public
2718
2718
  */
2719
- EditorId?: string;
2719
+ EditorId?: string | undefined;
2720
2720
  /**
2721
2721
  * <p>The execution engine, such as an Amazon EMR cluster, used to run the Amazon EMR notebook and perform the notebook execution.</p>
2722
2722
  * @public
2723
2723
  */
2724
- ExecutionEngine?: ExecutionEngineConfig;
2724
+ ExecutionEngine?: ExecutionEngineConfig | undefined;
2725
2725
  /**
2726
2726
  * <p>A name for the notebook execution.</p>
2727
2727
  * @public
2728
2728
  */
2729
- NotebookExecutionName?: string;
2729
+ NotebookExecutionName?: string | undefined;
2730
2730
  /**
2731
2731
  * <p>Input parameters in JSON format passed to the Amazon EMR Notebook at runtime for
2732
2732
  * execution.</p>
2733
2733
  * @public
2734
2734
  */
2735
- NotebookParams?: string;
2735
+ NotebookParams?: string | undefined;
2736
2736
  /**
2737
2737
  * <p>The status of the notebook execution.</p>
2738
2738
  * <ul>
@@ -2788,32 +2788,32 @@ export interface NotebookExecution {
2788
2788
  * </ul>
2789
2789
  * @public
2790
2790
  */
2791
- Status?: NotebookExecutionStatus;
2791
+ Status?: NotebookExecutionStatus | undefined;
2792
2792
  /**
2793
2793
  * <p>The timestamp when notebook execution started.</p>
2794
2794
  * @public
2795
2795
  */
2796
- StartTime?: Date;
2796
+ StartTime?: Date | undefined;
2797
2797
  /**
2798
2798
  * <p>The timestamp when notebook execution ended.</p>
2799
2799
  * @public
2800
2800
  */
2801
- EndTime?: Date;
2801
+ EndTime?: Date | undefined;
2802
2802
  /**
2803
2803
  * <p>The Amazon Resource Name (ARN) of the notebook execution.</p>
2804
2804
  * @public
2805
2805
  */
2806
- Arn?: string;
2806
+ Arn?: string | undefined;
2807
2807
  /**
2808
2808
  * <p>The location of the notebook execution's output file in Amazon S3.</p>
2809
2809
  * @public
2810
2810
  */
2811
- OutputNotebookURI?: string;
2811
+ OutputNotebookURI?: string | undefined;
2812
2812
  /**
2813
2813
  * <p>The reason for the latest status change of the notebook execution.</p>
2814
2814
  * @public
2815
2815
  */
2816
- LastStateChangeReason?: string;
2816
+ LastStateChangeReason?: string | undefined;
2817
2817
  /**
2818
2818
  * <p>The unique identifier of the Amazon EC2 security group associated with the
2819
2819
  * Amazon EMR Notebook instance. For more information see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-managed-notebooks-security-groups.html">Specifying
@@ -2821,34 +2821,34 @@ export interface NotebookExecution {
2821
2821
  * <i>Amazon EMR Management Guide</i>.</p>
2822
2822
  * @public
2823
2823
  */
2824
- NotebookInstanceSecurityGroupId?: string;
2824
+ NotebookInstanceSecurityGroupId?: string | undefined;
2825
2825
  /**
2826
2826
  * <p>A list of tags associated with a notebook execution. Tags are user-defined key-value
2827
2827
  * pairs that consist of a required key string with a maximum of 128 characters and an
2828
2828
  * optional value string with a maximum of 256 characters.</p>
2829
2829
  * @public
2830
2830
  */
2831
- Tags?: Tag[];
2831
+ Tags?: Tag[] | undefined;
2832
2832
  /**
2833
2833
  * <p>The Amazon S3 location that stores the notebook execution input.</p>
2834
2834
  * @public
2835
2835
  */
2836
- NotebookS3Location?: NotebookS3LocationForOutput;
2836
+ NotebookS3Location?: NotebookS3LocationForOutput | undefined;
2837
2837
  /**
2838
2838
  * <p>The Amazon S3 location for the notebook execution output.</p>
2839
2839
  * @public
2840
2840
  */
2841
- OutputNotebookS3Location?: OutputNotebookS3LocationForOutput;
2841
+ OutputNotebookS3Location?: OutputNotebookS3LocationForOutput | undefined;
2842
2842
  /**
2843
2843
  * <p>The output format for the notebook execution.</p>
2844
2844
  * @public
2845
2845
  */
2846
- OutputNotebookFormat?: OutputNotebookFormat;
2846
+ OutputNotebookFormat?: OutputNotebookFormat | undefined;
2847
2847
  /**
2848
2848
  * <p>The environment variables associated with the notebook execution.</p>
2849
2849
  * @public
2850
2850
  */
2851
- EnvironmentVariables?: Record<string, string>;
2851
+ EnvironmentVariables?: Record<string, string> | undefined;
2852
2852
  }
2853
2853
  /**
2854
2854
  * @public
@@ -2858,7 +2858,7 @@ export interface DescribeNotebookExecutionOutput {
2858
2858
  * <p>Properties of the notebook execution.</p>
2859
2859
  * @public
2860
2860
  */
2861
- NotebookExecution?: NotebookExecution;
2861
+ NotebookExecution?: NotebookExecution | undefined;
2862
2862
  }
2863
2863
  /**
2864
2864
  * @public
@@ -2868,17 +2868,17 @@ export interface DescribeReleaseLabelInput {
2868
2868
  * <p>The target release label to be described.</p>
2869
2869
  * @public
2870
2870
  */
2871
- ReleaseLabel?: string;
2871
+ ReleaseLabel?: string | undefined;
2872
2872
  /**
2873
2873
  * <p>The pagination token. Reserved for future use. Currently set to null.</p>
2874
2874
  * @public
2875
2875
  */
2876
- NextToken?: string;
2876
+ NextToken?: string | undefined;
2877
2877
  /**
2878
2878
  * <p>Reserved for future use. Currently set to null.</p>
2879
2879
  * @public
2880
2880
  */
2881
- MaxResults?: number;
2881
+ MaxResults?: number | undefined;
2882
2882
  }
2883
2883
  /**
2884
2884
  * <p>The returned release label application names or versions.</p>
@@ -2889,12 +2889,12 @@ export interface SimplifiedApplication {
2889
2889
  * <p>The returned release label application name. For example, <code>hadoop</code>.</p>
2890
2890
  * @public
2891
2891
  */
2892
- Name?: string;
2892
+ Name?: string | undefined;
2893
2893
  /**
2894
2894
  * <p>The returned release label application version. For example, <code>3.2.1</code>.</p>
2895
2895
  * @public
2896
2896
  */
2897
- Version?: string;
2897
+ Version?: string | undefined;
2898
2898
  }
2899
2899
  /**
2900
2900
  * <p>The Amazon Linux release specified for a cluster in the RunJobFlow request.</p>
@@ -2909,7 +2909,7 @@ export interface OSRelease {
2909
2909
  * 2.0.20220218.1.</p>
2910
2910
  * @public
2911
2911
  */
2912
- Label?: string;
2912
+ Label?: string | undefined;
2913
2913
  }
2914
2914
  /**
2915
2915
  * @public
@@ -2919,19 +2919,19 @@ export interface DescribeReleaseLabelOutput {
2919
2919
  * <p>The target release label described in the response.</p>
2920
2920
  * @public
2921
2921
  */
2922
- ReleaseLabel?: string;
2922
+ ReleaseLabel?: string | undefined;
2923
2923
  /**
2924
2924
  * <p>The list of applications available for the target release label. <code>Name</code> is
2925
2925
  * the name of the application. <code>Version</code> is the concise version of the
2926
2926
  * application.</p>
2927
2927
  * @public
2928
2928
  */
2929
- Applications?: SimplifiedApplication[];
2929
+ Applications?: SimplifiedApplication[] | undefined;
2930
2930
  /**
2931
2931
  * <p>The pagination token. Reserved for future use. Currently set to null.</p>
2932
2932
  * @public
2933
2933
  */
2934
- NextToken?: string;
2934
+ NextToken?: string | undefined;
2935
2935
  /**
2936
2936
  * <p>The list of available Amazon Linux release versions for an Amazon EMR release.
2937
2937
  * Contains a Label field that is formatted as shown in <a href="https://docs.aws.amazon.com/AL2/latest/relnotes/relnotes-al2.html">
@@ -2940,7 +2940,7 @@ export interface DescribeReleaseLabelOutput {
2940
2940
  * </a>. For example, <a href="https://docs.aws.amazon.com/AL2/latest/relnotes/relnotes-20220218.html">2.0.20220218.1</a>.</p>
2941
2941
  * @public
2942
2942
  */
2943
- AvailableOSReleases?: OSRelease[];
2943
+ AvailableOSReleases?: OSRelease[] | undefined;
2944
2944
  }
2945
2945
  /**
2946
2946
  * @public
@@ -2960,17 +2960,17 @@ export interface DescribeSecurityConfigurationOutput {
2960
2960
  * <p>The name of the security configuration.</p>
2961
2961
  * @public
2962
2962
  */
2963
- Name?: string;
2963
+ Name?: string | undefined;
2964
2964
  /**
2965
2965
  * <p>The security configuration details in JSON format.</p>
2966
2966
  * @public
2967
2967
  */
2968
- SecurityConfiguration?: string;
2968
+ SecurityConfiguration?: string | undefined;
2969
2969
  /**
2970
2970
  * <p>The date and time the security configuration was created</p>
2971
2971
  * @public
2972
2972
  */
2973
- CreationDateTime?: Date;
2973
+ CreationDateTime?: Date | undefined;
2974
2974
  }
2975
2975
  /**
2976
2976
  * <p>This input determines which step to describe.</p>
@@ -2999,25 +2999,25 @@ export interface HadoopStepConfig {
2999
2999
  * <p>The path to the JAR file that runs during the step.</p>
3000
3000
  * @public
3001
3001
  */
3002
- Jar?: string;
3002
+ Jar?: string | undefined;
3003
3003
  /**
3004
3004
  * <p>The list of Java properties that are set when the step runs. You can use these
3005
3005
  * properties to pass key-value pairs to your main function.</p>
3006
3006
  * @public
3007
3007
  */
3008
- Properties?: Record<string, string>;
3008
+ Properties?: Record<string, string> | undefined;
3009
3009
  /**
3010
3010
  * <p>The name of the main class in the specified Java file. If not specified, the JAR file
3011
3011
  * should specify a main class in its manifest file.</p>
3012
3012
  * @public
3013
3013
  */
3014
- MainClass?: string;
3014
+ MainClass?: string | undefined;
3015
3015
  /**
3016
3016
  * <p>The list of command line arguments to pass to the JAR file's main function for
3017
3017
  * execution.</p>
3018
3018
  * @public
3019
3019
  */
3020
- Args?: string[];
3020
+ Args?: string[] | undefined;
3021
3021
  }
3022
3022
  /**
3023
3023
  * <p>The details of the step failure. The service attempts to detect the root cause for many
@@ -3030,20 +3030,20 @@ export interface FailureDetails {
3030
3030
  * determine the root cause of the failure, it returns "Unknown Error" as a reason.</p>
3031
3031
  * @public
3032
3032
  */
3033
- Reason?: string;
3033
+ Reason?: string | undefined;
3034
3034
  /**
3035
3035
  * <p>The descriptive message including the error the Amazon EMR service has
3036
3036
  * identified as the cause of step failure. This is text from an error log that describes the
3037
3037
  * root cause of the failure.</p>
3038
3038
  * @public
3039
3039
  */
3040
- Message?: string;
3040
+ Message?: string | undefined;
3041
3041
  /**
3042
3042
  * <p>The path to the log file where the step failure root cause was originally
3043
3043
  * recorded.</p>
3044
3044
  * @public
3045
3045
  */
3046
- LogFile?: string;
3046
+ LogFile?: string | undefined;
3047
3047
  }
3048
3048
  /**
3049
3049
  * @public
@@ -3083,12 +3083,12 @@ export interface StepStateChangeReason {
3083
3083
  * no code for the state change.</p>
3084
3084
  * @public
3085
3085
  */
3086
- Code?: StepStateChangeReasonCode;
3086
+ Code?: StepStateChangeReasonCode | undefined;
3087
3087
  /**
3088
3088
  * <p>The descriptive message for the state change reason.</p>
3089
3089
  * @public
3090
3090
  */
3091
- Message?: string;
3091
+ Message?: string | undefined;
3092
3092
  }
3093
3093
  /**
3094
3094
  * <p>The timeline of the cluster step lifecycle.</p>
@@ -3099,17 +3099,17 @@ export interface StepTimeline {
3099
3099
  * <p>The date and time when the cluster step was created.</p>
3100
3100
  * @public
3101
3101
  */
3102
- CreationDateTime?: Date;
3102
+ CreationDateTime?: Date | undefined;
3103
3103
  /**
3104
3104
  * <p>The date and time when the cluster step execution started.</p>
3105
3105
  * @public
3106
3106
  */
3107
- StartDateTime?: Date;
3107
+ StartDateTime?: Date | undefined;
3108
3108
  /**
3109
3109
  * <p>The date and time when the cluster step execution completed or failed.</p>
3110
3110
  * @public
3111
3111
  */
3112
- EndDateTime?: Date;
3112
+ EndDateTime?: Date | undefined;
3113
3113
  }
3114
3114
  /**
3115
3115
  * <p>The execution status details of the cluster step.</p>
@@ -3120,23 +3120,23 @@ export interface StepStatus {
3120
3120
  * <p>The execution state of the cluster step.</p>
3121
3121
  * @public
3122
3122
  */
3123
- State?: StepState;
3123
+ State?: StepState | undefined;
3124
3124
  /**
3125
3125
  * <p>The reason for the step execution status change.</p>
3126
3126
  * @public
3127
3127
  */
3128
- StateChangeReason?: StepStateChangeReason;
3128
+ StateChangeReason?: StepStateChangeReason | undefined;
3129
3129
  /**
3130
3130
  * <p>The details for the step failure including reason, message, and log file path where the
3131
3131
  * root cause was identified.</p>
3132
3132
  * @public
3133
3133
  */
3134
- FailureDetails?: FailureDetails;
3134
+ FailureDetails?: FailureDetails | undefined;
3135
3135
  /**
3136
3136
  * <p>The timeline of the cluster step status over time.</p>
3137
3137
  * @public
3138
3138
  */
3139
- Timeline?: StepTimeline;
3139
+ Timeline?: StepTimeline | undefined;
3140
3140
  }
3141
3141
  /**
3142
3142
  * <p>This represents a step in a cluster.</p>
@@ -3147,17 +3147,17 @@ export interface Step {
3147
3147
  * <p>The identifier of the cluster step.</p>
3148
3148
  * @public
3149
3149
  */
3150
- Id?: string;
3150
+ Id?: string | undefined;
3151
3151
  /**
3152
3152
  * <p>The name of the cluster step.</p>
3153
3153
  * @public
3154
3154
  */
3155
- Name?: string;
3155
+ Name?: string | undefined;
3156
3156
  /**
3157
3157
  * <p>The Hadoop job configuration of the cluster step.</p>
3158
3158
  * @public
3159
3159
  */
3160
- Config?: HadoopStepConfig;
3160
+ Config?: HadoopStepConfig | undefined;
3161
3161
  /**
3162
3162
  * <p>The action to take when the cluster step fails. Possible values are
3163
3163
  * <code>TERMINATE_CLUSTER</code>, <code>CANCEL_AND_WAIT</code>, and <code>CONTINUE</code>.
@@ -3176,12 +3176,12 @@ export interface Step {
3176
3176
  * not terminate.</p>
3177
3177
  * @public
3178
3178
  */
3179
- ActionOnFailure?: ActionOnFailure;
3179
+ ActionOnFailure?: ActionOnFailure | undefined;
3180
3180
  /**
3181
3181
  * <p>The current execution status details of the cluster step.</p>
3182
3182
  * @public
3183
3183
  */
3184
- Status?: StepStatus;
3184
+ Status?: StepStatus | undefined;
3185
3185
  /**
3186
3186
  * <p>The Amazon Resource Name (ARN) of the runtime role for a step on the cluster. The
3187
3187
  * runtime role can be a cross-account IAM role. The runtime role ARN is a
@@ -3191,7 +3191,7 @@ export interface Step {
3191
3191
  * runtime role ARN.</p>
3192
3192
  * @public
3193
3193
  */
3194
- ExecutionRoleArn?: string;
3194
+ ExecutionRoleArn?: string | undefined;
3195
3195
  }
3196
3196
  /**
3197
3197
  * <p>This output contains the description of the cluster step.</p>
@@ -3202,7 +3202,7 @@ export interface DescribeStepOutput {
3202
3202
  * <p>The step details for the requested step identifier.</p>
3203
3203
  * @public
3204
3204
  */
3205
- Step?: Step;
3205
+ Step?: Step | undefined;
3206
3206
  }
3207
3207
  /**
3208
3208
  * @public
@@ -3224,120 +3224,120 @@ export interface Studio {
3224
3224
  * <p>The ID of the Amazon EMR Studio.</p>
3225
3225
  * @public
3226
3226
  */
3227
- StudioId?: string;
3227
+ StudioId?: string | undefined;
3228
3228
  /**
3229
3229
  * <p>The Amazon Resource Name (ARN) of the Amazon EMR Studio.</p>
3230
3230
  * @public
3231
3231
  */
3232
- StudioArn?: string;
3232
+ StudioArn?: string | undefined;
3233
3233
  /**
3234
3234
  * <p>The name of the Amazon EMR Studio.</p>
3235
3235
  * @public
3236
3236
  */
3237
- Name?: string;
3237
+ Name?: string | undefined;
3238
3238
  /**
3239
3239
  * <p>The detailed description of the Amazon EMR Studio.</p>
3240
3240
  * @public
3241
3241
  */
3242
- Description?: string;
3242
+ Description?: string | undefined;
3243
3243
  /**
3244
3244
  * <p>Specifies whether the Amazon EMR Studio authenticates users with IAM or IAM Identity Center.</p>
3245
3245
  * @public
3246
3246
  */
3247
- AuthMode?: AuthMode;
3247
+ AuthMode?: AuthMode | undefined;
3248
3248
  /**
3249
3249
  * <p>The ID of the VPC associated with the Amazon EMR Studio.</p>
3250
3250
  * @public
3251
3251
  */
3252
- VpcId?: string;
3252
+ VpcId?: string | undefined;
3253
3253
  /**
3254
3254
  * <p>The list of IDs of the subnets associated with the Amazon EMR Studio.</p>
3255
3255
  * @public
3256
3256
  */
3257
- SubnetIds?: string[];
3257
+ SubnetIds?: string[] | undefined;
3258
3258
  /**
3259
3259
  * <p>The name of the IAM role assumed by the Amazon EMR Studio.</p>
3260
3260
  * @public
3261
3261
  */
3262
- ServiceRole?: string;
3262
+ ServiceRole?: string | undefined;
3263
3263
  /**
3264
3264
  * <p>The name of the IAM role assumed by users logged in to the Amazon EMR Studio. A Studio only requires a <code>UserRole</code> when you use IAM authentication.</p>
3265
3265
  * @public
3266
3266
  */
3267
- UserRole?: string;
3267
+ UserRole?: string | undefined;
3268
3268
  /**
3269
3269
  * <p>The ID of the Workspace security group associated with the Amazon EMR Studio.
3270
3270
  * The Workspace security group allows outbound network traffic to resources in the Engine
3271
3271
  * security group and to the internet.</p>
3272
3272
  * @public
3273
3273
  */
3274
- WorkspaceSecurityGroupId?: string;
3274
+ WorkspaceSecurityGroupId?: string | undefined;
3275
3275
  /**
3276
3276
  * <p>The ID of the Engine security group associated with the Amazon EMR Studio. The
3277
3277
  * Engine security group allows inbound network traffic from resources in the Workspace
3278
3278
  * security group.</p>
3279
3279
  * @public
3280
3280
  */
3281
- EngineSecurityGroupId?: string;
3281
+ EngineSecurityGroupId?: string | undefined;
3282
3282
  /**
3283
3283
  * <p>The unique access URL of the Amazon EMR Studio.</p>
3284
3284
  * @public
3285
3285
  */
3286
- Url?: string;
3286
+ Url?: string | undefined;
3287
3287
  /**
3288
3288
  * <p>The time the Amazon EMR Studio was created.</p>
3289
3289
  * @public
3290
3290
  */
3291
- CreationTime?: Date;
3291
+ CreationTime?: Date | undefined;
3292
3292
  /**
3293
3293
  * <p>The Amazon S3 location to back up Amazon EMR Studio Workspaces and
3294
3294
  * notebook files.</p>
3295
3295
  * @public
3296
3296
  */
3297
- DefaultS3Location?: string;
3297
+ DefaultS3Location?: string | undefined;
3298
3298
  /**
3299
3299
  * <p>Your identity provider's authentication endpoint. Amazon EMR Studio redirects
3300
3300
  * federated users to this endpoint for authentication when logging in to a Studio with the
3301
3301
  * Studio URL.</p>
3302
3302
  * @public
3303
3303
  */
3304
- IdpAuthUrl?: string;
3304
+ IdpAuthUrl?: string | undefined;
3305
3305
  /**
3306
3306
  * <p>The name of your identity provider's <code>RelayState</code> parameter.</p>
3307
3307
  * @public
3308
3308
  */
3309
- IdpRelayStateParameterName?: string;
3309
+ IdpRelayStateParameterName?: string | undefined;
3310
3310
  /**
3311
3311
  * <p>A list of tags associated with the Amazon EMR Studio.</p>
3312
3312
  * @public
3313
3313
  */
3314
- Tags?: Tag[];
3314
+ Tags?: Tag[] | undefined;
3315
3315
  /**
3316
3316
  * <p>
3317
3317
  * The ARN of the IAM Identity Center instance the Studio application belongs to.
3318
3318
  * </p>
3319
3319
  * @public
3320
3320
  */
3321
- IdcInstanceArn?: string;
3321
+ IdcInstanceArn?: string | undefined;
3322
3322
  /**
3323
3323
  * <p>
3324
3324
  * Indicates whether the Studio has Trusted identity propagation enabled. The default value is <code>false</code>.
3325
3325
  * </p>
3326
3326
  * @public
3327
3327
  */
3328
- TrustedIdentityPropagationEnabled?: boolean;
3328
+ TrustedIdentityPropagationEnabled?: boolean | undefined;
3329
3329
  /**
3330
3330
  * <p>
3331
3331
  * Indicates whether the Studio has <code>REQUIRED</code> or <code>OPTIONAL</code> IAM Identity Center user assignment. If the value is set to <code>REQUIRED</code>, users must be explicitly assigned to the Studio application to access the Studio.
3332
3332
  * </p>
3333
3333
  * @public
3334
3334
  */
3335
- IdcUserAssignment?: IdcUserAssignment;
3335
+ IdcUserAssignment?: IdcUserAssignment | undefined;
3336
3336
  /**
3337
3337
  * <p>The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.</p>
3338
3338
  * @public
3339
3339
  */
3340
- EncryptionKeyArn?: string;
3340
+ EncryptionKeyArn?: string | undefined;
3341
3341
  }
3342
3342
  /**
3343
3343
  * @public
@@ -3347,7 +3347,7 @@ export interface DescribeStudioOutput {
3347
3347
  * <p>The Amazon EMR Studio details.</p>
3348
3348
  * @public
3349
3349
  */
3350
- Studio?: Studio;
3350
+ Studio?: Studio | undefined;
3351
3351
  }
3352
3352
  /**
3353
3353
  * <p>Configuration of requested EBS block device associated with the instance group.</p>
@@ -3360,12 +3360,12 @@ export interface EbsBlockDevice {
3360
3360
  * cluster.</p>
3361
3361
  * @public
3362
3362
  */
3363
- VolumeSpecification?: VolumeSpecification;
3363
+ VolumeSpecification?: VolumeSpecification | undefined;
3364
3364
  /**
3365
3365
  * <p>The device name that is exposed to the instance, such as /dev/sdh.</p>
3366
3366
  * @public
3367
3367
  */
3368
- Device?: string;
3368
+ Device?: string | undefined;
3369
3369
  }
3370
3370
  /**
3371
3371
  * <p>EBS block device that's attached to an Amazon EC2 instance.</p>
@@ -3376,12 +3376,12 @@ export interface EbsVolume {
3376
3376
  * <p>The device name that is exposed to the instance, such as /dev/sdh.</p>
3377
3377
  * @public
3378
3378
  */
3379
- Device?: string;
3379
+ Device?: string | undefined;
3380
3380
  /**
3381
3381
  * <p>The volume identifier of the EBS volume.</p>
3382
3382
  * @public
3383
3383
  */
3384
- VolumeId?: string;
3384
+ VolumeId?: string | undefined;
3385
3385
  }
3386
3386
  /**
3387
3387
  * @public
@@ -3403,7 +3403,7 @@ export interface GetAutoTerminationPolicyOutput {
3403
3403
  * </p>
3404
3404
  * @public
3405
3405
  */
3406
- AutoTerminationPolicy?: AutoTerminationPolicy;
3406
+ AutoTerminationPolicy?: AutoTerminationPolicy | undefined;
3407
3407
  }
3408
3408
  /**
3409
3409
  * @public
@@ -3426,7 +3426,7 @@ export interface GetClusterSessionCredentialsInput {
3426
3426
  * following format: <code>arn:partition:service:region:account:resource</code>.</p>
3427
3427
  * @public
3428
3428
  */
3429
- ExecutionRoleArn?: string;
3429
+ ExecutionRoleArn?: string | undefined;
3430
3430
  }
3431
3431
  /**
3432
3432
  * @public
@@ -3437,13 +3437,13 @@ export interface GetClusterSessionCredentialsOutput {
3437
3437
  * and password authentication.</p>
3438
3438
  * @public
3439
3439
  */
3440
- Credentials?: Credentials;
3440
+ Credentials?: Credentials | undefined;
3441
3441
  /**
3442
3442
  * <p>The time when the credentials that are returned by the
3443
3443
  * <code>GetClusterSessionCredentials</code> API expire.</p>
3444
3444
  * @public
3445
3445
  */
3446
- ExpiresAt?: Date;
3446
+ ExpiresAt?: Date | undefined;
3447
3447
  }
3448
3448
  /**
3449
3449
  * @public
@@ -3471,7 +3471,7 @@ export interface ManagedScalingPolicy {
3471
3471
  * configuration.</p>
3472
3472
  * @public
3473
3473
  */
3474
- ComputeLimits?: ComputeLimits;
3474
+ ComputeLimits?: ComputeLimits | undefined;
3475
3475
  }
3476
3476
  /**
3477
3477
  * @public
@@ -3482,7 +3482,7 @@ export interface GetManagedScalingPolicyOutput {
3482
3482
  * </p>
3483
3483
  * @public
3484
3484
  */
3485
- ManagedScalingPolicy?: ManagedScalingPolicy;
3485
+ ManagedScalingPolicy?: ManagedScalingPolicy | undefined;
3486
3486
  }
3487
3487
  /**
3488
3488
  * @public
@@ -3500,14 +3500,14 @@ export interface GetStudioSessionMappingInput {
3500
3500
  * be specified.</p>
3501
3501
  * @public
3502
3502
  */
3503
- IdentityId?: string;
3503
+ IdentityId?: string | undefined;
3504
3504
  /**
3505
3505
  * <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
3506
3506
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
3507
3507
  * be specified.</p>
3508
3508
  * @public
3509
3509
  */
3510
- IdentityName?: string;
3510
+ IdentityName?: string | undefined;
3511
3511
  /**
3512
3512
  * <p>Specifies whether the identity to fetch is a user or a group.</p>
3513
3513
  * @public
@@ -3524,40 +3524,40 @@ export interface SessionMappingDetail {
3524
3524
  * <p>The ID of the Amazon EMR Studio.</p>
3525
3525
  * @public
3526
3526
  */
3527
- StudioId?: string;
3527
+ StudioId?: string | undefined;
3528
3528
  /**
3529
3529
  * <p>The globally unique identifier (GUID) of the user or group.</p>
3530
3530
  * @public
3531
3531
  */
3532
- IdentityId?: string;
3532
+ IdentityId?: string | undefined;
3533
3533
  /**
3534
3534
  * <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
3535
3535
  * Reference</i>.</p>
3536
3536
  * @public
3537
3537
  */
3538
- IdentityName?: string;
3538
+ IdentityName?: string | undefined;
3539
3539
  /**
3540
3540
  * <p>Specifies whether the identity mapped to the Amazon EMR Studio is a user or a
3541
3541
  * group.</p>
3542
3542
  * @public
3543
3543
  */
3544
- IdentityType?: IdentityType;
3544
+ IdentityType?: IdentityType | undefined;
3545
3545
  /**
3546
3546
  * <p>The Amazon Resource Name (ARN) of the session policy associated with the user or
3547
3547
  * group.</p>
3548
3548
  * @public
3549
3549
  */
3550
- SessionPolicyArn?: string;
3550
+ SessionPolicyArn?: string | undefined;
3551
3551
  /**
3552
3552
  * <p>The time the session mapping was created.</p>
3553
3553
  * @public
3554
3554
  */
3555
- CreationTime?: Date;
3555
+ CreationTime?: Date | undefined;
3556
3556
  /**
3557
3557
  * <p>The time the session mapping was last modified.</p>
3558
3558
  * @public
3559
3559
  */
3560
- LastModifiedTime?: Date;
3560
+ LastModifiedTime?: Date | undefined;
3561
3561
  }
3562
3562
  /**
3563
3563
  * @public
@@ -3568,7 +3568,7 @@ export interface GetStudioSessionMappingOutput {
3568
3568
  * including session policy ARN and creation time.</p>
3569
3569
  * @public
3570
3570
  */
3571
- SessionMapping?: SessionMappingDetail;
3571
+ SessionMapping?: SessionMappingDetail | undefined;
3572
3572
  }
3573
3573
  /**
3574
3574
  * <p>This input determines which bootstrap actions to retrieve.</p>
@@ -3584,7 +3584,7 @@ export interface ListBootstrapActionsInput {
3584
3584
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3585
3585
  * @public
3586
3586
  */
3587
- Marker?: string;
3587
+ Marker?: string | undefined;
3588
3588
  }
3589
3589
  /**
3590
3590
  * <p>This output contains the bootstrap actions detail.</p>
@@ -3595,12 +3595,12 @@ export interface ListBootstrapActionsOutput {
3595
3595
  * <p>The bootstrap actions associated with the cluster.</p>
3596
3596
  * @public
3597
3597
  */
3598
- BootstrapActions?: Command[];
3598
+ BootstrapActions?: Command[] | undefined;
3599
3599
  /**
3600
3600
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3601
3601
  * @public
3602
3602
  */
3603
- Marker?: string;
3603
+ Marker?: string | undefined;
3604
3604
  }
3605
3605
  /**
3606
3606
  * <p>This input determines how the ListClusters action filters the list of clusters that it
@@ -3612,23 +3612,23 @@ export interface ListClustersInput {
3612
3612
  * <p>The creation date and time beginning value filter for listing clusters.</p>
3613
3613
  * @public
3614
3614
  */
3615
- CreatedAfter?: Date;
3615
+ CreatedAfter?: Date | undefined;
3616
3616
  /**
3617
3617
  * <p>The creation date and time end value filter for listing clusters.</p>
3618
3618
  * @public
3619
3619
  */
3620
- CreatedBefore?: Date;
3620
+ CreatedBefore?: Date | undefined;
3621
3621
  /**
3622
3622
  * <p>The cluster state filters to apply when listing clusters. Clusters that change state
3623
3623
  * while this action runs may be not be returned as expected in the list of clusters.</p>
3624
3624
  * @public
3625
3625
  */
3626
- ClusterStates?: ClusterState[];
3626
+ ClusterStates?: ClusterState[] | undefined;
3627
3627
  /**
3628
3628
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3629
3629
  * @public
3630
3630
  */
3631
- Marker?: string;
3631
+ Marker?: string | undefined;
3632
3632
  }
3633
3633
  /**
3634
3634
  * <p>This contains a ClusterSummaryList with the cluster details; for example, the cluster
@@ -3640,12 +3640,12 @@ export interface ListClustersOutput {
3640
3640
  * <p>The list of clusters for the account based on the given filters.</p>
3641
3641
  * @public
3642
3642
  */
3643
- Clusters?: ClusterSummary[];
3643
+ Clusters?: ClusterSummary[] | undefined;
3644
3644
  /**
3645
3645
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3646
3646
  * @public
3647
3647
  */
3648
- Marker?: string;
3648
+ Marker?: string | undefined;
3649
3649
  }
3650
3650
  /**
3651
3651
  * @public
@@ -3660,7 +3660,7 @@ export interface ListInstanceFleetsInput {
3660
3660
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3661
3661
  * @public
3662
3662
  */
3663
- Marker?: string;
3663
+ Marker?: string | undefined;
3664
3664
  }
3665
3665
  /**
3666
3666
  * @public
@@ -3706,12 +3706,12 @@ export interface InstanceFleetStateChangeReason {
3706
3706
  * <p>A code corresponding to the reason the state change occurred.</p>
3707
3707
  * @public
3708
3708
  */
3709
- Code?: InstanceFleetStateChangeReasonCode;
3709
+ Code?: InstanceFleetStateChangeReasonCode | undefined;
3710
3710
  /**
3711
3711
  * <p>An explanatory message.</p>
3712
3712
  * @public
3713
3713
  */
3714
- Message?: string;
3714
+ Message?: string | undefined;
3715
3715
  }
3716
3716
  /**
3717
3717
  * <p>Provides historical timestamps for the instance fleet, including the time of creation,
@@ -3727,17 +3727,17 @@ export interface InstanceFleetTimeline {
3727
3727
  * <p>The time and date the instance fleet was created.</p>
3728
3728
  * @public
3729
3729
  */
3730
- CreationDateTime?: Date;
3730
+ CreationDateTime?: Date | undefined;
3731
3731
  /**
3732
3732
  * <p>The time and date the instance fleet was ready to run jobs.</p>
3733
3733
  * @public
3734
3734
  */
3735
- ReadyDateTime?: Date;
3735
+ ReadyDateTime?: Date | undefined;
3736
3736
  /**
3737
3737
  * <p>The time and date the instance fleet terminated.</p>
3738
3738
  * @public
3739
3739
  */
3740
- EndDateTime?: Date;
3740
+ EndDateTime?: Date | undefined;
3741
3741
  }
3742
3742
  /**
3743
3743
  * <p>The status of the instance fleet.</p>
@@ -3788,18 +3788,18 @@ export interface InstanceFleetStatus {
3788
3788
  * </ul>
3789
3789
  * @public
3790
3790
  */
3791
- State?: InstanceFleetState;
3791
+ State?: InstanceFleetState | undefined;
3792
3792
  /**
3793
3793
  * <p>Provides status change reason details for the instance fleet.</p>
3794
3794
  * @public
3795
3795
  */
3796
- StateChangeReason?: InstanceFleetStateChangeReason;
3796
+ StateChangeReason?: InstanceFleetStateChangeReason | undefined;
3797
3797
  /**
3798
3798
  * <p>Provides historical timestamps for the instance fleet, including the time of creation,
3799
3799
  * the time it became ready to run jobs, and the time of termination.</p>
3800
3800
  * @public
3801
3801
  */
3802
- Timeline?: InstanceFleetTimeline;
3802
+ Timeline?: InstanceFleetTimeline | undefined;
3803
3803
  }
3804
3804
  /**
3805
3805
  * <p>This input determines which instance groups to retrieve.</p>
@@ -3815,7 +3815,7 @@ export interface ListInstanceGroupsInput {
3815
3815
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
3816
3816
  * @public
3817
3817
  */
3818
- Marker?: string;
3818
+ Marker?: string | undefined;
3819
3819
  }
3820
3820
  /**
3821
3821
  * @public
@@ -3840,18 +3840,18 @@ export interface InstanceResizePolicy {
3840
3840
  * <p>Specific list of instances to be terminated when shrinking an instance group.</p>
3841
3841
  * @public
3842
3842
  */
3843
- InstancesToTerminate?: string[];
3843
+ InstancesToTerminate?: string[] | undefined;
3844
3844
  /**
3845
3845
  * <p>Specific list of instances to be protected when shrinking an instance group.</p>
3846
3846
  * @public
3847
3847
  */
3848
- InstancesToProtect?: string[];
3848
+ InstancesToProtect?: string[] | undefined;
3849
3849
  /**
3850
3850
  * <p>Decommissioning timeout override for the specific list of instances to be
3851
3851
  * terminated.</p>
3852
3852
  * @public
3853
3853
  */
3854
- InstanceTerminationTimeout?: number;
3854
+ InstanceTerminationTimeout?: number | undefined;
3855
3855
  }
3856
3856
  /**
3857
3857
  * <p>Policy for customizing shrink operations. Allows configuration of decommissioning
@@ -3864,13 +3864,13 @@ export interface ShrinkPolicy {
3864
3864
  * decommissioning timeout.</p>
3865
3865
  * @public
3866
3866
  */
3867
- DecommissionTimeout?: number;
3867
+ DecommissionTimeout?: number | undefined;
3868
3868
  /**
3869
3869
  * <p>Custom policy for requesting termination protection or termination of specific instances
3870
3870
  * when shrinking an instance group.</p>
3871
3871
  * @public
3872
3872
  */
3873
- InstanceResizePolicy?: InstanceResizePolicy;
3873
+ InstanceResizePolicy?: InstanceResizePolicy | undefined;
3874
3874
  }
3875
3875
  /**
3876
3876
  * @public
@@ -3895,12 +3895,12 @@ export interface InstanceGroupStateChangeReason {
3895
3895
  * <p>The programmable code for the state change reason.</p>
3896
3896
  * @public
3897
3897
  */
3898
- Code?: InstanceGroupStateChangeReasonCode;
3898
+ Code?: InstanceGroupStateChangeReasonCode | undefined;
3899
3899
  /**
3900
3900
  * <p>The status change reason description.</p>
3901
3901
  * @public
3902
3902
  */
3903
- Message?: string;
3903
+ Message?: string | undefined;
3904
3904
  }
3905
3905
  /**
3906
3906
  * <p>The timeline of the instance group lifecycle.</p>
@@ -3911,17 +3911,17 @@ export interface InstanceGroupTimeline {
3911
3911
  * <p>The creation date and time of the instance group.</p>
3912
3912
  * @public
3913
3913
  */
3914
- CreationDateTime?: Date;
3914
+ CreationDateTime?: Date | undefined;
3915
3915
  /**
3916
3916
  * <p>The date and time when the instance group became ready to perform tasks.</p>
3917
3917
  * @public
3918
3918
  */
3919
- ReadyDateTime?: Date;
3919
+ ReadyDateTime?: Date | undefined;
3920
3920
  /**
3921
3921
  * <p>The date and time when the instance group terminated.</p>
3922
3922
  * @public
3923
3923
  */
3924
- EndDateTime?: Date;
3924
+ EndDateTime?: Date | undefined;
3925
3925
  }
3926
3926
  /**
3927
3927
  * <p>The details of the instance group status.</p>
@@ -3932,17 +3932,17 @@ export interface InstanceGroupStatus {
3932
3932
  * <p>The current state of the instance group.</p>
3933
3933
  * @public
3934
3934
  */
3935
- State?: InstanceGroupState;
3935
+ State?: InstanceGroupState | undefined;
3936
3936
  /**
3937
3937
  * <p>The status change reason details for the instance group.</p>
3938
3938
  * @public
3939
3939
  */
3940
- StateChangeReason?: InstanceGroupStateChangeReason;
3940
+ StateChangeReason?: InstanceGroupStateChangeReason | undefined;
3941
3941
  /**
3942
3942
  * <p>The timeline of the instance group status over time.</p>
3943
3943
  * @public
3944
3944
  */
3945
- Timeline?: InstanceGroupTimeline;
3945
+ Timeline?: InstanceGroupTimeline | undefined;
3946
3946
  }
3947
3947
  /**
3948
3948
  * @public
@@ -3973,33 +3973,33 @@ export interface ListInstancesInput {
3973
3973
  * <p>The identifier of the instance group for which to list the instances.</p>
3974
3974
  * @public
3975
3975
  */
3976
- InstanceGroupId?: string;
3976
+ InstanceGroupId?: string | undefined;
3977
3977
  /**
3978
3978
  * <p>The type of instance group for which to list the instances.</p>
3979
3979
  * @public
3980
3980
  */
3981
- InstanceGroupTypes?: InstanceGroupType[];
3981
+ InstanceGroupTypes?: InstanceGroupType[] | undefined;
3982
3982
  /**
3983
3983
  * <p>The unique identifier of the instance fleet.</p>
3984
3984
  * @public
3985
3985
  */
3986
- InstanceFleetId?: string;
3986
+ InstanceFleetId?: string | undefined;
3987
3987
  /**
3988
3988
  * <p>The node type of the instance fleet. For example MASTER, CORE, or TASK.</p>
3989
3989
  * @public
3990
3990
  */
3991
- InstanceFleetType?: InstanceFleetType;
3991
+ InstanceFleetType?: InstanceFleetType | undefined;
3992
3992
  /**
3993
3993
  * <p>A list of instance states that will filter the instances returned with this
3994
3994
  * request.</p>
3995
3995
  * @public
3996
3996
  */
3997
- InstanceStates?: InstanceState[];
3997
+ InstanceStates?: InstanceState[] | undefined;
3998
3998
  /**
3999
3999
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
4000
4000
  * @public
4001
4001
  */
4002
- Marker?: string;
4002
+ Marker?: string | undefined;
4003
4003
  }
4004
4004
  /**
4005
4005
  * @public
@@ -4025,12 +4025,12 @@ export interface InstanceStateChangeReason {
4025
4025
  * <p>The programmable code for the state change reason.</p>
4026
4026
  * @public
4027
4027
  */
4028
- Code?: InstanceStateChangeReasonCode;
4028
+ Code?: InstanceStateChangeReasonCode | undefined;
4029
4029
  /**
4030
4030
  * <p>The status change reason description.</p>
4031
4031
  * @public
4032
4032
  */
4033
- Message?: string;
4033
+ Message?: string | undefined;
4034
4034
  }
4035
4035
  /**
4036
4036
  * <p>The timeline of the instance lifecycle.</p>
@@ -4041,17 +4041,17 @@ export interface InstanceTimeline {
4041
4041
  * <p>The creation date and time of the instance.</p>
4042
4042
  * @public
4043
4043
  */
4044
- CreationDateTime?: Date;
4044
+ CreationDateTime?: Date | undefined;
4045
4045
  /**
4046
4046
  * <p>The date and time when the instance was ready to perform tasks.</p>
4047
4047
  * @public
4048
4048
  */
4049
- ReadyDateTime?: Date;
4049
+ ReadyDateTime?: Date | undefined;
4050
4050
  /**
4051
4051
  * <p>The date and time when the instance was terminated.</p>
4052
4052
  * @public
4053
4053
  */
4054
- EndDateTime?: Date;
4054
+ EndDateTime?: Date | undefined;
4055
4055
  }
4056
4056
  /**
4057
4057
  * <p>The instance status details.</p>
@@ -4062,17 +4062,17 @@ export interface InstanceStatus {
4062
4062
  * <p>The current state of the instance.</p>
4063
4063
  * @public
4064
4064
  */
4065
- State?: InstanceState;
4065
+ State?: InstanceState | undefined;
4066
4066
  /**
4067
4067
  * <p>The details of the status change reason for the instance.</p>
4068
4068
  * @public
4069
4069
  */
4070
- StateChangeReason?: InstanceStateChangeReason;
4070
+ StateChangeReason?: InstanceStateChangeReason | undefined;
4071
4071
  /**
4072
4072
  * <p>The timeline of the instance status over time.</p>
4073
4073
  * @public
4074
4074
  */
4075
- Timeline?: InstanceTimeline;
4075
+ Timeline?: InstanceTimeline | undefined;
4076
4076
  }
4077
4077
  /**
4078
4078
  * <p>Represents an Amazon EC2 instance provisioned as part of cluster.</p>
@@ -4083,64 +4083,64 @@ export interface Instance {
4083
4083
  * <p>The unique identifier for the instance in Amazon EMR.</p>
4084
4084
  * @public
4085
4085
  */
4086
- Id?: string;
4086
+ Id?: string | undefined;
4087
4087
  /**
4088
4088
  * <p>The unique identifier of the instance in Amazon EC2.</p>
4089
4089
  * @public
4090
4090
  */
4091
- Ec2InstanceId?: string;
4091
+ Ec2InstanceId?: string | undefined;
4092
4092
  /**
4093
4093
  * <p>The public DNS name of the instance.</p>
4094
4094
  * @public
4095
4095
  */
4096
- PublicDnsName?: string;
4096
+ PublicDnsName?: string | undefined;
4097
4097
  /**
4098
4098
  * <p>The public IP address of the instance.</p>
4099
4099
  * @public
4100
4100
  */
4101
- PublicIpAddress?: string;
4101
+ PublicIpAddress?: string | undefined;
4102
4102
  /**
4103
4103
  * <p>The private DNS name of the instance.</p>
4104
4104
  * @public
4105
4105
  */
4106
- PrivateDnsName?: string;
4106
+ PrivateDnsName?: string | undefined;
4107
4107
  /**
4108
4108
  * <p>The private IP address of the instance.</p>
4109
4109
  * @public
4110
4110
  */
4111
- PrivateIpAddress?: string;
4111
+ PrivateIpAddress?: string | undefined;
4112
4112
  /**
4113
4113
  * <p>The current status of the instance.</p>
4114
4114
  * @public
4115
4115
  */
4116
- Status?: InstanceStatus;
4116
+ Status?: InstanceStatus | undefined;
4117
4117
  /**
4118
4118
  * <p>The identifier of the instance group to which this instance belongs.</p>
4119
4119
  * @public
4120
4120
  */
4121
- InstanceGroupId?: string;
4121
+ InstanceGroupId?: string | undefined;
4122
4122
  /**
4123
4123
  * <p>The unique identifier of the instance fleet to which an Amazon EC2 instance
4124
4124
  * belongs.</p>
4125
4125
  * @public
4126
4126
  */
4127
- InstanceFleetId?: string;
4127
+ InstanceFleetId?: string | undefined;
4128
4128
  /**
4129
4129
  * <p>The instance purchasing option. Valid values are <code>ON_DEMAND</code> or
4130
4130
  * <code>SPOT</code>. </p>
4131
4131
  * @public
4132
4132
  */
4133
- Market?: MarketType;
4133
+ Market?: MarketType | undefined;
4134
4134
  /**
4135
4135
  * <p>The Amazon EC2 instance type, for example <code>m3.xlarge</code>.</p>
4136
4136
  * @public
4137
4137
  */
4138
- InstanceType?: string;
4138
+ InstanceType?: string | undefined;
4139
4139
  /**
4140
4140
  * <p>The list of Amazon EBS volumes that are attached to this instance.</p>
4141
4141
  * @public
4142
4142
  */
4143
- EbsVolumes?: EbsVolume[];
4143
+ EbsVolumes?: EbsVolume[] | undefined;
4144
4144
  }
4145
4145
  /**
4146
4146
  * <p>This output contains the list of instances.</p>
@@ -4151,12 +4151,12 @@ export interface ListInstancesOutput {
4151
4151
  * <p>The list of instances for the cluster and given filters.</p>
4152
4152
  * @public
4153
4153
  */
4154
- Instances?: Instance[];
4154
+ Instances?: Instance[] | undefined;
4155
4155
  /**
4156
4156
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
4157
4157
  * @public
4158
4158
  */
4159
- Marker?: string;
4159
+ Marker?: string | undefined;
4160
4160
  }
4161
4161
  /**
4162
4162
  * @public
@@ -4166,7 +4166,7 @@ export interface ListNotebookExecutionsInput {
4166
4166
  * <p>The unique ID of the editor associated with the notebook execution.</p>
4167
4167
  * @public
4168
4168
  */
4169
- EditorId?: string;
4169
+ EditorId?: string | undefined;
4170
4170
  /**
4171
4171
  * <p>The status filter for listing notebook executions.</p>
4172
4172
  * <ul>
@@ -4222,31 +4222,31 @@ export interface ListNotebookExecutionsInput {
4222
4222
  * </ul>
4223
4223
  * @public
4224
4224
  */
4225
- Status?: NotebookExecutionStatus;
4225
+ Status?: NotebookExecutionStatus | undefined;
4226
4226
  /**
4227
4227
  * <p>The beginning of time range filter for listing notebook executions. The default is the
4228
4228
  * timestamp of 30 days ago.</p>
4229
4229
  * @public
4230
4230
  */
4231
- From?: Date;
4231
+ From?: Date | undefined;
4232
4232
  /**
4233
4233
  * <p>The end of time range filter for listing notebook executions. The default is the current
4234
4234
  * timestamp.</p>
4235
4235
  * @public
4236
4236
  */
4237
- To?: Date;
4237
+ To?: Date | undefined;
4238
4238
  /**
4239
4239
  * <p>The pagination token, returned by a previous <code>ListNotebookExecutions</code> call,
4240
4240
  * that indicates the start of the list for this <code>ListNotebookExecutions</code>
4241
4241
  * call.</p>
4242
4242
  * @public
4243
4243
  */
4244
- Marker?: string;
4244
+ Marker?: string | undefined;
4245
4245
  /**
4246
4246
  * <p>The unique ID of the execution engine.</p>
4247
4247
  * @public
4248
4248
  */
4249
- ExecutionEngineId?: string;
4249
+ ExecutionEngineId?: string | undefined;
4250
4250
  }
4251
4251
  /**
4252
4252
  * <p>Details for a notebook execution. The details include information such as the unique ID
@@ -4258,17 +4258,17 @@ export interface NotebookExecutionSummary {
4258
4258
  * <p>The unique identifier of the notebook execution.</p>
4259
4259
  * @public
4260
4260
  */
4261
- NotebookExecutionId?: string;
4261
+ NotebookExecutionId?: string | undefined;
4262
4262
  /**
4263
4263
  * <p>The unique identifier of the editor associated with the notebook execution.</p>
4264
4264
  * @public
4265
4265
  */
4266
- EditorId?: string;
4266
+ EditorId?: string | undefined;
4267
4267
  /**
4268
4268
  * <p>The name of the notebook execution.</p>
4269
4269
  * @public
4270
4270
  */
4271
- NotebookExecutionName?: string;
4271
+ NotebookExecutionName?: string | undefined;
4272
4272
  /**
4273
4273
  * <p>The status of the notebook execution.</p>
4274
4274
  * <ul>
@@ -4324,27 +4324,27 @@ export interface NotebookExecutionSummary {
4324
4324
  * </ul>
4325
4325
  * @public
4326
4326
  */
4327
- Status?: NotebookExecutionStatus;
4327
+ Status?: NotebookExecutionStatus | undefined;
4328
4328
  /**
4329
4329
  * <p>The timestamp when notebook execution started.</p>
4330
4330
  * @public
4331
4331
  */
4332
- StartTime?: Date;
4332
+ StartTime?: Date | undefined;
4333
4333
  /**
4334
4334
  * <p>The timestamp when notebook execution started.</p>
4335
4335
  * @public
4336
4336
  */
4337
- EndTime?: Date;
4337
+ EndTime?: Date | undefined;
4338
4338
  /**
4339
4339
  * <p>The Amazon S3 location that stores the notebook execution input.</p>
4340
4340
  * @public
4341
4341
  */
4342
- NotebookS3Location?: NotebookS3LocationForOutput;
4342
+ NotebookS3Location?: NotebookS3LocationForOutput | undefined;
4343
4343
  /**
4344
4344
  * <p>The unique ID of the execution engine for the notebook execution.</p>
4345
4345
  * @public
4346
4346
  */
4347
- ExecutionEngineId?: string;
4347
+ ExecutionEngineId?: string | undefined;
4348
4348
  }
4349
4349
  /**
4350
4350
  * @public
@@ -4354,13 +4354,13 @@ export interface ListNotebookExecutionsOutput {
4354
4354
  * <p>A list of notebook executions.</p>
4355
4355
  * @public
4356
4356
  */
4357
- NotebookExecutions?: NotebookExecutionSummary[];
4357
+ NotebookExecutions?: NotebookExecutionSummary[] | undefined;
4358
4358
  /**
4359
4359
  * <p>A pagination token that a subsequent <code>ListNotebookExecutions</code> can use to
4360
4360
  * determine the next set of results to retrieve.</p>
4361
4361
  * @public
4362
4362
  */
4363
- Marker?: string;
4363
+ Marker?: string | undefined;
4364
4364
  }
4365
4365
  /**
4366
4366
  * <p>The release label filters by application or version prefix.</p>
@@ -4371,12 +4371,12 @@ export interface ReleaseLabelFilter {
4371
4371
  * <p>Optional release label version prefix filter. For example, <code>emr-5</code>.</p>
4372
4372
  * @public
4373
4373
  */
4374
- Prefix?: string;
4374
+ Prefix?: string | undefined;
4375
4375
  /**
4376
4376
  * <p>Optional release label application filter. For example, <code>spark@2.1.0</code>.</p>
4377
4377
  * @public
4378
4378
  */
4379
- Application?: string;
4379
+ Application?: string | undefined;
4380
4380
  }
4381
4381
  /**
4382
4382
  * @public
@@ -4388,7 +4388,7 @@ export interface ListReleaseLabelsInput {
4388
4388
  * of release labels to return.</p>
4389
4389
  * @public
4390
4390
  */
4391
- Filters?: ReleaseLabelFilter;
4391
+ Filters?: ReleaseLabelFilter | undefined;
4392
4392
  /**
4393
4393
  * <p>Specifies the next page of results. If <code>NextToken</code> is not specified, which is
4394
4394
  * usually the case for the first request of ListReleaseLabels, the first page of results are
@@ -4398,13 +4398,13 @@ export interface ListReleaseLabelsInput {
4398
4398
  * <code>NextToken</code> is expired or tampered with.</p>
4399
4399
  * @public
4400
4400
  */
4401
- NextToken?: string;
4401
+ NextToken?: string | undefined;
4402
4402
  /**
4403
4403
  * <p>Defines the maximum number of release labels to return in a single response. The default
4404
4404
  * is <code>100</code>.</p>
4405
4405
  * @public
4406
4406
  */
4407
- MaxResults?: number;
4407
+ MaxResults?: number | undefined;
4408
4408
  }
4409
4409
  /**
4410
4410
  * @public
@@ -4414,13 +4414,13 @@ export interface ListReleaseLabelsOutput {
4414
4414
  * <p>The returned release labels.</p>
4415
4415
  * @public
4416
4416
  */
4417
- ReleaseLabels?: string[];
4417
+ ReleaseLabels?: string[] | undefined;
4418
4418
  /**
4419
4419
  * <p>Used to paginate the next page of results if specified in the next
4420
4420
  * <code>ListReleaseLabels</code> request.</p>
4421
4421
  * @public
4422
4422
  */
4423
- NextToken?: string;
4423
+ NextToken?: string | undefined;
4424
4424
  }
4425
4425
  /**
4426
4426
  * @public
@@ -4430,7 +4430,7 @@ export interface ListSecurityConfigurationsInput {
4430
4430
  * <p>The pagination token that indicates the set of results to retrieve.</p>
4431
4431
  * @public
4432
4432
  */
4433
- Marker?: string;
4433
+ Marker?: string | undefined;
4434
4434
  }
4435
4435
  /**
4436
4436
  * <p>The creation date and time, and name, of a security configuration.</p>
@@ -4441,12 +4441,12 @@ export interface SecurityConfigurationSummary {
4441
4441
  * <p>The name of the security configuration.</p>
4442
4442
  * @public
4443
4443
  */
4444
- Name?: string;
4444
+ Name?: string | undefined;
4445
4445
  /**
4446
4446
  * <p>The date and time the security configuration was created.</p>
4447
4447
  * @public
4448
4448
  */
4449
- CreationDateTime?: Date;
4449
+ CreationDateTime?: Date | undefined;
4450
4450
  }
4451
4451
  /**
4452
4452
  * @public
@@ -4456,14 +4456,14 @@ export interface ListSecurityConfigurationsOutput {
4456
4456
  * <p>The creation date and time, and name, of each security configuration.</p>
4457
4457
  * @public
4458
4458
  */
4459
- SecurityConfigurations?: SecurityConfigurationSummary[];
4459
+ SecurityConfigurations?: SecurityConfigurationSummary[] | undefined;
4460
4460
  /**
4461
4461
  * <p>A pagination token that indicates the next set of results to retrieve. Include the
4462
4462
  * marker in the next ListSecurityConfiguration call to retrieve the next page of results, if
4463
4463
  * required.</p>
4464
4464
  * @public
4465
4465
  */
4466
- Marker?: string;
4466
+ Marker?: string | undefined;
4467
4467
  }
4468
4468
  /**
4469
4469
  * <p>This input determines which steps to list.</p>
@@ -4479,14 +4479,14 @@ export interface ListStepsInput {
4479
4479
  * <p>The filter to limit the step list based on certain states.</p>
4480
4480
  * @public
4481
4481
  */
4482
- StepStates?: StepState[];
4482
+ StepStates?: StepState[] | undefined;
4483
4483
  /**
4484
4484
  * <p>The filter to limit the step list based on the identifier of the steps. You can specify
4485
4485
  * a maximum of ten Step IDs. The character constraint applies to the overall length of the
4486
4486
  * array.</p>
4487
4487
  * @public
4488
4488
  */
4489
- StepIds?: string[];
4489
+ StepIds?: string[] | undefined;
4490
4490
  /**
4491
4491
  * <p>The maximum number of steps that a single <code>ListSteps</code> action returns is 50.
4492
4492
  * To return a longer list of steps, use multiple <code>ListSteps</code> actions along with
@@ -4494,7 +4494,7 @@ export interface ListStepsInput {
4494
4494
  * of results to retrieve.</p>
4495
4495
  * @public
4496
4496
  */
4497
- Marker?: string;
4497
+ Marker?: string | undefined;
4498
4498
  }
4499
4499
  /**
4500
4500
  * <p>The summary of the cluster step.</p>
@@ -4505,29 +4505,29 @@ export interface StepSummary {
4505
4505
  * <p>The identifier of the cluster step.</p>
4506
4506
  * @public
4507
4507
  */
4508
- Id?: string;
4508
+ Id?: string | undefined;
4509
4509
  /**
4510
4510
  * <p>The name of the cluster step.</p>
4511
4511
  * @public
4512
4512
  */
4513
- Name?: string;
4513
+ Name?: string | undefined;
4514
4514
  /**
4515
4515
  * <p>The Hadoop job configuration of the cluster step.</p>
4516
4516
  * @public
4517
4517
  */
4518
- Config?: HadoopStepConfig;
4518
+ Config?: HadoopStepConfig | undefined;
4519
4519
  /**
4520
4520
  * <p>The action to take when the cluster step fails. Possible values are TERMINATE_CLUSTER,
4521
4521
  * CANCEL_AND_WAIT, and CONTINUE. TERMINATE_JOB_FLOW is available for backward
4522
4522
  * compatibility.</p>
4523
4523
  * @public
4524
4524
  */
4525
- ActionOnFailure?: ActionOnFailure;
4525
+ ActionOnFailure?: ActionOnFailure | undefined;
4526
4526
  /**
4527
4527
  * <p>The current execution status details of the cluster step.</p>
4528
4528
  * @public
4529
4529
  */
4530
- Status?: StepStatus;
4530
+ Status?: StepStatus | undefined;
4531
4531
  }
4532
4532
  /**
4533
4533
  * <p>This output contains the list of steps returned in reverse order. This means that the
@@ -4539,7 +4539,7 @@ export interface ListStepsOutput {
4539
4539
  * <p>The filtered list of steps for the cluster.</p>
4540
4540
  * @public
4541
4541
  */
4542
- Steps?: StepSummary[];
4542
+ Steps?: StepSummary[] | undefined;
4543
4543
  /**
4544
4544
  * <p>The maximum number of steps that a single <code>ListSteps</code> action returns is 50.
4545
4545
  * To return a longer list of steps, use multiple <code>ListSteps</code> actions along with
@@ -4547,7 +4547,7 @@ export interface ListStepsOutput {
4547
4547
  * of results to retrieve.</p>
4548
4548
  * @public
4549
4549
  */
4550
- Marker?: string;
4550
+ Marker?: string | undefined;
4551
4551
  }
4552
4552
  /**
4553
4553
  * @public
@@ -4557,7 +4557,7 @@ export interface ListStudiosInput {
4557
4557
  * <p>The pagination token that indicates the set of results to retrieve.</p>
4558
4558
  * @public
4559
4559
  */
4560
- Marker?: string;
4560
+ Marker?: string | undefined;
4561
4561
  }
4562
4562
  /**
4563
4563
  * <p>Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. To fetch additional details such as subnets, IAM roles,
@@ -4569,37 +4569,37 @@ export interface StudioSummary {
4569
4569
  * <p>The ID of the Amazon EMR Studio.</p>
4570
4570
  * @public
4571
4571
  */
4572
- StudioId?: string;
4572
+ StudioId?: string | undefined;
4573
4573
  /**
4574
4574
  * <p>The name of the Amazon EMR Studio.</p>
4575
4575
  * @public
4576
4576
  */
4577
- Name?: string;
4577
+ Name?: string | undefined;
4578
4578
  /**
4579
4579
  * <p>The ID of the Virtual Private Cloud (Amazon VPC) associated with the Amazon EMR Studio.</p>
4580
4580
  * @public
4581
4581
  */
4582
- VpcId?: string;
4582
+ VpcId?: string | undefined;
4583
4583
  /**
4584
4584
  * <p>The detailed description of the Amazon EMR Studio.</p>
4585
4585
  * @public
4586
4586
  */
4587
- Description?: string;
4587
+ Description?: string | undefined;
4588
4588
  /**
4589
4589
  * <p>The unique access URL of the Amazon EMR Studio.</p>
4590
4590
  * @public
4591
4591
  */
4592
- Url?: string;
4592
+ Url?: string | undefined;
4593
4593
  /**
4594
4594
  * <p>Specifies whether the Studio authenticates users using IAM or IAM Identity Center.</p>
4595
4595
  * @public
4596
4596
  */
4597
- AuthMode?: AuthMode;
4597
+ AuthMode?: AuthMode | undefined;
4598
4598
  /**
4599
4599
  * <p>The time when the Amazon EMR Studio was created.</p>
4600
4600
  * @public
4601
4601
  */
4602
- CreationTime?: Date;
4602
+ CreationTime?: Date | undefined;
4603
4603
  }
4604
4604
  /**
4605
4605
  * @public
@@ -4609,12 +4609,12 @@ export interface ListStudiosOutput {
4609
4609
  * <p>The list of Studio summary objects.</p>
4610
4610
  * @public
4611
4611
  */
4612
- Studios?: StudioSummary[];
4612
+ Studios?: StudioSummary[] | undefined;
4613
4613
  /**
4614
4614
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
4615
4615
  * @public
4616
4616
  */
4617
- Marker?: string;
4617
+ Marker?: string | undefined;
4618
4618
  }
4619
4619
  /**
4620
4620
  * @public
@@ -4624,18 +4624,18 @@ export interface ListStudioSessionMappingsInput {
4624
4624
  * <p>The ID of the Amazon EMR Studio.</p>
4625
4625
  * @public
4626
4626
  */
4627
- StudioId?: string;
4627
+ StudioId?: string | undefined;
4628
4628
  /**
4629
4629
  * <p>Specifies whether to return session mappings for users or groups. If not specified, the
4630
4630
  * results include session mapping details for both users and groups.</p>
4631
4631
  * @public
4632
4632
  */
4633
- IdentityType?: IdentityType;
4633
+ IdentityType?: IdentityType | undefined;
4634
4634
  /**
4635
4635
  * <p>The pagination token that indicates the set of results to retrieve.</p>
4636
4636
  * @public
4637
4637
  */
4638
- Marker?: string;
4638
+ Marker?: string | undefined;
4639
4639
  }
4640
4640
  /**
4641
4641
  * <p>Details for an Amazon EMR Studio session mapping. The details do not include the
@@ -4647,36 +4647,36 @@ export interface SessionMappingSummary {
4647
4647
  * <p>The ID of the Amazon EMR Studio.</p>
4648
4648
  * @public
4649
4649
  */
4650
- StudioId?: string;
4650
+ StudioId?: string | undefined;
4651
4651
  /**
4652
4652
  * <p>The globally unique identifier (GUID) of the user or group from the IAM Identity Center
4653
4653
  * Identity Store.</p>
4654
4654
  * @public
4655
4655
  */
4656
- IdentityId?: string;
4656
+ IdentityId?: string | undefined;
4657
4657
  /**
4658
4658
  * <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
4659
4659
  * Reference</i>.</p>
4660
4660
  * @public
4661
4661
  */
4662
- IdentityName?: string;
4662
+ IdentityName?: string | undefined;
4663
4663
  /**
4664
4664
  * <p>Specifies whether the identity mapped to the Amazon EMR Studio is a user or a
4665
4665
  * group.</p>
4666
4666
  * @public
4667
4667
  */
4668
- IdentityType?: IdentityType;
4668
+ IdentityType?: IdentityType | undefined;
4669
4669
  /**
4670
4670
  * <p>The Amazon Resource Name (ARN) of the session policy associated with the user or
4671
4671
  * group.</p>
4672
4672
  * @public
4673
4673
  */
4674
- SessionPolicyArn?: string;
4674
+ SessionPolicyArn?: string | undefined;
4675
4675
  /**
4676
4676
  * <p>The time the session mapping was created.</p>
4677
4677
  * @public
4678
4678
  */
4679
- CreationTime?: Date;
4679
+ CreationTime?: Date | undefined;
4680
4680
  }
4681
4681
  /**
4682
4682
  * @public
@@ -4688,12 +4688,12 @@ export interface ListStudioSessionMappingsOutput {
4688
4688
  * ID.</p>
4689
4689
  * @public
4690
4690
  */
4691
- SessionMappings?: SessionMappingSummary[];
4691
+ SessionMappings?: SessionMappingSummary[] | undefined;
4692
4692
  /**
4693
4693
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
4694
4694
  * @public
4695
4695
  */
4696
- Marker?: string;
4696
+ Marker?: string | undefined;
4697
4697
  }
4698
4698
  /**
4699
4699
  * @public
@@ -4714,7 +4714,7 @@ export interface ListSupportedInstanceTypesInput {
4714
4714
  * <p>The pagination token that marks the next set of results to retrieve.</p>
4715
4715
  * @public
4716
4716
  */
4717
- Marker?: string;
4717
+ Marker?: string | undefined;
4718
4718
  }
4719
4719
  /**
4720
4720
  * <p>An instance type that the specified Amazon EMR release supports.</p>
@@ -4727,66 +4727,66 @@ export interface SupportedInstanceType {
4727
4727
  * <code>SupportedInstanceType</code>.</p>
4728
4728
  * @public
4729
4729
  */
4730
- Type?: string;
4730
+ Type?: string | undefined;
4731
4731
  /**
4732
4732
  * <p>The amount of memory that is available to Amazon EMR from the <code>SupportedInstanceType</code>. The kernel and hypervisor
4733
4733
  * software consume some memory, so this value might be lower than the overall memory for the
4734
4734
  * instance type.</p>
4735
4735
  * @public
4736
4736
  */
4737
- MemoryGB?: number;
4737
+ MemoryGB?: number | undefined;
4738
4738
  /**
4739
4739
  * <p>
4740
4740
  * <code>StorageGB</code> represents the storage capacity of the
4741
4741
  * <code>SupportedInstanceType</code>. This value is <code>0</code> for Amazon EBS-only instance types.</p>
4742
4742
  * @public
4743
4743
  */
4744
- StorageGB?: number;
4744
+ StorageGB?: number | undefined;
4745
4745
  /**
4746
4746
  * <p>The number of vCPUs available for the <code>SupportedInstanceType</code>.</p>
4747
4747
  * @public
4748
4748
  */
4749
- VCPU?: number;
4749
+ VCPU?: number | undefined;
4750
4750
  /**
4751
4751
  * <p>Indicates whether the <code>SupportedInstanceType</code> only supports 64-bit
4752
4752
  * architecture.</p>
4753
4753
  * @public
4754
4754
  */
4755
- Is64BitsOnly?: boolean;
4755
+ Is64BitsOnly?: boolean | undefined;
4756
4756
  /**
4757
4757
  * <p>The Amazon EC2 family and generation for the
4758
4758
  * <code>SupportedInstanceType</code>.</p>
4759
4759
  * @public
4760
4760
  */
4761
- InstanceFamilyId?: string;
4761
+ InstanceFamilyId?: string | undefined;
4762
4762
  /**
4763
4763
  * <p>Indicates whether the <code>SupportedInstanceType</code> supports Amazon EBS
4764
4764
  * optimization.</p>
4765
4765
  * @public
4766
4766
  */
4767
- EbsOptimizedAvailable?: boolean;
4767
+ EbsOptimizedAvailable?: boolean | undefined;
4768
4768
  /**
4769
4769
  * <p>Indicates whether the <code>SupportedInstanceType</code> uses Amazon EBS
4770
4770
  * optimization by default.</p>
4771
4771
  * @public
4772
4772
  */
4773
- EbsOptimizedByDefault?: boolean;
4773
+ EbsOptimizedByDefault?: boolean | undefined;
4774
4774
  /**
4775
4775
  * <p>Number of disks for the <code>SupportedInstanceType</code>. This value is <code>0</code>
4776
4776
  * for Amazon EBS-only instance types.</p>
4777
4777
  * @public
4778
4778
  */
4779
- NumberOfDisks?: number;
4779
+ NumberOfDisks?: number | undefined;
4780
4780
  /**
4781
4781
  * <p>Indicates whether the <code>SupportedInstanceType</code> only supports Amazon EBS.</p>
4782
4782
  * @public
4783
4783
  */
4784
- EbsStorageOnly?: boolean;
4784
+ EbsStorageOnly?: boolean | undefined;
4785
4785
  /**
4786
4786
  * <p>The CPU architecture, for example <code>X86_64</code> or <code>AARCH64</code>.</p>
4787
4787
  * @public
4788
4788
  */
4789
- Architecture?: string;
4789
+ Architecture?: string | undefined;
4790
4790
  }
4791
4791
  /**
4792
4792
  * @public
@@ -4797,12 +4797,12 @@ export interface ListSupportedInstanceTypesOutput {
4797
4797
  * <code>ListSupportedInstanceTypesInput$ReleaseLabel</code> supports, filtered by Amazon Web Services Region.</p>
4798
4798
  * @public
4799
4799
  */
4800
- SupportedInstanceTypes?: SupportedInstanceType[];
4800
+ SupportedInstanceTypes?: SupportedInstanceType[] | undefined;
4801
4801
  /**
4802
4802
  * <p>The pagination token that marks the next set of results to retrieve.</p>
4803
4803
  * @public
4804
4804
  */
4805
- Marker?: string;
4805
+ Marker?: string | undefined;
4806
4806
  }
4807
4807
  /**
4808
4808
  * @public
@@ -4820,7 +4820,7 @@ export interface ModifyClusterInput {
4820
4820
  * For more information see <a>Step$ActionOnFailure</a>.</p>
4821
4821
  * @public
4822
4822
  */
4823
- StepConcurrencyLevel?: number;
4823
+ StepConcurrencyLevel?: number | undefined;
4824
4824
  }
4825
4825
  /**
4826
4826
  * @public
@@ -4830,7 +4830,7 @@ export interface ModifyClusterOutput {
4830
4830
  * <p>The number of steps that can be executed concurrently.</p>
4831
4831
  * @public
4832
4832
  */
4833
- StepConcurrencyLevel?: number;
4833
+ StepConcurrencyLevel?: number | undefined;
4834
4834
  }
4835
4835
  /**
4836
4836
  * @public
@@ -4875,22 +4875,22 @@ export interface PutAutoScalingPolicyOutput {
4875
4875
  * is applied is within this cluster.</p>
4876
4876
  * @public
4877
4877
  */
4878
- ClusterId?: string;
4878
+ ClusterId?: string | undefined;
4879
4879
  /**
4880
4880
  * <p>Specifies the ID of the instance group to which the scaling policy is applied.</p>
4881
4881
  * @public
4882
4882
  */
4883
- InstanceGroupId?: string;
4883
+ InstanceGroupId?: string | undefined;
4884
4884
  /**
4885
4885
  * <p>The automatic scaling policy definition.</p>
4886
4886
  * @public
4887
4887
  */
4888
- AutoScalingPolicy?: AutoScalingPolicyDescription;
4888
+ AutoScalingPolicy?: AutoScalingPolicyDescription | undefined;
4889
4889
  /**
4890
4890
  * <p>The Amazon Resource Name (ARN) of the cluster.</p>
4891
4891
  * @public
4892
4892
  */
4893
- ClusterArn?: string;
4893
+ ClusterArn?: string | undefined;
4894
4894
  }
4895
4895
  /**
4896
4896
  * @public
@@ -4906,7 +4906,7 @@ export interface PutAutoTerminationPolicyInput {
4906
4906
  * <p>Specifies the auto-termination policy to attach to the cluster.</p>
4907
4907
  * @public
4908
4908
  */
4909
- AutoTerminationPolicy?: AutoTerminationPolicy;
4909
+ AutoTerminationPolicy?: AutoTerminationPolicy | undefined;
4910
4910
  }
4911
4911
  /**
4912
4912
  * @public
@@ -5026,12 +5026,12 @@ export interface SupportedProductConfig {
5026
5026
  * <p>The name of the product configuration.</p>
5027
5027
  * @public
5028
5028
  */
5029
- Name?: string;
5029
+ Name?: string | undefined;
5030
5030
  /**
5031
5031
  * <p>The list of user-supplied arguments.</p>
5032
5032
  * @public
5033
5033
  */
5034
- Args?: string[];
5034
+ Args?: string[] | undefined;
5035
5035
  }
5036
5036
  /**
5037
5037
  * <p> The result of the <a>RunJobFlow</a> operation. </p>
@@ -5042,12 +5042,12 @@ export interface RunJobFlowOutput {
5042
5042
  * <p>A unique identifier for the job flow.</p>
5043
5043
  * @public
5044
5044
  */
5045
- JobFlowId?: string;
5045
+ JobFlowId?: string | undefined;
5046
5046
  /**
5047
5047
  * <p>The Amazon Resource Name (ARN) of the cluster.</p>
5048
5048
  * @public
5049
5049
  */
5050
- ClusterArn?: string;
5050
+ ClusterArn?: string | undefined;
5051
5051
  }
5052
5052
  /**
5053
5053
  * @public
@@ -5131,13 +5131,13 @@ export interface NotebookS3LocationFromInput {
5131
5131
  * <p>The Amazon S3 bucket that stores the notebook execution input.</p>
5132
5132
  * @public
5133
5133
  */
5134
- Bucket?: string;
5134
+ Bucket?: string | undefined;
5135
5135
  /**
5136
5136
  * <p>The key to the Amazon S3 location that stores the notebook execution
5137
5137
  * input.</p>
5138
5138
  * @public
5139
5139
  */
5140
- Key?: string;
5140
+ Key?: string | undefined;
5141
5141
  }
5142
5142
  /**
5143
5143
  * <p>The Amazon S3 location that stores the notebook execution output.</p>
@@ -5148,13 +5148,13 @@ export interface OutputNotebookS3LocationFromInput {
5148
5148
  * <p>The Amazon S3 bucket that stores the notebook execution output.</p>
5149
5149
  * @public
5150
5150
  */
5151
- Bucket?: string;
5151
+ Bucket?: string | undefined;
5152
5152
  /**
5153
5153
  * <p>The key to the Amazon S3 location that stores the notebook execution
5154
5154
  * output.</p>
5155
5155
  * @public
5156
5156
  */
5157
- Key?: string;
5157
+ Key?: string | undefined;
5158
5158
  }
5159
5159
  /**
5160
5160
  * @public
@@ -5165,7 +5165,7 @@ export interface StartNotebookExecutionInput {
5165
5165
  * execution.</p>
5166
5166
  * @public
5167
5167
  */
5168
- EditorId?: string;
5168
+ EditorId?: string | undefined;
5169
5169
  /**
5170
5170
  * <p>The path and file name of the notebook file for this execution, relative to the path
5171
5171
  * specified for the Amazon EMR Notebook. For example, if you specify a path of
@@ -5177,18 +5177,18 @@ export interface StartNotebookExecutionInput {
5177
5177
  * <code>s3://MyBucket/MyNotebooks/e-ABCDEFGHIJK1234567890ABCD/my_notebook_executions/notebook_execution.ipynb</code>.</p>
5178
5178
  * @public
5179
5179
  */
5180
- RelativePath?: string;
5180
+ RelativePath?: string | undefined;
5181
5181
  /**
5182
5182
  * <p>An optional name for the notebook execution.</p>
5183
5183
  * @public
5184
5184
  */
5185
- NotebookExecutionName?: string;
5185
+ NotebookExecutionName?: string | undefined;
5186
5186
  /**
5187
5187
  * <p>Input parameters in JSON format passed to the Amazon EMR Notebook at runtime for
5188
5188
  * execution.</p>
5189
5189
  * @public
5190
5190
  */
5191
- NotebookParams?: string;
5191
+ NotebookParams?: string | undefined;
5192
5192
  /**
5193
5193
  * <p>Specifies the execution engine (cluster) that runs the notebook execution.</p>
5194
5194
  * @public
@@ -5205,34 +5205,34 @@ export interface StartNotebookExecutionInput {
5205
5205
  * Amazon EMR Notebook for this notebook execution.</p>
5206
5206
  * @public
5207
5207
  */
5208
- NotebookInstanceSecurityGroupId?: string;
5208
+ NotebookInstanceSecurityGroupId?: string | undefined;
5209
5209
  /**
5210
5210
  * <p>A list of tags associated with a notebook execution. Tags are user-defined key-value
5211
5211
  * pairs that consist of a required key string with a maximum of 128 characters and an
5212
5212
  * optional value string with a maximum of 256 characters.</p>
5213
5213
  * @public
5214
5214
  */
5215
- Tags?: Tag[];
5215
+ Tags?: Tag[] | undefined;
5216
5216
  /**
5217
5217
  * <p>The Amazon S3 location for the notebook execution input.</p>
5218
5218
  * @public
5219
5219
  */
5220
- NotebookS3Location?: NotebookS3LocationFromInput;
5220
+ NotebookS3Location?: NotebookS3LocationFromInput | undefined;
5221
5221
  /**
5222
5222
  * <p>The Amazon S3 location for the notebook execution output.</p>
5223
5223
  * @public
5224
5224
  */
5225
- OutputNotebookS3Location?: OutputNotebookS3LocationFromInput;
5225
+ OutputNotebookS3Location?: OutputNotebookS3LocationFromInput | undefined;
5226
5226
  /**
5227
5227
  * <p>The output format for the notebook execution.</p>
5228
5228
  * @public
5229
5229
  */
5230
- OutputNotebookFormat?: OutputNotebookFormat;
5230
+ OutputNotebookFormat?: OutputNotebookFormat | undefined;
5231
5231
  /**
5232
5232
  * <p>The environment variables associated with the notebook execution.</p>
5233
5233
  * @public
5234
5234
  */
5235
- EnvironmentVariables?: Record<string, string>;
5235
+ EnvironmentVariables?: Record<string, string> | undefined;
5236
5236
  }
5237
5237
  /**
5238
5238
  * @public
@@ -5242,7 +5242,7 @@ export interface StartNotebookExecutionOutput {
5242
5242
  * <p>The unique identifier of the notebook execution.</p>
5243
5243
  * @public
5244
5244
  */
5245
- NotebookExecutionId?: string;
5245
+ NotebookExecutionId?: string | undefined;
5246
5246
  }
5247
5247
  /**
5248
5248
  * @public
@@ -5278,12 +5278,12 @@ export interface UpdateStudioInput {
5278
5278
  * <p>A descriptive name for the Amazon EMR Studio.</p>
5279
5279
  * @public
5280
5280
  */
5281
- Name?: string;
5281
+ Name?: string | undefined;
5282
5282
  /**
5283
5283
  * <p>A detailed description to assign to the Amazon EMR Studio.</p>
5284
5284
  * @public
5285
5285
  */
5286
- Description?: string;
5286
+ Description?: string | undefined;
5287
5287
  /**
5288
5288
  * <p>A list of subnet IDs to associate with the Amazon EMR Studio. The list can
5289
5289
  * include new subnet IDs, but must also include all of the subnet IDs previously associated
@@ -5291,17 +5291,17 @@ export interface UpdateStudioInput {
5291
5291
  * The subnets must belong to the same VPC as the Studio. </p>
5292
5292
  * @public
5293
5293
  */
5294
- SubnetIds?: string[];
5294
+ SubnetIds?: string[] | undefined;
5295
5295
  /**
5296
5296
  * <p>The Amazon S3 location to back up Workspaces and notebook files for the Amazon EMR Studio.</p>
5297
5297
  * @public
5298
5298
  */
5299
- DefaultS3Location?: string;
5299
+ DefaultS3Location?: string | undefined;
5300
5300
  /**
5301
5301
  * <p>The KMS key identifier (ARN) used to encrypt Amazon EMR Studio workspace and notebook files when backed up to Amazon S3.</p>
5302
5302
  * @public
5303
5303
  */
5304
- EncryptionKeyArn?: string;
5304
+ EncryptionKeyArn?: string | undefined;
5305
5305
  }
5306
5306
  /**
5307
5307
  * @public
@@ -5319,14 +5319,14 @@ export interface UpdateStudioSessionMappingInput {
5319
5319
  * be specified.</p>
5320
5320
  * @public
5321
5321
  */
5322
- IdentityId?: string;
5322
+ IdentityId?: string | undefined;
5323
5323
  /**
5324
5324
  * <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
5325
5325
  * Reference</i>. Either <code>IdentityName</code> or <code>IdentityId</code> must
5326
5326
  * be specified.</p>
5327
5327
  * @public
5328
5328
  */
5329
- IdentityName?: string;
5329
+ IdentityName?: string | undefined;
5330
5330
  /**
5331
5331
  * <p>Specifies whether the identity to update is a user or a group.</p>
5332
5332
  * @public
@@ -5355,17 +5355,17 @@ export interface Configuration {
5355
5355
  * <p>The classification within a configuration.</p>
5356
5356
  * @public
5357
5357
  */
5358
- Classification?: string;
5358
+ Classification?: string | undefined;
5359
5359
  /**
5360
5360
  * <p>A list of additional configurations to apply within a configuration object.</p>
5361
5361
  * @public
5362
5362
  */
5363
- Configurations?: Configuration[];
5363
+ Configurations?: Configuration[] | undefined;
5364
5364
  /**
5365
5365
  * <p>A set of properties specified within a configuration classification.</p>
5366
5366
  * @public
5367
5367
  */
5368
- Properties?: Record<string, string>;
5368
+ Properties?: Record<string, string> | undefined;
5369
5369
  }
5370
5370
  /**
5371
5371
  * <p>A configuration for Amazon EMR block public access. When
@@ -5394,22 +5394,22 @@ export interface BlockPublicAccessConfiguration {
5394
5394
  * instances, is in the list of <code>PermittedPublicSecurityGroupRuleRanges</code>.</p>
5395
5395
  * @public
5396
5396
  */
5397
- PermittedPublicSecurityGroupRuleRanges?: PortRange[];
5397
+ PermittedPublicSecurityGroupRuleRanges?: PortRange[] | undefined;
5398
5398
  /**
5399
5399
  * <p>The classification within a configuration.</p>
5400
5400
  * @public
5401
5401
  */
5402
- Classification?: string;
5402
+ Classification?: string | undefined;
5403
5403
  /**
5404
5404
  * <p>A list of additional configurations to apply within a configuration object.</p>
5405
5405
  * @public
5406
5406
  */
5407
- Configurations?: Configuration[];
5407
+ Configurations?: Configuration[] | undefined;
5408
5408
  /**
5409
5409
  * <p>A set of properties specified within a configuration classification.</p>
5410
5410
  * @public
5411
5411
  */
5412
- Properties?: Record<string, string>;
5412
+ Properties?: Record<string, string> | undefined;
5413
5413
  }
5414
5414
  /**
5415
5415
  * <p>The detailed description of the cluster.</p>
@@ -5420,24 +5420,24 @@ export interface Cluster {
5420
5420
  * <p>The unique identifier for the cluster.</p>
5421
5421
  * @public
5422
5422
  */
5423
- Id?: string;
5423
+ Id?: string | undefined;
5424
5424
  /**
5425
5425
  * <p>The name of the cluster. This parameter can't contain the characters <, >, $, |, or ` (backtick).</p>
5426
5426
  * @public
5427
5427
  */
5428
- Name?: string;
5428
+ Name?: string | undefined;
5429
5429
  /**
5430
5430
  * <p>The current status details about the cluster.</p>
5431
5431
  * @public
5432
5432
  */
5433
- Status?: ClusterStatus;
5433
+ Status?: ClusterStatus | undefined;
5434
5434
  /**
5435
5435
  * <p>Provides information about the Amazon EC2 instances in a cluster grouped by
5436
5436
  * category. For example, key name, subnet ID, IAM instance profile, and so
5437
5437
  * on.</p>
5438
5438
  * @public
5439
5439
  */
5440
- Ec2InstanceAttributes?: Ec2InstanceAttributes;
5440
+ Ec2InstanceAttributes?: Ec2InstanceAttributes | undefined;
5441
5441
  /**
5442
5442
  * <note>
5443
5443
  * <p>The instance fleet configuration is available only in Amazon EMR releases
@@ -5448,30 +5448,30 @@ export interface Cluster {
5448
5448
  * indicates an instance fleets configuration.</p>
5449
5449
  * @public
5450
5450
  */
5451
- InstanceCollectionType?: InstanceCollectionType;
5451
+ InstanceCollectionType?: InstanceCollectionType | undefined;
5452
5452
  /**
5453
5453
  * <p>The path to the Amazon S3 location where logs for this cluster are
5454
5454
  * stored.</p>
5455
5455
  * @public
5456
5456
  */
5457
- LogUri?: string;
5457
+ LogUri?: string | undefined;
5458
5458
  /**
5459
5459
  * <p> The KMS key used for encrypting log files. This attribute is only
5460
5460
  * available with Amazon EMR 5.30.0 and later, excluding Amazon EMR 6.0.0.
5461
5461
  * </p>
5462
5462
  * @public
5463
5463
  */
5464
- LogEncryptionKmsKeyId?: string;
5464
+ LogEncryptionKmsKeyId?: string | undefined;
5465
5465
  /**
5466
5466
  * <p>The AMI version requested for this cluster.</p>
5467
5467
  * @public
5468
5468
  */
5469
- RequestedAmiVersion?: string;
5469
+ RequestedAmiVersion?: string | undefined;
5470
5470
  /**
5471
5471
  * <p>The AMI version running on this cluster.</p>
5472
5472
  * @public
5473
5473
  */
5474
- RunningAmiVersion?: string;
5474
+ RunningAmiVersion?: string | undefined;
5475
5475
  /**
5476
5476
  * <p>The Amazon EMR release label, which determines the version of open-source
5477
5477
  * application packages installed on the cluster. Release labels are in the form
@@ -5481,24 +5481,24 @@ export interface Cluster {
5481
5481
  * releases version 4.0 and later. Earlier versions use <code>AmiVersion</code>.</p>
5482
5482
  * @public
5483
5483
  */
5484
- ReleaseLabel?: string;
5484
+ ReleaseLabel?: string | undefined;
5485
5485
  /**
5486
5486
  * <p>Specifies whether the cluster should terminate after completing all steps.</p>
5487
5487
  * @public
5488
5488
  */
5489
- AutoTerminate?: boolean;
5489
+ AutoTerminate?: boolean | undefined;
5490
5490
  /**
5491
5491
  * <p>Indicates whether Amazon EMR will lock the cluster to prevent the Amazon EC2 instances from being terminated by an API call or user intervention, or in
5492
5492
  * the event of a cluster error.</p>
5493
5493
  * @public
5494
5494
  */
5495
- TerminationProtected?: boolean;
5495
+ TerminationProtected?: boolean | undefined;
5496
5496
  /**
5497
5497
  * <p>Indicates whether Amazon EMR should gracefully replace Amazon EC2
5498
5498
  * core instances that have degraded within the cluster.</p>
5499
5499
  * @public
5500
5500
  */
5501
- UnhealthyNodeReplacement?: boolean;
5501
+ UnhealthyNodeReplacement?: boolean | undefined;
5502
5502
  /**
5503
5503
  * <p>Indicates whether the cluster is visible to IAM principals in the Amazon Web Services account associated with the cluster. When <code>true</code>, IAM principals in the Amazon Web Services account can perform Amazon EMR cluster
5504
5504
  * actions on the cluster that their IAM policies allow. When
@@ -5511,22 +5511,22 @@ export interface Cluster {
5511
5511
  * <a href="https://docs.aws.amazon.com/cli/latest/reference/emr/create-cluster.html">create-cluster</a> command, or the Amazon Web Services Management Console.</p>
5512
5512
  * @public
5513
5513
  */
5514
- VisibleToAllUsers?: boolean;
5514
+ VisibleToAllUsers?: boolean | undefined;
5515
5515
  /**
5516
5516
  * <p>The applications installed on this cluster.</p>
5517
5517
  * @public
5518
5518
  */
5519
- Applications?: Application[];
5519
+ Applications?: Application[] | undefined;
5520
5520
  /**
5521
5521
  * <p>A list of tags associated with a cluster.</p>
5522
5522
  * @public
5523
5523
  */
5524
- Tags?: Tag[];
5524
+ Tags?: Tag[] | undefined;
5525
5525
  /**
5526
5526
  * <p>The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on your behalf.</p>
5527
5527
  * @public
5528
5528
  */
5529
- ServiceRole?: string;
5529
+ ServiceRole?: string | undefined;
5530
5530
  /**
5531
5531
  * <p>An approximation of the cost of the cluster, represented in m1.small/hours. This value
5532
5532
  * is incremented one time for every hour an m1.small instance runs. Larger instances are
@@ -5535,31 +5535,31 @@ export interface Cluster {
5535
5535
  * only an approximation and does not reflect the actual billing rate.</p>
5536
5536
  * @public
5537
5537
  */
5538
- NormalizedInstanceHours?: number;
5538
+ NormalizedInstanceHours?: number | undefined;
5539
5539
  /**
5540
5540
  * <p>The DNS name of the master node. If the cluster is on a private subnet, this is the
5541
5541
  * private DNS name. On a public subnet, this is the public DNS name.</p>
5542
5542
  * @public
5543
5543
  */
5544
- MasterPublicDnsName?: string;
5544
+ MasterPublicDnsName?: string | undefined;
5545
5545
  /**
5546
5546
  * <p>Applies only to Amazon EMR releases 4.x and later. The list of configurations
5547
5547
  * that are supplied to the Amazon EMR cluster.</p>
5548
5548
  * @public
5549
5549
  */
5550
- Configurations?: Configuration[];
5550
+ Configurations?: Configuration[] | undefined;
5551
5551
  /**
5552
5552
  * <p>The name of the security configuration applied to the cluster.</p>
5553
5553
  * @public
5554
5554
  */
5555
- SecurityConfiguration?: string;
5555
+ SecurityConfiguration?: string | undefined;
5556
5556
  /**
5557
5557
  * <p>An IAM role for automatic scaling policies. The default role is
5558
5558
  * <code>EMR_AutoScaling_DefaultRole</code>. The IAM role provides
5559
5559
  * permissions that the automatic scaling feature requires to launch and terminate Amazon EC2 instances in an instance group.</p>
5560
5560
  * @public
5561
5561
  */
5562
- AutoScalingRole?: string;
5562
+ AutoScalingRole?: string | undefined;
5563
5563
  /**
5564
5564
  * <p>The way that individual Amazon EC2 instances terminate when an automatic
5565
5565
  * scale-in activity occurs or an instance group is resized.
@@ -5573,75 +5573,75 @@ export interface Cluster {
5573
5573
  * HDFS corruption. <code>TERMINATE_AT_TASK_COMPLETION</code> is available only in Amazon EMR releases 4.1.0 and later, and is the default for versions of Amazon EMR earlier than 5.1.0.</p>
5574
5574
  * @public
5575
5575
  */
5576
- ScaleDownBehavior?: ScaleDownBehavior;
5576
+ ScaleDownBehavior?: ScaleDownBehavior | undefined;
5577
5577
  /**
5578
5578
  * <p>Available only in Amazon EMR releases 5.7.0 and later. The ID of a custom Amazon
5579
5579
  * EBS-backed Linux AMI if the cluster uses a custom AMI.</p>
5580
5580
  * @public
5581
5581
  */
5582
- CustomAmiId?: string;
5582
+ CustomAmiId?: string | undefined;
5583
5583
  /**
5584
5584
  * <p>The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is
5585
5585
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x and
5586
5586
  * later.</p>
5587
5587
  * @public
5588
5588
  */
5589
- EbsRootVolumeSize?: number;
5589
+ EbsRootVolumeSize?: number | undefined;
5590
5590
  /**
5591
5591
  * <p>Applies only when <code>CustomAmiID</code> is used. Specifies the type of updates that
5592
5592
  * the Amazon Linux AMI package repositories apply when an instance boots using the
5593
5593
  * AMI.</p>
5594
5594
  * @public
5595
5595
  */
5596
- RepoUpgradeOnBoot?: RepoUpgradeOnBoot;
5596
+ RepoUpgradeOnBoot?: RepoUpgradeOnBoot | undefined;
5597
5597
  /**
5598
5598
  * <p>Attributes for Kerberos configuration when Kerberos authentication is enabled using a
5599
5599
  * security configuration. For more information see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html">Use Kerberos Authentication</a>
5600
5600
  * in the <i>Amazon EMR Management Guide</i>.</p>
5601
5601
  * @public
5602
5602
  */
5603
- KerberosAttributes?: KerberosAttributes;
5603
+ KerberosAttributes?: KerberosAttributes | undefined;
5604
5604
  /**
5605
5605
  * <p>The Amazon Resource Name of the cluster.</p>
5606
5606
  * @public
5607
5607
  */
5608
- ClusterArn?: string;
5608
+ ClusterArn?: string | undefined;
5609
5609
  /**
5610
5610
  * <p> The Amazon Resource Name (ARN) of the Outpost where the cluster is launched. </p>
5611
5611
  * @public
5612
5612
  */
5613
- OutpostArn?: string;
5613
+ OutpostArn?: string | undefined;
5614
5614
  /**
5615
5615
  * <p>Specifies the number of steps that can be executed concurrently.</p>
5616
5616
  * @public
5617
5617
  */
5618
- StepConcurrencyLevel?: number;
5618
+ StepConcurrencyLevel?: number | undefined;
5619
5619
  /**
5620
5620
  * <p>Placement group configured for an Amazon EMR cluster.</p>
5621
5621
  * @public
5622
5622
  */
5623
- PlacementGroups?: PlacementGroupConfig[];
5623
+ PlacementGroups?: PlacementGroupConfig[] | undefined;
5624
5624
  /**
5625
5625
  * <p>The Amazon Linux release specified in a cluster launch RunJobFlow request. If no Amazon
5626
5626
  * Linux release was specified, the default Amazon Linux release is shown in the
5627
5627
  * response.</p>
5628
5628
  * @public
5629
5629
  */
5630
- OSReleaseLabel?: string;
5630
+ OSReleaseLabel?: string | undefined;
5631
5631
  /**
5632
5632
  * <p>The IOPS, of the Amazon EBS root device volume of the Linux AMI that is
5633
5633
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and
5634
5634
  * later.</p>
5635
5635
  * @public
5636
5636
  */
5637
- EbsRootVolumeIops?: number;
5637
+ EbsRootVolumeIops?: number | undefined;
5638
5638
  /**
5639
5639
  * <p>The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is
5640
5640
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and
5641
5641
  * later.</p>
5642
5642
  * @public
5643
5643
  */
5644
- EbsRootVolumeThroughput?: number;
5644
+ EbsRootVolumeThroughput?: number | undefined;
5645
5645
  }
5646
5646
  /**
5647
5647
  * <p>Configuration defining a new instance group.</p>
@@ -5652,12 +5652,12 @@ export interface InstanceGroupConfig {
5652
5652
  * <p>Friendly name given to the instance group.</p>
5653
5653
  * @public
5654
5654
  */
5655
- Name?: string;
5655
+ Name?: string | undefined;
5656
5656
  /**
5657
5657
  * <p>Market type of the Amazon EC2 instances used to create a cluster node.</p>
5658
5658
  * @public
5659
5659
  */
5660
- Market?: MarketType;
5660
+ Market?: MarketType | undefined;
5661
5661
  /**
5662
5662
  * <p>The role of the instance group in the cluster.</p>
5663
5663
  * @public
@@ -5669,7 +5669,7 @@ export interface InstanceGroupConfig {
5669
5669
  * the amount equal to the On-Demand price, or specify an amount in USD.</p>
5670
5670
  * @public
5671
5671
  */
5672
- BidPrice?: string;
5672
+ BidPrice?: string | undefined;
5673
5673
  /**
5674
5674
  * <p>The Amazon EC2 instance type for all instances in the instance group.</p>
5675
5675
  * @public
@@ -5689,13 +5689,13 @@ export interface InstanceGroupConfig {
5689
5689
  * task).</p>
5690
5690
  * @public
5691
5691
  */
5692
- Configurations?: Configuration[];
5692
+ Configurations?: Configuration[] | undefined;
5693
5693
  /**
5694
5694
  * <p>EBS configurations that will be attached to each Amazon EC2 instance in the
5695
5695
  * instance group.</p>
5696
5696
  * @public
5697
5697
  */
5698
- EbsConfiguration?: EbsConfiguration;
5698
+ EbsConfiguration?: EbsConfiguration | undefined;
5699
5699
  /**
5700
5700
  * <p>An automatic scaling policy for a core instance group or task instance group in an
5701
5701
  * Amazon EMR cluster. The automatic scaling policy defines how an instance group
@@ -5703,12 +5703,12 @@ export interface InstanceGroupConfig {
5703
5703
  * CloudWatch metric. See <a>PutAutoScalingPolicy</a>.</p>
5704
5704
  * @public
5705
5705
  */
5706
- AutoScalingPolicy?: AutoScalingPolicy;
5706
+ AutoScalingPolicy?: AutoScalingPolicy | undefined;
5707
5707
  /**
5708
5708
  * <p>The custom AMI ID to use for the provisioned instance group.</p>
5709
5709
  * @public
5710
5710
  */
5711
- CustomAmiId?: string;
5711
+ CustomAmiId?: string | undefined;
5712
5712
  }
5713
5713
  /**
5714
5714
  * <p>Modify the size or configurations of an instance group.</p>
@@ -5724,28 +5724,28 @@ export interface InstanceGroupModifyConfig {
5724
5724
  * <p>Target size for the instance group.</p>
5725
5725
  * @public
5726
5726
  */
5727
- InstanceCount?: number;
5727
+ InstanceCount?: number | undefined;
5728
5728
  /**
5729
5729
  * <p>The Amazon EC2 InstanceIds to terminate. After you terminate the instances, the
5730
5730
  * instance group will not return to its original requested size.</p>
5731
5731
  * @public
5732
5732
  */
5733
- EC2InstanceIdsToTerminate?: string[];
5733
+ EC2InstanceIdsToTerminate?: string[] | undefined;
5734
5734
  /**
5735
5735
  * <p>Policy for customizing shrink operations.</p>
5736
5736
  * @public
5737
5737
  */
5738
- ShrinkPolicy?: ShrinkPolicy;
5738
+ ShrinkPolicy?: ShrinkPolicy | undefined;
5739
5739
  /**
5740
5740
  * <p>Type of reconfiguration requested. Valid values are MERGE and OVERWRITE.</p>
5741
5741
  * @public
5742
5742
  */
5743
- ReconfigurationType?: ReconfigurationType;
5743
+ ReconfigurationType?: ReconfigurationType | undefined;
5744
5744
  /**
5745
5745
  * <p>A list of new or modified configurations to apply for an instance group.</p>
5746
5746
  * @public
5747
5747
  */
5748
- Configurations?: Configuration[];
5748
+ Configurations?: Configuration[] | undefined;
5749
5749
  }
5750
5750
  /**
5751
5751
  * <p>An instance type configuration for each instance type in an instance fleet, which
@@ -5774,7 +5774,7 @@ export interface InstanceTypeConfig {
5774
5774
  * Defaults to 1 if not specified. </p>
5775
5775
  * @public
5776
5776
  */
5777
- WeightedCapacity?: number;
5777
+ WeightedCapacity?: number | undefined;
5778
5778
  /**
5779
5779
  * <p>The bid price for each Amazon EC2 Spot Instance type as defined by
5780
5780
  * <code>InstanceType</code>. Expressed in USD. If neither <code>BidPrice</code> nor
@@ -5782,7 +5782,7 @@ export interface InstanceTypeConfig {
5782
5782
  * <code>BidPriceAsPercentageOfOnDemandPrice</code> defaults to 100%. </p>
5783
5783
  * @public
5784
5784
  */
5785
- BidPrice?: string;
5785
+ BidPrice?: string | undefined;
5786
5786
  /**
5787
5787
  * <p>The bid price, as a percentage of On-Demand price, for each Amazon EC2 Spot
5788
5788
  * Instance as defined by <code>InstanceType</code>. Expressed as a number (for example, 20
@@ -5791,30 +5791,30 @@ export interface InstanceTypeConfig {
5791
5791
  * <code>BidPriceAsPercentageOfOnDemandPrice</code> defaults to 100%.</p>
5792
5792
  * @public
5793
5793
  */
5794
- BidPriceAsPercentageOfOnDemandPrice?: number;
5794
+ BidPriceAsPercentageOfOnDemandPrice?: number | undefined;
5795
5795
  /**
5796
5796
  * <p>The configuration of Amazon Elastic Block Store (Amazon EBS) attached to each
5797
5797
  * instance as defined by <code>InstanceType</code>. </p>
5798
5798
  * @public
5799
5799
  */
5800
- EbsConfiguration?: EbsConfiguration;
5800
+ EbsConfiguration?: EbsConfiguration | undefined;
5801
5801
  /**
5802
5802
  * <p>A configuration classification that applies when provisioning cluster instances, which
5803
5803
  * can include configurations for applications and software that run on the cluster.</p>
5804
5804
  * @public
5805
5805
  */
5806
- Configurations?: Configuration[];
5806
+ Configurations?: Configuration[] | undefined;
5807
5807
  /**
5808
5808
  * <p>The custom AMI ID to use for the instance type.</p>
5809
5809
  * @public
5810
5810
  */
5811
- CustomAmiId?: string;
5811
+ CustomAmiId?: string | undefined;
5812
5812
  /**
5813
5813
  * <p>The priority at which Amazon EMR launches the Amazon EC2 instances with this instance type.
5814
5814
  * Priority starts at 0, which is the highest priority. Amazon EMR considers the highest priority first.</p>
5815
5815
  * @public
5816
5816
  */
5817
- Priority?: number;
5817
+ Priority?: number | undefined;
5818
5818
  }
5819
5819
  /**
5820
5820
  * <p>The configuration specification for each instance type in an instance fleet.</p>
@@ -5829,7 +5829,7 @@ export interface InstanceTypeSpecification {
5829
5829
  * <p>The Amazon EC2 instance type, for example <code>m3.xlarge</code>.</p>
5830
5830
  * @public
5831
5831
  */
5832
- InstanceType?: string;
5832
+ InstanceType?: string | undefined;
5833
5833
  /**
5834
5834
  * <p>The number of units that a provisioned instance of this type provides toward fulfilling
5835
5835
  * the target capacities defined in <a>InstanceFleetConfig</a>. Capacity values
@@ -5837,49 +5837,49 @@ export interface InstanceTypeSpecification {
5837
5837
  * default value is 1.</p>
5838
5838
  * @public
5839
5839
  */
5840
- WeightedCapacity?: number;
5840
+ WeightedCapacity?: number | undefined;
5841
5841
  /**
5842
5842
  * <p>The bid price for each Amazon EC2 Spot Instance type as defined by
5843
5843
  * <code>InstanceType</code>. Expressed in USD.</p>
5844
5844
  * @public
5845
5845
  */
5846
- BidPrice?: string;
5846
+ BidPrice?: string | undefined;
5847
5847
  /**
5848
5848
  * <p>The bid price, as a percentage of On-Demand price, for each Amazon EC2 Spot
5849
5849
  * Instance as defined by <code>InstanceType</code>. Expressed as a number (for example, 20
5850
5850
  * specifies 20%).</p>
5851
5851
  * @public
5852
5852
  */
5853
- BidPriceAsPercentageOfOnDemandPrice?: number;
5853
+ BidPriceAsPercentageOfOnDemandPrice?: number | undefined;
5854
5854
  /**
5855
5855
  * <p>A configuration classification that applies when provisioning cluster instances, which
5856
5856
  * can include configurations for applications and software bundled with Amazon EMR.</p>
5857
5857
  * @public
5858
5858
  */
5859
- Configurations?: Configuration[];
5859
+ Configurations?: Configuration[] | undefined;
5860
5860
  /**
5861
5861
  * <p>The configuration of Amazon Elastic Block Store (Amazon EBS) attached to each
5862
5862
  * instance as defined by <code>InstanceType</code>.</p>
5863
5863
  * @public
5864
5864
  */
5865
- EbsBlockDevices?: EbsBlockDevice[];
5865
+ EbsBlockDevices?: EbsBlockDevice[] | undefined;
5866
5866
  /**
5867
5867
  * <p>Evaluates to <code>TRUE</code> when the specified <code>InstanceType</code> is
5868
5868
  * EBS-optimized.</p>
5869
5869
  * @public
5870
5870
  */
5871
- EbsOptimized?: boolean;
5871
+ EbsOptimized?: boolean | undefined;
5872
5872
  /**
5873
5873
  * <p>The custom AMI ID to use for the instance type.</p>
5874
5874
  * @public
5875
5875
  */
5876
- CustomAmiId?: string;
5876
+ CustomAmiId?: string | undefined;
5877
5877
  /**
5878
5878
  * <p>The priority at which Amazon EMR launches the Amazon EC2 instances with this instance type.
5879
5879
  * Priority starts at 0, which is the highest priority. Amazon EMR considers the highest priority first.</p>
5880
5880
  * @public
5881
5881
  */
5882
- Priority?: number;
5882
+ Priority?: number | undefined;
5883
5883
  }
5884
5884
  /**
5885
5885
  * <p>This output contains the description of the cluster.</p>
@@ -5890,7 +5890,7 @@ export interface DescribeClusterOutput {
5890
5890
  * <p>This output contains the details for the requested cluster.</p>
5891
5891
  * @public
5892
5892
  */
5893
- Cluster?: Cluster;
5893
+ Cluster?: Cluster | undefined;
5894
5894
  }
5895
5895
  /**
5896
5896
  * @public
@@ -5983,23 +5983,23 @@ export interface InstanceFleet {
5983
5983
  * <p>The unique identifier of the instance fleet.</p>
5984
5984
  * @public
5985
5985
  */
5986
- Id?: string;
5986
+ Id?: string | undefined;
5987
5987
  /**
5988
5988
  * <p>A friendly name for the instance fleet.</p>
5989
5989
  * @public
5990
5990
  */
5991
- Name?: string;
5991
+ Name?: string | undefined;
5992
5992
  /**
5993
5993
  * <p>The current status of the instance fleet. </p>
5994
5994
  * @public
5995
5995
  */
5996
- Status?: InstanceFleetStatus;
5996
+ Status?: InstanceFleetStatus | undefined;
5997
5997
  /**
5998
5998
  * <p>The node type that the instance fleet hosts. Valid values are MASTER, CORE, or TASK.
5999
5999
  * </p>
6000
6000
  * @public
6001
6001
  */
6002
- InstanceFleetType?: InstanceFleetType;
6002
+ InstanceFleetType?: InstanceFleetType | undefined;
6003
6003
  /**
6004
6004
  * <p>The target capacity of On-Demand units for the instance fleet, which determines how many
6005
6005
  * On-Demand Instances to provision. When the instance fleet launches, Amazon EMR
@@ -6021,7 +6021,7 @@ export interface InstanceFleet {
6021
6021
  * </note>
6022
6022
  * @public
6023
6023
  */
6024
- TargetOnDemandCapacity?: number;
6024
+ TargetOnDemandCapacity?: number | undefined;
6025
6025
  /**
6026
6026
  * <p>The target capacity of Spot units for the instance fleet, which determines how many Spot
6027
6027
  * Instances to provision. When the instance fleet launches, Amazon EMR tries to
@@ -6043,42 +6043,42 @@ export interface InstanceFleet {
6043
6043
  * </note>
6044
6044
  * @public
6045
6045
  */
6046
- TargetSpotCapacity?: number;
6046
+ TargetSpotCapacity?: number | undefined;
6047
6047
  /**
6048
6048
  * <p>The number of On-Demand units that have been provisioned for the instance fleet to
6049
6049
  * fulfill <code>TargetOnDemandCapacity</code>. This provisioned capacity might be less than
6050
6050
  * or greater than <code>TargetOnDemandCapacity</code>.</p>
6051
6051
  * @public
6052
6052
  */
6053
- ProvisionedOnDemandCapacity?: number;
6053
+ ProvisionedOnDemandCapacity?: number | undefined;
6054
6054
  /**
6055
6055
  * <p>The number of Spot units that have been provisioned for this instance fleet to fulfill
6056
6056
  * <code>TargetSpotCapacity</code>. This provisioned capacity might be less than or greater
6057
6057
  * than <code>TargetSpotCapacity</code>.</p>
6058
6058
  * @public
6059
6059
  */
6060
- ProvisionedSpotCapacity?: number;
6060
+ ProvisionedSpotCapacity?: number | undefined;
6061
6061
  /**
6062
6062
  * <p>An array of specifications for the instance types that comprise an instance
6063
6063
  * fleet.</p>
6064
6064
  * @public
6065
6065
  */
6066
- InstanceTypeSpecifications?: InstanceTypeSpecification[];
6066
+ InstanceTypeSpecifications?: InstanceTypeSpecification[] | undefined;
6067
6067
  /**
6068
6068
  * <p>Describes the launch specification for an instance fleet. </p>
6069
6069
  * @public
6070
6070
  */
6071
- LaunchSpecifications?: InstanceFleetProvisioningSpecifications;
6071
+ LaunchSpecifications?: InstanceFleetProvisioningSpecifications | undefined;
6072
6072
  /**
6073
6073
  * <p>The resize specification for the instance fleet.</p>
6074
6074
  * @public
6075
6075
  */
6076
- ResizeSpecifications?: InstanceFleetResizingSpecifications;
6076
+ ResizeSpecifications?: InstanceFleetResizingSpecifications | undefined;
6077
6077
  /**
6078
6078
  * <p>Reserved.</p>
6079
6079
  * @public
6080
6080
  */
6081
- Context?: string;
6081
+ Context?: string | undefined;
6082
6082
  }
6083
6083
  /**
6084
6084
  * <p>The configuration that defines an instance fleet.</p>
@@ -6093,7 +6093,7 @@ export interface InstanceFleetConfig {
6093
6093
  * <p>The friendly name of the instance fleet.</p>
6094
6094
  * @public
6095
6095
  */
6096
- Name?: string;
6096
+ Name?: string | undefined;
6097
6097
  /**
6098
6098
  * <p>The node type that the instance fleet hosts. Valid values are MASTER, CORE, and
6099
6099
  * TASK.</p>
@@ -6120,7 +6120,7 @@ export interface InstanceFleetConfig {
6120
6120
  * </note>
6121
6121
  * @public
6122
6122
  */
6123
- TargetOnDemandCapacity?: number;
6123
+ TargetOnDemandCapacity?: number | undefined;
6124
6124
  /**
6125
6125
  * <p>The target capacity of Spot units for the instance fleet, which determines how many Spot
6126
6126
  * Instances to provision. When the instance fleet launches, Amazon EMR tries to
@@ -6141,28 +6141,28 @@ export interface InstanceFleetConfig {
6141
6141
  * </note>
6142
6142
  * @public
6143
6143
  */
6144
- TargetSpotCapacity?: number;
6144
+ TargetSpotCapacity?: number | undefined;
6145
6145
  /**
6146
6146
  * <p>The instance type configurations that define the Amazon EC2 instances in the
6147
6147
  * instance fleet.</p>
6148
6148
  * @public
6149
6149
  */
6150
- InstanceTypeConfigs?: InstanceTypeConfig[];
6150
+ InstanceTypeConfigs?: InstanceTypeConfig[] | undefined;
6151
6151
  /**
6152
6152
  * <p>The launch specification for the instance fleet.</p>
6153
6153
  * @public
6154
6154
  */
6155
- LaunchSpecifications?: InstanceFleetProvisioningSpecifications;
6155
+ LaunchSpecifications?: InstanceFleetProvisioningSpecifications | undefined;
6156
6156
  /**
6157
6157
  * <p>The resize specification for the instance fleet.</p>
6158
6158
  * @public
6159
6159
  */
6160
- ResizeSpecifications?: InstanceFleetResizingSpecifications;
6160
+ ResizeSpecifications?: InstanceFleetResizingSpecifications | undefined;
6161
6161
  /**
6162
6162
  * <p>Reserved.</p>
6163
6163
  * @public
6164
6164
  */
6165
- Context?: string;
6165
+ Context?: string | undefined;
6166
6166
  }
6167
6167
  /**
6168
6168
  * <p>Configuration parameters for an instance fleet modification request.</p>
@@ -6183,29 +6183,29 @@ export interface InstanceFleetModifyConfig {
6183
6183
  * <a>InstanceFleetConfig$TargetOnDemandCapacity</a>.</p>
6184
6184
  * @public
6185
6185
  */
6186
- TargetOnDemandCapacity?: number;
6186
+ TargetOnDemandCapacity?: number | undefined;
6187
6187
  /**
6188
6188
  * <p>The target capacity of Spot units for the instance fleet. For more information, see
6189
6189
  * <a>InstanceFleetConfig$TargetSpotCapacity</a>.</p>
6190
6190
  * @public
6191
6191
  */
6192
- TargetSpotCapacity?: number;
6192
+ TargetSpotCapacity?: number | undefined;
6193
6193
  /**
6194
6194
  * <p>The resize specification for the instance fleet.</p>
6195
6195
  * @public
6196
6196
  */
6197
- ResizeSpecifications?: InstanceFleetResizingSpecifications;
6197
+ ResizeSpecifications?: InstanceFleetResizingSpecifications | undefined;
6198
6198
  /**
6199
6199
  * <p>An array of InstanceTypeConfig objects that specify how Amazon EMR provisions Amazon EC2 instances
6200
6200
  * when it fulfills On-Demand and Spot capacities. For more information, see <a href="https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceTypeConfig.html">InstanceTypeConfig</a>.</p>
6201
6201
  * @public
6202
6202
  */
6203
- InstanceTypeConfigs?: InstanceTypeConfig[];
6203
+ InstanceTypeConfigs?: InstanceTypeConfig[] | undefined;
6204
6204
  /**
6205
6205
  * <p>Reserved.</p>
6206
6206
  * @public
6207
6207
  */
6208
- Context?: string;
6208
+ Context?: string | undefined;
6209
6209
  }
6210
6210
  /**
6211
6211
  * <p>Change the size of some instance groups.</p>
@@ -6216,12 +6216,12 @@ export interface ModifyInstanceGroupsInput {
6216
6216
  * <p>The ID of the cluster to which the instance group belongs.</p>
6217
6217
  * @public
6218
6218
  */
6219
- ClusterId?: string;
6219
+ ClusterId?: string | undefined;
6220
6220
  /**
6221
6221
  * <p>Instance groups to change.</p>
6222
6222
  * @public
6223
6223
  */
6224
- InstanceGroups?: InstanceGroupModifyConfig[];
6224
+ InstanceGroups?: InstanceGroupModifyConfig[] | undefined;
6225
6225
  }
6226
6226
  /**
6227
6227
  * @public
@@ -6248,50 +6248,50 @@ export interface InstanceGroup {
6248
6248
  * <p>The identifier of the instance group.</p>
6249
6249
  * @public
6250
6250
  */
6251
- Id?: string;
6251
+ Id?: string | undefined;
6252
6252
  /**
6253
6253
  * <p>The name of the instance group.</p>
6254
6254
  * @public
6255
6255
  */
6256
- Name?: string;
6256
+ Name?: string | undefined;
6257
6257
  /**
6258
6258
  * <p>The marketplace to provision instances for this group. Valid values are ON_DEMAND or
6259
6259
  * SPOT.</p>
6260
6260
  * @public
6261
6261
  */
6262
- Market?: MarketType;
6262
+ Market?: MarketType | undefined;
6263
6263
  /**
6264
6264
  * <p>The type of the instance group. Valid values are MASTER, CORE or TASK.</p>
6265
6265
  * @public
6266
6266
  */
6267
- InstanceGroupType?: InstanceGroupType;
6267
+ InstanceGroupType?: InstanceGroupType | undefined;
6268
6268
  /**
6269
6269
  * <p>If specified, indicates that the instance group uses Spot Instances. This is the maximum
6270
6270
  * price you are willing to pay for Spot Instances. Specify <code>OnDemandPrice</code> to set
6271
6271
  * the amount equal to the On-Demand price, or specify an amount in USD.</p>
6272
6272
  * @public
6273
6273
  */
6274
- BidPrice?: string;
6274
+ BidPrice?: string | undefined;
6275
6275
  /**
6276
6276
  * <p>The Amazon EC2 instance type for all instances in the instance group.</p>
6277
6277
  * @public
6278
6278
  */
6279
- InstanceType?: string;
6279
+ InstanceType?: string | undefined;
6280
6280
  /**
6281
6281
  * <p>The target number of instances for the instance group.</p>
6282
6282
  * @public
6283
6283
  */
6284
- RequestedInstanceCount?: number;
6284
+ RequestedInstanceCount?: number | undefined;
6285
6285
  /**
6286
6286
  * <p>The number of instances currently running in this instance group.</p>
6287
6287
  * @public
6288
6288
  */
6289
- RunningInstanceCount?: number;
6289
+ RunningInstanceCount?: number | undefined;
6290
6290
  /**
6291
6291
  * <p>The current status of the instance group.</p>
6292
6292
  * @public
6293
6293
  */
6294
- Status?: InstanceGroupStatus;
6294
+ Status?: InstanceGroupStatus | undefined;
6295
6295
  /**
6296
6296
  * <note>
6297
6297
  * <p>Amazon EMR releases 4.x or later.</p>
@@ -6301,41 +6301,41 @@ export interface InstanceGroup {
6301
6301
  * task).</p>
6302
6302
  * @public
6303
6303
  */
6304
- Configurations?: Configuration[];
6304
+ Configurations?: Configuration[] | undefined;
6305
6305
  /**
6306
6306
  * <p>The version number of the requested configuration specification for this instance
6307
6307
  * group.</p>
6308
6308
  * @public
6309
6309
  */
6310
- ConfigurationsVersion?: number;
6310
+ ConfigurationsVersion?: number | undefined;
6311
6311
  /**
6312
6312
  * <p>A list of configurations that were successfully applied for an instance group last
6313
6313
  * time.</p>
6314
6314
  * @public
6315
6315
  */
6316
- LastSuccessfullyAppliedConfigurations?: Configuration[];
6316
+ LastSuccessfullyAppliedConfigurations?: Configuration[] | undefined;
6317
6317
  /**
6318
6318
  * <p>The version number of a configuration specification that was successfully applied for an
6319
6319
  * instance group last time. </p>
6320
6320
  * @public
6321
6321
  */
6322
- LastSuccessfullyAppliedConfigurationsVersion?: number;
6322
+ LastSuccessfullyAppliedConfigurationsVersion?: number | undefined;
6323
6323
  /**
6324
6324
  * <p>The EBS block devices that are mapped to this instance group.</p>
6325
6325
  * @public
6326
6326
  */
6327
- EbsBlockDevices?: EbsBlockDevice[];
6327
+ EbsBlockDevices?: EbsBlockDevice[] | undefined;
6328
6328
  /**
6329
6329
  * <p>If the instance group is EBS-optimized. An Amazon EBS-optimized instance uses an
6330
6330
  * optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.</p>
6331
6331
  * @public
6332
6332
  */
6333
- EbsOptimized?: boolean;
6333
+ EbsOptimized?: boolean | undefined;
6334
6334
  /**
6335
6335
  * <p>Policy for customizing shrink operations.</p>
6336
6336
  * @public
6337
6337
  */
6338
- ShrinkPolicy?: ShrinkPolicy;
6338
+ ShrinkPolicy?: ShrinkPolicy | undefined;
6339
6339
  /**
6340
6340
  * <p>An automatic scaling policy for a core instance group or task instance group in an
6341
6341
  * Amazon EMR cluster. The automatic scaling policy defines how an instance group
@@ -6343,12 +6343,12 @@ export interface InstanceGroup {
6343
6343
  * CloudWatch metric. See PutAutoScalingPolicy.</p>
6344
6344
  * @public
6345
6345
  */
6346
- AutoScalingPolicy?: AutoScalingPolicyDescription;
6346
+ AutoScalingPolicy?: AutoScalingPolicyDescription | undefined;
6347
6347
  /**
6348
6348
  * <p>The custom AMI ID to use for the provisioned instance group.</p>
6349
6349
  * @public
6350
6350
  */
6351
- CustomAmiId?: string;
6351
+ CustomAmiId?: string | undefined;
6352
6352
  }
6353
6353
  /**
6354
6354
  * @public
@@ -6373,12 +6373,12 @@ export interface ListInstanceFleetsOutput {
6373
6373
  * <p>The list of instance fleets for the cluster and given filters.</p>
6374
6374
  * @public
6375
6375
  */
6376
- InstanceFleets?: InstanceFleet[];
6376
+ InstanceFleets?: InstanceFleet[] | undefined;
6377
6377
  /**
6378
6378
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
6379
6379
  * @public
6380
6380
  */
6381
- Marker?: string;
6381
+ Marker?: string | undefined;
6382
6382
  }
6383
6383
  /**
6384
6384
  * <p>This input determines which instance groups to retrieve.</p>
@@ -6389,12 +6389,12 @@ export interface ListInstanceGroupsOutput {
6389
6389
  * <p>The list of instance groups for the cluster and given filters.</p>
6390
6390
  * @public
6391
6391
  */
6392
- InstanceGroups?: InstanceGroup[];
6392
+ InstanceGroups?: InstanceGroup[] | undefined;
6393
6393
  /**
6394
6394
  * <p>The pagination token that indicates the next set of results to retrieve.</p>
6395
6395
  * @public
6396
6396
  */
6397
- Marker?: string;
6397
+ Marker?: string | undefined;
6398
6398
  }
6399
6399
  /**
6400
6400
  * <p>A description of the Amazon EC2 instance on which the cluster (job flow) runs. A
@@ -6409,22 +6409,22 @@ export interface JobFlowInstancesConfig {
6409
6409
  * <p>The Amazon EC2 instance type of the master node.</p>
6410
6410
  * @public
6411
6411
  */
6412
- MasterInstanceType?: string;
6412
+ MasterInstanceType?: string | undefined;
6413
6413
  /**
6414
6414
  * <p>The Amazon EC2 instance type of the core and task nodes.</p>
6415
6415
  * @public
6416
6416
  */
6417
- SlaveInstanceType?: string;
6417
+ SlaveInstanceType?: string | undefined;
6418
6418
  /**
6419
6419
  * <p>The number of Amazon EC2 instances in the cluster.</p>
6420
6420
  * @public
6421
6421
  */
6422
- InstanceCount?: number;
6422
+ InstanceCount?: number | undefined;
6423
6423
  /**
6424
6424
  * <p>Configuration for the instance groups in a cluster.</p>
6425
6425
  * @public
6426
6426
  */
6427
- InstanceGroups?: InstanceGroupConfig[];
6427
+ InstanceGroups?: InstanceGroupConfig[] | undefined;
6428
6428
  /**
6429
6429
  * <note>
6430
6430
  * <p>The instance fleet configuration is available only in Amazon EMR releases
@@ -6434,18 +6434,18 @@ export interface JobFlowInstancesConfig {
6434
6434
  * use the instance fleet configuration.</p>
6435
6435
  * @public
6436
6436
  */
6437
- InstanceFleets?: InstanceFleetConfig[];
6437
+ InstanceFleets?: InstanceFleetConfig[] | undefined;
6438
6438
  /**
6439
6439
  * <p>The name of the Amazon EC2 key pair that can be used to connect to the master
6440
6440
  * node using SSH as the user called "hadoop."</p>
6441
6441
  * @public
6442
6442
  */
6443
- Ec2KeyName?: string;
6443
+ Ec2KeyName?: string | undefined;
6444
6444
  /**
6445
6445
  * <p>The Availability Zone in which the cluster runs.</p>
6446
6446
  * @public
6447
6447
  */
6448
- Placement?: PlacementType;
6448
+ Placement?: PlacementType | undefined;
6449
6449
  /**
6450
6450
  * <p>Specifies whether the cluster should remain available after completing all steps.
6451
6451
  * Defaults to <code>false</code>. For more information about configuring cluster termination,
@@ -6453,20 +6453,20 @@ export interface JobFlowInstancesConfig {
6453
6453
  * Guide</i>.</p>
6454
6454
  * @public
6455
6455
  */
6456
- KeepJobFlowAliveWhenNoSteps?: boolean;
6456
+ KeepJobFlowAliveWhenNoSteps?: boolean | undefined;
6457
6457
  /**
6458
6458
  * <p>Specifies whether to lock the cluster to prevent the Amazon EC2 instances from
6459
6459
  * being terminated by API call, user intervention, or in the event of a job-flow
6460
6460
  * error.</p>
6461
6461
  * @public
6462
6462
  */
6463
- TerminationProtected?: boolean;
6463
+ TerminationProtected?: boolean | undefined;
6464
6464
  /**
6465
6465
  * <p>Indicates whether Amazon EMR should gracefully replace core nodes
6466
6466
  * that have degraded within the cluster.</p>
6467
6467
  * @public
6468
6468
  */
6469
- UnhealthyNodeReplacement?: boolean;
6469
+ UnhealthyNodeReplacement?: boolean | undefined;
6470
6470
  /**
6471
6471
  * <p>Applies only to Amazon EMR release versions earlier than 4.0. The Hadoop version
6472
6472
  * for the cluster. Valid inputs are "0.18" (no longer maintained), "0.20" (no longer
@@ -6476,7 +6476,7 @@ export interface JobFlowInstancesConfig {
6476
6476
  * version is used.</p>
6477
6477
  * @public
6478
6478
  */
6479
- HadoopVersion?: string;
6479
+ HadoopVersion?: string | undefined;
6480
6480
  /**
6481
6481
  * <p>Applies to clusters that use the uniform instance group configuration. To launch the
6482
6482
  * cluster in Amazon Virtual Private Cloud (Amazon VPC), set this parameter to the
@@ -6485,7 +6485,7 @@ export interface JobFlowInstancesConfig {
6485
6485
  * EC2-Classic.</p>
6486
6486
  * @public
6487
6487
  */
6488
- Ec2SubnetId?: string;
6488
+ Ec2SubnetId?: string | undefined;
6489
6489
  /**
6490
6490
  * <p>Applies to clusters that use the instance fleet configuration. When multiple Amazon EC2 subnet IDs are specified, Amazon EMR evaluates them and launches
6491
6491
  * instances in the optimal subnet.</p>
@@ -6495,38 +6495,38 @@ export interface JobFlowInstancesConfig {
6495
6495
  * </note>
6496
6496
  * @public
6497
6497
  */
6498
- Ec2SubnetIds?: string[];
6498
+ Ec2SubnetIds?: string[] | undefined;
6499
6499
  /**
6500
6500
  * <p>The identifier of the Amazon EC2 security group for the master node. If you
6501
6501
  * specify <code>EmrManagedMasterSecurityGroup</code>, you must also specify
6502
6502
  * <code>EmrManagedSlaveSecurityGroup</code>.</p>
6503
6503
  * @public
6504
6504
  */
6505
- EmrManagedMasterSecurityGroup?: string;
6505
+ EmrManagedMasterSecurityGroup?: string | undefined;
6506
6506
  /**
6507
6507
  * <p>The identifier of the Amazon EC2 security group for the core and task nodes. If
6508
6508
  * you specify <code>EmrManagedSlaveSecurityGroup</code>, you must also specify
6509
6509
  * <code>EmrManagedMasterSecurityGroup</code>.</p>
6510
6510
  * @public
6511
6511
  */
6512
- EmrManagedSlaveSecurityGroup?: string;
6512
+ EmrManagedSlaveSecurityGroup?: string | undefined;
6513
6513
  /**
6514
6514
  * <p>The identifier of the Amazon EC2 security group for the Amazon EMR
6515
6515
  * service to access clusters in VPC private subnets.</p>
6516
6516
  * @public
6517
6517
  */
6518
- ServiceAccessSecurityGroup?: string;
6518
+ ServiceAccessSecurityGroup?: string | undefined;
6519
6519
  /**
6520
6520
  * <p>A list of additional Amazon EC2 security group IDs for the master node.</p>
6521
6521
  * @public
6522
6522
  */
6523
- AdditionalMasterSecurityGroups?: string[];
6523
+ AdditionalMasterSecurityGroups?: string[] | undefined;
6524
6524
  /**
6525
6525
  * <p>A list of additional Amazon EC2 security group IDs for the core and task
6526
6526
  * nodes.</p>
6527
6527
  * @public
6528
6528
  */
6529
- AdditionalSlaveSecurityGroups?: string[];
6529
+ AdditionalSlaveSecurityGroups?: string[] | undefined;
6530
6530
  }
6531
6531
  /**
6532
6532
  * <p> Input to the <a>RunJobFlow</a> operation. </p>
@@ -6543,26 +6543,26 @@ export interface RunJobFlowInput {
6543
6543
  * not provided, logs are not created.</p>
6544
6544
  * @public
6545
6545
  */
6546
- LogUri?: string;
6546
+ LogUri?: string | undefined;
6547
6547
  /**
6548
6548
  * <p>The KMS key used for encrypting log files. If a value is not
6549
6549
  * provided, the logs remain encrypted by AES-256. This attribute is only available with
6550
6550
  * Amazon EMR releases 5.30.0 and later, excluding Amazon EMR 6.0.0.</p>
6551
6551
  * @public
6552
6552
  */
6553
- LogEncryptionKmsKeyId?: string;
6553
+ LogEncryptionKmsKeyId?: string | undefined;
6554
6554
  /**
6555
6555
  * <p>A JSON string for selecting additional features.</p>
6556
6556
  * @public
6557
6557
  */
6558
- AdditionalInfo?: string;
6558
+ AdditionalInfo?: string | undefined;
6559
6559
  /**
6560
6560
  * <p>Applies only to Amazon EMR AMI versions 3.x and 2.x. For Amazon EMR
6561
6561
  * releases 4.0 and later, <code>ReleaseLabel</code> is used. To specify a custom AMI, use
6562
6562
  * <code>CustomAmiID</code>.</p>
6563
6563
  * @public
6564
6564
  */
6565
- AmiVersion?: string;
6565
+ AmiVersion?: string | undefined;
6566
6566
  /**
6567
6567
  * <p>The Amazon EMR release label, which determines the version of open-source
6568
6568
  * application packages installed on the cluster. Release labels are in the form
@@ -6572,7 +6572,7 @@ export interface RunJobFlowInput {
6572
6572
  * releases version 4.0 and later. Earlier versions use <code>AmiVersion</code>.</p>
6573
6573
  * @public
6574
6574
  */
6575
- ReleaseLabel?: string;
6575
+ ReleaseLabel?: string | undefined;
6576
6576
  /**
6577
6577
  * <p>A specification of the number and type of Amazon EC2 instances.</p>
6578
6578
  * @public
@@ -6582,12 +6582,12 @@ export interface RunJobFlowInput {
6582
6582
  * <p>A list of steps to run.</p>
6583
6583
  * @public
6584
6584
  */
6585
- Steps?: StepConfig[];
6585
+ Steps?: StepConfig[] | undefined;
6586
6586
  /**
6587
6587
  * <p>A list of bootstrap actions to run before Hadoop starts on the cluster nodes.</p>
6588
6588
  * @public
6589
6589
  */
6590
- BootstrapActions?: BootstrapActionConfig[];
6590
+ BootstrapActions?: BootstrapActionConfig[] | undefined;
6591
6591
  /**
6592
6592
  * <note>
6593
6593
  * <p>For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and
@@ -6605,7 +6605,7 @@ export interface RunJobFlowInput {
6605
6605
  * </ul>
6606
6606
  * @public
6607
6607
  */
6608
- SupportedProducts?: string[];
6608
+ SupportedProducts?: string[] | undefined;
6609
6609
  /**
6610
6610
  * <note>
6611
6611
  * <p>For Amazon EMR releases 3.x and 2.x. For Amazon EMR releases 4.x and
@@ -6646,7 +6646,7 @@ export interface RunJobFlowInput {
6646
6646
  * </ul>
6647
6647
  * @public
6648
6648
  */
6649
- NewSupportedProducts?: SupportedProductConfig[];
6649
+ NewSupportedProducts?: SupportedProductConfig[] | undefined;
6650
6650
  /**
6651
6651
  * <p>Applies to Amazon EMR releases 4.0 and later. A case-insensitive list of
6652
6652
  * applications for Amazon EMR to install and configure when launching the cluster.
@@ -6655,13 +6655,13 @@ export interface RunJobFlowInput {
6655
6655
  * Guide</a>.</p>
6656
6656
  * @public
6657
6657
  */
6658
- Applications?: Application[];
6658
+ Applications?: Application[] | undefined;
6659
6659
  /**
6660
6660
  * <p>For Amazon EMR releases 4.0 and later. The list of configurations supplied for
6661
6661
  * the Amazon EMR cluster that you are creating.</p>
6662
6662
  * @public
6663
6663
  */
6664
- Configurations?: Configuration[];
6664
+ Configurations?: Configuration[] | undefined;
6665
6665
  /**
6666
6666
  * <important>
6667
6667
  * <p>The VisibleToAllUsers parameter is no longer supported. By default, the value is set
@@ -6678,7 +6678,7 @@ export interface RunJobFlowInput {
6678
6678
  * <i>Amazon EMR Management Guide</i>.</p>
6679
6679
  * @public
6680
6680
  */
6681
- VisibleToAllUsers?: boolean;
6681
+ VisibleToAllUsers?: boolean | undefined;
6682
6682
  /**
6683
6683
  * <p>Also called instance profile and Amazon EC2 role. An IAM role for
6684
6684
  * an Amazon EMR cluster. The Amazon EC2 instances of the cluster assume this
@@ -6686,31 +6686,31 @@ export interface RunJobFlowInput {
6686
6686
  * role, you must have already created it using the CLI or console.</p>
6687
6687
  * @public
6688
6688
  */
6689
- JobFlowRole?: string;
6689
+ JobFlowRole?: string | undefined;
6690
6690
  /**
6691
6691
  * <p>The IAM role that Amazon EMR assumes in order to access Amazon Web Services resources on your behalf. If you've created a custom service role path, you
6692
6692
  * must specify it for the service role when you launch your cluster.</p>
6693
6693
  * @public
6694
6694
  */
6695
- ServiceRole?: string;
6695
+ ServiceRole?: string | undefined;
6696
6696
  /**
6697
6697
  * <p>A list of tags to associate with a cluster and propagate to Amazon EC2
6698
6698
  * instances.</p>
6699
6699
  * @public
6700
6700
  */
6701
- Tags?: Tag[];
6701
+ Tags?: Tag[] | undefined;
6702
6702
  /**
6703
6703
  * <p>The name of a security configuration to apply to the cluster.</p>
6704
6704
  * @public
6705
6705
  */
6706
- SecurityConfiguration?: string;
6706
+ SecurityConfiguration?: string | undefined;
6707
6707
  /**
6708
6708
  * <p>An IAM role for automatic scaling policies. The default role is
6709
6709
  * <code>EMR_AutoScaling_DefaultRole</code>. The IAM role provides
6710
6710
  * permissions that the automatic scaling feature requires to launch and terminate Amazon EC2 instances in an instance group.</p>
6711
6711
  * @public
6712
6712
  */
6713
- AutoScalingRole?: string;
6713
+ AutoScalingRole?: string | undefined;
6714
6714
  /**
6715
6715
  * <p>Specifies the way that individual Amazon EC2 instances terminate when an
6716
6716
  * automatic scale-in activity occurs or an instance group is resized.
@@ -6724,7 +6724,7 @@ export interface RunJobFlowInput {
6724
6724
  * HDFS corruption. <code>TERMINATE_AT_TASK_COMPLETION</code> available only in Amazon EMR releases 4.1.0 and later, and is the default for releases of Amazon EMR earlier than 5.1.0.</p>
6725
6725
  * @public
6726
6726
  */
6727
- ScaleDownBehavior?: ScaleDownBehavior;
6727
+ ScaleDownBehavior?: ScaleDownBehavior | undefined;
6728
6728
  /**
6729
6729
  * <p>Available only in Amazon EMR releases 5.7.0 and later. The ID of a custom Amazon
6730
6730
  * EBS-backed Linux AMI. If specified, Amazon EMR uses this AMI when it launches
@@ -6737,14 +6737,14 @@ export interface RunJobFlowInput {
6737
6737
  * AMI</a>. </p>
6738
6738
  * @public
6739
6739
  */
6740
- CustomAmiId?: string;
6740
+ CustomAmiId?: string | undefined;
6741
6741
  /**
6742
6742
  * <p>The size, in GiB, of the Amazon EBS root device volume of the Linux AMI that is
6743
6743
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 4.x and
6744
6744
  * later.</p>
6745
6745
  * @public
6746
6746
  */
6747
- EbsRootVolumeSize?: number;
6747
+ EbsRootVolumeSize?: number | undefined;
6748
6748
  /**
6749
6749
  * <p>Applies only when <code>CustomAmiID</code> is used. Specifies which updates from the
6750
6750
  * Amazon Linux AMI package repositories to apply automatically when the instance boots using
@@ -6753,30 +6753,30 @@ export interface RunJobFlowInput {
6753
6753
  * and all updates must be applied manually.</p>
6754
6754
  * @public
6755
6755
  */
6756
- RepoUpgradeOnBoot?: RepoUpgradeOnBoot;
6756
+ RepoUpgradeOnBoot?: RepoUpgradeOnBoot | undefined;
6757
6757
  /**
6758
6758
  * <p>Attributes for Kerberos configuration when Kerberos authentication is enabled using a
6759
6759
  * security configuration. For more information see <a href="https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html">Use Kerberos Authentication</a>
6760
6760
  * in the <i>Amazon EMR Management Guide</i>.</p>
6761
6761
  * @public
6762
6762
  */
6763
- KerberosAttributes?: KerberosAttributes;
6763
+ KerberosAttributes?: KerberosAttributes | undefined;
6764
6764
  /**
6765
6765
  * <p>Specifies the number of steps that can be executed concurrently. The default value is
6766
6766
  * <code>1</code>. The maximum value is <code>256</code>.</p>
6767
6767
  * @public
6768
6768
  */
6769
- StepConcurrencyLevel?: number;
6769
+ StepConcurrencyLevel?: number | undefined;
6770
6770
  /**
6771
6771
  * <p> The specified managed scaling policy for an Amazon EMR cluster. </p>
6772
6772
  * @public
6773
6773
  */
6774
- ManagedScalingPolicy?: ManagedScalingPolicy;
6774
+ ManagedScalingPolicy?: ManagedScalingPolicy | undefined;
6775
6775
  /**
6776
6776
  * <p>The specified placement group configuration for an Amazon EMR cluster.</p>
6777
6777
  * @public
6778
6778
  */
6779
- PlacementGroupConfigs?: PlacementGroupConfig[];
6779
+ PlacementGroupConfigs?: PlacementGroupConfig[] | undefined;
6780
6780
  /**
6781
6781
  * <p>An auto-termination policy for an Amazon EMR cluster. An auto-termination policy
6782
6782
  * defines the amount of idle time in seconds after which a cluster automatically terminates.
@@ -6784,28 +6784,28 @@ export interface RunJobFlowInput {
6784
6784
  * termination</a>.</p>
6785
6785
  * @public
6786
6786
  */
6787
- AutoTerminationPolicy?: AutoTerminationPolicy;
6787
+ AutoTerminationPolicy?: AutoTerminationPolicy | undefined;
6788
6788
  /**
6789
6789
  * <p>Specifies a particular Amazon Linux release for all nodes in a cluster launch RunJobFlow
6790
6790
  * request. If a release is not specified, Amazon EMR uses the latest validated Amazon
6791
6791
  * Linux release for cluster launch.</p>
6792
6792
  * @public
6793
6793
  */
6794
- OSReleaseLabel?: string;
6794
+ OSReleaseLabel?: string | undefined;
6795
6795
  /**
6796
6796
  * <p>The IOPS, of the Amazon EBS root device volume of the Linux AMI that is
6797
6797
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and
6798
6798
  * later.</p>
6799
6799
  * @public
6800
6800
  */
6801
- EbsRootVolumeIops?: number;
6801
+ EbsRootVolumeIops?: number | undefined;
6802
6802
  /**
6803
6803
  * <p>The throughput, in MiB/s, of the Amazon EBS root device volume of the Linux AMI that is
6804
6804
  * used for each Amazon EC2 instance. Available in Amazon EMR releases 6.15.0 and
6805
6805
  * later.</p>
6806
6806
  * @public
6807
6807
  */
6808
- EbsRootVolumeThroughput?: number;
6808
+ EbsRootVolumeThroughput?: number | undefined;
6809
6809
  }
6810
6810
  /**
6811
6811
  * @internal