@stacksjs/ts-cloud 0.2.3 → 0.2.6

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 (76) hide show
  1. package/dist/aws/acm.d.ts +215 -0
  2. package/dist/aws/application-autoscaling.d.ts +345 -0
  3. package/dist/aws/bedrock.d.ts +2672 -0
  4. package/dist/aws/client.d.ts +181 -0
  5. package/dist/aws/cloudformation.d.ts +187 -0
  6. package/dist/aws/cloudfront.d.ts +416 -0
  7. package/dist/aws/cloudwatch-logs.d.ts +70 -0
  8. package/dist/aws/comprehend.d.ts +616 -0
  9. package/dist/aws/connect.d.ts +533 -0
  10. package/dist/aws/deploy-imap.d.ts +26 -0
  11. package/dist/aws/dynamodb.d.ts +270 -0
  12. package/dist/aws/ec2.d.ts +545 -0
  13. package/dist/aws/ecr.d.ts +240 -0
  14. package/dist/aws/ecs.d.ts +267 -0
  15. package/dist/aws/efs.d.ts +36 -0
  16. package/dist/aws/elasticache.d.ts +112 -0
  17. package/dist/aws/elbv2.d.ts +389 -0
  18. package/dist/aws/email.d.ts +260 -0
  19. package/dist/aws/eventbridge.d.ts +197 -0
  20. package/dist/aws/iam.d.ts +1013 -0
  21. package/dist/aws/imap-server.d.ts +298 -0
  22. package/dist/aws/index.d.ts +53 -0
  23. package/dist/aws/kendra.d.ts +831 -0
  24. package/dist/aws/lambda.d.ts +319 -0
  25. package/dist/aws/opensearch.d.ts +121 -0
  26. package/dist/aws/personalize.d.ts +586 -0
  27. package/dist/aws/polly.d.ts +243 -0
  28. package/dist/aws/rds.d.ts +346 -0
  29. package/dist/aws/rekognition.d.ts +691 -0
  30. package/dist/aws/route53-domains.d.ts +161 -0
  31. package/dist/aws/route53.d.ts +330 -0
  32. package/dist/aws/s3.d.ts +535 -0
  33. package/dist/aws/scheduler.d.ts +224 -0
  34. package/dist/aws/secrets-manager.d.ts +267 -0
  35. package/dist/aws/ses.d.ts +441 -0
  36. package/dist/aws/setup-phone.d.ts +1 -0
  37. package/dist/aws/setup-sms.d.ts +116 -0
  38. package/dist/aws/sms.d.ts +477 -0
  39. package/dist/aws/smtp-server.d.ts +108 -0
  40. package/dist/aws/sns.d.ts +224 -0
  41. package/dist/aws/sqs.d.ts +107 -0
  42. package/dist/aws/ssm.d.ts +311 -0
  43. package/dist/aws/sts.d.ts +21 -0
  44. package/dist/aws/support.d.ts +139 -0
  45. package/dist/aws/test-imap.d.ts +15 -0
  46. package/dist/aws/textract.d.ts +477 -0
  47. package/dist/aws/transcribe.d.ts +79 -0
  48. package/dist/aws/translate.d.ts +424 -0
  49. package/dist/aws/voice.d.ts +361 -0
  50. package/dist/bin/cli.js +4480 -804
  51. package/dist/config.d.ts +5 -0
  52. package/dist/deploy/index.d.ts +6 -0
  53. package/dist/deploy/static-site-external-dns.d.ts +70 -0
  54. package/dist/deploy/static-site.d.ts +110 -0
  55. package/dist/dns/cloudflare.d.ts +74 -0
  56. package/dist/dns/godaddy.d.ts +63 -0
  57. package/dist/dns/index.d.ts +67 -0
  58. package/dist/dns/porkbun.d.ts +43 -0
  59. package/dist/dns/route53-adapter.d.ts +67 -0
  60. package/dist/dns/types.d.ts +100 -0
  61. package/dist/dns/validator.d.ts +105 -0
  62. package/dist/generators/index.d.ts +4 -0
  63. package/dist/generators/infrastructure.d.ts +115 -0
  64. package/dist/index.d.ts +9 -165
  65. package/dist/index.js +4971 -6013
  66. package/dist/push/apns.d.ts +140 -0
  67. package/dist/push/fcm.d.ts +205 -0
  68. package/dist/push/index.d.ts +44 -0
  69. package/dist/security/pre-deploy-scanner.d.ts +97 -0
  70. package/dist/ssl/acme-client.d.ts +133 -0
  71. package/dist/ssl/index.d.ts +6 -0
  72. package/dist/ssl/letsencrypt.d.ts +96 -0
  73. package/dist/utils/cli.d.ts +121 -0
  74. package/dist/validation/index.d.ts +4 -0
  75. package/dist/validation/template.d.ts +27 -0
  76. package/package.json +6 -6
