import { INetworkLoadBalancer, INetworkTargetGroup, TargetType } from "aws-cdk-lib/aws-elasticloadbalancingv2";
import { BaseLoadBalancerMetricFactoryProps, ILoadBalancerMetricFactory } from "./LoadBalancerMetricFactory";
import { BaseMetricFactory, BaseMetricFactoryProps, MetricFactory } from "../../common";
/**
 * Props to create NetworkLoadBalancerMetricFactory.
 */
export interface NetworkLoadBalancerMetricFactoryProps extends BaseLoadBalancerMetricFactoryProps, BaseMetricFactoryProps {
    readonly networkLoadBalancer: INetworkLoadBalancer;
    readonly networkTargetGroup: INetworkTargetGroup;
    /**
     * Target type for the NetworkLoadBalancer.
     * Set explicitly to ensure that unnecessary widgets are not rendered.
     * By default, we will provide task health metrics, which are not
     * relevant to the {@link TargetType.ALB} targets.
     */
    readonly networkLoadBalancerTargetType?: TargetType;
}
/**
 * Metric factory to create metrics for network load-balanced service.
 */
export declare class NetworkLoadBalancerMetricFactory extends BaseMetricFactory implements ILoadBalancerMetricFactory {
    protected readonly networkLoadBalancer: INetworkLoadBalancer;
    protected readonly networkTargetGroup: INetworkTargetGroup;
    protected readonly invertStatisticsOfTaskCountEnabled: boolean;
    constructor(metricFactory: MetricFactory, props: NetworkLoadBalancerMetricFactoryProps);
    metricHealthyTaskCount(): import("../../common").MetricWithAlarmSupport;
    metricUnhealthyTaskCount(): import("../../common").MetricWithAlarmSupport;
    metricHealthyTaskInPercent(): import("../../common").MetricWithAlarmSupport;
    metricActiveConnectionCount(): import("../../common").MetricWithAlarmSupport;
    metricNewConnectionCount(): import("../../common").MetricWithAlarmSupport;
    metricProcessedBytesMin(): import("../../common").MetricWithAlarmSupport;
    metricUnhealthyRoutingCount(): import("../../common").MetricWithAlarmSupport;
    metricClientResetCount(): import("../../common").MetricWithAlarmSupport;
    metricTargetResetCount(): import("../../common").MetricWithAlarmSupport;
    metricElbResetCount(): import("../../common").MetricWithAlarmSupport;
}
