@stacksjs/ts-cloud-aws-types 0.1.5 → 0.1.7
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.
- package/dist/acm.d.ts +19 -0
- package/dist/alb.d.ts +70 -0
- package/dist/apigateway.d.ts +80 -0
- package/dist/appsync.d.ts +233 -0
- package/dist/athena.d.ts +92 -0
- package/dist/autoscaling.d.ts +188 -0
- package/dist/backup.d.ts +174 -0
- package/dist/cloudwatch.d.ts +92 -0
- package/dist/codedeploy.d.ts +124 -0
- package/dist/cognito.d.ts +203 -0
- package/dist/common.d.ts +17 -0
- package/dist/connect.d.ts +228 -0
- package/dist/dynamodb.d.ts +58 -0
- package/dist/ec2.d.ts +159 -0
- package/dist/ecr.d.ts +122 -0
- package/dist/ecs.d.ts +126 -0
- package/dist/efs.d.ts +54 -0
- package/dist/elasticache.d.ts +87 -0
- package/dist/eventbridge.d.ts +134 -0
- package/dist/globalaccelerator.d.ts +49 -0
- package/dist/glue.d.ts +227 -0
- package/dist/iam.d.ts +135 -0
- package/dist/index.d.ts +310 -0
- package/dist/index.js +0 -0
- package/dist/kinesis.d.ts +252 -0
- package/dist/kms.d.ts +33 -0
- package/dist/lambda.d.ts +40 -0
- package/dist/opensearch.d.ts +140 -0
- package/dist/pinpoint.d.ts +418 -0
- package/dist/rds-proxy.d.ts +59 -0
- package/dist/rds.d.ts +58 -0
- package/dist/route53.d.ts +30 -0
- package/dist/secrets-manager.d.ts +99 -0
- package/dist/ses.d.ts +62 -0
- package/dist/sns.d.ts +42 -0
- package/dist/sqs.d.ts +51 -0
- package/dist/ssm.d.ts +253 -0
- package/dist/waf.d.ts +79 -0
- package/package.json +10 -2
package/dist/efs.d.ts
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { CloudFormationResource } from './index';
|
|
2
|
+
export declare interface EFSFileSystem extends CloudFormationResource {
|
|
3
|
+
Type: 'AWS::EFS::FileSystem'
|
|
4
|
+
Properties?: {
|
|
5
|
+
Encrypted?: boolean
|
|
6
|
+
KmsKeyId?: string
|
|
7
|
+
LifecyclePolicies?: Array<{
|
|
8
|
+
TransitionToIA?: 'AFTER_7_DAYS' | 'AFTER_14_DAYS' | 'AFTER_30_DAYS' | 'AFTER_60_DAYS' | 'AFTER_90_DAYS'
|
|
9
|
+
TransitionToPrimaryStorageClass?: 'AFTER_1_ACCESS'
|
|
10
|
+
}>
|
|
11
|
+
PerformanceMode?: 'generalPurpose' | 'maxIO'
|
|
12
|
+
ThroughputMode?: 'bursting' | 'provisioned' | 'elastic'
|
|
13
|
+
ProvisionedThroughputInMibps?: number
|
|
14
|
+
BackupPolicy?: {
|
|
15
|
+
Status: 'ENABLED' | 'DISABLED'
|
|
16
|
+
}
|
|
17
|
+
FileSystemTags?: Array<{
|
|
18
|
+
Key: string
|
|
19
|
+
Value: string
|
|
20
|
+
}>
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
export declare interface EFSMountTarget extends CloudFormationResource {
|
|
24
|
+
Type: 'AWS::EFS::MountTarget'
|
|
25
|
+
Properties: {
|
|
26
|
+
FileSystemId: string | { Ref: string }
|
|
27
|
+
SubnetId: string
|
|
28
|
+
SecurityGroups: string[]
|
|
29
|
+
IpAddress?: string
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export declare interface EFSAccessPoint extends CloudFormationResource {
|
|
33
|
+
Type: 'AWS::EFS::AccessPoint'
|
|
34
|
+
Properties: {
|
|
35
|
+
FileSystemId: string | { Ref: string }
|
|
36
|
+
PosixUser?: {
|
|
37
|
+
Uid: string
|
|
38
|
+
Gid: string
|
|
39
|
+
SecondaryGids?: string[]
|
|
40
|
+
}
|
|
41
|
+
RootDirectory?: {
|
|
42
|
+
Path?: string
|
|
43
|
+
CreationInfo?: {
|
|
44
|
+
OwnerUid: string
|
|
45
|
+
OwnerGid: string
|
|
46
|
+
Permissions: string
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
AccessPointTags?: Array<{
|
|
50
|
+
Key: string
|
|
51
|
+
Value: string
|
|
52
|
+
}>
|
|
53
|
+
}
|
|
54
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { CloudFormationResource } from './index';
|
|
2
|
+
/**
|
|
3
|
+
* AWS ElastiCache Types
|
|
4
|
+
*/
|
|
5
|
+
export declare interface ElastiCacheCluster extends CloudFormationResource {
|
|
6
|
+
Type: 'AWS::ElastiCache::CacheCluster'
|
|
7
|
+
Properties: {
|
|
8
|
+
ClusterName?: string
|
|
9
|
+
CacheNodeType: string
|
|
10
|
+
Engine: 'memcached' | 'redis'
|
|
11
|
+
EngineVersion?: string
|
|
12
|
+
NumCacheNodes: number
|
|
13
|
+
Port?: number
|
|
14
|
+
PreferredAvailabilityZone?: string
|
|
15
|
+
PreferredAvailabilityZones?: string[]
|
|
16
|
+
PreferredMaintenanceWindow?: string
|
|
17
|
+
CacheSubnetGroupName?: string | { Ref: string }
|
|
18
|
+
VpcSecurityGroupIds?: string[]
|
|
19
|
+
CacheParameterGroupName?: string | { Ref: string }
|
|
20
|
+
SnapshotRetentionLimit?: number
|
|
21
|
+
SnapshotWindow?: string
|
|
22
|
+
AutoMinorVersionUpgrade?: boolean
|
|
23
|
+
AZMode?: 'single-az' | 'cross-az'
|
|
24
|
+
NotificationTopicArn?: string
|
|
25
|
+
Tags?: Array<{
|
|
26
|
+
Key: string
|
|
27
|
+
Value: string
|
|
28
|
+
}>
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
export declare interface ElastiCacheReplicationGroup extends CloudFormationResource {
|
|
32
|
+
Type: 'AWS::ElastiCache::ReplicationGroup'
|
|
33
|
+
Properties: {
|
|
34
|
+
ReplicationGroupId?: string
|
|
35
|
+
ReplicationGroupDescription: string
|
|
36
|
+
Engine?: 'redis'
|
|
37
|
+
EngineVersion?: string
|
|
38
|
+
CacheNodeType: string
|
|
39
|
+
NumCacheClusters?: number
|
|
40
|
+
NumNodeGroups?: number
|
|
41
|
+
ReplicasPerNodeGroup?: number
|
|
42
|
+
AutomaticFailoverEnabled?: boolean
|
|
43
|
+
MultiAZEnabled?: boolean
|
|
44
|
+
PreferredCacheClusterAZs?: string[]
|
|
45
|
+
Port?: number
|
|
46
|
+
CacheSubnetGroupName?: string | { Ref: string }
|
|
47
|
+
SecurityGroupIds?: string[]
|
|
48
|
+
CacheParameterGroupName?: string | { Ref: string }
|
|
49
|
+
SnapshotRetentionLimit?: number
|
|
50
|
+
SnapshotWindow?: string
|
|
51
|
+
PreferredMaintenanceWindow?: string
|
|
52
|
+
AtRestEncryptionEnabled?: boolean
|
|
53
|
+
TransitEncryptionEnabled?: boolean
|
|
54
|
+
AuthToken?: string
|
|
55
|
+
KmsKeyId?: string
|
|
56
|
+
AutoMinorVersionUpgrade?: boolean
|
|
57
|
+
NotificationTopicArn?: string
|
|
58
|
+
Tags?: Array<{
|
|
59
|
+
Key: string
|
|
60
|
+
Value: string
|
|
61
|
+
}>
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export declare interface ElastiCacheSubnetGroup extends CloudFormationResource {
|
|
65
|
+
Type: 'AWS::ElastiCache::SubnetGroup'
|
|
66
|
+
Properties: {
|
|
67
|
+
CacheSubnetGroupName?: string
|
|
68
|
+
Description: string
|
|
69
|
+
SubnetIds: string[]
|
|
70
|
+
Tags?: Array<{
|
|
71
|
+
Key: string
|
|
72
|
+
Value: string
|
|
73
|
+
}>
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export declare interface ElastiCacheParameterGroup extends CloudFormationResource {
|
|
77
|
+
Type: 'AWS::ElastiCache::ParameterGroup'
|
|
78
|
+
Properties: {
|
|
79
|
+
CacheParameterGroupFamily: string
|
|
80
|
+
Description: string
|
|
81
|
+
Properties?: Record<string, string>
|
|
82
|
+
Tags?: Array<{
|
|
83
|
+
Key: string
|
|
84
|
+
Value: string
|
|
85
|
+
}>
|
|
86
|
+
}
|
|
87
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import type { CloudFormationResource } from './index';
|
|
2
|
+
/**
|
|
3
|
+
* AWS EventBridge Types
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* ECS Parameters for EventBridge targets
|
|
7
|
+
*/
|
|
8
|
+
export declare interface EventBridgeEcsParameters {
|
|
9
|
+
TaskDefinitionArn: string
|
|
10
|
+
TaskCount?: number
|
|
11
|
+
LaunchType?: 'EC2' | 'FARGATE' | 'EXTERNAL'
|
|
12
|
+
NetworkConfiguration?: {
|
|
13
|
+
awsvpcConfiguration: {
|
|
14
|
+
Subnets: string[]
|
|
15
|
+
SecurityGroups?: string[]
|
|
16
|
+
AssignPublicIp?: 'ENABLED' | 'DISABLED'
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
PlatformVersion?: string
|
|
20
|
+
Group?: string
|
|
21
|
+
CapacityProviderStrategy?: Array<{
|
|
22
|
+
capacityProvider: string
|
|
23
|
+
weight?: number
|
|
24
|
+
base?: number
|
|
25
|
+
}>
|
|
26
|
+
EnableECSManagedTags?: boolean
|
|
27
|
+
EnableExecuteCommand?: boolean
|
|
28
|
+
PlacementConstraints?: Array<{
|
|
29
|
+
type?: string
|
|
30
|
+
expression?: string
|
|
31
|
+
}>
|
|
32
|
+
PlacementStrategy?: Array<{
|
|
33
|
+
type?: string
|
|
34
|
+
field?: string
|
|
35
|
+
}>
|
|
36
|
+
PropagateTags?: 'TASK_DEFINITION'
|
|
37
|
+
ReferenceId?: string
|
|
38
|
+
Tags?: Array<{
|
|
39
|
+
Key: string
|
|
40
|
+
Value: string
|
|
41
|
+
}>
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* EventBridge Rule Target
|
|
45
|
+
*/
|
|
46
|
+
export declare interface EventBridgeTarget {
|
|
47
|
+
Id: string
|
|
48
|
+
Arn: string
|
|
49
|
+
RoleArn?: string
|
|
50
|
+
Input?: string
|
|
51
|
+
InputPath?: string
|
|
52
|
+
InputTransformer?: {
|
|
53
|
+
InputPathsMap?: Record<string, string>
|
|
54
|
+
InputTemplate: string
|
|
55
|
+
}
|
|
56
|
+
KinesisParameters?: {
|
|
57
|
+
PartitionKeyPath: string
|
|
58
|
+
}
|
|
59
|
+
EcsParameters?: EventBridgeEcsParameters
|
|
60
|
+
SqsParameters?: {
|
|
61
|
+
MessageGroupId: string
|
|
62
|
+
}
|
|
63
|
+
HttpParameters?: {
|
|
64
|
+
PathParameterValues?: string[]
|
|
65
|
+
HeaderParameters?: Record<string, string>
|
|
66
|
+
QueryStringParameters?: Record<string, string>
|
|
67
|
+
}
|
|
68
|
+
RedshiftDataParameters?: {
|
|
69
|
+
Database: string
|
|
70
|
+
Sql: string
|
|
71
|
+
DbUser?: string
|
|
72
|
+
SecretManagerArn?: string
|
|
73
|
+
StatementName?: string
|
|
74
|
+
WithEvent?: boolean
|
|
75
|
+
}
|
|
76
|
+
SageMakerPipelineParameters?: {
|
|
77
|
+
PipelineParameterList?: Array<{
|
|
78
|
+
Name: string
|
|
79
|
+
Value: string
|
|
80
|
+
}>
|
|
81
|
+
}
|
|
82
|
+
DeadLetterConfig?: {
|
|
83
|
+
Arn: string
|
|
84
|
+
}
|
|
85
|
+
RetryPolicy?: {
|
|
86
|
+
MaximumRetryAttempts?: number
|
|
87
|
+
MaximumEventAge?: number
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
export declare interface EventBridgeRule extends CloudFormationResource {
|
|
91
|
+
Type: 'AWS::Events::Rule'
|
|
92
|
+
Properties: {
|
|
93
|
+
Name?: string
|
|
94
|
+
Description?: string
|
|
95
|
+
State?: 'ENABLED' | 'DISABLED' | 'ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS'
|
|
96
|
+
ScheduleExpression?: string
|
|
97
|
+
EventPattern?: {
|
|
98
|
+
source?: string[]
|
|
99
|
+
'detail-type'?: string[]
|
|
100
|
+
detail?: Record<string, unknown>
|
|
101
|
+
account?: string[]
|
|
102
|
+
region?: string[]
|
|
103
|
+
resources?: string[]
|
|
104
|
+
}
|
|
105
|
+
EventBusName?: string
|
|
106
|
+
RoleArn?: string
|
|
107
|
+
Targets?: EventBridgeTarget[]
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
export declare interface EventBridgeEventBus extends CloudFormationResource {
|
|
111
|
+
Type: 'AWS::Events::EventBus'
|
|
112
|
+
Properties: {
|
|
113
|
+
Name: string
|
|
114
|
+
EventSourceName?: string
|
|
115
|
+
Tags?: Array<{
|
|
116
|
+
Key: string
|
|
117
|
+
Value: string
|
|
118
|
+
}>
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
export declare interface EventBridgeArchive extends CloudFormationResource {
|
|
122
|
+
Type: 'AWS::Events::Archive'
|
|
123
|
+
Properties: {
|
|
124
|
+
ArchiveName?: string
|
|
125
|
+
Description?: string
|
|
126
|
+
EventPattern?: {
|
|
127
|
+
source?: string[]
|
|
128
|
+
'detail-type'?: string[]
|
|
129
|
+
detail?: Record<string, unknown>
|
|
130
|
+
}
|
|
131
|
+
RetentionDays?: number
|
|
132
|
+
SourceArn: string
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { Tag } from './common';
|
|
2
|
+
export declare interface Accelerator {
|
|
3
|
+
Type: 'AWS::GlobalAccelerator::Accelerator'
|
|
4
|
+
Properties: {
|
|
5
|
+
Name: string
|
|
6
|
+
Enabled?: boolean
|
|
7
|
+
IpAddressType?: 'IPV4' | 'DUAL_STACK'
|
|
8
|
+
IpAddresses?: string[]
|
|
9
|
+
Tags?: Tag[]
|
|
10
|
+
}
|
|
11
|
+
DeletionPolicy?: 'Delete' | 'Retain'
|
|
12
|
+
UpdateReplacePolicy?: 'Delete' | 'Retain'
|
|
13
|
+
}
|
|
14
|
+
export declare interface GlobalAcceleratorListener {
|
|
15
|
+
Type: 'AWS::GlobalAccelerator::Listener'
|
|
16
|
+
Properties: {
|
|
17
|
+
AcceleratorArn: string | { Ref: string }
|
|
18
|
+
Protocol: 'TCP' | 'UDP'
|
|
19
|
+
PortRanges: Array<{
|
|
20
|
+
FromPort: number
|
|
21
|
+
ToPort: number
|
|
22
|
+
}>
|
|
23
|
+
ClientAffinity?: 'NONE' | 'SOURCE_IP'
|
|
24
|
+
}
|
|
25
|
+
DependsOn?: string | string[]
|
|
26
|
+
}
|
|
27
|
+
export declare interface EndpointGroup {
|
|
28
|
+
Type: 'AWS::GlobalAccelerator::EndpointGroup'
|
|
29
|
+
Properties: {
|
|
30
|
+
ListenerArn: string | { Ref: string }
|
|
31
|
+
EndpointGroupRegion: string
|
|
32
|
+
EndpointConfigurations?: Array<{
|
|
33
|
+
EndpointId: string | { Ref: string }
|
|
34
|
+
Weight?: number
|
|
35
|
+
ClientIPPreservationEnabled?: boolean
|
|
36
|
+
}>
|
|
37
|
+
TrafficDialPercentage?: number
|
|
38
|
+
HealthCheckIntervalSeconds?: number
|
|
39
|
+
HealthCheckPath?: string
|
|
40
|
+
HealthCheckPort?: number
|
|
41
|
+
HealthCheckProtocol?: 'TCP' | 'HTTP' | 'HTTPS'
|
|
42
|
+
ThresholdCount?: number
|
|
43
|
+
PortOverrides?: Array<{
|
|
44
|
+
ListenerPort: number
|
|
45
|
+
EndpointPort: number
|
|
46
|
+
}>
|
|
47
|
+
}
|
|
48
|
+
DependsOn?: string | string[]
|
|
49
|
+
}
|
package/dist/glue.d.ts
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
export declare interface Database {
|
|
2
|
+
Type: 'AWS::Glue::Database'
|
|
3
|
+
Properties: {
|
|
4
|
+
CatalogId: string
|
|
5
|
+
DatabaseInput: {
|
|
6
|
+
Name: string
|
|
7
|
+
Description?: string
|
|
8
|
+
LocationUri?: string
|
|
9
|
+
Parameters?: Record<string, string>
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export declare interface Table {
|
|
14
|
+
Type: 'AWS::Glue::Table'
|
|
15
|
+
Properties: {
|
|
16
|
+
CatalogId: string
|
|
17
|
+
DatabaseName: string | { Ref: string }
|
|
18
|
+
TableInput: {
|
|
19
|
+
Name: string
|
|
20
|
+
Description?: string
|
|
21
|
+
Owner?: string
|
|
22
|
+
Retention?: number
|
|
23
|
+
StorageDescriptor?: {
|
|
24
|
+
Columns?: Array<{
|
|
25
|
+
Name: string
|
|
26
|
+
Type?: string
|
|
27
|
+
Comment?: string
|
|
28
|
+
}>
|
|
29
|
+
Location?: string
|
|
30
|
+
InputFormat?: string
|
|
31
|
+
OutputFormat?: string
|
|
32
|
+
Compressed?: boolean
|
|
33
|
+
NumberOfBuckets?: number
|
|
34
|
+
SerdeInfo?: {
|
|
35
|
+
Name?: string
|
|
36
|
+
SerializationLibrary?: string
|
|
37
|
+
Parameters?: Record<string, string>
|
|
38
|
+
}
|
|
39
|
+
BucketColumns?: string[]
|
|
40
|
+
SortColumns?: Array<{
|
|
41
|
+
Column: string
|
|
42
|
+
SortOrder: number
|
|
43
|
+
}>
|
|
44
|
+
Parameters?: Record<string, string>
|
|
45
|
+
SkewedInfo?: {
|
|
46
|
+
SkewedColumnNames?: string[]
|
|
47
|
+
SkewedColumnValues?: string[]
|
|
48
|
+
SkewedColumnValueLocationMaps?: Record<string, string>
|
|
49
|
+
}
|
|
50
|
+
StoredAsSubDirectories?: boolean
|
|
51
|
+
}
|
|
52
|
+
PartitionKeys?: Array<{
|
|
53
|
+
Name: string
|
|
54
|
+
Type?: string
|
|
55
|
+
Comment?: string
|
|
56
|
+
}>
|
|
57
|
+
TableType?: string
|
|
58
|
+
Parameters?: Record<string, string>
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
DependsOn?: string | string[]
|
|
62
|
+
}
|
|
63
|
+
export declare interface Crawler {
|
|
64
|
+
Type: 'AWS::Glue::Crawler'
|
|
65
|
+
Properties: {
|
|
66
|
+
Name?: string
|
|
67
|
+
Role: string | { Ref: string }
|
|
68
|
+
DatabaseName: string | { Ref: string }
|
|
69
|
+
Targets: {
|
|
70
|
+
S3Targets?: Array<{
|
|
71
|
+
Path: string
|
|
72
|
+
Exclusions?: string[]
|
|
73
|
+
ConnectionName?: string
|
|
74
|
+
}>
|
|
75
|
+
JdbcTargets?: Array<{
|
|
76
|
+
ConnectionName: string
|
|
77
|
+
Path: string
|
|
78
|
+
Exclusions?: string[]
|
|
79
|
+
}>
|
|
80
|
+
DynamoDBTargets?: Array<{
|
|
81
|
+
Path: string
|
|
82
|
+
}>
|
|
83
|
+
CatalogTargets?: Array<{
|
|
84
|
+
DatabaseName: string
|
|
85
|
+
Tables: string[]
|
|
86
|
+
}>
|
|
87
|
+
}
|
|
88
|
+
Description?: string
|
|
89
|
+
Schedule?: {
|
|
90
|
+
ScheduleExpression: string
|
|
91
|
+
}
|
|
92
|
+
Classifiers?: string[]
|
|
93
|
+
TablePrefix?: string
|
|
94
|
+
SchemaChangePolicy?: {
|
|
95
|
+
UpdateBehavior?: 'LOG' | 'UPDATE_IN_DATABASE'
|
|
96
|
+
DeleteBehavior?: 'LOG' | 'DELETE_FROM_DATABASE' | 'DEPRECATE_IN_DATABASE'
|
|
97
|
+
}
|
|
98
|
+
Configuration?: string
|
|
99
|
+
CrawlerSecurityConfiguration?: string
|
|
100
|
+
Tags?: Record<string, string>
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export declare interface Job {
|
|
104
|
+
Type: 'AWS::Glue::Job'
|
|
105
|
+
Properties: {
|
|
106
|
+
Name?: string
|
|
107
|
+
Role: string | { Ref: string }
|
|
108
|
+
Command: {
|
|
109
|
+
Name: 'glueetl' | 'gluestreaming' | 'pythonshell'
|
|
110
|
+
ScriptLocation: string
|
|
111
|
+
PythonVersion?: '2' | '3'
|
|
112
|
+
}
|
|
113
|
+
AllocatedCapacity?: number
|
|
114
|
+
MaxCapacity?: number
|
|
115
|
+
ExecutionProperty?: {
|
|
116
|
+
MaxConcurrentRuns?: number
|
|
117
|
+
}
|
|
118
|
+
MaxRetries?: number
|
|
119
|
+
Timeout?: number
|
|
120
|
+
GlueVersion?: string
|
|
121
|
+
NumberOfWorkers?: number
|
|
122
|
+
WorkerType?: 'Standard' | 'G.1X' | 'G.2X' | 'G.025X'
|
|
123
|
+
DefaultArguments?: Record<string, string>
|
|
124
|
+
Connections?: {
|
|
125
|
+
Connections?: string[]
|
|
126
|
+
}
|
|
127
|
+
Description?: string
|
|
128
|
+
SecurityConfiguration?: string
|
|
129
|
+
Tags?: Record<string, string>
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
export declare interface Trigger {
|
|
133
|
+
Type: 'AWS::Glue::Trigger'
|
|
134
|
+
Properties: {
|
|
135
|
+
Name?: string
|
|
136
|
+
Type: 'SCHEDULED' | 'CONDITIONAL' | 'ON_DEMAND'
|
|
137
|
+
Actions: Array<{
|
|
138
|
+
JobName?: string | { Ref: string }
|
|
139
|
+
Arguments?: Record<string, string>
|
|
140
|
+
Timeout?: number
|
|
141
|
+
SecurityConfiguration?: string
|
|
142
|
+
NotificationProperty?: {
|
|
143
|
+
NotifyDelayAfter?: number
|
|
144
|
+
}
|
|
145
|
+
CrawlerName?: string
|
|
146
|
+
}>
|
|
147
|
+
Description?: string
|
|
148
|
+
Schedule?: string // Cron expression
|
|
149
|
+
Predicate?: {
|
|
150
|
+
Logical?: 'AND' | 'ANY'
|
|
151
|
+
Conditions?: Array<{
|
|
152
|
+
LogicalOperator?: 'EQUALS'
|
|
153
|
+
JobName?: string | { Ref: string }
|
|
154
|
+
State?: 'SUCCEEDED' | 'STOPPED' | 'FAILED' | 'TIMEOUT'
|
|
155
|
+
CrawlerName?: string
|
|
156
|
+
CrawlState?: 'SUCCEEDED' | 'FAILED' | 'CANCELLED'
|
|
157
|
+
}>
|
|
158
|
+
}
|
|
159
|
+
StartOnCreation?: boolean
|
|
160
|
+
WorkflowName?: string
|
|
161
|
+
Tags?: Record<string, string>
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
export declare interface Partition {
|
|
165
|
+
Type: 'AWS::Glue::Partition'
|
|
166
|
+
Properties: {
|
|
167
|
+
CatalogId: string
|
|
168
|
+
DatabaseName: string | { Ref: string }
|
|
169
|
+
TableName: string | { Ref: string }
|
|
170
|
+
PartitionInput: {
|
|
171
|
+
Values: string[]
|
|
172
|
+
StorageDescriptor?: {
|
|
173
|
+
Columns?: Array<{
|
|
174
|
+
Name: string
|
|
175
|
+
Type?: string
|
|
176
|
+
Comment?: string
|
|
177
|
+
}>
|
|
178
|
+
Location?: string
|
|
179
|
+
InputFormat?: string
|
|
180
|
+
OutputFormat?: string
|
|
181
|
+
SerdeInfo?: {
|
|
182
|
+
SerializationLibrary?: string
|
|
183
|
+
Parameters?: Record<string, string>
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
Parameters?: Record<string, string>
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
DependsOn?: string | string[]
|
|
190
|
+
}
|
|
191
|
+
export declare interface Connection {
|
|
192
|
+
Type: 'AWS::Glue::Connection'
|
|
193
|
+
Properties: {
|
|
194
|
+
CatalogId: string
|
|
195
|
+
ConnectionInput: {
|
|
196
|
+
Name: string
|
|
197
|
+
Description?: string
|
|
198
|
+
ConnectionType: 'JDBC' | 'SFTP' | 'MONGODB' | 'KAFKA' | 'NETWORK'
|
|
199
|
+
ConnectionProperties: Record<string, string>
|
|
200
|
+
PhysicalConnectionRequirements?: {
|
|
201
|
+
AvailabilityZone?: string
|
|
202
|
+
SecurityGroupIdList?: Array<string | { Ref: string }>
|
|
203
|
+
SubnetId?: string | { Ref: string }
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
export declare interface SecurityConfiguration {
|
|
209
|
+
Type: 'AWS::Glue::SecurityConfiguration'
|
|
210
|
+
Properties: {
|
|
211
|
+
Name: string
|
|
212
|
+
EncryptionConfiguration: {
|
|
213
|
+
S3Encryptions?: Array<{
|
|
214
|
+
S3EncryptionMode?: 'DISABLED' | 'SSE-KMS' | 'SSE-S3'
|
|
215
|
+
KmsKeyArn?: string | { Ref: string }
|
|
216
|
+
}>
|
|
217
|
+
CloudWatchEncryption?: {
|
|
218
|
+
CloudWatchEncryptionMode?: 'DISABLED' | 'SSE-KMS'
|
|
219
|
+
KmsKeyArn?: string | { Ref: string }
|
|
220
|
+
}
|
|
221
|
+
JobBookmarksEncryption?: {
|
|
222
|
+
JobBookmarksEncryptionMode?: 'DISABLED' | 'CSE-KMS'
|
|
223
|
+
KmsKeyArn?: string | { Ref: string }
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
package/dist/iam.d.ts
ADDED
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import type { CloudFormationResource } from './index';
|
|
2
|
+
export declare interface IAMRole extends CloudFormationResource {
|
|
3
|
+
Type: 'AWS::IAM::Role'
|
|
4
|
+
Properties: {
|
|
5
|
+
RoleName?: string
|
|
6
|
+
MaxSessionDuration?: number
|
|
7
|
+
AssumeRolePolicyDocument: {
|
|
8
|
+
Version: '2012-10-17'
|
|
9
|
+
Statement: Array<{
|
|
10
|
+
Effect: 'Allow' | 'Deny'
|
|
11
|
+
Principal: {
|
|
12
|
+
Service?: string | string[]
|
|
13
|
+
AWS?: string | string[]
|
|
14
|
+
Federated?: string | string[]
|
|
15
|
+
}
|
|
16
|
+
Action: string | string[]
|
|
17
|
+
Condition?: Record<string, unknown>
|
|
18
|
+
}>
|
|
19
|
+
}
|
|
20
|
+
ManagedPolicyArns?: string[]
|
|
21
|
+
Policies?: Array<{
|
|
22
|
+
PolicyName: string
|
|
23
|
+
PolicyDocument: {
|
|
24
|
+
Version: '2012-10-17'
|
|
25
|
+
Statement: Array<{
|
|
26
|
+
Effect: 'Allow' | 'Deny'
|
|
27
|
+
Action: string | string[]
|
|
28
|
+
Resource: string | string[]
|
|
29
|
+
}>
|
|
30
|
+
}
|
|
31
|
+
}>
|
|
32
|
+
Tags?: Array<{
|
|
33
|
+
Key: string
|
|
34
|
+
Value: string
|
|
35
|
+
}>
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export declare interface IAMPolicy extends CloudFormationResource {
|
|
39
|
+
Type: 'AWS::IAM::Policy'
|
|
40
|
+
Properties: {
|
|
41
|
+
PolicyName: string
|
|
42
|
+
PolicyDocument: {
|
|
43
|
+
Version: '2012-10-17'
|
|
44
|
+
Statement: Array<{
|
|
45
|
+
Sid?: string
|
|
46
|
+
Effect: 'Allow' | 'Deny'
|
|
47
|
+
Action: string | string[]
|
|
48
|
+
Resource: string | string[]
|
|
49
|
+
Condition?: Record<string, unknown>
|
|
50
|
+
}>
|
|
51
|
+
}
|
|
52
|
+
Roles?: string[]
|
|
53
|
+
Users?: string[]
|
|
54
|
+
Groups?: string[]
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
export declare interface IAMUser extends CloudFormationResource {
|
|
58
|
+
Type: 'AWS::IAM::User'
|
|
59
|
+
Properties: {
|
|
60
|
+
UserName?: string
|
|
61
|
+
ManagedPolicyArns?: string[]
|
|
62
|
+
Groups?: string[]
|
|
63
|
+
Policies?: Array<{
|
|
64
|
+
PolicyName: string
|
|
65
|
+
PolicyDocument: {
|
|
66
|
+
Version: '2012-10-17'
|
|
67
|
+
Statement: Array<{
|
|
68
|
+
Effect: 'Allow' | 'Deny'
|
|
69
|
+
Action: string | string[]
|
|
70
|
+
Resource: string | string[]
|
|
71
|
+
}>
|
|
72
|
+
}
|
|
73
|
+
}>
|
|
74
|
+
Tags?: Array<{
|
|
75
|
+
Key: string
|
|
76
|
+
Value: string
|
|
77
|
+
}>
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
export declare interface IAMManagedPolicy extends CloudFormationResource {
|
|
81
|
+
Type: 'AWS::IAM::ManagedPolicy'
|
|
82
|
+
Properties: {
|
|
83
|
+
ManagedPolicyName?: string
|
|
84
|
+
Description?: string
|
|
85
|
+
Path?: string
|
|
86
|
+
PolicyDocument: {
|
|
87
|
+
Version: '2012-10-17'
|
|
88
|
+
Statement: Array<{
|
|
89
|
+
Sid?: string
|
|
90
|
+
Effect: 'Allow' | 'Deny'
|
|
91
|
+
Action: string | string[]
|
|
92
|
+
Resource: string | string[]
|
|
93
|
+
Condition?: Record<string, unknown>
|
|
94
|
+
}>
|
|
95
|
+
}
|
|
96
|
+
Roles?: Array<string | { Ref: string }>
|
|
97
|
+
Users?: Array<string | { Ref: string }>
|
|
98
|
+
Groups?: Array<string | { Ref: string }>
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
export declare interface IAMGroup extends CloudFormationResource {
|
|
102
|
+
Type: 'AWS::IAM::Group'
|
|
103
|
+
Properties: {
|
|
104
|
+
GroupName?: string
|
|
105
|
+
ManagedPolicyArns?: string[]
|
|
106
|
+
Policies?: Array<{
|
|
107
|
+
PolicyName: string
|
|
108
|
+
PolicyDocument: {
|
|
109
|
+
Version: '2012-10-17'
|
|
110
|
+
Statement: Array<{
|
|
111
|
+
Effect: 'Allow' | 'Deny'
|
|
112
|
+
Action: string | string[]
|
|
113
|
+
Resource: string | string[]
|
|
114
|
+
}>
|
|
115
|
+
}
|
|
116
|
+
}>
|
|
117
|
+
Path?: string
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
export declare interface IAMAccessKey extends CloudFormationResource {
|
|
121
|
+
Type: 'AWS::IAM::AccessKey'
|
|
122
|
+
Properties: {
|
|
123
|
+
UserName: string | { Ref: string }
|
|
124
|
+
Status?: 'Active' | 'Inactive'
|
|
125
|
+
Serial?: number
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
export declare interface IAMInstanceProfile extends CloudFormationResource {
|
|
129
|
+
Type: 'AWS::IAM::InstanceProfile'
|
|
130
|
+
Properties: {
|
|
131
|
+
InstanceProfileName?: string
|
|
132
|
+
Path?: string
|
|
133
|
+
Roles: Array<string | { Ref: string }>
|
|
134
|
+
}
|
|
135
|
+
}
|