@horietakehiro/aws-cdk-utul 0.41.43 → 0.41.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/lib/types/cfn-resource-types/aws-bedrock-automatedreasoningpolicy.d.ts +15 -0
  2. package/lib/types/cfn-resource-types/aws-bedrock-automatedreasoningpolicy.js +1 -1
  3. package/lib/types/cfn-resource-types/aws-bedrockagentcore-browsercustom.d.ts +7 -0
  4. package/lib/types/cfn-resource-types/aws-bedrockagentcore-browsercustom.js +1 -1
  5. package/lib/types/cfn-resource-types/aws-bedrockagentcore-runtime.d.ts +75 -0
  6. package/lib/types/cfn-resource-types/aws-bedrockagentcore-runtime.js +1 -1
  7. package/lib/types/cfn-resource-types/aws-bedrockagentcore-workloadidentity.d.ts +33 -0
  8. package/lib/types/cfn-resource-types/aws-bedrockagentcore-workloadidentity.js +3 -0
  9. package/lib/types/cfn-resource-types/aws-cassandra-keyspace.d.ts +2 -2
  10. package/lib/types/cfn-resource-types/aws-cassandra-keyspace.js +1 -1
  11. package/lib/types/cfn-resource-types/aws-cleanrooms-collaboration.d.ts +3 -0
  12. package/lib/types/cfn-resource-types/aws-cleanrooms-collaboration.js +1 -1
  13. package/lib/types/cfn-resource-types/aws-cleanrooms-configuredtable.d.ts +3 -0
  14. package/lib/types/cfn-resource-types/aws-cleanrooms-configuredtable.js +1 -1
  15. package/lib/types/cfn-resource-types/aws-cleanrooms-privacybudgettemplate.d.ts +14 -3
  16. package/lib/types/cfn-resource-types/aws-cleanrooms-privacybudgettemplate.js +1 -1
  17. package/lib/types/cfn-resource-types/aws-datazone-connection.d.ts +22 -1
  18. package/lib/types/cfn-resource-types/aws-datazone-connection.js +1 -1
  19. package/lib/types/cfn-resource-types/aws-dynamodb-globaltable.d.ts +7 -4
  20. package/lib/types/cfn-resource-types/aws-dynamodb-globaltable.js +1 -1
  21. package/lib/types/cfn-resource-types/aws-ec2-volume.d.ts +37 -33
  22. package/lib/types/cfn-resource-types/aws-ec2-volume.js +1 -1
  23. package/lib/types/cfn-resource-types/aws-ecr-repositorycreationtemplate.d.ts +2 -2
  24. package/lib/types/cfn-resource-types/aws-ecr-repositorycreationtemplate.js +1 -1
  25. package/lib/types/cfn-resource-types/aws-ecs-capacityprovider.d.ts +1 -1
  26. package/lib/types/cfn-resource-types/aws-ecs-capacityprovider.js +1 -1
  27. package/lib/types/cfn-resource-types/aws-ecs-taskdefinition.d.ts +4 -4
  28. package/lib/types/cfn-resource-types/aws-ecs-taskdefinition.js +1 -1
  29. package/lib/types/cfn-resource-types/aws-gamelift-build.d.ts +1 -1
  30. package/lib/types/cfn-resource-types/aws-gamelift-build.js +1 -1
  31. package/lib/types/cfn-resource-types/aws-glue-integrationresourceproperty.d.ts +62 -0
  32. package/lib/types/cfn-resource-types/aws-glue-integrationresourceproperty.js +3 -0
  33. package/lib/types/cfn-resource-types/aws-imagebuilder-imagerecipe.d.ts +1 -1
  34. package/lib/types/cfn-resource-types/aws-imagebuilder-imagerecipe.js +1 -1
  35. package/lib/types/cfn-resource-types/aws-kinesis-stream.d.ts +4 -0
  36. package/lib/types/cfn-resource-types/aws-kinesis-stream.js +1 -1
  37. package/lib/types/cfn-resource-types/aws-kms-key.d.ts +1 -1
  38. package/lib/types/cfn-resource-types/aws-kms-key.js +1 -1
  39. package/lib/types/cfn-resource-types/aws-location-apikey.d.ts +18 -1
  40. package/lib/types/cfn-resource-types/aws-location-apikey.js +1 -1
  41. package/lib/types/cfn-resource-types/aws-opensearchserverless-collection.d.ts +25 -21
  42. package/lib/types/cfn-resource-types/aws-opensearchserverless-collection.js +1 -1
  43. package/lib/types/cfn-resource-types/aws-quicksight-dataset.d.ts +411 -74
  44. package/lib/types/cfn-resource-types/aws-quicksight-dataset.js +1 -1
  45. package/lib/types/cfn-resource-types/aws-quicksight-datasource.d.ts +1 -1
  46. package/lib/types/cfn-resource-types/aws-quicksight-datasource.js +1 -1
  47. package/lib/types/cfn-resource-types/aws-servicecatalog-cloudformationproduct.d.ts +123 -21
  48. package/lib/types/cfn-resource-types/aws-servicecatalog-cloudformationproduct.js +1 -1
  49. package/lib/types/cfn-resource-types/aws-servicecatalog-portfolioprincipalassociation.d.ts +14 -3
  50. package/lib/types/cfn-resource-types/aws-servicecatalog-portfolioprincipalassociation.js +1 -1
  51. package/lib/types/cfn-resource-types/aws-ses-multiregionendpoint.d.ts +50 -0
  52. package/lib/types/cfn-resource-types/aws-ses-multiregionendpoint.js +3 -0
  53. package/lib/types/cfn-resource-types/aws-wafv2-webacl.d.ts +36 -0
  54. package/lib/types/cfn-resource-types/aws-wafv2-webacl.js +1 -1
  55. package/lib/types/cfn-resource-types.d.ts +6 -0
  56. package/lib/types/cfn-resource-types.js +34 -28
  57. package/package.json +1 -1
