@stacksjs/ts-cloud-core 0.1.6 → 0.1.8

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 (225) hide show
  1. package/dist/advanced-features.test.d.ts +0 -0
  2. package/dist/aws/cloudformation.d.ts +69 -0
  3. package/dist/aws/cloudfront.d.ts +21 -0
  4. package/dist/aws/credentials.d.ts +66 -0
  5. package/dist/aws/credentials.test.d.ts +0 -0
  6. package/dist/aws/index.d.ts +73 -0
  7. package/dist/aws/s3.d.ts +130 -0
  8. package/dist/aws/s3.test.d.ts +0 -0
  9. package/dist/aws/signature.d.ts +101 -0
  10. package/dist/aws/signature.test.d.ts +0 -0
  11. package/dist/backup/disaster-recovery.d.ts +98 -0
  12. package/dist/backup/disaster-recovery.test.d.ts +0 -0
  13. package/dist/backup/index.d.ts +24 -0
  14. package/dist/backup/manager.d.ts +112 -0
  15. package/dist/backup/manager.test.d.ts +0 -0
  16. package/dist/cicd/circleci.d.ts +47 -0
  17. package/dist/cicd/github-actions.d.ts +55 -0
  18. package/dist/cicd/gitlab-ci.d.ts +46 -0
  19. package/dist/cicd/index.d.ts +3 -0
  20. package/dist/cli/history.d.ts +66 -0
  21. package/dist/cli/index.d.ts +5 -0
  22. package/dist/cli/progress.d.ts +97 -0
  23. package/dist/cli/repl.d.ts +76 -0
  24. package/dist/cli/suggestions.d.ts +67 -0
  25. package/dist/cli/table.d.ts +70 -0
  26. package/dist/cli/table.test.d.ts +0 -0
  27. package/dist/cloudformation/builder.d.ts +59 -0
  28. package/dist/cloudformation/builder.test.d.ts +0 -0
  29. package/dist/cloudformation/builders/api-gateway.d.ts +30 -0
  30. package/dist/cloudformation/builders/cache.d.ts +35 -0
  31. package/dist/cloudformation/builders/cdn.d.ts +34 -0
  32. package/dist/cloudformation/builders/compute.d.ts +66 -0
  33. package/dist/cloudformation/builders/database.d.ts +61 -0
  34. package/dist/cloudformation/builders/functions.d.ts +32 -0
  35. package/dist/cloudformation/builders/messaging.d.ts +17 -0
  36. package/dist/cloudformation/builders/monitoring.d.ts +36 -0
  37. package/dist/cloudformation/builders/network.d.ts +14 -0
  38. package/dist/cloudformation/builders/queue.d.ts +8 -0
  39. package/dist/cloudformation/builders/security.d.ts +31 -0
  40. package/dist/cloudformation/builders/storage.d.ts +8 -0
  41. package/dist/cloudformation/index.d.ts +24 -0
  42. package/dist/cloudformation/types.d.ts +132 -0
  43. package/dist/compliance/aws-config.d.ts +88 -0
  44. package/dist/compliance/cloudtrail.d.ts +96 -0
  45. package/dist/compliance/compliance.test.d.ts +0 -0
  46. package/dist/compliance/guardduty.d.ts +110 -0
  47. package/dist/compliance/index.d.ts +50 -0
  48. package/dist/compliance/security-hub.d.ts +110 -0
  49. package/dist/containers/build-optimization.d.ts +110 -0
  50. package/dist/containers/containers.test.d.ts +0 -0
  51. package/dist/containers/image-scanning.d.ts +96 -0
  52. package/dist/containers/index.d.ts +4 -0
  53. package/dist/containers/registry.d.ts +99 -0
  54. package/dist/containers/service-mesh.d.ts +206 -0
  55. package/dist/database/database.test.d.ts +0 -0
  56. package/dist/database/index.d.ts +4 -0
  57. package/dist/database/migrations.d.ts +102 -0
  58. package/dist/database/performance.d.ts +168 -0
  59. package/dist/database/replicas.d.ts +146 -0
  60. package/dist/database/users.d.ts +102 -0
  61. package/dist/dependency-graph.d.ts +19 -0
  62. package/dist/deployment/ab-testing.d.ts +114 -0
  63. package/dist/deployment/blue-green.d.ts +98 -0
  64. package/dist/deployment/canary.d.ts +103 -0
  65. package/dist/deployment/deployment.test.d.ts +0 -0
  66. package/dist/deployment/index.d.ts +45 -0
  67. package/dist/deployment/progressive.d.ts +34 -0
  68. package/dist/dns/dns.test.d.ts +0 -0
  69. package/dist/dns/dnssec.d.ts +75 -0
  70. package/dist/dns/index.d.ts +3 -0
  71. package/dist/dns/resolver.d.ts +150 -0
  72. package/dist/dns/routing.d.ts +217 -0
  73. package/dist/email/advanced/analytics.d.ts +78 -0
  74. package/dist/email/advanced/index.d.ts +7 -0
  75. package/dist/email/advanced/rules.d.ts +60 -0
  76. package/dist/email/advanced/scheduling.d.ts +63 -0
  77. package/dist/email/advanced/search.d.ts +76 -0
  78. package/dist/email/advanced/shared-mailboxes.d.ts +66 -0
  79. package/dist/email/advanced/templates.d.ts +39 -0
  80. package/dist/email/advanced/threading.d.ts +53 -0
  81. package/dist/email/analytics.d.ts +144 -0
  82. package/dist/email/bounce-handling.d.ts +120 -0
  83. package/dist/email/email.test.d.ts +0 -0
  84. package/dist/email/handlers/__tests__/inbound.test.d.ts +0 -0
  85. package/dist/email/handlers/__tests__/outbound.test.d.ts +0 -0
  86. package/dist/email/handlers/converter.d.ts +225 -0
  87. package/dist/email/handlers/feedback.d.ts +226 -0
  88. package/dist/email/handlers/inbound.d.ts +167 -0
  89. package/dist/email/handlers/outbound.d.ts +176 -0
  90. package/dist/email/index.d.ts +6 -0
  91. package/dist/email/reputation.d.ts +97 -0
  92. package/dist/email/templates.d.ts +82 -0
  93. package/dist/errors/index.d.ts +186 -0
  94. package/dist/errors/index.test.d.ts +0 -0
  95. package/dist/health-checks/index.d.ts +35 -0
  96. package/dist/index.d.ts +256 -0
  97. package/dist/index.js +63499 -0
  98. package/dist/intrinsic-functions.d.ts +37 -0
  99. package/dist/lambda/concurrency.d.ts +98 -0
  100. package/dist/lambda/destinations.d.ts +99 -0
  101. package/dist/lambda/dlq.d.ts +109 -0
  102. package/dist/lambda/index.d.ts +6 -0
  103. package/dist/lambda/lambda.test.d.ts +0 -0
  104. package/dist/lambda/layers.d.ts +81 -0
  105. package/dist/lambda/versions.d.ts +91 -0
  106. package/dist/lambda/vpc.d.ts +116 -0
  107. package/dist/local/config.d.ts +44 -0
  108. package/dist/local/index.d.ts +2 -0
  109. package/dist/local/mock-aws.d.ts +60 -0
  110. package/dist/modules/ai.d.ts +47 -0
  111. package/dist/modules/api.d.ts +98 -0
  112. package/dist/modules/auth.d.ts +165 -0
  113. package/dist/modules/cache.d.ts +73 -0
  114. package/dist/modules/cdn.d.ts +125 -0
  115. package/dist/modules/communication.d.ts +98 -0
  116. package/dist/modules/compute.d.ts +309 -0
  117. package/dist/modules/database.d.ts +105 -0
  118. package/dist/modules/deployment.d.ts +181 -0
  119. package/dist/modules/dns.d.ts +45 -0
  120. package/dist/modules/email.d.ts +217 -0
  121. package/dist/modules/filesystem.d.ts +94 -0
  122. package/dist/modules/index.d.ts +27 -0
  123. package/dist/modules/messaging.d.ts +108 -0
  124. package/dist/modules/monitoring.d.ts +127 -0
  125. package/dist/modules/network.d.ts +102 -0
  126. package/dist/modules/parameter-store.d.ts +33 -0
  127. package/dist/modules/permissions.d.ts +132 -0
  128. package/dist/modules/phone.d.ts +80 -0
  129. package/dist/modules/queue.d.ts +210 -0
  130. package/dist/modules/redirects.d.ts +59 -0
  131. package/dist/modules/registry.d.ts +73 -0
  132. package/dist/modules/search.d.ts +56 -0
  133. package/dist/modules/secrets.d.ts +80 -0
  134. package/dist/modules/security.d.ts +100 -0
  135. package/dist/modules/sms.d.ts +52 -0
  136. package/dist/modules/storage.d.ts +160 -0
  137. package/dist/modules/workflow.d.ts +205 -0
  138. package/dist/multi-account/config.d.ts +315 -0
  139. package/dist/multi-account/index.d.ts +2 -0
  140. package/dist/multi-account/manager.d.ts +100 -0
  141. package/dist/multi-region/cross-region.d.ts +114 -0
  142. package/dist/multi-region/index.d.ts +3 -0
  143. package/dist/multi-region/manager.d.ts +72 -0
  144. package/dist/multi-region/regions.d.ts +98 -0
  145. package/dist/network-security/index.d.ts +39 -0
  146. package/dist/observability/index.d.ts +4 -0
  147. package/dist/observability/logs.d.ts +129 -0
  148. package/dist/observability/metrics.d.ts +153 -0
  149. package/dist/observability/observability.test.d.ts +0 -0
  150. package/dist/observability/synthetics.d.ts +146 -0
  151. package/dist/observability/xray.d.ts +129 -0
  152. package/dist/phone/advanced/analytics.d.ts +66 -0
  153. package/dist/phone/advanced/callbacks.d.ts +50 -0
  154. package/dist/phone/advanced/index.d.ts +4 -0
  155. package/dist/phone/advanced/ivr-builder.d.ts +83 -0
  156. package/dist/phone/advanced/recording.d.ts +48 -0
  157. package/dist/phone/handlers/__tests__/incoming-call.test.d.ts +0 -0
  158. package/dist/phone/handlers/incoming-call.d.ts +115 -0
  159. package/dist/phone/handlers/missed-call.d.ts +114 -0
  160. package/dist/phone/handlers/voicemail.d.ts +177 -0
  161. package/dist/phone/index.d.ts +2 -0
  162. package/dist/presets/api-backend.d.ts +11 -0
  163. package/dist/presets/data-pipeline.d.ts +11 -0
  164. package/dist/presets/extend.d.ts +194 -0
  165. package/dist/presets/extend.test.d.ts +0 -0
  166. package/dist/presets/fullstack-app.d.ts +12 -0
  167. package/dist/presets/index.d.ts +24 -0
  168. package/dist/presets/jamstack.d.ts +12 -0
  169. package/dist/presets/microservices.d.ts +18 -0
  170. package/dist/presets/ml-api.d.ts +13 -0
  171. package/dist/presets/nodejs-server.d.ts +14 -0
  172. package/dist/presets/nodejs-serverless.d.ts +14 -0
  173. package/dist/presets/realtime-app.d.ts +11 -0
  174. package/dist/presets/static-site.d.ts +12 -0
  175. package/dist/presets/traditional-web-app.d.ts +16 -0
  176. package/dist/presets/wordpress.d.ts +12 -0
  177. package/dist/preview/github.d.ts +32 -0
  178. package/dist/preview/github.test.d.ts +0 -0
  179. package/dist/preview/index.d.ts +27 -0
  180. package/dist/preview/manager.d.ts +58 -0
  181. package/dist/preview/manager.test.d.ts +0 -0
  182. package/dist/preview/notifications.d.ts +55 -0
  183. package/dist/preview/notifications.test.d.ts +0 -0
  184. package/dist/queue/batch-processing.d.ts +87 -0
  185. package/dist/queue/dlq-monitoring.d.ts +95 -0
  186. package/dist/queue/fifo.d.ts +90 -0
  187. package/dist/queue/index.d.ts +4 -0
  188. package/dist/queue/management.d.ts +105 -0
  189. package/dist/queue/queue.test.d.ts +0 -0
  190. package/dist/resource-mgmt/index.d.ts +29 -0
  191. package/dist/resource-naming.d.ts +26 -0
  192. package/dist/s3/index.d.ts +173 -0
  193. package/dist/schema/index.d.ts +9 -0
  194. package/dist/security/certificate-manager.d.ts +121 -0
  195. package/dist/security/index.d.ts +4 -0
  196. package/dist/security/scanning.d.ts +147 -0
  197. package/dist/security/secrets-manager.d.ts +144 -0
  198. package/dist/security/secrets-rotation.d.ts +115 -0
  199. package/dist/security/security.test.d.ts +0 -0
  200. package/dist/sms/advanced/ab-testing.d.ts +54 -0
  201. package/dist/sms/advanced/analytics.d.ts +56 -0
  202. package/dist/sms/advanced/campaigns.d.ts +82 -0
  203. package/dist/sms/advanced/chatbot.d.ts +48 -0
  204. package/dist/sms/advanced/index.d.ts +6 -0
  205. package/dist/sms/advanced/link-tracking.d.ts +42 -0
  206. package/dist/sms/advanced/mms.d.ts +35 -0
  207. package/dist/sms/handlers/__tests__/send.test.d.ts +0 -0
  208. package/dist/sms/handlers/delivery-status.d.ts +131 -0
  209. package/dist/sms/handlers/receive.d.ts +160 -0
  210. package/dist/sms/handlers/send.d.ts +172 -0
  211. package/dist/sms/index.d.ts +2 -0
  212. package/dist/stack-diff.d.ts +34 -0
  213. package/dist/static-site/index.d.ts +49 -0
  214. package/dist/template-builder.d.ts +14 -0
  215. package/dist/template-validator.d.ts +24 -0
  216. package/dist/utils/cache.d.ts +55 -0
  217. package/dist/utils/diff.d.ts +48 -0
  218. package/dist/utils/hash.d.ts +58 -0
  219. package/dist/utils/index.d.ts +4 -0
  220. package/dist/utils/parallel.d.ts +60 -0
  221. package/dist/validators/credentials.d.ts +23 -0
  222. package/dist/validators/credentials.test.d.ts +0 -0
  223. package/dist/validators/quotas.d.ts +60 -0
  224. package/dist/validators/quotas.test.d.ts +0 -0
  225. package/package.json +4 -4
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Global AWS Config manager instance
3
+ */
4
+ export declare const awsConfigManager: AWSConfigManager;
5
+ /**
6
+ * AWS Config Rules
7
+ * Automated compliance checking and configuration management
8
+ */
9
+ export declare interface ConfigRule {
10
+ id: string
11
+ name: string
12
+ description: string
13
+ source: 'AWS_MANAGED' | 'CUSTOM_LAMBDA'
14
+ identifier?: string
15
+ lambdaFunctionArn?: string
16
+ inputParameters?: Record<string, any>
17
+ scope?: ConfigScope
18
+ maxExecutionFrequency?: 'One_Hour' | 'Three_Hours' | 'Six_Hours' | 'Twelve_Hours' | 'TwentyFour_Hours'
19
+ }
20
+ export declare interface ConfigScope {
21
+ complianceResourceTypes?: string[]
22
+ tagKey?: string
23
+ tagValue?: string
24
+ }
25
+ export declare interface ConfigRecorder {
26
+ name: string
27
+ roleArn: string
28
+ recordingGroup?: RecordingGroup
29
+ }
30
+ export declare interface RecordingGroup {
31
+ allSupported?: boolean
32
+ includeGlobalResourceTypes?: boolean
33
+ resourceTypes?: string[]
34
+ }
35
+ export declare interface DeliveryChannel {
36
+ name: string
37
+ s3BucketName: string
38
+ s3KeyPrefix?: string
39
+ snsTopicArn?: string
40
+ configSnapshotDeliveryProperties?: {
41
+ deliveryFrequency?: 'One_Hour' | 'Three_Hours' | 'Six_Hours' | 'Twelve_Hours' | 'TwentyFour_Hours'
42
+ }
43
+ }
44
+ /**
45
+ * AWS Config manager
46
+ */
47
+ export declare class AWSConfigManager {
48
+ private configRules: Map<string, ConfigRule>;
49
+ private configRecorders: Map<string, ConfigRecorder>;
50
+ private deliveryChannels: Map<string, DeliveryChannel>;
51
+ private ruleCounter: any;
52
+ createConfigRecorder(recorder: ConfigRecorder): ConfigRecorder;
53
+ createDeliveryChannel(channel: DeliveryChannel): DeliveryChannel;
54
+ createConfigRule(rule: Omit<ConfigRule, 'id'>): ConfigRule;
55
+ createS3EncryptionRule(): ConfigRule;
56
+ createS3PublicAccessBlockRule(): ConfigRule;
57
+ createS3VersioningRule(): ConfigRule;
58
+ createRdsEncryptionRule(): ConfigRule;
59
+ createRdsSnapshotEncryptionRule(): ConfigRule;
60
+ createRdsBackupRule(retentionPeriod?: number): ConfigRule;
61
+ createEc2InstanceProfileRule(): ConfigRule;
62
+ createEbsEncryptionRule(): ConfigRule;
63
+ createIamPasswordPolicyRule(): ConfigRule;
64
+ createIamMfaRule(): ConfigRule;
65
+ createRootAccountMfaRule(): ConfigRule;
66
+ createVpcFlowLogsRule(): ConfigRule;
67
+ createCloudTrailEnabledRule(): ConfigRule;
68
+ createCloudWatchAlarmRule(): ConfigRule;
69
+ createCustomLambdaRule(options: {
70
+ name: string
71
+ description: string
72
+ lambdaFunctionArn: string
73
+ resourceTypes?: string[]
74
+ maxExecutionFrequency?: ConfigRule['maxExecutionFrequency']
75
+ inputParameters?: Record<string, any>
76
+ }): ConfigRule;
77
+ createCompliancePreset(preset: 'hipaa' | 'pci-dss' | 'sox' | 'gdpr' | 'basic'): ConfigRule[];
78
+ getConfigRule(id: string): ConfigRule | undefined;
79
+ listConfigRules(): ConfigRule[];
80
+ getConfigRecorder(name: string): ConfigRecorder | undefined;
81
+ listConfigRecorders(): ConfigRecorder[];
82
+ getDeliveryChannel(name: string): DeliveryChannel | undefined;
83
+ listDeliveryChannels(): DeliveryChannel[];
84
+ generateConfigRuleCF(rule: ConfigRule): any;
85
+ generateConfigRecorderCF(recorder: ConfigRecorder): any;
86
+ generateDeliveryChannelCF(channel: DeliveryChannel): any;
87
+ clear(): void;
88
+ }
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Global CloudTrail manager instance
3
+ */
4
+ export declare const cloudTrailManager: CloudTrailManager;
5
+ /**
6
+ * AWS CloudTrail Configuration
7
+ * API logging and auditing for security and compliance
8
+ */
9
+ export declare interface CloudTrailConfig {
10
+ id: string
11
+ name: string
12
+ s3BucketName: string
13
+ s3KeyPrefix?: string
14
+ includeGlobalServiceEvents?: boolean
15
+ isMultiRegionTrail?: boolean
16
+ enableLogFileValidation?: boolean
17
+ cloudWatchLogsLogGroupArn?: string
18
+ cloudWatchLogsRoleArn?: string
19
+ snsTopicName?: string
20
+ kmsKeyId?: string
21
+ eventSelectors?: EventSelector[]
22
+ insightSelectors?: InsightSelector[]
23
+ advancedEventSelectors?: AdvancedEventSelector[]
24
+ }
25
+ export declare interface EventSelector {
26
+ readWriteType: 'ReadOnly' | 'WriteOnly' | 'All'
27
+ includeManagementEvents?: boolean
28
+ dataResources?: DataResource[]
29
+ excludeManagementEventSources?: string[]
30
+ }
31
+ export declare interface DataResource {
32
+ type: string
33
+ values: string[]
34
+ }
35
+ export declare interface InsightSelector {
36
+ insightType: 'ApiCallRateInsight' | 'ApiErrorRateInsight'
37
+ }
38
+ export declare interface AdvancedEventSelector {
39
+ name: string
40
+ fieldSelectors: FieldSelector[]
41
+ }
42
+ export declare interface FieldSelector {
43
+ field: string
44
+ equals?: string[]
45
+ startsWith?: string[]
46
+ endsWith?: string[]
47
+ notEquals?: string[]
48
+ notStartsWith?: string[]
49
+ notEndsWith?: string[]
50
+ }
51
+ /**
52
+ * CloudTrail manager
53
+ */
54
+ export declare class CloudTrailManager {
55
+ private trails: Map<string, CloudTrailConfig>;
56
+ private trailCounter: any;
57
+ createTrail(trail: Omit<CloudTrailConfig, 'id'>): CloudTrailConfig;
58
+ createOrganizationTrail(options: {
59
+ name: string
60
+ s3BucketName: string
61
+ kmsKeyId?: string
62
+ cloudWatchLogsLogGroupArn?: string
63
+ cloudWatchLogsRoleArn?: string
64
+ }): CloudTrailConfig;
65
+ createSecurityAuditTrail(options: {
66
+ name: string
67
+ s3BucketName: string
68
+ kmsKeyId: string
69
+ cloudWatchLogsLogGroupArn: string
70
+ cloudWatchLogsRoleArn: string
71
+ }): CloudTrailConfig;
72
+ createDataEventsTrail(options: {
73
+ name: string
74
+ s3BucketName: string
75
+ s3DataBuckets?: string[]
76
+ lambdaFunctions?: string[]
77
+ }): CloudTrailConfig;
78
+ createAdvancedTrail(options: {
79
+ name: string
80
+ s3BucketName: string
81
+ selectors: AdvancedEventSelector[]
82
+ }): CloudTrailConfig;
83
+ createReadOnlyTrail(options: {
84
+ name: string
85
+ s3BucketName: string
86
+ }): CloudTrailConfig;
87
+ createWriteOnlyTrail(options: {
88
+ name: string
89
+ s3BucketName: string
90
+ }): CloudTrailConfig;
91
+ getTrail(id: string): CloudTrailConfig | undefined;
92
+ listTrails(): CloudTrailConfig[];
93
+ generateTrailCF(trail: CloudTrailConfig): any;
94
+ generateBucketPolicy(bucketName: string, trailAccountIds: string[]): any;
95
+ clear(): void;
96
+ }
File without changes
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Global GuardDuty manager instance
3
+ */
4
+ export declare const guardDutyManager: GuardDutyManager;
5
+ /**
6
+ * AWS GuardDuty
7
+ * Intelligent threat detection and continuous monitoring
8
+ */
9
+ export declare interface GuardDutyDetector {
10
+ id: string
11
+ enable: boolean
12
+ findingPublishingFrequency?: 'FIFTEEN_MINUTES' | 'ONE_HOUR' | 'SIX_HOURS'
13
+ dataSources?: DataSourceConfigurations
14
+ features?: DetectorFeature[]
15
+ }
16
+ export declare interface DataSourceConfigurations {
17
+ s3Logs?: {
18
+ enable: boolean
19
+ }
20
+ kubernetes?: {
21
+ auditLogs: {
22
+ enable: boolean
23
+ }
24
+ }
25
+ malwareProtection?: {
26
+ scanEc2InstanceWithFindings: {
27
+ ebsVolumes: {
28
+ enable: boolean
29
+ }
30
+ }
31
+ }
32
+ }
33
+ export declare interface DetectorFeature {
34
+ name: 'S3_DATA_EVENTS' | 'EKS_AUDIT_LOGS' | 'EBS_MALWARE_PROTECTION' | 'RDS_LOGIN_EVENTS' | 'LAMBDA_NETWORK_LOGS'
35
+ status: 'ENABLED' | 'DISABLED'
36
+ additionalConfiguration?: {
37
+ name: string
38
+ status: 'ENABLED' | 'DISABLED'
39
+ }[]
40
+ }
41
+ export declare interface ThreatIntelSet {
42
+ id: string
43
+ detectorId: string
44
+ name: string
45
+ format: 'TXT' | 'STIX' | 'OTX_CSV' | 'ALIEN_VAULT' | 'PROOF_POINT' | 'FIRE_EYE'
46
+ location: string
47
+ activate: boolean
48
+ }
49
+ export declare interface IPSet {
50
+ id: string
51
+ detectorId: string
52
+ name: string
53
+ format: 'TXT' | 'STIX' | 'OTX_CSV' | 'ALIEN_VAULT' | 'PROOF_POINT' | 'FIRE_EYE'
54
+ location: string
55
+ activate: boolean
56
+ }
57
+ export declare interface FindingFilter {
58
+ id: string
59
+ detectorId: string
60
+ name: string
61
+ description?: string
62
+ action: 'NOOP' | 'ARCHIVE'
63
+ rank: number
64
+ findingCriteria: FindingCriteria
65
+ }
66
+ export declare interface FindingCriteria {
67
+ criterion: Record<string, {
68
+ eq?: string[]
69
+ neq?: string[]
70
+ gt?: number
71
+ gte?: number
72
+ lt?: number
73
+ lte?: number
74
+ }>
75
+ }
76
+ /**
77
+ * GuardDuty manager
78
+ */
79
+ export declare class GuardDutyManager {
80
+ private detectors: Map<string, GuardDutyDetector>;
81
+ private threatIntelSets: Map<string, ThreatIntelSet>;
82
+ private ipSets: Map<string, IPSet>;
83
+ private filters: Map<string, FindingFilter>;
84
+ private detectorCounter: any;
85
+ private threatIntelCounter: any;
86
+ private ipSetCounter: any;
87
+ private filterCounter: any;
88
+ createDetector(detector: Omit<GuardDutyDetector, 'id'>): GuardDutyDetector;
89
+ createComprehensiveDetector(): GuardDutyDetector;
90
+ createBasicDetector(): GuardDutyDetector;
91
+ createThreatIntelSet(set: Omit<ThreatIntelSet, 'id'>): ThreatIntelSet;
92
+ createIPSet(set: Omit<IPSet, 'id'>): IPSet;
93
+ createFindingFilter(filter: Omit<FindingFilter, 'id'>): FindingFilter;
94
+ createLowSeverityArchiveFilter(detectorId: string): FindingFilter;
95
+ createFindingTypeFilter(detectorId: string, findingTypes: string[], action: 'NOOP' | 'ARCHIVE'): FindingFilter;
96
+ createTrustedIPFilter(detectorId: string, ipAddresses: string[]): FindingFilter;
97
+ getDetector(id: string): GuardDutyDetector | undefined;
98
+ listDetectors(): GuardDutyDetector[];
99
+ getThreatIntelSet(id: string): ThreatIntelSet | undefined;
100
+ listThreatIntelSets(): ThreatIntelSet[];
101
+ getIPSet(id: string): IPSet | undefined;
102
+ listIPSets(): IPSet[];
103
+ getFindingFilter(id: string): FindingFilter | undefined;
104
+ listFindingFilters(): FindingFilter[];
105
+ generateDetectorCF(detector: GuardDutyDetector): any;
106
+ generateThreatIntelSetCF(set: ThreatIntelSet): any;
107
+ generateIPSetCF(set: IPSet): any;
108
+ generateFilterCF(filter: FindingFilter): any;
109
+ clear(): void;
110
+ }
@@ -0,0 +1,50 @@
1
+ export type {
2
+ ConfigRule,
3
+ ConfigScope,
4
+ ConfigRecorder,
5
+ RecordingGroup,
6
+ DeliveryChannel,
7
+ } from './aws-config';
8
+ export type {
9
+ CloudTrailConfig,
10
+ EventSelector,
11
+ DataResource,
12
+ InsightSelector,
13
+ AdvancedEventSelector,
14
+ FieldSelector,
15
+ } from './cloudtrail';
16
+ export type {
17
+ GuardDutyDetector,
18
+ DataSourceConfigurations,
19
+ DetectorFeature,
20
+ ThreatIntelSet,
21
+ IPSet,
22
+ FindingFilter,
23
+ FindingCriteria,
24
+ } from './guardduty';
25
+ export type {
26
+ SecurityHubConfig,
27
+ SecurityStandard,
28
+ AutomationRule,
29
+ AutomationAction,
30
+ AutomationCriteria,
31
+ StringFilter,
32
+ NumberFilter,
33
+ MapFilter,
34
+ } from './security-hub';
35
+ export {
36
+ AWSConfigManager,
37
+ awsConfigManager,
38
+ } from './aws-config';
39
+ export {
40
+ CloudTrailManager,
41
+ cloudTrailManager,
42
+ } from './cloudtrail';
43
+ export {
44
+ GuardDutyManager,
45
+ guardDutyManager,
46
+ } from './guardduty';
47
+ export {
48
+ SecurityHubManager,
49
+ securityHubManager,
50
+ } from './security-hub';
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Global Security Hub manager instance
3
+ */
4
+ export declare const securityHubManager: SecurityHubManager;
5
+ /**
6
+ * AWS Security Hub
7
+ * Centralized security and compliance view across AWS accounts
8
+ */
9
+ export declare interface SecurityHubConfig {
10
+ id: string
11
+ enable: boolean
12
+ controlFindingGenerator?: 'STANDARD_CONTROL' | 'SECURITY_CONTROL'
13
+ enableDefaultStandards?: boolean
14
+ standards?: SecurityStandard[]
15
+ automationRules?: AutomationRule[]
16
+ }
17
+ export declare interface SecurityStandard {
18
+ id: string
19
+ arn: string
20
+ name: string
21
+ description: string
22
+ enabled: boolean
23
+ disabledControls?: string[]
24
+ }
25
+ export declare interface AutomationRule {
26
+ id: string
27
+ ruleName: string
28
+ description?: string
29
+ actions: AutomationAction[]
30
+ criteria: AutomationCriteria
31
+ ruleStatus: 'ENABLED' | 'DISABLED'
32
+ ruleOrder: number
33
+ }
34
+ export declare interface AutomationAction {
35
+ type: 'FINDING_FIELDS_UPDATE'
36
+ findingFieldsUpdate: {
37
+ note?: {
38
+ text: string
39
+ updatedBy: string
40
+ }
41
+ severity?: {
42
+ label: 'INFORMATIONAL' | 'LOW' | 'MEDIUM' | 'HIGH' | 'CRITICAL'
43
+ }
44
+ workflow?: {
45
+ status: 'NEW' | 'NOTIFIED' | 'RESOLVED' | 'SUPPRESSED'
46
+ }
47
+ relatedFindings?: Array<{
48
+ productArn: string
49
+ id: string
50
+ }>
51
+ userDefinedFields?: Record<string, string>
52
+ }
53
+ }
54
+ export declare interface AutomationCriteria {
55
+ productName?: StringFilter[]
56
+ companyName?: StringFilter[]
57
+ severityLabel?: StringFilter[]
58
+ resourceType?: StringFilter[]
59
+ resourceId?: StringFilter[]
60
+ recordState?: StringFilter[]
61
+ workflowStatus?: StringFilter[]
62
+ complianceStatus?: StringFilter[]
63
+ verificationState?: StringFilter[]
64
+ confidence?: NumberFilter[]
65
+ criticality?: NumberFilter[]
66
+ title?: StringFilter[]
67
+ description?: StringFilter[]
68
+ sourceUrl?: StringFilter[]
69
+ productFields?: MapFilter[]
70
+ resourceTags?: MapFilter[]
71
+ userDefinedFields?: MapFilter[]
72
+ }
73
+ export declare interface StringFilter {
74
+ value: string
75
+ comparison: 'EQUALS' | 'PREFIX' | 'NOT_EQUALS' | 'PREFIX_NOT_EQUALS'
76
+ }
77
+ export declare interface NumberFilter {
78
+ gte?: number
79
+ lte?: number
80
+ eq?: number
81
+ gt?: number
82
+ lt?: number
83
+ }
84
+ export declare interface MapFilter {
85
+ key: string
86
+ value?: string
87
+ comparison: 'EQUALS' | 'NOT_EQUALS'
88
+ }
89
+ /**
90
+ * Security Hub manager
91
+ */
92
+ export declare class SecurityHubManager {
93
+ private hubs: Map<string, SecurityHubConfig>;
94
+ private hubCounter: any;
95
+ private ruleCounter: any;
96
+ static readonly Standards: any;
97
+ createHub(hub: Omit<SecurityHubConfig, 'id'>): SecurityHubConfig;
98
+ createComprehensiveHub(): SecurityHubConfig;
99
+ createBasicHub(): SecurityHubConfig;
100
+ createLowSeveritySuppressionRule(): AutomationRule;
101
+ createResourceTypeNotificationRule(resourceTypes: string[]): AutomationRule;
102
+ createComplianceFailureRule(): AutomationRule;
103
+ createFalsePositiveSuppressionRule(productName: string, titlePatterns: string[]): AutomationRule;
104
+ getHub(id: string): SecurityHubConfig | undefined;
105
+ listHubs(): SecurityHubConfig[];
106
+ generateHubCF(hub: SecurityHubConfig): any;
107
+ generateStandardCF(standard: SecurityStandard): any;
108
+ generateAutomationRuleCF(rule: AutomationRule): any;
109
+ clear(): void;
110
+ }
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Global build optimization manager instance
3
+ */
4
+ export declare const buildOptimizationManager: BuildOptimizationManager;
5
+ /**
6
+ * Container Build Optimization
7
+ * Multi-stage builds, layer caching, and build performance
8
+ */
9
+ export declare interface BuildConfig {
10
+ id: string
11
+ name: string
12
+ dockerfile: string
13
+ context: string
14
+ target?: string
15
+ buildArgs?: Record<string, string>
16
+ labels?: Record<string, string>
17
+ cacheStrategy: CacheStrategy
18
+ platform?: string
19
+ }
20
+ export declare interface CacheStrategy {
21
+ type: 'inline' | 'registry' | 'local' | 's3'
22
+ cacheFrom?: string[]
23
+ cacheTo?: string
24
+ maxCacheAge?: number
25
+ }
26
+ export declare interface MultiStageConfig {
27
+ id: string
28
+ name: string
29
+ stages: BuildStage[]
30
+ targetStage?: string
31
+ }
32
+ export declare interface BuildStage {
33
+ name: string
34
+ baseImage: string
35
+ commands: string[]
36
+ copyFrom?: string[]
37
+ workdir?: string
38
+ env?: Record<string, string>
39
+ }
40
+ export declare interface BuildOptimization {
41
+ id: string
42
+ name: string
43
+ recommendations: OptimizationRecommendation[]
44
+ estimatedSavings: BuildSavings
45
+ }
46
+ export declare interface OptimizationRecommendation {
47
+ type: 'layer_reduction' | 'cache_optimization' | 'base_image' | 'dependencies'
48
+ priority: 'high' | 'medium' | 'low'
49
+ title: string
50
+ description: string
51
+ example?: string
52
+ impact: string
53
+ }
54
+ export declare interface BuildSavings {
55
+ sizeBefore: number
56
+ sizeAfter: number
57
+ timeBefore: number
58
+ timeAfter: number
59
+ }
60
+ export declare interface LayerAnalysis {
61
+ id: string
62
+ imageId: string
63
+ layers: ImageLayer[]
64
+ totalSize: number
65
+ unnecessaryLayers: number
66
+ }
67
+ export declare interface ImageLayer {
68
+ index: number
69
+ command: string
70
+ size: number
71
+ created: Date
72
+ cacheable: boolean
73
+ }
74
+ /**
75
+ * Build optimization manager
76
+ */
77
+ export declare class BuildOptimizationManager {
78
+ private configs: Map<string, BuildConfig>;
79
+ private multiStageConfigs: Map<string, MultiStageConfig>;
80
+ private optimizations: Map<string, BuildOptimization>;
81
+ private analyses: Map<string, LayerAnalysis>;
82
+ private configCounter: any;
83
+ private multiStageCounter: any;
84
+ private optimizationCounter: any;
85
+ private analysisCounter: any;
86
+ createBuildConfig(config: Omit<BuildConfig, 'id'>): BuildConfig;
87
+ createOptimizedBuildConfig(options: {
88
+ name: string
89
+ dockerfile: string
90
+ enableCache?: boolean
91
+ registry?: string
92
+ }): BuildConfig;
93
+ createMultiStageConfig(config: Omit<MultiStageConfig, 'id'>): MultiStageConfig;
94
+ createNodeMultiStageBuild(options: {
95
+ name: string
96
+ nodeVersion?: string
97
+ targetStage?: 'production' | 'development'
98
+ }): MultiStageConfig;
99
+ generateDockerfile(configId: string): string;
100
+ analyzeImage(imageId: string, layers: Omit<ImageLayer, 'cacheable'>[]): LayerAnalysis;
101
+ private isLayerCacheable(command: string): boolean;
102
+ generateOptimizations(analysisId: string): BuildOptimization;
103
+ getBuildConfig(id: string): BuildConfig | undefined;
104
+ listBuildConfigs(): BuildConfig[];
105
+ getMultiStageConfig(id: string): MultiStageConfig | undefined;
106
+ listMultiStageConfigs(): MultiStageConfig[];
107
+ getOptimization(id: string): BuildOptimization | undefined;
108
+ listOptimizations(): BuildOptimization[];
109
+ clear(): void;
110
+ }
File without changes
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Global image scanning manager instance
3
+ */
4
+ export declare const imageScanningManager: ImageScanningManager;
5
+ /**
6
+ * Container Image Scanning
7
+ * Vulnerability scanning with Trivy, Snyk, and other tools
8
+ */
9
+ export declare interface ImageScanConfig {
10
+ id: string
11
+ repository: string
12
+ imageTag: string
13
+ scanner: ScannerType
14
+ scanOnPush: boolean
15
+ scanSchedule?: string
16
+ failOnSeverity?: 'CRITICAL' | 'HIGH' | 'MEDIUM' | 'LOW'
17
+ ignoreUnfixed?: boolean
18
+ }
19
+ export declare interface ImageScanResult {
20
+ id: string
21
+ imageUri: string
22
+ scannerType: ScannerType
23
+ scanDate: Date
24
+ vulnerabilities: ImageVulnerability[]
25
+ summary: VulnerabilitySummary
26
+ passed: boolean
27
+ }
28
+ export declare interface ImageVulnerability {
29
+ id: string
30
+ cve: string
31
+ severity: 'CRITICAL' | 'HIGH' | 'MEDIUM' | 'LOW' | 'UNKNOWN'
32
+ packageName: string
33
+ installedVersion: string
34
+ fixedVersion?: string
35
+ title: string
36
+ description: string
37
+ references: string[]
38
+ cvss?: number
39
+ }
40
+ export declare interface VulnerabilitySummary {
41
+ total: number
42
+ critical: number
43
+ high: number
44
+ medium: number
45
+ low: number
46
+ unknown: number
47
+ }
48
+ export declare interface ScanPolicy {
49
+ id: string
50
+ name: string
51
+ allowedSeverities: string[]
52
+ maxCritical: number
53
+ maxHigh: number
54
+ blockOnFailure: boolean
55
+ exemptions: string[]
56
+ }
57
+ export type ScannerType = 'trivy' | 'snyk' | 'clair' | 'anchore' | 'ecr'
58
+ /**
59
+ * Image scanning manager
60
+ */
61
+ export declare class ImageScanningManager {
62
+ private configs: Map<string, ImageScanConfig>;
63
+ private results: Map<string, ImageScanResult>;
64
+ private policies: Map<string, ScanPolicy>;
65
+ private configCounter: any;
66
+ private resultCounter: any;
67
+ private policyCounter: any;
68
+ configureScan(config: Omit<ImageScanConfig, 'id'>): ImageScanConfig;
69
+ configureTrivyScan(options: {
70
+ repository: string
71
+ imageTag: string
72
+ scanOnPush?: boolean
73
+ ignoreUnfixed?: boolean
74
+ }): ImageScanConfig;
75
+ configureSnykScan(options: {
76
+ repository: string
77
+ imageTag: string
78
+ scanOnPush?: boolean
79
+ }): ImageScanConfig;
80
+ configureECRScan(options: {
81
+ repository: string
82
+ scanOnPush?: boolean
83
+ }): ImageScanConfig;
84
+ scanImage(configId: string): Promise<ImageScanResult>;
85
+ private simulateVulnerabilities(config: ImageScanConfig): ImageVulnerability[];
86
+ private evaluateScanResult(config: ImageScanConfig, summary: VulnerabilitySummary): boolean;
87
+ createPolicy(policy: Omit<ScanPolicy, 'id'>): ScanPolicy;
88
+ createStrictPolicy(name: string): ScanPolicy;
89
+ createPermissivePolicy(name: string): ScanPolicy;
90
+ getConfig(id: string): ImageScanConfig | undefined;
91
+ listConfigs(): ImageScanConfig[];
92
+ getResult(id: string): ImageScanResult | undefined;
93
+ listResults(): ImageScanResult[];
94
+ generateECRScanCF(config: ImageScanConfig): any;
95
+ clear(): void;
96
+ }
@@ -0,0 +1,4 @@
1
+ export * from './image-scanning';
2
+ export * from './build-optimization';
3
+ export * from './registry';
4
+ export * from './service-mesh';