import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { ExperimentMetricDirectionEnum_ExperimentMetricDirection } from "../enums/experiment_metric_direction";
import { ExperimentMetricEnum_ExperimentMetric } from "../enums/experiment_metric";
/**
 * A metric goal for an experiment.
 *
 * @generated from protobuf message google.ads.googleads.v11.common.MetricGoal
 */
export interface MetricGoal {
    /**
     * The metric of the goal. For example, clicks, impressions, cost,
     * conversions, etc.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.ExperimentMetricEnum.ExperimentMetric metric = 1;
     */
    metric: ExperimentMetricEnum_ExperimentMetric;
    /**
     * The metric direction of the goal. For example, increase, decrease, no
     * change.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.ExperimentMetricDirectionEnum.ExperimentMetricDirection direction = 2;
     */
    direction: ExperimentMetricDirectionEnum_ExperimentMetricDirection;
}
declare class MetricGoal$Type extends MessageType<MetricGoal> {
    constructor();
    create(value?: PartialMessage<MetricGoal>): MetricGoal;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MetricGoal): MetricGoal;
    internalBinaryWrite(message: MetricGoal, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.common.MetricGoal
 */
export declare const MetricGoal: MetricGoal$Type;
export {};
