import type { Construct } from 'constructs';
import type { MetricFilterOptions } from './log-group';
import type { MetricOptions } from '../../aws-cloudwatch';
import { Metric } from '../../aws-cloudwatch';
import { Resource } from '../../core';
import type { ILogGroupRef } from '../../interfaces/generated/aws-logs-interfaces.generated';
/**
 * Properties for a MetricFilter
 */
export interface MetricFilterProps extends MetricFilterOptions {
    /**
     * The log group to create the filter on.
     */
    readonly logGroup: ILogGroupRef;
}
/**
 * A filter that extracts information from CloudWatch Logs and emits to CloudWatch Metrics
 */
export declare class MetricFilter extends Resource {
    /** Uniquely identifies this class. */
    static readonly PROPERTY_INJECTION_ID: string;
    private readonly metricName;
    private readonly metricNamespace;
    constructor(scope: Construct, id: string, props: MetricFilterProps);
    /**
     * Return the given named metric for this Metric Filter
     *
     * @default avg over 5 minutes
     */
    metric(props?: MetricOptions): Metric;
}
