import { IAspect } from "aws-cdk-lib";
import { IConstruct } from "constructs";
import { MonitoringAspectProps } from "./IMonitoringAspect";
import { MonitoringFacade } from "./MonitoringFacade";
/**
 * A CDK aspect that adds support for monitoring all resources within scope.
 */
export declare class MonitoringAspect implements IAspect {
    private readonly monitoringFacade;
    private readonly props;
    /**
     * Whether or not we've added a monitoring to the scope for node independent monitorings.
     */
    private addedNodeIndependentMonitoringToScope;
    constructor(monitoringFacade: MonitoringFacade, props?: MonitoringAspectProps);
    visit(node: IConstruct): void;
    private getMonitoringDetails;
    private monitorAcm;
    private monitorApiGateway;
    private monitorApiGatewayV2;
    private monitorAppSync;
    private monitorAuroraCluster;
    private monitorAutoScalingGroup;
    private monitorBilling;
    private monitorCloudFront;
    private monitorCodeBuild;
    private monitorDocumentDb;
    private monitorDynamoDb;
    private monitorEc2;
    private monitorElasticCache;
    private monitorFargateService;
    private monitorFargateLoadBalancedService;
    private monitorQueueProcessingFargateService;
    /**
     * Returns true if the FargateService is owned by an L3 ecs-patterns
     * construct (ApplicationLoadBalancedFargateService,
     * NetworkLoadBalancedFargateService, QueueProcessingFargateService).
     * The L3 pattern has its own aspect hook, so monitoring the inner
     * service separately would duplicate alarms.
     */
    private isInsideFargatePattern;
    private monitorGlue;
    private monitorKinesisAnalytics;
    private monitorKinesisDataStream;
    private monitorKinesisDataStreamConsumer;
    private monitorKinesisFirehose;
    private monitorLambda;
    private monitorOpenSearch;
    private monitorRdsCluster;
    private monitorRdsInstance;
    private monitorRedshift;
    private isProbablyL2RedshiftCluster;
    private monitorS3;
    private monitorSecretsManager;
    private monitorSns;
    private monitorSqs;
    private monitorStepFunctions;
    private monitorSyntheticsCanaries;
    private monitorWebApplicationFirewallV2Acls;
}