@@ -0,0 +1,243 @@
1
+ /**
2
+ * AWS Polly Client
3
+ * Text-to-Speech service
4
+ * No external SDK dependencies - implements AWS Signature V4 directly
5
+ */
6
+ export type VoiceId = 'Aditi' | 'Amy' | 'Aria' | 'Arlet' | 'Arthur' | 'Astrid' | 'Ayanda' | 'Bianca' | 'Brian' | 'Camila' | 'Carla' | 'Carmen' | 'Celine' | 'Chantal' | 'Conchita' | 'Cristiano' | 'Daniel' | 'Dora' | 'Elin' | 'Emma' | 'Enrique' | 'Ewa' | 'Filiz' | 'Gabrielle' | 'Geraint' | 'Giorgio' | 'Gwyneth' | 'Hala' | 'Hannah' | 'Hans' | 'Hiujin' | 'Ida' | 'Ines' | 'Ivy' | 'Jacek' | 'Jan' | 'Joanna' | 'Joey' | 'Justin' | 'Kajal' | 'Karl' | 'Kazuha' | 'Kendra' | 'Kevin' | 'Kimberly' | 'Laura' | 'Lea' | 'Liam' | 'Lisa' | 'Liv' | 'Lotte' | 'Lucia' | 'Lupe' | 'Mads' | 'Maja' | 'Marlene' | 'Mathieu' | 'Matthew' | 'Maxim' | 'Mia' | 'Miguel' | 'Mizuki' | 'Naja' | 'Niamh' | 'Nicole' | 'Ola' | 'Olivia' | 'Pedro' | 'Penelope' | 'Raveena' | 'Remi' | 'Ricardo' | 'Ruben' | 'Russell' | 'Ruth' | 'Salli' | 'Seoyeon' | 'Sergio' | 'Sofie' | 'Stephen' | 'Suvi' | 'Takumi' | 'Tatyana' | 'Thiago' | 'Tomoko' | 'Vicki' | 'Vitoria' | 'Zayd' | 'Zeina' | 'Zhiyu';
7
+ export type LanguageCode = 'arb' | 'ca-ES' | 'cmn-CN' | 'cy-GB' | 'da-DK' | 'de-AT' | 'de-DE' | 'en-AU' | 'en-GB' | 'en-GB-WLS' | 'en-IE' | 'en-IN' | 'en-NZ' | 'en-US' | 'en-ZA' | 'es-ES' | 'es-MX' | 'es-US' | 'fi-FI' | 'fr-BE' | 'fr-CA' | 'fr-FR' | 'hi-IN' | 'is-IS' | 'it-IT' | 'ja-JP' | 'ko-KR' | 'nb-NO' | 'nl-BE' | 'nl-NL' | 'pl-PL' | 'pt-BR' | 'pt-PT' | 'ro-RO' | 'ru-RU' | 'sv-SE' | 'tr-TR' | 'yue-CN';
8
+ export type Engine = 'standard' | 'neural' | 'long-form' | 'generative';
9
+ export type OutputFormat = 'json' | 'mp3' | 'ogg_vorbis' | 'pcm';
10
+ export type TextType = 'ssml' | 'text';
11
+ export type SpeechMarkType = 'sentence' | 'ssml' | 'viseme' | 'word';
12
+ export interface Voice {
13
+ Gender?: 'Female' | 'Male';
14
+ Id?: VoiceId;
15
+ LanguageCode?: LanguageCode;
16
+ LanguageName?: string;
17
+ Name?: string;
18
+ AdditionalLanguageCodes?: LanguageCode[];
19
+ SupportedEngines?: Engine[];
20
+ }
21
+ export interface SynthesizeSpeechCommandInput {
22
+ Engine?: Engine;
23
+ LanguageCode?: LanguageCode;
24
+ LexiconNames?: string[];
25
+ OutputFormat: OutputFormat;
26
+ SampleRate?: string;
27
+ SpeechMarkTypes?: SpeechMarkType[];
28
+ Text: string;
29
+ TextType?: TextType;
30
+ VoiceId: VoiceId;
31
+ }
32
+ export interface SynthesizeSpeechCommandOutput {
33
+ AudioStream?: Uint8Array;
34
+ ContentType?: string;
35
+ RequestCharacters?: number;
36
+ }
37
+ export interface DescribeVoicesCommandInput {
38
+ Engine?: Engine;
39
+ LanguageCode?: LanguageCode;
40
+ IncludeAdditionalLanguageCodes?: boolean;
41
+ NextToken?: string;
42
+ }
43
+ export interface DescribeVoicesCommandOutput {
44
+ Voices?: Voice[];
45
+ NextToken?: string;
46
+ }
47
+ export interface StartSpeechSynthesisTaskCommandInput {
48
+ Engine?: Engine;
49
+ LanguageCode?: LanguageCode;
50
+ LexiconNames?: string[];
51
+ OutputFormat: OutputFormat;
52
+ OutputS3BucketName: string;
53
+ OutputS3KeyPrefix?: string;
54
+ SampleRate?: string;
55
+ SnsTopicArn?: string;
56
+ SpeechMarkTypes?: SpeechMarkType[];
57
+ Text: string;
58
+ TextType?: TextType;
59
+ VoiceId: VoiceId;
60
+ }
61
+ export interface SynthesisTask {
62
+ Engine?: Engine;
63
+ TaskId?: string;
64
+ TaskStatus?: 'scheduled' | 'inProgress' | 'completed' | 'failed';
65
+ TaskStatusReason?: string;
66
+ OutputUri?: string;
67
+ CreationTime?: string;
68
+ RequestCharacters?: number;
69
+ SnsTopicArn?: string;
70
+ LexiconNames?: string[];
71
+ OutputFormat?: OutputFormat;
72
+ SampleRate?: string;
73
+ SpeechMarkTypes?: SpeechMarkType[];
74
+ TextType?: TextType;
75
+ VoiceId?: VoiceId;
76
+ LanguageCode?: LanguageCode;
77
+ }
78
+ export interface StartSpeechSynthesisTaskCommandOutput {
79
+ SynthesisTask?: SynthesisTask;
80
+ }
81
+ export interface GetSpeechSynthesisTaskCommandInput {
82
+ TaskId: string;
83
+ }
84
+ export interface GetSpeechSynthesisTaskCommandOutput {
85
+ SynthesisTask?: SynthesisTask;
86
+ }
87
+ export interface ListSpeechSynthesisTasksCommandInput {
88
+ MaxResults?: number;
89
+ NextToken?: string;
90
+ Status?: 'scheduled' | 'inProgress' | 'completed' | 'failed';
91
+ }
92
+ export interface ListSpeechSynthesisTasksCommandOutput {
93
+ NextToken?: string;
94
+ SynthesisTasks?: SynthesisTask[];
95
+ }
96
+ export interface PutLexiconCommandInput {
97
+ Name: string;
98
+ Content: string;
99
+ }
100
+ export interface PutLexiconCommandOutput {
101
+ }
102
+ export interface GetLexiconCommandInput {
103
+ Name: string;
104
+ }
105
+ export interface Lexicon {
106
+ Content?: string;
107
+ Name?: string;
108
+ }
109
+ export interface LexiconAttributes {
110
+ Alphabet?: string;
111
+ LanguageCode?: LanguageCode;
112
+ LastModified?: string;
113
+ LexemesCount?: number;
114
+ LexiconArn?: string;
115
+ Size?: number;
116
+ }
117
+ export interface GetLexiconCommandOutput {
118
+ Lexicon?: Lexicon;
119
+ LexiconAttributes?: LexiconAttributes;
120
+ }
121
+ export interface DeleteLexiconCommandInput {
122
+ Name: string;
123
+ }
124
+ export interface DeleteLexiconCommandOutput {
125
+ }
126
+ export interface ListLexiconsCommandInput {
127
+ NextToken?: string;
128
+ }
129
+ export interface ListLexiconsCommandOutput {
130
+ Lexicons?: Array<{
131
+ Name?: string;
132
+ Attributes?: LexiconAttributes;
133
+ }>;
134
+ NextToken?: string;
135
+ }
136
+ export declare class PollyClient {
137
+ private client;
138
+ private region;
139
+ constructor(region?: string);
140
+ /**
141
+ * Synthesize speech from text (synchronous)
142
+ */
143
+ synthesizeSpeech(params: SynthesizeSpeechCommandInput): Promise<SynthesizeSpeechCommandOutput>;
144
+ /**
145
+ * Start async speech synthesis task
146
+ */
147
+ startSpeechSynthesisTask(params: StartSpeechSynthesisTaskCommandInput): Promise<StartSpeechSynthesisTaskCommandOutput>;
148
+ /**
149
+ * Get speech synthesis task status
150
+ */
151
+ getSpeechSynthesisTask(params: GetSpeechSynthesisTaskCommandInput): Promise<GetSpeechSynthesisTaskCommandOutput>;
152
+ /**
153
+ * List speech synthesis tasks
154
+ */
155
+ listSpeechSynthesisTasks(params?: ListSpeechSynthesisTasksCommandInput): Promise<ListSpeechSynthesisTasksCommandOutput>;
156
+ /**
157
+ * List available voices
158
+ */
159
+ describeVoices(params?: DescribeVoicesCommandInput): Promise<DescribeVoicesCommandOutput>;
160
+ /**
161
+ * Store a pronunciation lexicon
162
+ */
163
+ putLexicon(params: PutLexiconCommandInput): Promise<PutLexiconCommandOutput>;
164
+ /**
165
+ * Get a lexicon
166
+ */
167
+ getLexicon(params: GetLexiconCommandInput): Promise<GetLexiconCommandOutput>;
168
+ /**
169
+ * Delete a lexicon
170
+ */
171
+ deleteLexicon(params: DeleteLexiconCommandInput): Promise<DeleteLexiconCommandOutput>;
172
+ /**
173
+ * List lexicons
174
+ */
175
+ listLexicons(params?: ListLexiconsCommandInput): Promise<ListLexiconsCommandOutput>;
176
+ /**
177
+ * Simple text to speech - returns MP3 audio bytes
178
+ */
179
+ textToSpeech(text: string, options?: {
180
+ voiceId?: VoiceId;
181
+ engine?: Engine;
182
+ languageCode?: LanguageCode;
183
+ }): Promise<Uint8Array>;
184
+ /**
185
+ * Text to speech with SSML support
186
+ */
187
+ ssmlToSpeech(ssml: string, options?: {
188
+ voiceId?: VoiceId;
189
+ engine?: Engine;
190
+ languageCode?: LanguageCode;
191
+ }): Promise<Uint8Array>;
192
+ /**
193
+ * Save speech to S3 (for longer texts)
194
+ */
195
+ saveToS3(text: string, bucket: string, keyPrefix: string, options?: {
196
+ voiceId?: VoiceId;
197
+ engine?: Engine;
198
+ languageCode?: LanguageCode;
199
+ textType?: TextType;
200
+ }): Promise<{
201
+ taskId: string;
202
+ outputUri: string;
203
+ }>;
204
+ /**
205
+ * List voices for a specific language
206
+ */
207
+ listVoicesForLanguage(languageCode: LanguageCode): Promise<Voice[]>;
208
+ /**
209
+ * List neural voices
210
+ */
211
+ listNeuralVoices(): Promise<Voice[]>;
212
+ /**
213
+ * Wait for synthesis task to complete
214
+ */
215
+ waitForTask(taskId: string, options?: {
216
+ maxWaitMs?: number;
217
+ pollIntervalMs?: number;
218
+ }): Promise<SynthesisTask>;
219
+ }
220
+ /**
221
+ * Quick text to speech
222
+ */
223
+ export declare function textToSpeech(text: string, options?: {
224
+ voiceId?: VoiceId;
225
+ engine?: Engine;
226
+ region?: string;
227
+ }): Promise<Uint8Array>;
228
+ /**
229
+ * List available voices
230
+ */
231
+ export declare function listVoices(options?: {
232
+ languageCode?: LanguageCode;
233
+ engine?: Engine;
234
+ region?: string;
235
+ }): Promise<Voice[]>;
236
+ /**
237
+ * Create SSML with speech marks (pauses, emphasis, etc.)
238
+ */
239
+ export declare function createSSML(text: string, options?: {
240
+ rate?: 'x-slow' | 'slow' | 'medium' | 'fast' | 'x-fast';
241
+ pitch?: 'x-low' | 'low' | 'medium' | 'high' | 'x-high';
242
+ volume?: 'silent' | 'x-soft' | 'soft' | 'medium' | 'loud' | 'x-loud';
243
+ }): string;
@@ -0,0 +1,346 @@
1
+ /**
2
+ * AWS RDS Operations
3
+ * Direct API calls without AWS CLI dependency
4
+ */
5
+ export interface DBInstance {
6
+ DBInstanceIdentifier?: string;
7
+ DBInstanceClass?: string;
8
+ Engine?: string;
9
+ EngineVersion?: string;
10
+ DBInstanceStatus?: string;
11
+ MasterUsername?: string;
12
+ DBName?: string;
13
+ Endpoint?: {
14
+ Address?: string;
15
+ Port?: number;
16
+ HostedZoneId?: string;
17
+ };
18
+ AllocatedStorage?: number;
19
+ InstanceCreateTime?: string;
20
+ PreferredBackupWindow?: string;
21
+ BackupRetentionPeriod?: number;
22
+ DBSecurityGroups?: Array<{
23
+ DBSecurityGroupName?: string;
24
+ Status?: string;
25
+ }>;
26
+ VpcSecurityGroups?: Array<{
27
+ VpcSecurityGroupId?: string;
28
+ Status?: string;
29
+ }>;
30
+ DBParameterGroups?: Array<{
31
+ DBParameterGroupName?: string;
32
+ ParameterApplyStatus?: string;
33
+ }>;
34
+ AvailabilityZone?: string;
35
+ DBSubnetGroup?: {
36
+ DBSubnetGroupName?: string;
37
+ DBSubnetGroupDescription?: string;
38
+ VpcId?: string;
39
+ SubnetGroupStatus?: string;
40
+ Subnets?: Array<{
41
+ SubnetIdentifier?: string;
42
+ SubnetAvailabilityZone?: {
43
+ Name?: string;
44
+ };
45
+ SubnetStatus?: string;
46
+ }>;
47
+ };
48
+ PreferredMaintenanceWindow?: string;
49
+ PendingModifiedValues?: Record<string, any>;
50
+ MultiAZ?: boolean;
51
+ AutoMinorVersionUpgrade?: boolean;
52
+ ReadReplicaSourceDBInstanceIdentifier?: string;
53
+ ReadReplicaDBInstanceIdentifiers?: string[];
54
+ LicenseModel?: string;
55
+ OptionGroupMemberships?: Array<{
56
+ OptionGroupName?: string;
57
+ Status?: string;
58
+ }>;
59
+ PubliclyAccessible?: boolean;
60
+ StorageType?: string;
61
+ StorageEncrypted?: boolean;
62
+ KmsKeyId?: string;
63
+ DbiResourceId?: string;
64
+ CACertificateIdentifier?: string;
65
+ DeletionProtection?: boolean;
66
+ TagList?: Array<{
67
+ Key?: string;
68
+ Value?: string;
69
+ }>;
70
+ }
71
+ export interface DBCluster {
72
+ DBClusterIdentifier?: string;
73
+ DBClusterArn?: string;
74
+ Status?: string;
75
+ Engine?: string;
76
+ EngineVersion?: string;
77
+ Endpoint?: string;
78
+ ReaderEndpoint?: string;
79
+ Port?: number;
80
+ MasterUsername?: string;
81
+ DatabaseName?: string;
82
+ PreferredBackupWindow?: string;
83
+ PreferredMaintenanceWindow?: string;
84
+ MultiAZ?: boolean;
85
+ EngineMode?: string;
86
+ DBClusterMembers?: Array<{
87
+ DBInstanceIdentifier?: string;
88
+ IsClusterWriter?: boolean;
89
+ DBClusterParameterGroupStatus?: string;
90
+ }>;
91
+ VpcSecurityGroups?: Array<{
92
+ VpcSecurityGroupId?: string;
93
+ Status?: string;
94
+ }>;
95
+ HostedZoneId?: string;
96
+ StorageEncrypted?: boolean;
97
+ KmsKeyId?: string;
98
+ DeletionProtection?: boolean;
99
+ TagList?: Array<{
100
+ Key?: string;
101
+ Value?: string;
102
+ }>;
103
+ }
104
+ export interface DBSnapshot {
105
+ DBSnapshotIdentifier?: string;
106
+ DBInstanceIdentifier?: string;
107
+ SnapshotCreateTime?: string;
108
+ Engine?: string;
109
+ AllocatedStorage?: number;
110
+ Status?: string;
111
+ Port?: number;
112
+ AvailabilityZone?: string;
113
+ VpcId?: string;
114
+ InstanceCreateTime?: string;
115
+ MasterUsername?: string;
116
+ EngineVersion?: string;
117
+ LicenseModel?: string;
118
+ SnapshotType?: string;
119
+ OptionGroupName?: string;
120
+ PercentProgress?: number;
121
+ SourceRegion?: string;
122
+ StorageType?: string;
123
+ Encrypted?: boolean;
124
+ KmsKeyId?: string;
125
+ DBSnapshotArn?: string;
126
+ }
127
+ export interface DBSubnetGroup {
128
+ DBSubnetGroupName?: string;
129
+ DBSubnetGroupDescription?: string;
130
+ VpcId?: string;
131
+ SubnetGroupStatus?: string;
132
+ Subnets?: Array<{
133
+ SubnetIdentifier?: string;
134
+ SubnetAvailabilityZone?: {
135
+ Name?: string;
136
+ };
137
+ SubnetStatus?: string;
138
+ }>;
139
+ DBSubnetGroupArn?: string;
140
+ }
141
+ /**
142
+ * RDS service management using direct API calls
143
+ */
144
+ export declare class RDSClient {
145
+ private client;
146
+ private region;
147
+ constructor(region?: string);
148
+ /**
149
+ * Describe all RDS DB instances
150
+ */
151
+ describeDBInstances(options?: {
152
+ DBInstanceIdentifier?: string;
153
+ Filters?: Array<{
154
+ Name: string;
155
+ Values: string[];
156
+ }>;
157
+ MaxRecords?: number;
158
+ Marker?: string;
159
+ }): Promise<{
160
+ DBInstances?: DBInstance[];
161
+ Marker?: string;
162
+ }>;
163
+ /**
164
+ * Describe a specific DB instance
165
+ */
166
+ describeDBInstance(dbInstanceIdentifier: string): Promise<DBInstance | undefined>;
167
+ /**
168
+ * Describe all RDS DB clusters (Aurora)
169
+ */
170
+ describeDBClusters(options?: {
171
+ DBClusterIdentifier?: string;
172
+ Filters?: Array<{
173
+ Name: string;
174
+ Values: string[];
175
+ }>;
176
+ MaxRecords?: number;
177
+ Marker?: string;
178
+ }): Promise<{
179
+ DBClusters?: DBCluster[];
180
+ Marker?: string;
181
+ }>;
182
+ /**
183
+ * Describe DB snapshots
184
+ */
185
+ describeDBSnapshots(options?: {
186
+ DBInstanceIdentifier?: string;
187
+ DBSnapshotIdentifier?: string;
188
+ SnapshotType?: 'automated' | 'manual' | 'shared' | 'public' | 'awsbackup';
189
+ MaxRecords?: number;
190
+ Marker?: string;
191
+ }): Promise<{
192
+ DBSnapshots?: DBSnapshot[];
193
+ Marker?: string;
194
+ }>;
195
+ /**
196
+ * Describe DB subnet groups
197
+ */
198
+ describeDBSubnetGroups(options?: {
199
+ DBSubnetGroupName?: string;
200
+ MaxRecords?: number;
201
+ Marker?: string;
202
+ }): Promise<{
203
+ DBSubnetGroups?: DBSubnetGroup[];
204
+ Marker?: string;
205
+ }>;
206
+ /**
207
+ * Create a new DB instance
208
+ */
209
+ createDBInstance(options: {
210
+ DBInstanceIdentifier: string;
211
+ DBInstanceClass: string;
212
+ Engine: string;
213
+ MasterUsername?: string;
214
+ MasterUserPassword?: string;
215
+ DBName?: string;
216
+ AllocatedStorage?: number;
217
+ VpcSecurityGroupIds?: string[];
218
+ DBSubnetGroupName?: string;
219
+ AvailabilityZone?: string;
220
+ PreferredMaintenanceWindow?: string;
221
+ PreferredBackupWindow?: string;
222
+ BackupRetentionPeriod?: number;
223
+ MultiAZ?: boolean;
224
+ EngineVersion?: string;
225
+ AutoMinorVersionUpgrade?: boolean;
226
+ LicenseModel?: string;
227
+ PubliclyAccessible?: boolean;
228
+ StorageType?: 'gp2' | 'gp3' | 'io1' | 'standard';
229
+ StorageEncrypted?: boolean;
230
+ KmsKeyId?: string;
231
+ DeletionProtection?: boolean;
232
+ Tags?: Array<{
233
+ Key: string;
234
+ Value: string;
235
+ }>;
236
+ }): Promise<{
237
+ DBInstance?: DBInstance;
238
+ }>;
239
+ /**
240
+ * Delete a DB instance
241
+ */
242
+ deleteDBInstance(options: {
243
+ DBInstanceIdentifier: string;
244
+ SkipFinalSnapshot?: boolean;
245
+ FinalDBSnapshotIdentifier?: string;
246
+ DeleteAutomatedBackups?: boolean;
247
+ }): Promise<{
248
+ DBInstance?: DBInstance;
249
+ }>;
250
+ /**
251
+ * Modify a DB instance
252
+ */
253
+ modifyDBInstance(options: {
254
+ DBInstanceIdentifier: string;
255
+ DBInstanceClass?: string;
256
+ AllocatedStorage?: number;
257
+ MasterUserPassword?: string;
258
+ BackupRetentionPeriod?: number;
259
+ PreferredBackupWindow?: string;
260
+ PreferredMaintenanceWindow?: string;
261
+ MultiAZ?: boolean;
262
+ EngineVersion?: string;
263
+ AutoMinorVersionUpgrade?: boolean;
264
+ PubliclyAccessible?: boolean;
265
+ VpcSecurityGroupIds?: string[];
266
+ ApplyImmediately?: boolean;
267
+ StorageType?: 'gp2' | 'gp3' | 'io1' | 'standard';
268
+ DeletionProtection?: boolean;
269
+ }): Promise<{
270
+ DBInstance?: DBInstance;
271
+ }>;
272
+ /**
273
+ * Start a DB instance
274
+ */
275
+ startDBInstance(dbInstanceIdentifier: string): Promise<{
276
+ DBInstance?: DBInstance;
277
+ }>;
278
+ /**
279
+ * Stop a DB instance
280
+ */
281
+ stopDBInstance(options: {
282
+ DBInstanceIdentifier: string;
283
+ DBSnapshotIdentifier?: string;
284
+ }): Promise<{
285
+ DBInstance?: DBInstance;
286
+ }>;
287
+ /**
288
+ * Reboot a DB instance
289
+ */
290
+ rebootDBInstance(options: {
291
+ DBInstanceIdentifier: string;
292
+ ForceFailover?: boolean;
293
+ }): Promise<{
294
+ DBInstance?: DBInstance;
295
+ }>;
296
+ /**
297
+ * Create a DB snapshot
298
+ */
299
+ createDBSnapshot(options: {
300
+ DBInstanceIdentifier: string;
301
+ DBSnapshotIdentifier: string;
302
+ Tags?: Array<{
303
+ Key: string;
304
+ Value: string;
305
+ }>;
306
+ }): Promise<{
307
+ DBSnapshot?: DBSnapshot;
308
+ }>;
309
+ /**
310
+ * Delete a DB snapshot
311
+ */
312
+ deleteDBSnapshot(dbSnapshotIdentifier: string): Promise<{
313
+ DBSnapshot?: DBSnapshot;
314
+ }>;
315
+ /**
316
+ * Restore DB instance from snapshot
317
+ */
318
+ restoreDBInstanceFromDBSnapshot(options: {
319
+ DBInstanceIdentifier: string;
320
+ DBSnapshotIdentifier: string;
321
+ DBInstanceClass?: string;
322
+ Port?: number;
323
+ AvailabilityZone?: string;
324
+ DBSubnetGroupName?: string;
325
+ MultiAZ?: boolean;
326
+ PubliclyAccessible?: boolean;
327
+ AutoMinorVersionUpgrade?: boolean;
328
+ StorageType?: 'gp2' | 'gp3' | 'io1' | 'standard';
329
+ VpcSecurityGroupIds?: string[];
330
+ DeletionProtection?: boolean;
331
+ Tags?: Array<{
332
+ Key: string;
333
+ Value: string;
334
+ }>;
335
+ }): Promise<{
336
+ DBInstance?: DBInstance;
337
+ }>;
338
+ /**
339
+ * Wait for DB instance to become available
340
+ */
341
+ waitForDBInstanceAvailable(dbInstanceIdentifier: string, maxAttempts?: number, delayMs?: number): Promise<DBInstance | undefined>;
342
+ /**
343
+ * Wait for DB instance to be deleted
344
+ */
345
+ waitForDBInstanceDeleted(dbInstanceIdentifier: string, maxAttempts?: number, delayMs?: number): Promise<void>;
346
+ }