@stacksjs/ts-cloud 0.2.2 → 0.2.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.
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 +4500 -809
  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 +24067 -6430
  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,224 @@
1
+ /**
2
+ * AWS EventBridge Scheduler Operations
3
+ * Direct API calls without AWS CLI dependency
4
+ */
5
+ export interface Schedule {
6
+ Name: string;
7
+ Arn?: string;
8
+ State?: 'ENABLED' | 'DISABLED';
9
+ ScheduleExpression?: string;
10
+ ScheduleExpressionTimezone?: string;
11
+ Target?: {
12
+ Arn: string;
13
+ RoleArn: string;
14
+ Input?: string;
15
+ };
16
+ FlexibleTimeWindow?: {
17
+ Mode: 'OFF' | 'FLEXIBLE';
18
+ MaximumWindowInMinutes?: number;
19
+ };
20
+ GroupName?: string;
21
+ Description?: string;
22
+ StartDate?: string;
23
+ EndDate?: string;
24
+ CreationDate?: string;
25
+ LastModificationDate?: string;
26
+ }
27
+ export interface CreateScheduleInput {
28
+ Name: string;
29
+ GroupName?: string;
30
+ ScheduleExpression: string;
31
+ ScheduleExpressionTimezone?: string;
32
+ Description?: string;
33
+ State?: 'ENABLED' | 'DISABLED';
34
+ FlexibleTimeWindow: {
35
+ Mode: 'OFF' | 'FLEXIBLE';
36
+ MaximumWindowInMinutes?: number;
37
+ };
38
+ Target: {
39
+ Arn: string;
40
+ RoleArn: string;
41
+ Input?: string;
42
+ };
43
+ StartDate?: Date;
44
+ EndDate?: Date;
45
+ }
46
+ export interface UpdateScheduleInput {
47
+ Name: string;
48
+ GroupName?: string;
49
+ ScheduleExpression?: string;
50
+ ScheduleExpressionTimezone?: string;
51
+ Description?: string;
52
+ State?: 'ENABLED' | 'DISABLED';
53
+ FlexibleTimeWindow?: {
54
+ Mode: 'OFF' | 'FLEXIBLE';
55
+ MaximumWindowInMinutes?: number;
56
+ };
57
+ Target?: {
58
+ Arn: string;
59
+ RoleArn: string;
60
+ Input?: string;
61
+ };
62
+ }
63
+ export interface ScheduleGroup {
64
+ Name: string;
65
+ Arn?: string;
66
+ State?: string;
67
+ CreationDate?: string;
68
+ LastModificationDate?: string;
69
+ }
70
+ export interface CreateScheduleOptions {
71
+ name: string;
72
+ scheduleExpression: string;
73
+ targetArn: string;
74
+ roleArn: string;
75
+ input?: string;
76
+ groupName?: string;
77
+ state?: 'ENABLED' | 'DISABLED';
78
+ description?: string;
79
+ flexibleTimeWindow?: {
80
+ mode: 'OFF' | 'FLEXIBLE';
81
+ maxWindowMinutes?: number;
82
+ };
83
+ }
84
+ export interface SchedulerRule {
85
+ Name: string;
86
+ Arn: string;
87
+ EventPattern?: string;
88
+ ScheduleExpression?: string;
89
+ State: 'ENABLED' | 'DISABLED';
90
+ Description?: string;
91
+ }
92
+ export interface SchedulerTarget {
93
+ Id: string;
94
+ Arn: string;
95
+ RoleArn?: string;
96
+ Input?: string;
97
+ InputPath?: string;
98
+ }
99
+ /**
100
+ * EventBridge Scheduler management using direct API calls
101
+ */
102
+ export declare class SchedulerClient {
103
+ private client;
104
+ private region;
105
+ constructor(region?: string, profile?: string);
106
+ /**
107
+ * Create a new schedule (EventBridge rule)
108
+ */
109
+ createRule(options: {
110
+ name: string;
111
+ scheduleExpression: string;
112
+ description?: string;
113
+ state?: 'ENABLED' | 'DISABLED';
114
+ }): Promise<{
115
+ RuleArn: string;
116
+ }>;
117
+ /**
118
+ * Add target to a rule
119
+ */
120
+ putTargets(ruleName: string, targets: SchedulerTarget[]): Promise<void>;
121
+ /**
122
+ * List all rules
123
+ */
124
+ listRules(namePrefix?: string): Promise<{
125
+ Rules: SchedulerRule[];
126
+ }>;
127
+ /**
128
+ * Describe a rule
129
+ */
130
+ describeRule(name: string): Promise<SchedulerRule>;
131
+ /**
132
+ * List targets for a rule
133
+ */
134
+ listTargetsByRule(ruleName: string): Promise<{
135
+ Targets: SchedulerTarget[];
136
+ }>;
137
+ /**
138
+ * Delete a rule
139
+ */
140
+ deleteRule(name: string, force?: boolean): Promise<void>;
141
+ /**
142
+ * Remove targets from a rule
143
+ */
144
+ removeTargets(ruleName: string, targetIds: string[]): Promise<void>;
145
+ /**
146
+ * Enable a rule
147
+ */
148
+ enableRule(name: string): Promise<void>;
149
+ /**
150
+ * Disable a rule
151
+ */
152
+ disableRule(name: string): Promise<void>;
153
+ /**
154
+ * Create a Lambda-triggered schedule
155
+ */
156
+ createLambdaSchedule(options: {
157
+ name: string;
158
+ scheduleExpression: string;
159
+ functionArn: string;
160
+ description?: string;
161
+ input?: string;
162
+ }): Promise<{
163
+ RuleArn: string;
164
+ }>;
165
+ /**
166
+ * Create an ECS task schedule
167
+ */
168
+ createEcsSchedule(options: {
169
+ name: string;
170
+ scheduleExpression: string;
171
+ clusterArn: string;
172
+ taskDefinitionArn: string;
173
+ roleArn: string;
174
+ subnets: string[];
175
+ securityGroups?: string[];
176
+ description?: string;
177
+ }): Promise<{
178
+ RuleArn: string;
179
+ }>;
180
+ /**
181
+ * List schedules (EventBridge Scheduler API)
182
+ */
183
+ listSchedules(options?: {
184
+ GroupName?: string;
185
+ NamePrefix?: string;
186
+ State?: string;
187
+ }): Promise<{
188
+ Schedules: Schedule[];
189
+ }>;
190
+ /**
191
+ * Get a schedule by name (EventBridge Scheduler API)
192
+ */
193
+ getSchedule(options: {
194
+ Name: string;
195
+ GroupName?: string;
196
+ }): Promise<Schedule | null>;
197
+ /**
198
+ * Create a schedule (EventBridge Scheduler API)
199
+ */
200
+ createSchedule(input: CreateScheduleInput): Promise<{
201
+ ScheduleArn: string;
202
+ }>;
203
+ /**
204
+ * Update a schedule (EventBridge Scheduler API)
205
+ */
206
+ updateSchedule(input: UpdateScheduleInput): Promise<{
207
+ ScheduleArn: string;
208
+ }>;
209
+ /**
210
+ * Delete a schedule (EventBridge Scheduler API)
211
+ */
212
+ deleteSchedule(options: {
213
+ Name: string;
214
+ GroupName?: string;
215
+ }): Promise<void>;
216
+ /**
217
+ * List schedule groups (EventBridge Scheduler API)
218
+ */
219
+ listScheduleGroups(options?: {
220
+ NamePrefix?: string;
221
+ }): Promise<{
222
+ ScheduleGroups: ScheduleGroup[];
223
+ }>;
224
+ }
@@ -0,0 +1,267 @@
1
+ /**
2
+ * AWS Secrets Manager Client
3
+ * Manages secrets using direct API calls
4
+ */
5
+ export interface Secret {
6
+ ARN?: string;
7
+ Name?: string;
8
+ Description?: string;
9
+ KmsKeyId?: string;
10
+ RotationEnabled?: boolean;
11
+ RotationLambdaARN?: string;
12
+ RotationRules?: {
13
+ AutomaticallyAfterDays?: number;
14
+ Duration?: string;
15
+ ScheduleExpression?: string;
16
+ };
17
+ LastRotatedDate?: string;
18
+ LastChangedDate?: string;
19
+ LastAccessedDate?: string;
20
+ DeletedDate?: string;
21
+ NextRotationDate?: string;
22
+ Tags?: {
23
+ Key: string;
24
+ Value: string;
25
+ }[];
26
+ SecretVersionsToStages?: Record<string, string[]>;
27
+ CreatedDate?: string;
28
+ PrimaryRegion?: string;
29
+ }
30
+ export interface SecretValue {
31
+ ARN?: string;
32
+ Name?: string;
33
+ VersionId?: string;
34
+ SecretBinary?: string;
35
+ SecretString?: string;
36
+ VersionStages?: string[];
37
+ CreatedDate?: string;
38
+ }
39
+ export interface CreateSecretOptions {
40
+ Name: string;
41
+ Description?: string;
42
+ KmsKeyId?: string;
43
+ SecretBinary?: string;
44
+ SecretString?: string;
45
+ Tags?: {
46
+ Key: string;
47
+ Value: string;
48
+ }[];
49
+ AddReplicaRegions?: {
50
+ Region: string;
51
+ KmsKeyId?: string;
52
+ }[];
53
+ ForceOverwriteReplicaSecret?: boolean;
54
+ ClientRequestToken?: string;
55
+ }
56
+ export interface UpdateSecretOptions {
57
+ SecretId: string;
58
+ Description?: string;
59
+ KmsKeyId?: string;
60
+ SecretBinary?: string;
61
+ SecretString?: string;
62
+ }
63
+ export interface PutSecretValueOptions {
64
+ SecretId: string;
65
+ SecretBinary?: string;
66
+ SecretString?: string;
67
+ VersionStages?: string[];
68
+ ClientRequestToken?: string;
69
+ }
70
+ export interface GetSecretValueOptions {
71
+ SecretId: string;
72
+ VersionId?: string;
73
+ VersionStage?: string;
74
+ }
75
+ export interface RotationRules {
76
+ AutomaticallyAfterDays?: number;
77
+ Duration?: string;
78
+ ScheduleExpression?: string;
79
+ }
80
+ /**
81
+ * Secrets Manager client using direct API calls
82
+ */
83
+ export declare class SecretsManagerClient {
84
+ private client;
85
+ private region;
86
+ constructor(region?: string, profile?: string);
87
+ /**
88
+ * Create a new secret
89
+ */
90
+ createSecret(options: CreateSecretOptions): Promise<{
91
+ ARN?: string;
92
+ Name?: string;
93
+ VersionId?: string;
94
+ ReplicationStatus?: {
95
+ Region: string;
96
+ Status: string;
97
+ StatusMessage?: string;
98
+ }[];
99
+ }>;
100
+ /**
101
+ * Update an existing secret's metadata
102
+ */
103
+ updateSecret(options: UpdateSecretOptions): Promise<{
104
+ ARN?: string;
105
+ Name?: string;
106
+ VersionId?: string;
107
+ }>;
108
+ /**
109
+ * Put a new version of a secret value
110
+ */
111
+ putSecretValue(options: PutSecretValueOptions): Promise<{
112
+ ARN?: string;
113
+ Name?: string;
114
+ VersionId?: string;
115
+ VersionStages?: string[];
116
+ }>;
117
+ /**
118
+ * Get the value of a secret
119
+ */
120
+ getSecretValue(options: GetSecretValueOptions): Promise<SecretValue>;
121
+ /**
122
+ * Describe a secret (metadata only)
123
+ */
124
+ describeSecret(secretId: string): Promise<Secret>;
125
+ /**
126
+ * List secrets
127
+ */
128
+ listSecrets(options?: {
129
+ MaxResults?: number;
130
+ NextToken?: string;
131
+ Filters?: {
132
+ Key: string;
133
+ Values: string[];
134
+ }[];
135
+ SortOrder?: 'asc' | 'desc';
136
+ }): Promise<{
137
+ SecretList?: Secret[];
138
+ NextToken?: string;
139
+ }>;
140
+ /**
141
+ * Delete a secret
142
+ */
143
+ deleteSecret(options: {
144
+ SecretId: string;
145
+ RecoveryWindowInDays?: number;
146
+ ForceDeleteWithoutRecovery?: boolean;
147
+ }): Promise<{
148
+ ARN?: string;
149
+ Name?: string;
150
+ DeletionDate?: string;
151
+ }>;
152
+ /**
153
+ * Restore a deleted secret
154
+ */
155
+ restoreSecret(secretId: string): Promise<{
156
+ ARN?: string;
157
+ Name?: string;
158
+ }>;
159
+ /**
160
+ * Configure automatic rotation for a secret
161
+ */
162
+ rotateSecret(options: {
163
+ SecretId: string;
164
+ ClientRequestToken?: string;
165
+ RotationLambdaARN?: string;
166
+ RotationRules?: RotationRules;
167
+ RotateImmediately?: boolean;
168
+ }): Promise<{
169
+ ARN?: string;
170
+ Name?: string;
171
+ VersionId?: string;
172
+ }>;
173
+ /**
174
+ * Cancel rotation for a secret
175
+ */
176
+ cancelRotateSecret(secretId: string): Promise<{
177
+ ARN?: string;
178
+ Name?: string;
179
+ }>;
180
+ /**
181
+ * Get resource policy for a secret
182
+ */
183
+ getResourcePolicy(secretId: string): Promise<{
184
+ ARN?: string;
185
+ Name?: string;
186
+ ResourcePolicy?: string;
187
+ }>;
188
+ /**
189
+ * Put resource policy for a secret
190
+ */
191
+ putResourcePolicy(options: {
192
+ SecretId: string;
193
+ ResourcePolicy: string;
194
+ BlockPublicPolicy?: boolean;
195
+ }): Promise<{
196
+ ARN?: string;
197
+ Name?: string;
198
+ }>;
199
+ /**
200
+ * Delete resource policy for a secret
201
+ */
202
+ deleteResourcePolicy(secretId: string): Promise<{
203
+ ARN?: string;
204
+ Name?: string;
205
+ }>;
206
+ /**
207
+ * Tag a secret
208
+ */
209
+ tagResource(options: {
210
+ SecretId: string;
211
+ Tags: {
212
+ Key: string;
213
+ Value: string;
214
+ }[];
215
+ }): Promise<void>;
216
+ /**
217
+ * Remove tags from a secret
218
+ */
219
+ untagResource(options: {
220
+ SecretId: string;
221
+ TagKeys: string[];
222
+ }): Promise<void>;
223
+ /**
224
+ * Helper: Set a string secret
225
+ */
226
+ setString(name: string, value: string, options?: {
227
+ description?: string;
228
+ kmsKeyId?: string;
229
+ tags?: {
230
+ Key: string;
231
+ Value: string;
232
+ }[];
233
+ }): Promise<{
234
+ ARN?: string;
235
+ VersionId?: string;
236
+ }>;
237
+ /**
238
+ * Helper: Set a JSON secret
239
+ */
240
+ setJson(name: string, value: Record<string, any>, options?: {
241
+ description?: string;
242
+ kmsKeyId?: string;
243
+ tags?: {
244
+ Key: string;
245
+ Value: string;
246
+ }[];
247
+ }): Promise<{
248
+ ARN?: string;
249
+ VersionId?: string;
250
+ }>;
251
+ /**
252
+ * Helper: Get a string secret value
253
+ */
254
+ getString(secretId: string): Promise<string | undefined>;
255
+ /**
256
+ * Helper: Get a JSON secret value
257
+ */
258
+ getJson<T = Record<string, any>>(secretId: string): Promise<T | undefined>;
259
+ /**
260
+ * Helper: List all secrets
261
+ */
262
+ listAll(): Promise<Secret[]>;
263
+ /**
264
+ * Parse secret response
265
+ */
266
+ private parseSecret;
267
+ }