@stacksjs/ts-cloud 0.1.3 → 0.1.5
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/README.md +98 -13
- package/dist/aws/acm.d.ts +129 -0
- package/dist/aws/application-autoscaling.d.ts +282 -0
- package/dist/aws/bedrock.d.ts +2292 -0
- package/dist/aws/client.d.ts +79 -0
- package/dist/aws/cloudformation.d.ts +105 -0
- package/dist/aws/cloudfront.d.ts +265 -0
- package/dist/aws/cloudwatch-logs.d.ts +48 -0
- package/dist/aws/comprehend.d.ts +505 -0
- package/dist/aws/connect.d.ts +377 -0
- package/dist/aws/deploy-imap.d.ts +14 -0
- package/dist/aws/dynamodb.d.ts +176 -0
- package/dist/aws/ec2.d.ts +272 -0
- package/dist/aws/ecr.d.ts +149 -0
- package/dist/aws/ecs.d.ts +162 -0
- package/dist/aws/elasticache.d.ts +71 -0
- package/dist/aws/elbv2.d.ts +248 -0
- package/dist/aws/email.d.ts +175 -0
- package/dist/aws/eventbridge.d.ts +142 -0
- package/dist/aws/iam.d.ts +638 -0
- package/dist/aws/imap-server.d.ts +119 -0
- package/{src/aws/index.ts → dist/aws/index.d.ts} +62 -83
- package/{src/aws/kendra.ts → dist/aws/kendra.d.ts} +71 -386
- package/dist/aws/lambda.d.ts +232 -0
- package/dist/aws/opensearch.d.ts +87 -0
- package/dist/aws/personalize.d.ts +516 -0
- package/dist/aws/polly.d.ts +214 -0
- package/dist/aws/rds.d.ts +240 -0
- package/dist/aws/rekognition.d.ts +543 -0
- package/dist/aws/route53-domains.d.ts +113 -0
- package/dist/aws/route53.d.ts +215 -0
- package/dist/aws/s3.d.ts +212 -0
- package/dist/aws/scheduler.d.ts +140 -0
- package/dist/aws/secrets-manager.d.ts +170 -0
- package/dist/aws/ses.d.ts +288 -0
- package/dist/aws/setup-phone.d.ts +0 -0
- package/dist/aws/setup-sms.d.ts +115 -0
- package/dist/aws/sms.d.ts +304 -0
- package/dist/aws/smtp-server.d.ts +61 -0
- package/dist/aws/sns.d.ts +117 -0
- package/dist/aws/sqs.d.ts +65 -0
- package/dist/aws/ssm.d.ts +179 -0
- package/dist/aws/sts.d.ts +15 -0
- package/dist/aws/support.d.ts +104 -0
- package/dist/aws/test-imap.d.ts +0 -0
- package/dist/aws/textract.d.ts +403 -0
- package/dist/aws/transcribe.d.ts +60 -0
- package/dist/aws/translate.d.ts +358 -0
- package/dist/aws/voice.d.ts +219 -0
- package/dist/bin/cli.js +1724 -0
- package/dist/config.d.ts +7 -0
- package/dist/deploy/index.d.ts +2 -0
- package/dist/deploy/static-site-external-dns.d.ts +51 -0
- package/dist/deploy/static-site.d.ts +71 -0
- package/dist/dns/cloudflare.d.ts +52 -0
- package/dist/dns/godaddy.d.ts +38 -0
- package/dist/dns/index.d.ts +45 -0
- package/dist/dns/porkbun.d.ts +18 -0
- package/dist/dns/route53-adapter.d.ts +38 -0
- package/{src/dns/types.ts → dist/dns/types.d.ts} +26 -63
- package/dist/dns/validator.d.ts +78 -0
- package/dist/generators/index.d.ts +1 -0
- package/dist/generators/infrastructure.d.ts +30 -0
- package/{src/index.ts → dist/index.d.ts} +70 -93
- package/dist/index.js +7881 -0
- package/dist/push/apns.d.ts +60 -0
- package/dist/push/fcm.d.ts +117 -0
- package/dist/push/index.d.ts +14 -0
- package/dist/security/pre-deploy-scanner.d.ts +69 -0
- package/dist/ssl/acme-client.d.ts +67 -0
- package/dist/ssl/index.d.ts +2 -0
- package/dist/ssl/letsencrypt.d.ts +48 -0
- package/dist/types.d.ts +1 -0
- package/dist/utils/cli.d.ts +123 -0
- package/dist/validation/index.d.ts +1 -0
- package/dist/validation/template.d.ts +23 -0
- package/package.json +8 -8
- package/bin/cli.ts +0 -133
- package/bin/commands/analytics.ts +0 -328
- package/bin/commands/api.ts +0 -379
- package/bin/commands/assets.ts +0 -221
- package/bin/commands/audit.ts +0 -501
- package/bin/commands/backup.ts +0 -682
- package/bin/commands/cache.ts +0 -294
- package/bin/commands/cdn.ts +0 -281
- package/bin/commands/config.ts +0 -202
- package/bin/commands/container.ts +0 -105
- package/bin/commands/cost.ts +0 -208
- package/bin/commands/database.ts +0 -401
- package/bin/commands/deploy.ts +0 -674
- package/bin/commands/domain.ts +0 -397
- package/bin/commands/email.ts +0 -423
- package/bin/commands/environment.ts +0 -285
- package/bin/commands/events.ts +0 -424
- package/bin/commands/firewall.ts +0 -145
- package/bin/commands/function.ts +0 -116
- package/bin/commands/generate.ts +0 -280
- package/bin/commands/git.ts +0 -139
- package/bin/commands/iam.ts +0 -464
- package/bin/commands/index.ts +0 -48
- package/bin/commands/init.ts +0 -120
- package/bin/commands/logs.ts +0 -148
- package/bin/commands/network.ts +0 -579
- package/bin/commands/notify.ts +0 -489
- package/bin/commands/queue.ts +0 -407
- package/bin/commands/scheduler.ts +0 -370
- package/bin/commands/secrets.ts +0 -54
- package/bin/commands/server.ts +0 -629
- package/bin/commands/shared.ts +0 -97
- package/bin/commands/ssl.ts +0 -138
- package/bin/commands/stack.ts +0 -325
- package/bin/commands/status.ts +0 -385
- package/bin/commands/storage.ts +0 -450
- package/bin/commands/team.ts +0 -96
- package/bin/commands/tunnel.ts +0 -489
- package/bin/commands/utils.ts +0 -202
- package/build.ts +0 -15
- package/cloud +0 -2
- package/src/aws/acm.ts +0 -768
- package/src/aws/application-autoscaling.ts +0 -845
- package/src/aws/bedrock.ts +0 -4074
- package/src/aws/client.ts +0 -878
- package/src/aws/cloudformation.ts +0 -896
- package/src/aws/cloudfront.ts +0 -1531
- package/src/aws/cloudwatch-logs.ts +0 -154
- package/src/aws/comprehend.ts +0 -839
- package/src/aws/connect.ts +0 -1056
- package/src/aws/deploy-imap.ts +0 -384
- package/src/aws/dynamodb.ts +0 -340
- package/src/aws/ec2.ts +0 -1385
- package/src/aws/ecr.ts +0 -621
- package/src/aws/ecs.ts +0 -615
- package/src/aws/elasticache.ts +0 -301
- package/src/aws/elbv2.ts +0 -942
- package/src/aws/email.ts +0 -928
- package/src/aws/eventbridge.ts +0 -248
- package/src/aws/iam.ts +0 -1689
- package/src/aws/imap-server.ts +0 -2100
- package/src/aws/lambda.ts +0 -786
- package/src/aws/opensearch.ts +0 -158
- package/src/aws/personalize.ts +0 -977
- package/src/aws/polly.ts +0 -559
- package/src/aws/rds.ts +0 -888
- package/src/aws/rekognition.ts +0 -846
- package/src/aws/route53-domains.ts +0 -359
- package/src/aws/route53.ts +0 -1046
- package/src/aws/s3.ts +0 -2318
- package/src/aws/scheduler.ts +0 -571
- package/src/aws/secrets-manager.ts +0 -769
- package/src/aws/ses.ts +0 -1081
- package/src/aws/setup-phone.ts +0 -104
- package/src/aws/setup-sms.ts +0 -580
- package/src/aws/sms.ts +0 -1735
- package/src/aws/smtp-server.ts +0 -531
- package/src/aws/sns.ts +0 -758
- package/src/aws/sqs.ts +0 -382
- package/src/aws/ssm.ts +0 -807
- package/src/aws/sts.ts +0 -92
- package/src/aws/support.ts +0 -391
- package/src/aws/test-imap.ts +0 -86
- package/src/aws/textract.ts +0 -780
- package/src/aws/transcribe.ts +0 -108
- package/src/aws/translate.ts +0 -641
- package/src/aws/voice.ts +0 -1379
- package/src/config.ts +0 -35
- package/src/deploy/index.ts +0 -7
- package/src/deploy/static-site-external-dns.ts +0 -906
- package/src/deploy/static-site.ts +0 -1125
- package/src/dns/godaddy.ts +0 -412
- package/src/dns/index.ts +0 -183
- package/src/dns/porkbun.ts +0 -362
- package/src/dns/route53-adapter.ts +0 -414
- package/src/dns/validator.ts +0 -369
- package/src/generators/index.ts +0 -5
- package/src/generators/infrastructure.ts +0 -1660
- package/src/push/apns.ts +0 -452
- package/src/push/fcm.ts +0 -506
- package/src/push/index.ts +0 -58
- package/src/ssl/acme-client.ts +0 -478
- package/src/ssl/index.ts +0 -7
- package/src/ssl/letsencrypt.ts +0 -747
- package/src/types.ts +0 -2
- package/src/utils/cli.ts +0 -398
- package/src/validation/index.ts +0 -5
- package/src/validation/template.ts +0 -405
- package/test/index.test.ts +0 -128
- package/tsconfig.json +0 -18
|
@@ -0,0 +1,638 @@
|
|
|
1
|
+
import { AWSClient } from './client';
|
|
2
|
+
// ============================================================================
|
|
3
|
+
// Types - Users
|
|
4
|
+
// ============================================================================
|
|
5
|
+
export declare interface IAMUser {
|
|
6
|
+
UserName: string
|
|
7
|
+
UserId: string
|
|
8
|
+
Arn: string
|
|
9
|
+
Path?: string
|
|
10
|
+
CreateDate?: string
|
|
11
|
+
PasswordLastUsed?: string
|
|
12
|
+
PermissionsBoundary?: {
|
|
13
|
+
PermissionsBoundaryType: string
|
|
14
|
+
PermissionsBoundaryArn: string
|
|
15
|
+
}
|
|
16
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
17
|
+
}
|
|
18
|
+
export declare interface CreateUserParams {
|
|
19
|
+
UserName: string
|
|
20
|
+
Path?: string
|
|
21
|
+
PermissionsBoundary?: string
|
|
22
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
23
|
+
}
|
|
24
|
+
export declare interface GetUserParams {
|
|
25
|
+
UserName?: string
|
|
26
|
+
}
|
|
27
|
+
export declare interface ListUsersParams {
|
|
28
|
+
PathPrefix?: string
|
|
29
|
+
Marker?: string
|
|
30
|
+
MaxItems?: number
|
|
31
|
+
}
|
|
32
|
+
export declare interface UpdateUserParams {
|
|
33
|
+
UserName: string
|
|
34
|
+
NewUserName?: string
|
|
35
|
+
NewPath?: string
|
|
36
|
+
}
|
|
37
|
+
export declare interface DeleteUserParams {
|
|
38
|
+
UserName: string
|
|
39
|
+
}
|
|
40
|
+
// ============================================================================
|
|
41
|
+
// Types - Groups
|
|
42
|
+
// ============================================================================
|
|
43
|
+
export declare interface IAMGroup {
|
|
44
|
+
GroupName: string
|
|
45
|
+
GroupId: string
|
|
46
|
+
Arn: string
|
|
47
|
+
Path?: string
|
|
48
|
+
CreateDate?: string
|
|
49
|
+
}
|
|
50
|
+
export declare interface CreateGroupParams {
|
|
51
|
+
GroupName: string
|
|
52
|
+
Path?: string
|
|
53
|
+
}
|
|
54
|
+
export declare interface GetGroupParams {
|
|
55
|
+
GroupName: string
|
|
56
|
+
Marker?: string
|
|
57
|
+
MaxItems?: number
|
|
58
|
+
}
|
|
59
|
+
export declare interface ListGroupsParams {
|
|
60
|
+
PathPrefix?: string
|
|
61
|
+
Marker?: string
|
|
62
|
+
MaxItems?: number
|
|
63
|
+
}
|
|
64
|
+
export declare interface UpdateGroupParams {
|
|
65
|
+
GroupName: string
|
|
66
|
+
NewGroupName?: string
|
|
67
|
+
NewPath?: string
|
|
68
|
+
}
|
|
69
|
+
export declare interface DeleteGroupParams {
|
|
70
|
+
GroupName: string
|
|
71
|
+
}
|
|
72
|
+
export declare interface AddUserToGroupParams {
|
|
73
|
+
GroupName: string
|
|
74
|
+
UserName: string
|
|
75
|
+
}
|
|
76
|
+
export declare interface RemoveUserFromGroupParams {
|
|
77
|
+
GroupName: string
|
|
78
|
+
UserName: string
|
|
79
|
+
}
|
|
80
|
+
export declare interface ListGroupsForUserParams {
|
|
81
|
+
UserName: string
|
|
82
|
+
Marker?: string
|
|
83
|
+
MaxItems?: number
|
|
84
|
+
}
|
|
85
|
+
// ============================================================================
|
|
86
|
+
// Types - Roles
|
|
87
|
+
// ============================================================================
|
|
88
|
+
export declare interface IAMRole {
|
|
89
|
+
RoleName: string
|
|
90
|
+
RoleId: string
|
|
91
|
+
Arn: string
|
|
92
|
+
Path?: string
|
|
93
|
+
CreateDate?: string
|
|
94
|
+
AssumeRolePolicyDocument?: string
|
|
95
|
+
Description?: string
|
|
96
|
+
MaxSessionDuration?: number
|
|
97
|
+
PermissionsBoundary?: {
|
|
98
|
+
PermissionsBoundaryType: string
|
|
99
|
+
PermissionsBoundaryArn: string
|
|
100
|
+
}
|
|
101
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
102
|
+
RoleLastUsed?: {
|
|
103
|
+
LastUsedDate?: string
|
|
104
|
+
Region?: string
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
export declare interface CreateRoleParams {
|
|
108
|
+
RoleName: string
|
|
109
|
+
AssumeRolePolicyDocument: string
|
|
110
|
+
Path?: string
|
|
111
|
+
Description?: string
|
|
112
|
+
MaxSessionDuration?: number
|
|
113
|
+
PermissionsBoundary?: string
|
|
114
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
115
|
+
}
|
|
116
|
+
export declare interface GetRoleParams {
|
|
117
|
+
RoleName: string
|
|
118
|
+
}
|
|
119
|
+
export declare interface ListRolesParams {
|
|
120
|
+
PathPrefix?: string
|
|
121
|
+
Marker?: string
|
|
122
|
+
MaxItems?: number
|
|
123
|
+
}
|
|
124
|
+
export declare interface UpdateRoleParams {
|
|
125
|
+
RoleName: string
|
|
126
|
+
Description?: string
|
|
127
|
+
MaxSessionDuration?: number
|
|
128
|
+
}
|
|
129
|
+
export declare interface UpdateRoleDescriptionParams {
|
|
130
|
+
RoleName: string
|
|
131
|
+
Description: string
|
|
132
|
+
}
|
|
133
|
+
export declare interface UpdateAssumeRolePolicyParams {
|
|
134
|
+
RoleName: string
|
|
135
|
+
PolicyDocument: string
|
|
136
|
+
}
|
|
137
|
+
export declare interface DeleteRoleParams {
|
|
138
|
+
RoleName: string
|
|
139
|
+
}
|
|
140
|
+
export declare interface TagRoleParams {
|
|
141
|
+
RoleName: string
|
|
142
|
+
Tags: Array<{ Key: string; Value: string }>
|
|
143
|
+
}
|
|
144
|
+
export declare interface UntagRoleParams {
|
|
145
|
+
RoleName: string
|
|
146
|
+
TagKeys: string[]
|
|
147
|
+
}
|
|
148
|
+
export declare interface ListRoleTagsParams {
|
|
149
|
+
RoleName: string
|
|
150
|
+
Marker?: string
|
|
151
|
+
MaxItems?: number
|
|
152
|
+
}
|
|
153
|
+
// ============================================================================
|
|
154
|
+
// Types - Policies
|
|
155
|
+
// ============================================================================
|
|
156
|
+
export declare interface IAMPolicy {
|
|
157
|
+
PolicyName: string
|
|
158
|
+
PolicyId: string
|
|
159
|
+
Arn: string
|
|
160
|
+
Path?: string
|
|
161
|
+
DefaultVersionId?: string
|
|
162
|
+
AttachmentCount?: number
|
|
163
|
+
PermissionsBoundaryUsageCount?: number
|
|
164
|
+
IsAttachable?: boolean
|
|
165
|
+
Description?: string
|
|
166
|
+
CreateDate?: string
|
|
167
|
+
UpdateDate?: string
|
|
168
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
169
|
+
}
|
|
170
|
+
export declare interface PolicyVersion {
|
|
171
|
+
VersionId: string
|
|
172
|
+
IsDefaultVersion: boolean
|
|
173
|
+
CreateDate?: string
|
|
174
|
+
Document?: string
|
|
175
|
+
}
|
|
176
|
+
export declare interface CreatePolicyParams {
|
|
177
|
+
PolicyName: string
|
|
178
|
+
PolicyDocument: string
|
|
179
|
+
Path?: string
|
|
180
|
+
Description?: string
|
|
181
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
182
|
+
}
|
|
183
|
+
export declare interface GetPolicyParams {
|
|
184
|
+
PolicyArn: string
|
|
185
|
+
}
|
|
186
|
+
export declare interface GetPolicyVersionParams {
|
|
187
|
+
PolicyArn: string
|
|
188
|
+
VersionId: string
|
|
189
|
+
}
|
|
190
|
+
export declare interface ListPoliciesParams {
|
|
191
|
+
Scope?: 'All' | 'AWS' | 'Local'
|
|
192
|
+
OnlyAttached?: boolean
|
|
193
|
+
PathPrefix?: string
|
|
194
|
+
PolicyUsageFilter?: 'PermissionsPolicy' | 'PermissionsBoundary'
|
|
195
|
+
Marker?: string
|
|
196
|
+
MaxItems?: number
|
|
197
|
+
}
|
|
198
|
+
export declare interface ListPolicyVersionsParams {
|
|
199
|
+
PolicyArn: string
|
|
200
|
+
Marker?: string
|
|
201
|
+
MaxItems?: number
|
|
202
|
+
}
|
|
203
|
+
export declare interface CreatePolicyVersionParams {
|
|
204
|
+
PolicyArn: string
|
|
205
|
+
PolicyDocument: string
|
|
206
|
+
SetAsDefault?: boolean
|
|
207
|
+
}
|
|
208
|
+
export declare interface DeletePolicyVersionParams {
|
|
209
|
+
PolicyArn: string
|
|
210
|
+
VersionId: string
|
|
211
|
+
}
|
|
212
|
+
export declare interface SetDefaultPolicyVersionParams {
|
|
213
|
+
PolicyArn: string
|
|
214
|
+
VersionId: string
|
|
215
|
+
}
|
|
216
|
+
export declare interface DeletePolicyParams {
|
|
217
|
+
PolicyArn: string
|
|
218
|
+
}
|
|
219
|
+
export declare interface AttachUserPolicyParams {
|
|
220
|
+
UserName: string
|
|
221
|
+
PolicyArn: string
|
|
222
|
+
}
|
|
223
|
+
export declare interface DetachUserPolicyParams {
|
|
224
|
+
UserName: string
|
|
225
|
+
PolicyArn: string
|
|
226
|
+
}
|
|
227
|
+
export declare interface AttachGroupPolicyParams {
|
|
228
|
+
GroupName: string
|
|
229
|
+
PolicyArn: string
|
|
230
|
+
}
|
|
231
|
+
export declare interface DetachGroupPolicyParams {
|
|
232
|
+
GroupName: string
|
|
233
|
+
PolicyArn: string
|
|
234
|
+
}
|
|
235
|
+
export declare interface AttachRolePolicyParams {
|
|
236
|
+
RoleName: string
|
|
237
|
+
PolicyArn: string
|
|
238
|
+
}
|
|
239
|
+
export declare interface DetachRolePolicyParams {
|
|
240
|
+
RoleName: string
|
|
241
|
+
PolicyArn: string
|
|
242
|
+
}
|
|
243
|
+
export declare interface ListAttachedUserPoliciesParams {
|
|
244
|
+
UserName: string
|
|
245
|
+
PathPrefix?: string
|
|
246
|
+
Marker?: string
|
|
247
|
+
MaxItems?: number
|
|
248
|
+
}
|
|
249
|
+
export declare interface ListAttachedGroupPoliciesParams {
|
|
250
|
+
GroupName: string
|
|
251
|
+
PathPrefix?: string
|
|
252
|
+
Marker?: string
|
|
253
|
+
MaxItems?: number
|
|
254
|
+
}
|
|
255
|
+
export declare interface ListAttachedRolePoliciesParams {
|
|
256
|
+
RoleName: string
|
|
257
|
+
PathPrefix?: string
|
|
258
|
+
Marker?: string
|
|
259
|
+
MaxItems?: number
|
|
260
|
+
}
|
|
261
|
+
export declare interface ListEntitiesForPolicyParams {
|
|
262
|
+
PolicyArn: string
|
|
263
|
+
EntityFilter?: 'User' | 'Role' | 'Group' | 'LocalManagedPolicy' | 'AWSManagedPolicy'
|
|
264
|
+
PathPrefix?: string
|
|
265
|
+
PolicyUsageFilter?: 'PermissionsPolicy' | 'PermissionsBoundary'
|
|
266
|
+
Marker?: string
|
|
267
|
+
MaxItems?: number
|
|
268
|
+
}
|
|
269
|
+
// ============================================================================
|
|
270
|
+
// Types - Inline Policies
|
|
271
|
+
// ============================================================================
|
|
272
|
+
export declare interface PutUserPolicyParams {
|
|
273
|
+
UserName: string
|
|
274
|
+
PolicyName: string
|
|
275
|
+
PolicyDocument: string
|
|
276
|
+
}
|
|
277
|
+
export declare interface GetUserPolicyParams {
|
|
278
|
+
UserName: string
|
|
279
|
+
PolicyName: string
|
|
280
|
+
}
|
|
281
|
+
export declare interface DeleteUserPolicyParams {
|
|
282
|
+
UserName: string
|
|
283
|
+
PolicyName: string
|
|
284
|
+
}
|
|
285
|
+
export declare interface ListUserPoliciesParams {
|
|
286
|
+
UserName: string
|
|
287
|
+
Marker?: string
|
|
288
|
+
MaxItems?: number
|
|
289
|
+
}
|
|
290
|
+
export declare interface PutGroupPolicyParams {
|
|
291
|
+
GroupName: string
|
|
292
|
+
PolicyName: string
|
|
293
|
+
PolicyDocument: string
|
|
294
|
+
}
|
|
295
|
+
export declare interface GetGroupPolicyParams {
|
|
296
|
+
GroupName: string
|
|
297
|
+
PolicyName: string
|
|
298
|
+
}
|
|
299
|
+
export declare interface DeleteGroupPolicyParams {
|
|
300
|
+
GroupName: string
|
|
301
|
+
PolicyName: string
|
|
302
|
+
}
|
|
303
|
+
export declare interface ListGroupPoliciesParams {
|
|
304
|
+
GroupName: string
|
|
305
|
+
Marker?: string
|
|
306
|
+
MaxItems?: number
|
|
307
|
+
}
|
|
308
|
+
export declare interface PutRolePolicyParams {
|
|
309
|
+
RoleName: string
|
|
310
|
+
PolicyName: string
|
|
311
|
+
PolicyDocument: string
|
|
312
|
+
}
|
|
313
|
+
export declare interface GetRolePolicyParams {
|
|
314
|
+
RoleName: string
|
|
315
|
+
PolicyName: string
|
|
316
|
+
}
|
|
317
|
+
export declare interface DeleteRolePolicyParams {
|
|
318
|
+
RoleName: string
|
|
319
|
+
PolicyName: string
|
|
320
|
+
}
|
|
321
|
+
export declare interface ListRolePoliciesParams {
|
|
322
|
+
RoleName: string
|
|
323
|
+
Marker?: string
|
|
324
|
+
MaxItems?: number
|
|
325
|
+
}
|
|
326
|
+
// ============================================================================
|
|
327
|
+
// Types - Access Keys
|
|
328
|
+
// ============================================================================
|
|
329
|
+
export declare interface AccessKey {
|
|
330
|
+
UserName: string
|
|
331
|
+
AccessKeyId: string
|
|
332
|
+
Status: 'Active' | 'Inactive'
|
|
333
|
+
CreateDate?: string
|
|
334
|
+
}
|
|
335
|
+
export declare interface AccessKeyMetadata {
|
|
336
|
+
UserName?: string
|
|
337
|
+
AccessKeyId: string
|
|
338
|
+
Status: 'Active' | 'Inactive'
|
|
339
|
+
CreateDate?: string
|
|
340
|
+
}
|
|
341
|
+
export declare interface CreateAccessKeyParams {
|
|
342
|
+
UserName?: string
|
|
343
|
+
}
|
|
344
|
+
export declare interface CreateAccessKeyResult {
|
|
345
|
+
AccessKey: {
|
|
346
|
+
UserName: string
|
|
347
|
+
AccessKeyId: string
|
|
348
|
+
Status: 'Active' | 'Inactive'
|
|
349
|
+
SecretAccessKey: string
|
|
350
|
+
CreateDate?: string
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
export declare interface ListAccessKeysParams {
|
|
354
|
+
UserName?: string
|
|
355
|
+
Marker?: string
|
|
356
|
+
MaxItems?: number
|
|
357
|
+
}
|
|
358
|
+
export declare interface UpdateAccessKeyParams {
|
|
359
|
+
UserName?: string
|
|
360
|
+
AccessKeyId: string
|
|
361
|
+
Status: 'Active' | 'Inactive'
|
|
362
|
+
}
|
|
363
|
+
export declare interface DeleteAccessKeyParams {
|
|
364
|
+
UserName?: string
|
|
365
|
+
AccessKeyId: string
|
|
366
|
+
}
|
|
367
|
+
export declare interface GetAccessKeyLastUsedParams {
|
|
368
|
+
AccessKeyId: string
|
|
369
|
+
}
|
|
370
|
+
// ============================================================================
|
|
371
|
+
// Types - Instance Profiles
|
|
372
|
+
// ============================================================================
|
|
373
|
+
export declare interface InstanceProfile {
|
|
374
|
+
InstanceProfileName: string
|
|
375
|
+
InstanceProfileId: string
|
|
376
|
+
Arn: string
|
|
377
|
+
Path?: string
|
|
378
|
+
CreateDate?: string
|
|
379
|
+
Roles?: IAMRole[]
|
|
380
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
381
|
+
}
|
|
382
|
+
export declare interface CreateInstanceProfileParams {
|
|
383
|
+
InstanceProfileName: string
|
|
384
|
+
Path?: string
|
|
385
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
386
|
+
}
|
|
387
|
+
export declare interface GetInstanceProfileParams {
|
|
388
|
+
InstanceProfileName: string
|
|
389
|
+
}
|
|
390
|
+
export declare interface ListInstanceProfilesParams {
|
|
391
|
+
PathPrefix?: string
|
|
392
|
+
Marker?: string
|
|
393
|
+
MaxItems?: number
|
|
394
|
+
}
|
|
395
|
+
export declare interface ListInstanceProfilesForRoleParams {
|
|
396
|
+
RoleName: string
|
|
397
|
+
Marker?: string
|
|
398
|
+
MaxItems?: number
|
|
399
|
+
}
|
|
400
|
+
export declare interface AddRoleToInstanceProfileParams {
|
|
401
|
+
InstanceProfileName: string
|
|
402
|
+
RoleName: string
|
|
403
|
+
}
|
|
404
|
+
export declare interface RemoveRoleFromInstanceProfileParams {
|
|
405
|
+
InstanceProfileName: string
|
|
406
|
+
RoleName: string
|
|
407
|
+
}
|
|
408
|
+
export declare interface DeleteInstanceProfileParams {
|
|
409
|
+
InstanceProfileName: string
|
|
410
|
+
}
|
|
411
|
+
// ============================================================================
|
|
412
|
+
// Types - Server Certificates
|
|
413
|
+
// ============================================================================
|
|
414
|
+
export declare interface ServerCertificate {
|
|
415
|
+
ServerCertificateName: string
|
|
416
|
+
ServerCertificateId: string
|
|
417
|
+
Arn: string
|
|
418
|
+
Path?: string
|
|
419
|
+
UploadDate?: string
|
|
420
|
+
Expiration?: string
|
|
421
|
+
}
|
|
422
|
+
export declare interface ServerCertificateMetadata {
|
|
423
|
+
ServerCertificateName: string
|
|
424
|
+
ServerCertificateId: string
|
|
425
|
+
Arn: string
|
|
426
|
+
Path?: string
|
|
427
|
+
UploadDate?: string
|
|
428
|
+
Expiration?: string
|
|
429
|
+
}
|
|
430
|
+
export declare interface UploadServerCertificateParams {
|
|
431
|
+
ServerCertificateName: string
|
|
432
|
+
CertificateBody: string
|
|
433
|
+
PrivateKey: string
|
|
434
|
+
CertificateChain?: string
|
|
435
|
+
Path?: string
|
|
436
|
+
Tags?: Array<{ Key: string; Value: string }>
|
|
437
|
+
}
|
|
438
|
+
export declare interface GetServerCertificateParams {
|
|
439
|
+
ServerCertificateName: string
|
|
440
|
+
}
|
|
441
|
+
export declare interface ListServerCertificatesParams {
|
|
442
|
+
PathPrefix?: string
|
|
443
|
+
Marker?: string
|
|
444
|
+
MaxItems?: number
|
|
445
|
+
}
|
|
446
|
+
export declare interface UpdateServerCertificateParams {
|
|
447
|
+
ServerCertificateName: string
|
|
448
|
+
NewServerCertificateName?: string
|
|
449
|
+
NewPath?: string
|
|
450
|
+
}
|
|
451
|
+
export declare interface DeleteServerCertificateParams {
|
|
452
|
+
ServerCertificateName: string
|
|
453
|
+
}
|
|
454
|
+
// ============================================================================
|
|
455
|
+
// Types - Account and Password Policy
|
|
456
|
+
// ============================================================================
|
|
457
|
+
export declare interface PasswordPolicy {
|
|
458
|
+
MinimumPasswordLength?: number
|
|
459
|
+
RequireSymbols?: boolean
|
|
460
|
+
RequireNumbers?: boolean
|
|
461
|
+
RequireUppercaseCharacters?: boolean
|
|
462
|
+
RequireLowercaseCharacters?: boolean
|
|
463
|
+
AllowUsersToChangePassword?: boolean
|
|
464
|
+
ExpirePasswords?: boolean
|
|
465
|
+
MaxPasswordAge?: number
|
|
466
|
+
PasswordReusePrevention?: number
|
|
467
|
+
HardExpiry?: boolean
|
|
468
|
+
}
|
|
469
|
+
export declare interface UpdateAccountPasswordPolicyParams {
|
|
470
|
+
MinimumPasswordLength?: number
|
|
471
|
+
RequireSymbols?: boolean
|
|
472
|
+
RequireNumbers?: boolean
|
|
473
|
+
RequireUppercaseCharacters?: boolean
|
|
474
|
+
RequireLowercaseCharacters?: boolean
|
|
475
|
+
AllowUsersToChangePassword?: boolean
|
|
476
|
+
MaxPasswordAge?: number
|
|
477
|
+
PasswordReusePrevention?: number
|
|
478
|
+
HardExpiry?: boolean
|
|
479
|
+
}
|
|
480
|
+
export declare interface AccountSummary {
|
|
481
|
+
Users?: number
|
|
482
|
+
UsersQuota?: number
|
|
483
|
+
Groups?: number
|
|
484
|
+
GroupsQuota?: number
|
|
485
|
+
ServerCertificates?: number
|
|
486
|
+
ServerCertificatesQuota?: number
|
|
487
|
+
UserPolicySizeQuota?: number
|
|
488
|
+
GroupPolicySizeQuota?: number
|
|
489
|
+
GroupsPerUserQuota?: number
|
|
490
|
+
SigningCertificatesPerUserQuota?: number
|
|
491
|
+
AccessKeysPerUserQuota?: number
|
|
492
|
+
MFADevices?: number
|
|
493
|
+
MFADevicesInUse?: number
|
|
494
|
+
AccountMFAEnabled?: number
|
|
495
|
+
AccountAccessKeysPresent?: number
|
|
496
|
+
AccountSigningCertificatesPresent?: number
|
|
497
|
+
AttachedPoliciesPerGroupQuota?: number
|
|
498
|
+
AttachedPoliciesPerRoleQuota?: number
|
|
499
|
+
AttachedPoliciesPerUserQuota?: number
|
|
500
|
+
Policies?: number
|
|
501
|
+
PoliciesQuota?: number
|
|
502
|
+
PolicySizeQuota?: number
|
|
503
|
+
PolicyVersionsInUse?: number
|
|
504
|
+
PolicyVersionsInUseQuota?: number
|
|
505
|
+
VersionsPerPolicyQuota?: number
|
|
506
|
+
GlobalEndpointTokenVersion?: number
|
|
507
|
+
}
|
|
508
|
+
// ============================================================================
|
|
509
|
+
// Types - Policy Simulation
|
|
510
|
+
// ============================================================================
|
|
511
|
+
export declare interface SimulatePrincipalPolicyParams {
|
|
512
|
+
PolicySourceArn: string
|
|
513
|
+
ActionNames: string[]
|
|
514
|
+
ResourceArns?: string[]
|
|
515
|
+
ResourcePolicy?: string
|
|
516
|
+
ResourceOwner?: string
|
|
517
|
+
CallerArn?: string
|
|
518
|
+
ContextEntries?: Array<{
|
|
519
|
+
ContextKeyName: string
|
|
520
|
+
ContextKeyValues: string[]
|
|
521
|
+
ContextKeyType: string
|
|
522
|
+
}>
|
|
523
|
+
ResourceHandlingOption?: string
|
|
524
|
+
MaxItems?: number
|
|
525
|
+
Marker?: string
|
|
526
|
+
}
|
|
527
|
+
export declare interface EvaluationResult {
|
|
528
|
+
EvalActionName: string
|
|
529
|
+
EvalResourceName?: string
|
|
530
|
+
EvalDecision: string
|
|
531
|
+
MatchedStatements?: Array<{
|
|
532
|
+
SourcePolicyId?: string
|
|
533
|
+
SourcePolicyType?: string
|
|
534
|
+
}>
|
|
535
|
+
MissingContextValues?: string[]
|
|
536
|
+
}
|
|
537
|
+
export declare interface SimulatePolicyResponse {
|
|
538
|
+
EvaluationResults: EvaluationResult[]
|
|
539
|
+
IsTruncated: boolean
|
|
540
|
+
Marker?: string
|
|
541
|
+
}
|
|
542
|
+
// ============================================================================
|
|
543
|
+
// IAM Client
|
|
544
|
+
// ============================================================================
|
|
545
|
+
export declare class IAMClient {
|
|
546
|
+
private client: AWSClient;
|
|
547
|
+
private region: string;
|
|
548
|
+
constructor(region?: string);
|
|
549
|
+
private request(action: string, params?: object): Promise<any>;
|
|
550
|
+
createUser(params: CreateUserParams): Promise<IAMUser>;
|
|
551
|
+
getUser(params?: GetUserParams): Promise<IAMUser>;
|
|
552
|
+
listUsers(params?: ListUsersParams): Promise<{ Users: IAMUser[]; IsTruncated: boolean; Marker?: string }>;
|
|
553
|
+
updateUser(params: UpdateUserParams): Promise<void>;
|
|
554
|
+
deleteUser(params: DeleteUserParams): Promise<void>;
|
|
555
|
+
private parseUser(xml: string): IAMUser;
|
|
556
|
+
private parseUsers(xml: string): IAMUser[];
|
|
557
|
+
createGroup(params: CreateGroupParams): Promise<IAMGroup>;
|
|
558
|
+
getGroup(params: GetGroupParams): Promise<{ Group: IAMGroup; Users: IAMUser[]; IsTruncated: boolean; Marker?: string }>;
|
|
559
|
+
listGroups(params?: ListGroupsParams): Promise<{ Groups: IAMGroup[]; IsTruncated: boolean; Marker?: string }>;
|
|
560
|
+
updateGroup(params: UpdateGroupParams): Promise<void>;
|
|
561
|
+
deleteGroup(params: DeleteGroupParams): Promise<void>;
|
|
562
|
+
addUserToGroup(params: AddUserToGroupParams): Promise<void>;
|
|
563
|
+
removeUserFromGroup(params: RemoveUserFromGroupParams): Promise<void>;
|
|
564
|
+
listGroupsForUser(params: ListGroupsForUserParams): Promise<{ Groups: IAMGroup[]; IsTruncated: boolean; Marker?: string }>;
|
|
565
|
+
private parseGroup(xml: string): IAMGroup;
|
|
566
|
+
private parseGroups(xml: string): IAMGroup[];
|
|
567
|
+
createRole(params: CreateRoleParams): Promise<IAMRole>;
|
|
568
|
+
getRole(params: GetRoleParams): Promise<IAMRole>;
|
|
569
|
+
listRoles(params?: ListRolesParams): Promise<{ Roles: IAMRole[]; IsTruncated: boolean; Marker?: string }>;
|
|
570
|
+
updateRole(params: UpdateRoleParams): Promise<void>;
|
|
571
|
+
updateRoleDescription(params: UpdateRoleDescriptionParams): Promise<IAMRole>;
|
|
572
|
+
updateAssumeRolePolicy(params: UpdateAssumeRolePolicyParams): Promise<void>;
|
|
573
|
+
deleteRole(params: DeleteRoleParams): Promise<void>;
|
|
574
|
+
tagRole(params: TagRoleParams): Promise<void>;
|
|
575
|
+
untagRole(params: UntagRoleParams): Promise<void>;
|
|
576
|
+
listRoleTags(params: ListRoleTagsParams): Promise<{ Tags: Array<{ Key: string; Value: string }>; IsTruncated: boolean; Marker?: string }>;
|
|
577
|
+
private parseRole(xml: string): IAMRole;
|
|
578
|
+
private parseRoles(xml: string): IAMRole[];
|
|
579
|
+
private parseTags(xml: string): Array<{ Key: string; Value: string }>;
|
|
580
|
+
createPolicy(params: CreatePolicyParams): Promise<IAMPolicy>;
|
|
581
|
+
getPolicy(params: GetPolicyParams): Promise<IAMPolicy>;
|
|
582
|
+
getPolicyVersion(params: GetPolicyVersionParams): Promise<PolicyVersion>;
|
|
583
|
+
listPolicies(params?: ListPoliciesParams): Promise<{ Policies: IAMPolicy[]; IsTruncated: boolean; Marker?: string }>;
|
|
584
|
+
listPolicyVersions(params: ListPolicyVersionsParams): Promise<{ Versions: PolicyVersion[]; IsTruncated: boolean; Marker?: string }>;
|
|
585
|
+
createPolicyVersion(params: CreatePolicyVersionParams): Promise<PolicyVersion>;
|
|
586
|
+
deletePolicyVersion(params: DeletePolicyVersionParams): Promise<void>;
|
|
587
|
+
setDefaultPolicyVersion(params: SetDefaultPolicyVersionParams): Promise<void>;
|
|
588
|
+
deletePolicy(params: DeletePolicyParams): Promise<void>;
|
|
589
|
+
attachUserPolicy(params: AttachUserPolicyParams): Promise<void>;
|
|
590
|
+
detachUserPolicy(params: DetachUserPolicyParams): Promise<void>;
|
|
591
|
+
attachGroupPolicy(params: AttachGroupPolicyParams): Promise<void>;
|
|
592
|
+
detachGroupPolicy(params: DetachGroupPolicyParams): Promise<void>;
|
|
593
|
+
attachRolePolicy(params: AttachRolePolicyParams): Promise<void>;
|
|
594
|
+
detachRolePolicy(params: DetachRolePolicyParams): Promise<void>;
|
|
595
|
+
listAttachedUserPolicies(params: ListAttachedUserPoliciesParams): Promise<{ AttachedPolicies: Array<{ PolicyName: string; PolicyArn: string }>; IsTruncated: boolean; Marker?: string }>;
|
|
596
|
+
listAttachedGroupPolicies(params: ListAttachedGroupPoliciesParams): Promise<{ AttachedPolicies: Array<{ PolicyName: string; PolicyArn: string }>; IsTruncated: boolean; Marker?: string }>;
|
|
597
|
+
listAttachedRolePolicies(params: ListAttachedRolePoliciesParams): Promise<{ AttachedPolicies: Array<{ PolicyName: string; PolicyArn: string }>; IsTruncated: boolean; Marker?: string }>;
|
|
598
|
+
private parsePolicy(xml: string): IAMPolicy;
|
|
599
|
+
private parsePolicies(xml: string): IAMPolicy[];
|
|
600
|
+
private parsePolicyVersions(xml: string): PolicyVersion[];
|
|
601
|
+
private parseAttachedPolicies(xml: string): Array<{ PolicyName: string; PolicyArn: string }>;
|
|
602
|
+
putUserPolicy(params: PutUserPolicyParams): Promise<void>;
|
|
603
|
+
getUserPolicy(params: GetUserPolicyParams): Promise<{ UserName: string; PolicyName: string; PolicyDocument: string }>;
|
|
604
|
+
deleteUserPolicy(params: DeleteUserPolicyParams): Promise<void>;
|
|
605
|
+
listUserPolicies(params: ListUserPoliciesParams): Promise<{ PolicyNames: string[]; IsTruncated: boolean; Marker?: string }>;
|
|
606
|
+
putGroupPolicy(params: PutGroupPolicyParams): Promise<void>;
|
|
607
|
+
getGroupPolicy(params: GetGroupPolicyParams): Promise<{ GroupName: string; PolicyName: string; PolicyDocument: string }>;
|
|
608
|
+
deleteGroupPolicy(params: DeleteGroupPolicyParams): Promise<void>;
|
|
609
|
+
listGroupPolicies(params: ListGroupPoliciesParams): Promise<{ PolicyNames: string[]; IsTruncated: boolean; Marker?: string }>;
|
|
610
|
+
putRolePolicy(params: PutRolePolicyParams): Promise<void>;
|
|
611
|
+
getRolePolicy(params: GetRolePolicyParams): Promise<{ RoleName: string; PolicyName: string; PolicyDocument: string }>;
|
|
612
|
+
deleteRolePolicy(params: DeleteRolePolicyParams): Promise<void>;
|
|
613
|
+
listRolePolicies(params: ListRolePoliciesParams): Promise<{ PolicyNames: string[]; IsTruncated: boolean; Marker?: string }>;
|
|
614
|
+
createAccessKey(params?: CreateAccessKeyParams): Promise<CreateAccessKeyResult>;
|
|
615
|
+
listAccessKeys(params?: ListAccessKeysParams): Promise<{ AccessKeyMetadata: AccessKeyMetadata[]; IsTruncated: boolean; Marker?: string }>;
|
|
616
|
+
updateAccessKey(params: UpdateAccessKeyParams): Promise<void>;
|
|
617
|
+
deleteAccessKey(params: DeleteAccessKeyParams): Promise<void>;
|
|
618
|
+
getAccessKeyLastUsed(params: GetAccessKeyLastUsedParams): Promise<{ UserName: string; AccessKeyLastUsed: { LastUsedDate?: string; ServiceName?: string; Region?: string } }>;
|
|
619
|
+
private parseAccessKeys(xml: string): AccessKeyMetadata[];
|
|
620
|
+
createInstanceProfile(params: CreateInstanceProfileParams): Promise<InstanceProfile>;
|
|
621
|
+
getInstanceProfile(params: GetInstanceProfileParams): Promise<InstanceProfile>;
|
|
622
|
+
listInstanceProfiles(params?: ListInstanceProfilesParams): Promise<{ InstanceProfiles: InstanceProfile[]; IsTruncated: boolean; Marker?: string }>;
|
|
623
|
+
listInstanceProfilesForRole(params: ListInstanceProfilesForRoleParams): Promise<{ InstanceProfiles: InstanceProfile[]; IsTruncated: boolean; Marker?: string }>;
|
|
624
|
+
addRoleToInstanceProfile(params: AddRoleToInstanceProfileParams): Promise<void>;
|
|
625
|
+
removeRoleFromInstanceProfile(params: RemoveRoleFromInstanceProfileParams): Promise<void>;
|
|
626
|
+
deleteInstanceProfile(params: DeleteInstanceProfileParams): Promise<void>;
|
|
627
|
+
private parseInstanceProfile(xml: string): InstanceProfile;
|
|
628
|
+
private parseInstanceProfiles(xml: string): InstanceProfile[];
|
|
629
|
+
getAccountPasswordPolicy(): Promise<PasswordPolicy>;
|
|
630
|
+
updateAccountPasswordPolicy(params: UpdateAccountPasswordPolicyParams): Promise<void>;
|
|
631
|
+
deleteAccountPasswordPolicy(): Promise<void>;
|
|
632
|
+
getAccountSummary(): Promise<AccountSummary>;
|
|
633
|
+
listAccountAliases(): Promise<{ AccountAliases: string[]; IsTruncated: boolean; Marker?: string }>;
|
|
634
|
+
createAccountAlias(params: { AccountAlias: string }): Promise<void>;
|
|
635
|
+
deleteAccountAlias(params: { AccountAlias: string }): Promise<void>;
|
|
636
|
+
simulatePrincipalPolicy(params: SimulatePrincipalPolicyParams): Promise<SimulatePolicyResponse>;
|
|
637
|
+
private parseSimulationResults(xml: string): SimulatePolicyResponse;
|
|
638
|
+
}
|