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 { InteractionTypeInfo } from "../common/criteria";
/**
 * Represents a bid-modifiable only criterion at the campaign level.
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.CampaignBidModifier
 */
export interface CampaignBidModifier {
    /**
     * Immutable. The resource name of the campaign bid modifier.
     * Campaign bid modifier resource names have the form:
     *
     * `customers/{customer_id}/campaignBidModifiers/{campaign_id}~{criterion_id}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Output only. The campaign to which this criterion belongs.
     *
     * @generated from protobuf field: optional string campaign = 6;
     */
    campaign?: string;
    /**
     * Output only. The ID of the criterion to bid modify.
     *
     * This field is ignored for mutates.
     *
     * @generated from protobuf field: optional int64 criterion_id = 7;
     */
    criterionId?: bigint;
    /**
     * The modifier for the bid when the criterion matches.
     *
     * @generated from protobuf field: optional double bid_modifier = 8;
     */
    bidModifier?: number;
    /**
     * @generated from protobuf oneof: criterion
     */
    criterion: {
        oneofKind: "interactionType";
        /**
         * Immutable. Criterion for interaction type. Only supported for search campaigns.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.InteractionTypeInfo interaction_type = 5;
         */
        interactionType: InteractionTypeInfo;
    } | {
        oneofKind: undefined;
    };
}
declare class CampaignBidModifier$Type extends MessageType<CampaignBidModifier> {
    constructor();
    create(value?: PartialMessage<CampaignBidModifier>): CampaignBidModifier;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CampaignBidModifier): CampaignBidModifier;
    internalBinaryWrite(message: CampaignBidModifier, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.CampaignBidModifier
 */
export declare const CampaignBidModifier: CampaignBidModifier$Type;
export {};
