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 { CustomizerValue } from "../common/customizer_value";
import { CustomizerValueStatusEnum_CustomizerValueStatus } from "../enums/customizer_value_status";
/**
 * A customizer value for the associated CustomizerAttribute at the Campaign
 * level.
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.CampaignCustomizer
 */
export interface CampaignCustomizer {
    /**
     * Immutable. The resource name of the campaign customizer.
     * Campaign customizer resource names have the form:
     *
     * `customers/{customer_id}/campaignCustomizers/{campaign_id}~{customizer_attribute_id}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Immutable. The campaign to which the customizer attribute is linked.
     *
     * @generated from protobuf field: string campaign = 2;
     */
    campaign: string;
    /**
     * Required. Immutable. The customizer attribute which is linked to the campaign.
     *
     * @generated from protobuf field: string customizer_attribute = 3;
     */
    customizerAttribute: string;
    /**
     * Output only. The status of the campaign customizer.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.CustomizerValueStatusEnum.CustomizerValueStatus status = 4;
     */
    status: CustomizerValueStatusEnum_CustomizerValueStatus;
    /**
     * Required. The value to associate with the customizer attribute at this level. The
     * value must be of the type specified for the CustomizerAttribute.
     *
     * @generated from protobuf field: google.ads.googleads.v11.common.CustomizerValue value = 5;
     */
    value?: CustomizerValue;
}
declare class CampaignCustomizer$Type extends MessageType<CampaignCustomizer> {
    constructor();
    create(value?: PartialMessage<CampaignCustomizer>): CampaignCustomizer;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CampaignCustomizer): CampaignCustomizer;
    internalBinaryWrite(message: CampaignCustomizer, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.CampaignCustomizer
 */
export declare const CampaignCustomizer: CampaignCustomizer$Type;
export {};