@@ -14,8 +14,14 @@ export type DatasetParameterValueType = ("MULTI_VALUED" | "SINGLE_VALUED");
14
14
  export type TimeGranularity = ("YEAR" | "QUARTER" | "MONTH" | "WEEK" | "DAY" | "HOUR" | "MINUTE" | "SECOND" | "MILLISECOND");
15
15
  export type GeoSpatialDataRole = ("COUNTRY" | "STATE" | "COUNTY" | "CITY" | "POSTCODE" | "LONGITUDE" | "LATITUDE" | "POLITICAL1" | "CENSUS_TRACT" | "CENSUS_BLOCK_GROUP" | "CENSUS_BLOCK");
16
16
  export type ColumnTagName = ("COLUMN_GEOGRAPHIC_ROLE" | "COLUMN_DESCRIPTION");
17
+ export type DataSetDateComparisonFilterOperator = ("BEFORE" | "BEFORE_OR_EQUALS_TO" | "AFTER" | "AFTER_OR_EQUALS_TO");
18
+ export type DataSetStringComparisonFilterOperator = ("EQUALS" | "DOES_NOT_EQUAL" | "CONTAINS" | "DOES_NOT_CONTAIN" | "STARTS_WITH" | "ENDS_WITH");
19
+ export type DataSetStringListFilterOperator = ("INCLUDE" | "EXCLUDE");
20
+ export type DataSetNumericComparisonFilterOperator = ("EQUALS" | "DOES_NOT_EQUAL" | "GREATER_THAN" | "GREATER_THAN_OR_EQUALS_TO" | "LESS_THAN" | "LESS_THAN_OR_EQUALS_TO");
17
21
  export type ColumnDataType = ("STRING" | "INTEGER" | "DECIMAL" | "DATETIME");
18
22
  export type JoinType = ("INNER" | "OUTER" | "LEFT" | "RIGHT");
23
+ export type JoinOperationType = ("INNER" | "OUTER" | "LEFT" | "RIGHT");
24
+ export type DataPrepSimpleAggregationFunctionType = ("COUNT" | "DISTINCT_COUNT" | "SUM" | "AVERAGE" | "MEDIAN" | "MAX" | "MIN" | "VARIANCE" | "STANDARD_DEVIATION");
19
25
  /**
20
26
  * Definition of the AWS::QuickSight::DataSet Resource Type.
21
27
  */
