import { Construct } from 'constructs';
import { INotification } from '../../../datadogv2';
export interface EcsAbruptlyStoppedMonitorProps {
    /**
     * The name of the service to which the monitor belongs.
     *
     * Used to generate the monitor name as well a apply the `service` tag.
     */
    readonly serviceName: string;
    /**
     * To explicitly disable notifications use {@link NoNotification}.
     *
     * @defaultValue {@link DefaultSlackNotification}
     *
     * @see https://docs.datadoghq.com/monitors/notify
     */
    readonly notification?: INotification;
    /**
     * The alert priority of the monitor
     *
     * @defaultValue {@link DatadogMonitor.DEFAULT_PRIORITY}
     */
    readonly priority?: number;
    /**
     * ARN of the cluster that should be monitored, consuming only ECS events belonging to the cluster.
     * If no cluster is provided, the monitor will consume ECS events for all clusters within the account.
     */
    readonly clusterArn?: string;
    /**
     * ARN of the Datadog forwarder Lambda function used to forward the CloudWatch logs to Datadog.
     * Currently, two values are know to be exported by the account modules:
     * * datadog-forwarder-ForwarderArn: exported by the 3rd party account modules [Datadog-forwarder](https://github.com/DataDog/datadog-serverless-functions/releases)
     * * custom-resource-datadog-logforwarder-function-arn: exported by the deprecated custom account module [datadog-integration](https://bitbucket.collaboration-man.com/projects/RIODEV/repos/datadog-integration/browse).
     *
     * @defaultValue {@link AwsEcsAbruptlyStoppedMonitor.DEFAULT_LOG_FORWARDER_ARN}
     */
    readonly datadogLogForwarderLambdaArn?: string;
}
/**
 * # WARNING: This construct is still in the beta phase.
 *
 * The construct creates monitoring for detecting ECS containers that were stopped abruptly by AWS for reasons such as,
 * out of memory, or failed health checks.
 *
 * This monitor adds transparency to such cases, which otherwise would happen without being noticed and could escalate
 * to bigger issues, like a service that requires more resources to run properly.
 *
 * The construct will consume the ECS events and send them to a CloudWatch log group, which are forwarded to Datadog,
 * allowing better analyses since AWS keeps the stopped task details for only one hour and will be used to create a
 * monitor.
 *
 * Contributions are more than welcome, please get in touch with Team Outbound to ensure compatibility.
 *
 * This construct was based on an AWS blog post about ECS anomaly detection, see here:
 * {@link https://aws.amazon.com/blogs/containers/amazon-elastic-container-service-anomaly-detection-using-amazon-eventbridge/}.
 *
 * More details on the AWS ECS events can be found here:
 * {@link https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html}.
 */
export declare class AwsEcsAbruptlyStoppedMonitor extends Construct {
    static readonly DEFAULT_LOG_FORWARDER_ARN = "datadog-forwarder-ForwarderArn";
    constructor(scope: Construct, id: string, props: EcsAbruptlyStoppedMonitorProps);
}
