@stacksjs/ts-cloud-core 0.1.6 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/advanced-features.test.d.ts +0 -0
- package/dist/aws/cloudformation.d.ts +69 -0
- package/dist/aws/cloudfront.d.ts +21 -0
- package/dist/aws/credentials.d.ts +66 -0
- package/dist/aws/credentials.test.d.ts +0 -0
- package/dist/aws/index.d.ts +73 -0
- package/dist/aws/s3.d.ts +130 -0
- package/dist/aws/s3.test.d.ts +0 -0
- package/dist/aws/signature.d.ts +101 -0
- package/dist/aws/signature.test.d.ts +0 -0
- package/dist/backup/disaster-recovery.d.ts +98 -0
- package/dist/backup/disaster-recovery.test.d.ts +0 -0
- package/dist/backup/index.d.ts +24 -0
- package/dist/backup/manager.d.ts +112 -0
- package/dist/backup/manager.test.d.ts +0 -0
- package/dist/cicd/circleci.d.ts +47 -0
- package/dist/cicd/github-actions.d.ts +55 -0
- package/dist/cicd/gitlab-ci.d.ts +46 -0
- package/dist/cicd/index.d.ts +3 -0
- package/dist/cli/history.d.ts +66 -0
- package/dist/cli/index.d.ts +5 -0
- package/dist/cli/progress.d.ts +97 -0
- package/dist/cli/repl.d.ts +76 -0
- package/dist/cli/suggestions.d.ts +67 -0
- package/dist/cli/table.d.ts +70 -0
- package/dist/cli/table.test.d.ts +0 -0
- package/dist/cloudformation/builder.d.ts +59 -0
- package/dist/cloudformation/builder.test.d.ts +0 -0
- package/dist/cloudformation/builders/api-gateway.d.ts +30 -0
- package/dist/cloudformation/builders/cache.d.ts +35 -0
- package/dist/cloudformation/builders/cdn.d.ts +34 -0
- package/dist/cloudformation/builders/compute.d.ts +66 -0
- package/dist/cloudformation/builders/database.d.ts +61 -0
- package/dist/cloudformation/builders/functions.d.ts +32 -0
- package/dist/cloudformation/builders/messaging.d.ts +17 -0
- package/dist/cloudformation/builders/monitoring.d.ts +36 -0
- package/dist/cloudformation/builders/network.d.ts +14 -0
- package/dist/cloudformation/builders/queue.d.ts +8 -0
- package/dist/cloudformation/builders/security.d.ts +31 -0
- package/dist/cloudformation/builders/storage.d.ts +8 -0
- package/dist/cloudformation/index.d.ts +24 -0
- package/dist/cloudformation/types.d.ts +132 -0
- package/dist/compliance/aws-config.d.ts +88 -0
- package/dist/compliance/cloudtrail.d.ts +96 -0
- package/dist/compliance/compliance.test.d.ts +0 -0
- package/dist/compliance/guardduty.d.ts +110 -0
- package/dist/compliance/index.d.ts +50 -0
- package/dist/compliance/security-hub.d.ts +110 -0
- package/dist/containers/build-optimization.d.ts +110 -0
- package/dist/containers/containers.test.d.ts +0 -0
- package/dist/containers/image-scanning.d.ts +96 -0
- package/dist/containers/index.d.ts +4 -0
- package/dist/containers/registry.d.ts +99 -0
- package/dist/containers/service-mesh.d.ts +206 -0
- package/dist/database/database.test.d.ts +0 -0
- package/dist/database/index.d.ts +4 -0
- package/dist/database/migrations.d.ts +102 -0
- package/dist/database/performance.d.ts +168 -0
- package/dist/database/replicas.d.ts +146 -0
- package/dist/database/users.d.ts +102 -0
- package/dist/dependency-graph.d.ts +19 -0
- package/dist/deployment/ab-testing.d.ts +114 -0
- package/dist/deployment/blue-green.d.ts +98 -0
- package/dist/deployment/canary.d.ts +103 -0
- package/dist/deployment/deployment.test.d.ts +0 -0
- package/dist/deployment/index.d.ts +45 -0
- package/dist/deployment/progressive.d.ts +34 -0
- package/dist/dns/dns.test.d.ts +0 -0
- package/dist/dns/dnssec.d.ts +75 -0
- package/dist/dns/index.d.ts +3 -0
- package/dist/dns/resolver.d.ts +150 -0
- package/dist/dns/routing.d.ts +217 -0
- package/dist/email/advanced/analytics.d.ts +78 -0
- package/dist/email/advanced/index.d.ts +7 -0
- package/dist/email/advanced/rules.d.ts +60 -0
- package/dist/email/advanced/scheduling.d.ts +63 -0
- package/dist/email/advanced/search.d.ts +76 -0
- package/dist/email/advanced/shared-mailboxes.d.ts +66 -0
- package/dist/email/advanced/templates.d.ts +39 -0
- package/dist/email/advanced/threading.d.ts +53 -0
- package/dist/email/analytics.d.ts +144 -0
- package/dist/email/bounce-handling.d.ts +120 -0
- package/dist/email/email.test.d.ts +0 -0
- package/dist/email/handlers/__tests__/inbound.test.d.ts +0 -0
- package/dist/email/handlers/__tests__/outbound.test.d.ts +0 -0
- package/dist/email/handlers/converter.d.ts +225 -0
- package/dist/email/handlers/feedback.d.ts +226 -0
- package/dist/email/handlers/inbound.d.ts +167 -0
- package/dist/email/handlers/outbound.d.ts +176 -0
- package/dist/email/index.d.ts +6 -0
- package/dist/email/reputation.d.ts +97 -0
- package/dist/email/templates.d.ts +82 -0
- package/dist/errors/index.d.ts +186 -0
- package/dist/errors/index.test.d.ts +0 -0
- package/dist/health-checks/index.d.ts +35 -0
- package/dist/index.d.ts +256 -0
- package/dist/index.js +63499 -0
- package/dist/intrinsic-functions.d.ts +37 -0
- package/dist/lambda/concurrency.d.ts +98 -0
- package/dist/lambda/destinations.d.ts +99 -0
- package/dist/lambda/dlq.d.ts +109 -0
- package/dist/lambda/index.d.ts +6 -0
- package/dist/lambda/lambda.test.d.ts +0 -0
- package/dist/lambda/layers.d.ts +81 -0
- package/dist/lambda/versions.d.ts +91 -0
- package/dist/lambda/vpc.d.ts +116 -0
- package/dist/local/config.d.ts +44 -0
- package/dist/local/index.d.ts +2 -0
- package/dist/local/mock-aws.d.ts +60 -0
- package/dist/modules/ai.d.ts +47 -0
- package/dist/modules/api.d.ts +98 -0
- package/dist/modules/auth.d.ts +165 -0
- package/dist/modules/cache.d.ts +73 -0
- package/dist/modules/cdn.d.ts +125 -0
- package/dist/modules/communication.d.ts +98 -0
- package/dist/modules/compute.d.ts +309 -0
- package/dist/modules/database.d.ts +105 -0
- package/dist/modules/deployment.d.ts +181 -0
- package/dist/modules/dns.d.ts +45 -0
- package/dist/modules/email.d.ts +217 -0
- package/dist/modules/filesystem.d.ts +94 -0
- package/dist/modules/index.d.ts +27 -0
- package/dist/modules/messaging.d.ts +108 -0
- package/dist/modules/monitoring.d.ts +127 -0
- package/dist/modules/network.d.ts +102 -0
- package/dist/modules/parameter-store.d.ts +33 -0
- package/dist/modules/permissions.d.ts +132 -0
- package/dist/modules/phone.d.ts +80 -0
- package/dist/modules/queue.d.ts +210 -0
- package/dist/modules/redirects.d.ts +59 -0
- package/dist/modules/registry.d.ts +73 -0
- package/dist/modules/search.d.ts +56 -0
- package/dist/modules/secrets.d.ts +80 -0
- package/dist/modules/security.d.ts +100 -0
- package/dist/modules/sms.d.ts +52 -0
- package/dist/modules/storage.d.ts +160 -0
- package/dist/modules/workflow.d.ts +205 -0
- package/dist/multi-account/config.d.ts +315 -0
- package/dist/multi-account/index.d.ts +2 -0
- package/dist/multi-account/manager.d.ts +100 -0
- package/dist/multi-region/cross-region.d.ts +114 -0
- package/dist/multi-region/index.d.ts +3 -0
- package/dist/multi-region/manager.d.ts +72 -0
- package/dist/multi-region/regions.d.ts +98 -0
- package/dist/network-security/index.d.ts +39 -0
- package/dist/observability/index.d.ts +4 -0
- package/dist/observability/logs.d.ts +129 -0
- package/dist/observability/metrics.d.ts +153 -0
- package/dist/observability/observability.test.d.ts +0 -0
- package/dist/observability/synthetics.d.ts +146 -0
- package/dist/observability/xray.d.ts +129 -0
- package/dist/phone/advanced/analytics.d.ts +66 -0
- package/dist/phone/advanced/callbacks.d.ts +50 -0
- package/dist/phone/advanced/index.d.ts +4 -0
- package/dist/phone/advanced/ivr-builder.d.ts +83 -0
- package/dist/phone/advanced/recording.d.ts +48 -0
- package/dist/phone/handlers/__tests__/incoming-call.test.d.ts +0 -0
- package/dist/phone/handlers/incoming-call.d.ts +115 -0
- package/dist/phone/handlers/missed-call.d.ts +114 -0
- package/dist/phone/handlers/voicemail.d.ts +177 -0
- package/dist/phone/index.d.ts +2 -0
- package/dist/presets/api-backend.d.ts +11 -0
- package/dist/presets/data-pipeline.d.ts +11 -0
- package/dist/presets/extend.d.ts +194 -0
- package/dist/presets/extend.test.d.ts +0 -0
- package/dist/presets/fullstack-app.d.ts +12 -0
- package/dist/presets/index.d.ts +24 -0
- package/dist/presets/jamstack.d.ts +12 -0
- package/dist/presets/microservices.d.ts +18 -0
- package/dist/presets/ml-api.d.ts +13 -0
- package/dist/presets/nodejs-server.d.ts +14 -0
- package/dist/presets/nodejs-serverless.d.ts +14 -0
- package/dist/presets/realtime-app.d.ts +11 -0
- package/dist/presets/static-site.d.ts +12 -0
- package/dist/presets/traditional-web-app.d.ts +16 -0
- package/dist/presets/wordpress.d.ts +12 -0
- package/dist/preview/github.d.ts +32 -0
- package/dist/preview/github.test.d.ts +0 -0
- package/dist/preview/index.d.ts +27 -0
- package/dist/preview/manager.d.ts +58 -0
- package/dist/preview/manager.test.d.ts +0 -0
- package/dist/preview/notifications.d.ts +55 -0
- package/dist/preview/notifications.test.d.ts +0 -0
- package/dist/queue/batch-processing.d.ts +87 -0
- package/dist/queue/dlq-monitoring.d.ts +95 -0
- package/dist/queue/fifo.d.ts +90 -0
- package/dist/queue/index.d.ts +4 -0
- package/dist/queue/management.d.ts +105 -0
- package/dist/queue/queue.test.d.ts +0 -0
- package/dist/resource-mgmt/index.d.ts +29 -0
- package/dist/resource-naming.d.ts +26 -0
- package/dist/s3/index.d.ts +173 -0
- package/dist/schema/index.d.ts +9 -0
- package/dist/security/certificate-manager.d.ts +121 -0
- package/dist/security/index.d.ts +4 -0
- package/dist/security/scanning.d.ts +147 -0
- package/dist/security/secrets-manager.d.ts +144 -0
- package/dist/security/secrets-rotation.d.ts +115 -0
- package/dist/security/security.test.d.ts +0 -0
- package/dist/sms/advanced/ab-testing.d.ts +54 -0
- package/dist/sms/advanced/analytics.d.ts +56 -0
- package/dist/sms/advanced/campaigns.d.ts +82 -0
- package/dist/sms/advanced/chatbot.d.ts +48 -0
- package/dist/sms/advanced/index.d.ts +6 -0
- package/dist/sms/advanced/link-tracking.d.ts +42 -0
- package/dist/sms/advanced/mms.d.ts +35 -0
- package/dist/sms/handlers/__tests__/send.test.d.ts +0 -0
- package/dist/sms/handlers/delivery-status.d.ts +131 -0
- package/dist/sms/handlers/receive.d.ts +160 -0
- package/dist/sms/handlers/send.d.ts +172 -0
- package/dist/sms/index.d.ts +2 -0
- package/dist/stack-diff.d.ts +34 -0
- package/dist/static-site/index.d.ts +49 -0
- package/dist/template-builder.d.ts +14 -0
- package/dist/template-validator.d.ts +24 -0
- package/dist/utils/cache.d.ts +55 -0
- package/dist/utils/diff.d.ts +48 -0
- package/dist/utils/hash.d.ts +58 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/parallel.d.ts +60 -0
- package/dist/validators/credentials.d.ts +23 -0
- package/dist/validators/credentials.test.d.ts +0 -0
- package/dist/validators/quotas.d.ts +60 -0
- package/dist/validators/quotas.test.d.ts +0 -0
- 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
|
+
}
|