@@ -71,6 +77,7 @@ export interface _AWS_QUICKSIGHT_DATASET {
71
77
  * <p>The last time that this dataset was updated.</p>
72
78
  */
73
79
  LastUpdatedTime?: string;
80
+ SemanticModelConfiguration?: SemanticModelConfiguration;
74
81
  DataSetId?: string;
75
82
  PerformanceConfiguration?: PerformanceConfiguration;
76
83
  DataSetRefreshProperties?: DataSetRefreshProperties;
@@ -98,6 +105,7 @@ export interface _AWS_QUICKSIGHT_DATASET {
98
105
  * analyses, and dashboards.</p>
99
106
  */
100
107
  OutputColumns?: OutputColumn[];
108
+ DataPrepConfiguration?: DataPrepConfiguration;
101
109
  /**
102
110
  * <p>The Amazon Resource Name (ARN) of the resource.</p>
103
111
  */
@@ -218,10 +226,40 @@ export interface PhysicalTableMap {
218
226
  * via the `patternProperty` "^[0-9a-zA-Z-]*$".
219
227
  */
220
228
  export interface PhysicalTable {
229
+ SaaSTable?: SaaSTable;
221
230
  RelationalTable?: RelationalTable;
222
231
  CustomSql?: CustomSql;
223
232
  S3Source?: S3Source;
224
233
  }
234
+ export interface SaaSTable {
235
+ DataSourceArn: string;
236
+ /**
237
+ * @minItems 0
238
+ * @maxItems 2048
239
+ */
240
+ InputColumns: InputColumn[];
241
+ /**
242
+ * @minItems 1
243
+ * @maxItems 32
244
+ */
245
+ TablePath: TablePathElement[];
246
+ }
247
+ /**
248
+ * <p>Metadata for a column that is used as the input of a transform operation.</p>
249
+ */
250
+ export interface InputColumn {
251
+ Type: InputColumnDataType;
252
+ SubType?: ColumnDataSubType;
253
+ Id?: string;
254
+ /**
255
+ * <p>The name of this column in the underlying data source.</p>
256
+ */
257
+ Name: string;
258
+ }
259
+ export interface TablePathElement {
260
+ Id?: string;
261
+ Name?: string;
262
+ }
225
263
  /**
226
264
  * <p>A physical table type for relational data sources.</p>
227
265
  */
@@ -236,7 +274,7 @@ export interface RelationalTable {
236
274
  * @minItems 0
237
275
  * @maxItems 2048
238
276
  */
239
- InputColumns?: InputColumn[];
277
+ InputColumns: InputColumn[];
240
278
  /**
241
279
  * <p>The schema name. This name applies to certain relational database engines.</p>
242
280
  */
@@ -250,17 +288,6 @@ export interface RelationalTable {
250
288
  */
251
289
  Name: string;
252
290
  }
253
- /**
254
- * <p>Metadata for a column that is used as the input of a transform operation.</p>
255
- */
256
- export interface InputColumn {
257
- Type: InputColumnDataType;
258
- SubType?: ColumnDataSubType;
259
- /**
260
- * <p>The name of this column in the underlying data source.</p>
261
- */
262
- Name: string;
263
- }
264
291
  /**
265
292
  * <p>A physical table type built from the results of the custom SQL query.</p>
266
293
  */
@@ -279,7 +306,7 @@ export interface CustomSql {
279
306
  * @minItems 0
280
307
  * @maxItems 2048
281
308
  */
282
- Columns?: InputColumn[];
309
+ Columns: InputColumn[];
283
310
  /**
284
311
  * <p>A display name for the SQL query result.</p>
285
312
  */
@@ -302,7 +329,7 @@ export interface S3Source {
302
329
  * @minItems 0
303
330
  * @maxItems 2048
304
331
  */
305
- InputColumns?: InputColumn[];
332
+ InputColumns: InputColumn[];
306
333
  UploadSettings?: UploadSettings;
307
334
  }
308
335
  /**
@@ -346,6 +373,66 @@ export interface FieldFolder {
346
373
  */
347
374
  Columns?: string[];
348
375
  }
376
+ export interface SemanticModelConfiguration {
377
+ TableMap?: SemanticTableMap;
378
+ }
379
+ export interface SemanticTableMap {
380
+ [k: string]: SemanticTable;
381
+ }
382
+ /**
383
+ * This interface was referenced by `SemanticTableMap`'s JSON-Schema definition
384
+ * via the `patternProperty` "^[0-9a-zA-Z-]*$".
385
+ */
386
+ export interface SemanticTable {
387
+ Alias: string;
388
+ DestinationTableId: string;
389
+ RowLevelPermissionConfiguration?: RowLevelPermissionConfiguration;
390
+ }
391
+ export interface RowLevelPermissionConfiguration {
392
+ TagConfiguration?: RowLevelPermissionTagConfiguration;
393
+ RowLevelPermissionDataSet?: RowLevelPermissionDataSet;
394
+ }
395
+ /**
396
+ * <p>The configuration of tags on a dataset to set row-level security. </p>
397
+ */
398
+ export interface RowLevelPermissionTagConfiguration {
399
+ Status?: Status;
400
+ /**
401
+ * <p>A set of rules associated with row-level security, such as the tag names and columns that they are assigned to.</p>
402
+ *
403
+ * @minItems 1
404
+ * @maxItems 50
405
+ */
406
+ TagRules: RowLevelPermissionTagRule[];
407
+ /**
408
+ * <p>A list of tag configuration rules to apply to a dataset. All tag configurations have the OR condition. Tags within each tile will be joined (AND). At least one rule in this structure must have all tag values assigned to it to apply Row-level security (RLS) to the dataset.</p>
409
+ *
410
+ * @minItems 1
411
+ * @maxItems 50
412
+ */
413
+ TagRuleConfigurations?: string[][];
414
+ }
415
+ /**
416
+ * <p>A set of rules associated with a tag.</p>
417
+ */
418
+ export interface RowLevelPermissionTagRule {
419
+ /**
420
+ * <p>The column name that a tag key is assigned to.</p>
421
+ */
422
+ ColumnName: string;
423
+ /**
424
+ * <p>The unique key for a tag.</p>
425
+ */
426
+ TagKey: string;
427
+ /**
428
+ * <p>A string that you want to use to filter by all the values in a column in the dataset and don’t want to list the values one by one. For example, you can use an asterisk as your match all value.</p>
429
+ */
430
+ MatchAllValue?: string;
431
+ /**
432
+ * <p>A string that you want to use to delimit the values when you pass the values at run time. For example, you can delimit the values with a comma.</p>
433
+ */
434
+ TagMultiValueDelimiter?: string;
435
+ }
349
436
  export interface PerformanceConfiguration {
350
437
  /**
351
438
  * @minItems 1
@@ -358,7 +445,7 @@ export interface UniqueKey {
358
445
  * @minItems 1
359
446
  * @maxItems 1
360
447
  */
361
- ColumnNames?: string[];
448
+ ColumnNames: string[];
362
449
  }
363
450
  /**
364
451
  * <p>The refresh properties of a dataset.</p>
@@ -399,47 +486,6 @@ export interface RefreshFailureConfiguration {
399
486
  export interface RefreshFailureEmailAlert {
400
487
  AlertStatus?: RefreshFailureAlertStatus;
401
488
  }
402
- /**
403
- * <p>The configuration of tags on a dataset to set row-level security. </p>
404
- */
405
- export interface RowLevelPermissionTagConfiguration {
406
- Status?: Status;
407
- /**
408
- * <p>A set of rules associated with row-level security, such as the tag names and columns that they are assigned to.</p>
409
- *
410
- * @minItems 1
411
- * @maxItems 50
412
- */
413
- TagRules: RowLevelPermissionTagRule[];
414
- /**
415
- * <p>A list of tag configuration rules to apply to a dataset. All tag configurations have the OR condition. Tags within each tile will be joined (AND). At least one rule in this structure must have all tag values assigned to it to apply Row-level security (RLS) to the dataset.</p>
416
- *
417
- * @minItems 1
418
- * @maxItems 50
419
- */
420
- TagRuleConfigurations?: string[][];
421
- }
422
- /**
423
- * <p>A set of rules associated with a tag.</p>
424
- */
425
- export interface RowLevelPermissionTagRule {
426
- /**
427
- * <p>The column name that a tag key is assigned to.</p>
428
- */
429
- ColumnName?: string;
430
- /**
431
- * <p>The unique key for a tag.</p>
432
- */
433
- TagKey: string;
434
- /**
435
- * <p>A string that you want to use to filter by all the values in a column in the dataset and don’t want to list the values one by one. For example, you can use an asterisk as your match all value.</p>
436
- */
437
- MatchAllValue?: string;
438
- /**
439
- * <p>A string that you want to use to delimit the values when you pass the values at run time. For example, you can delimit the values with a comma.</p>
440
- */
441
- TagMultiValueDelimiter?: string;
442
- }
443
489
  /**
444
490
  * <p>Groupings of columns that work together in certain Amazon QuickSight features. This is
445
491
  * a variant type structure. For this structure to be valid, only one of the attributes can
@@ -607,7 +653,7 @@ export interface LogicalTable {
607
653
  * @maxItems 2048
608
654
  */
609
655
  DataTransforms?: TransformOperation[];
610
- Source?: LogicalTableSource;
656
+ Source: LogicalTableSource;
611
657
  }
612
658
  /**
613
659
  * <p>A data transformation on a logical table. This is a variant type structure. For this
@@ -615,12 +661,12 @@ export interface LogicalTable {
615
661
  */
616
662
  export interface TransformOperation {
617
663
  TagColumnOperation?: TagColumnOperation;
618
- RenameColumnOperation?: RenameColumnOperation;
619
664
  UntagColumnOperation?: UntagColumnOperation;
620
665
  OverrideDatasetParameterOperation?: OverrideDatasetParameterOperation;
621
666
  FilterOperation?: FilterOperation;
622
667
  CastColumnTypeOperation?: CastColumnTypeOperation;
623
668
  CreateColumnsOperation?: CreateColumnsOperation;
669
+ RenameColumnOperation?: RenameColumnOperation;
624
670
  ProjectOperation?: ProjectOperation;
625
671
  }
626
672
  /**
@@ -664,19 +710,6 @@ export interface ColumnDescription {
664
710
  */
665
711
  Text?: string;
666
712
  }
667
- /**
668
- * <p>A transform operation that renames a column.</p>
669
- */
670
- export interface RenameColumnOperation {
671
- /**
672
- * <p>The new name for the column.</p>
673
- */
674
- NewColumnName?: string;
675
- /**
676
- * <p>The name of the column to be renamed.</p>
677
- */
678
- ColumnName?: string;
679
- }
680
713
  /**
681
714
  * <p>A transform operation that removes tags associated with a column.</p>
682
715
  */
@@ -741,11 +774,73 @@ export interface NewDefaultValues {
741
774
  * <p>A transform operation that filters rows based on a condition.</p>
742
775
  */
743
776
  export interface FilterOperation {
777
+ DateFilterCondition?: DataSetDateFilterCondition;
778
+ StringFilterCondition?: DataSetStringFilterCondition;
744
779
  /**
745
780
  * <p>An expression that must evaluate to a Boolean value. Rows for which the expression
746
781
  * evaluates to true are kept in the dataset.</p>
747
782
  */
748
783
  ConditionExpression?: string;
784
+ NumericFilterCondition?: DataSetNumericFilterCondition;
785
+ }
786
+ export interface DataSetDateFilterCondition {
787
+ ColumnName?: string;
788
+ RangeFilterCondition?: DataSetDateRangeFilterCondition;
789
+ ComparisonFilterCondition?: DataSetDateComparisonFilterCondition;
790
+ }
791
+ export interface DataSetDateRangeFilterCondition {
792
+ IncludeMaximum?: boolean;
793
+ RangeMinimum?: DataSetDateFilterValue;
794
+ RangeMaximum?: DataSetDateFilterValue;
795
+ IncludeMinimum?: boolean;
796
+ }
797
+ export interface DataSetDateFilterValue {
798
+ StaticValue?: string;
799
+ }
800
+ export interface DataSetDateComparisonFilterCondition {
801
+ Operator: DataSetDateComparisonFilterOperator;
802
+ Value?: DataSetDateFilterValue;
803
+ }
804
+ export interface DataSetStringFilterCondition {
805
+ ColumnName?: string;
806
+ ComparisonFilterCondition?: DataSetStringComparisonFilterCondition;
807
+ ListFilterCondition?: DataSetStringListFilterCondition;
808
+ }
809
+ export interface DataSetStringComparisonFilterCondition {
810
+ Operator: DataSetStringComparisonFilterOperator;
811
+ Value?: DataSetStringFilterValue;
812
+ }
813
+ export interface DataSetStringFilterValue {
814
+ StaticValue?: string;
815
+ }
816
+ export interface DataSetStringListFilterCondition {
817
+ Operator: DataSetStringListFilterOperator;
818
+ Values?: DataSetStringListFilterValue;
819
+ }
820
+ export interface DataSetStringListFilterValue {
821
+ /**
822
+ * @minItems 0
823
+ * @maxItems 1000
824
+ */
825
+ StaticValues?: string[];
826
+ }
827
+ export interface DataSetNumericFilterCondition {
828
+ ColumnName?: string;
829
+ RangeFilterCondition?: DataSetNumericRangeFilterCondition;
830
+ ComparisonFilterCondition?: DataSetNumericComparisonFilterCondition;
831
+ }
832
+ export interface DataSetNumericRangeFilterCondition {
833
+ IncludeMaximum?: boolean;
834
+ RangeMinimum?: DataSetNumericFilterValue;
835
+ RangeMaximum?: DataSetNumericFilterValue;
836
+ IncludeMinimum?: boolean;
837
+ }
838
+ export interface DataSetNumericFilterValue {
839
+ StaticValue?: number;
840
+ }
841
+ export interface DataSetNumericComparisonFilterCondition {
842
+ Operator: DataSetNumericComparisonFilterOperator;
843
+ Value?: DataSetNumericFilterValue;
749
844
  }
750
845
  /**
751
846
  * <p>A transform operation that casts a column to a different type.</p>
@@ -754,7 +849,7 @@ export interface CastColumnTypeOperation {
754
849
  /**
755
850
  * <p>Column name.</p>
756
851
  */
757
- ColumnName?: string;
852
+ ColumnName: string;
758
853
  SubType?: ColumnDataSubType;
759
854
  /**
760
855
  * <p>When casting a column from string to datetime type, you can supply a string in a
@@ -768,13 +863,15 @@ export interface CastColumnTypeOperation {
768
863
  * operation form a lexical closure.</p>
769
864
  */
770
865
  export interface CreateColumnsOperation {
866
+ Alias?: string;
771
867
  /**
772
868
  * <p>Calculated columns to create.</p>
773
869
  *
774
870
  * @minItems 0
775
871
  * @maxItems 256
776
872
  */
777
- Columns?: CalculatedColumn[];
873
+ Columns: CalculatedColumn[];
874
+ Source?: TransformOperationSource;
778
875
  }
779
876
  /**
780
877
  * <p>A calculated column for a dataset.</p>
@@ -795,18 +892,45 @@ export interface CalculatedColumn {
795
892
  */
796
893
  Expression: string;
797
894
  }
895
+ export interface TransformOperationSource {
896
+ TransformOperationId: string;
897
+ /**
898
+ * @minItems 1
899
+ * @maxItems 2048
900
+ */
901
+ ColumnIdMappings?: DataSetColumnIdMapping[];
902
+ }
903
+ export interface DataSetColumnIdMapping {
904
+ SourceColumnId: string;
905
+ TargetColumnId: string;
906
+ }
907
+ /**
908
+ * <p>A transform operation that renames a column.</p>
909
+ */
910
+ export interface RenameColumnOperation {
911
+ /**
912
+ * <p>The new name for the column.</p>
913
+ */
914
+ NewColumnName: string;
915
+ /**
916
+ * <p>The name of the column to be renamed.</p>
917
+ */
918
+ ColumnName: string;
919
+ }
798
920
  /**
799
921
  * <p>A transform operation that projects columns. Operations that come after a projection
800
922
  * can only refer to projected columns.</p>
801
923
  */
802
924
  export interface ProjectOperation {
925
+ Alias?: string;
803
926
  /**
804
927
  * <p>Projected columns.</p>
805
928
  *
806
929
  * @minItems 0
807
- * @maxItems 2000
930
+ * @maxItems 2048
808
931
  */
809
932
  ProjectedColumns?: string[];
933
+ Source?: TransformOperationSource;
810
934
  }
811
935
  /**
812
936
  * <p>Information about the source of a logical table. This is a variant type structure. For
@@ -876,8 +1000,221 @@ export interface OutputColumn {
876
1000
  */
877
1001
  Description?: string;
878
1002
  SubType?: ColumnDataSubType;
1003
+ Id?: string;
879
1004
  /**
880
1005
  * <p>The display name of the column..</p>
881
1006
  */
882
1007
  Name?: string;
883
1008
  }
1009
+ export interface DataPrepConfiguration {
1010
+ DestinationTableMap: DestinationTableMap;
1011
+ TransformStepMap: TransformStepMap;
1012
+ SourceTableMap: SourceTableMap;
1013
+ }
1014
+ export interface DestinationTableMap {
1015
+ [k: string]: DestinationTable;
1016
+ }
1017
+ /**
1018
+ * This interface was referenced by `DestinationTableMap`'s JSON-Schema definition
1019
+ * via the `patternProperty` "^[0-9a-zA-Z-]*$".
1020
+ */
1021
+ export interface DestinationTable {
1022
+ Alias: string;
1023
+ Source: DestinationTableSource;
1024
+ }
1025
+ export interface DestinationTableSource {
1026
+ TransformOperationId: string;
1027
+ }
1028
+ export interface TransformStepMap {
1029
+ [k: string]: TransformStep;
1030
+ }
1031
+ /**
1032
+ * This interface was referenced by `TransformStepMap`'s JSON-Schema definition
1033
+ * via the `patternProperty` "^[0-9a-zA-Z-]*$".
1034
+ */
1035
+ export interface TransformStep {
1036
+ ProjectStep?: ProjectOperation;
1037
+ CreateColumnsStep?: CreateColumnsOperation;
1038
+ RenameColumnsStep?: RenameColumnsOperation;
1039
+ CastColumnTypesStep?: CastColumnTypesOperation;
1040
+ ImportTableStep?: ImportTableOperation;
1041
+ UnpivotStep?: UnpivotOperation;
1042
+ JoinStep?: JoinOperation;
1043
+ AppendStep?: AppendOperation;
1044
+ FiltersStep?: FiltersOperation;
1045
+ AggregateStep?: AggregateOperation;
1046
+ PivotStep?: PivotOperation;
1047
+ }
1048
+ export interface RenameColumnsOperation {
1049
+ Alias: string;
1050
+ /**
1051
+ * @minItems 0
1052
+ * @maxItems 2048
1053
+ */
1054
+ RenameColumnOperations: RenameColumnOperation[];
1055
+ Source: TransformOperationSource;
1056
+ }
1057
+ export interface CastColumnTypesOperation {
1058
+ /**
1059
+ * @minItems 0
1060
+ * @maxItems 2048
1061
+ */
1062
+ CastColumnTypeOperations: CastColumnTypeOperation[];
1063
+ Alias: string;
1064
+ Source: TransformOperationSource;
1065
+ }
1066
+ export interface ImportTableOperation {
1067
+ Alias: string;
1068
+ Source: ImportTableOperationSource;
1069
+ }
1070
+ export interface ImportTableOperationSource {
1071
+ SourceTableId: string;
1072
+ /**
1073
+ * @minItems 1
1074
+ * @maxItems 2048
1075
+ */
1076
+ ColumnIdMappings?: DataSetColumnIdMapping[];
1077
+ }
1078
+ export interface UnpivotOperation {
1079
+ UnpivotedLabelColumnName: string;
1080
+ /**
1081
+ * @minItems 0
1082
+ * @maxItems 100
1083
+ */
1084
+ ColumnsToUnpivot: ColumnToUnpivot[];
1085
+ UnpivotedLabelColumnId: string;
1086
+ Alias: string;
1087
+ UnpivotedValueColumnId: string;
1088
+ UnpivotedValueColumnName: string;
1089
+ Source: TransformOperationSource;
1090
+ }
1091
+ export interface ColumnToUnpivot {
1092
+ ColumnName?: string;
1093
+ NewValue?: string;
1094
+ }
1095
+ export interface JoinOperation {
1096
+ OnClause: string;
1097
+ Type: JoinOperationType;
1098
+ RightOperandProperties?: JoinOperandProperties;
1099
+ LeftOperandProperties?: JoinOperandProperties;
1100
+ Alias: string;
1101
+ LeftOperand: TransformOperationSource;
1102
+ RightOperand: TransformOperationSource;
1103
+ }
1104
+ export interface JoinOperandProperties {
1105
+ /**
1106
+ * @minItems 1
1107
+ * @maxItems 2048
1108
+ */
1109
+ OutputColumnNameOverrides: OutputColumnNameOverride[];
1110
+ }
1111
+ export interface OutputColumnNameOverride {
1112
+ OutputColumnName: string;
1113
+ SourceColumnName?: string;
1114
+ }
1115
+ export interface AppendOperation {
1116
+ /**
1117
+ * @minItems 0
1118
+ * @maxItems 2048
1119
+ */
1120
+ AppendedColumns: AppendedColumn[];
1121
+ SecondSource?: TransformOperationSource;
1122
+ Alias: string;
1123
+ FirstSource?: TransformOperationSource;
1124
+ }
1125
+ export interface AppendedColumn {
1126
+ ColumnName: string;
1127
+ NewColumnId: string;
1128
+ }
1129
+ export interface FiltersOperation {
1130
+ /**
1131
+ * @minItems 0
1132
+ * @maxItems 128
1133
+ */
1134
+ FilterOperations: FilterOperation[];
1135
+ Alias: string;
1136
+ Source: TransformOperationSource;
1137
+ }
1138
+ export interface AggregateOperation {
1139
+ /**
1140
+ * @minItems 0
1141
+ * @maxItems 128
1142
+ */
1143
+ GroupByColumnNames?: string[];
1144
+ Alias: string;
1145
+ /**
1146
+ * @minItems 0
1147
+ * @maxItems 128
1148
+ */
1149
+ Aggregations: Aggregation[];
1150
+ Source: TransformOperationSource;
1151
+ }
1152
+ export interface Aggregation {
1153
+ AggregationFunction: DataPrepAggregationFunction;
1154
+ NewColumnName: string;
1155
+ NewColumnId: string;
1156
+ }
1157
+ export interface DataPrepAggregationFunction {
1158
+ PercentileAggregation?: DataPrepPercentileAggregationFunction;
1159
+ SimpleAggregation?: DataPrepSimpleAggregationFunction;
1160
+ ListAggregation?: DataPrepListAggregationFunction;
1161
+ }
1162
+ export interface DataPrepPercentileAggregationFunction {
1163
+ InputColumnName?: string;
1164
+ PercentileValue: number;
1165
+ }
1166
+ export interface DataPrepSimpleAggregationFunction {
1167
+ FunctionType: DataPrepSimpleAggregationFunctionType;
1168
+ InputColumnName?: string;
1169
+ }
1170
+ export interface DataPrepListAggregationFunction {
1171
+ Distinct: boolean;
1172
+ InputColumnName?: string;
1173
+ Separator: string;
1174
+ }
1175
+ export interface PivotOperation {
1176
+ PivotConfiguration: PivotConfiguration;
1177
+ /**
1178
+ * @minItems 0
1179
+ * @maxItems 128
1180
+ */
1181
+ GroupByColumnNames?: string[];
1182
+ Alias: string;
1183
+ ValueColumnConfiguration: ValueColumnConfiguration;
1184
+ Source: TransformOperationSource;
1185
+ }
1186
+ export interface PivotConfiguration {
1187
+ LabelColumnName?: string;
1188
+ /**
1189
+ * @minItems 0
1190
+ * @maxItems 100
1191
+ */
1192
+ PivotedLabels: PivotedLabel[];
1193
+ }
1194
+ export interface PivotedLabel {
1195
+ NewColumnName: string;
1196
+ NewColumnId: string;
1197
+ LabelName: string;
1198
+ }
1199
+ export interface ValueColumnConfiguration {
1200
+ AggregationFunction?: DataPrepAggregationFunction;
1201
+ }
1202
+ export interface SourceTableMap {
1203
+ [k: string]: SourceTable;
1204
+ }
1205
+ /**
1206
+ * This interface was referenced by `SourceTableMap`'s JSON-Schema definition
1207
+ * via the `patternProperty` "^[0-9a-zA-Z-]*$".
1208
+ */
1209
+ export interface SourceTable {
1210
+ PhysicalTableId?: string;
1211
+ DataSet?: ParentDataSet;
1212
+ }
1213
+ export interface ParentDataSet {
1214
+ /**
1215
+ * @minItems 0
1216
+ * @maxItems 2048
1217
+ */
1218
+ InputColumns: InputColumn[];
1219
+ DataSetArn: string;
1220
+ }