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 { CampaignSharedSetStatusEnum_CampaignSharedSetStatus } from "../enums/campaign_shared_set_status";
/**
 * CampaignSharedSets are used for managing the shared sets associated with a
 * campaign.
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.CampaignSharedSet
 */
export interface CampaignSharedSet {
    /**
     * Immutable. The resource name of the campaign shared set.
     * Campaign shared set resource names have the form:
     *
     * `customers/{customer_id}/campaignSharedSets/{campaign_id}~{shared_set_id}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Immutable. The campaign to which the campaign shared set belongs.
     *
     * @generated from protobuf field: optional string campaign = 5;
     */
    campaign?: string;
    /**
     * Immutable. The shared set associated with the campaign. This may be a negative keyword
     * shared set of another customer. This customer should be a manager of the
     * other customer, otherwise the campaign shared set will exist but have no
     * serving effect. Only negative keyword shared sets can be associated with
     * Shopping campaigns. Only negative placement shared sets can be associated
     * with Display mobile app campaigns.
     *
     * @generated from protobuf field: optional string shared_set = 6;
     */
    sharedSet?: string;
    /**
     * Output only. The status of this campaign shared set. Read only.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.CampaignSharedSetStatusEnum.CampaignSharedSetStatus status = 2;
     */
    status: CampaignSharedSetStatusEnum_CampaignSharedSetStatus;
}
declare class CampaignSharedSet$Type extends MessageType<CampaignSharedSet> {
    constructor();
    create(value?: PartialMessage<CampaignSharedSet>): CampaignSharedSet;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CampaignSharedSet): CampaignSharedSet;
    internalBinaryWrite(message: CampaignSharedSet, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.CampaignSharedSet
 */
export declare const CampaignSharedSet: CampaignSharedSet$Type;
export {};
