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 { DynamicAffiliateLocationSetFilter } from "../common/feed_item_set_filter_type_infos";
import { DynamicLocationSetFilter } from "../common/feed_item_set_filter_type_infos";
import { FeedItemSetStatusEnum_FeedItemSetStatus } from "../enums/feed_item_set_status";
/**
 * Represents a set of feed items. The set can be used and shared among certain
 * feed item features. For instance, the set can be referenced within the
 * matching functions of CustomerFeed, CampaignFeed, and AdGroupFeed.
 *
 * @generated from protobuf message google.ads.googleads.v11.resources.FeedItemSet
 */
export interface FeedItemSet {
    /**
     * Immutable. The resource name of the feed item set.
     * Feed item set resource names have the form:
     * `customers/{customer_id}/feedItemSets/{feed_id}~{feed_item_set_id}`
     *
     * @generated from protobuf field: string resource_name = 1;
     */
    resourceName: string;
    /**
     * Immutable. The resource name of the feed containing the feed items in the set.
     * Immutable. Required.
     *
     * @generated from protobuf field: string feed = 2;
     */
    feed: string;
    /**
     * Output only. ID of the set.
     *
     * @generated from protobuf field: int64 feed_item_set_id = 3;
     */
    feedItemSetId: bigint;
    /**
     * Name of the set. Must be unique within the account.
     *
     * @generated from protobuf field: string display_name = 4;
     */
    displayName: string;
    /**
     * Output only. Status of the feed item set.
     * This field is read-only.
     *
     * @generated from protobuf field: google.ads.googleads.v11.enums.FeedItemSetStatusEnum.FeedItemSetStatus status = 8;
     */
    status: FeedItemSetStatusEnum_FeedItemSetStatus;
    /**
     * @generated from protobuf oneof: dynamic_set_filter
     */
    dynamicSetFilter: {
        oneofKind: "dynamicLocationSetFilter";
        /**
         * Filter for dynamic location set.
         * It is only used for sets of locations.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.DynamicLocationSetFilter dynamic_location_set_filter = 5;
         */
        dynamicLocationSetFilter: DynamicLocationSetFilter;
    } | {
        oneofKind: "dynamicAffiliateLocationSetFilter";
        /**
         * Filter for dynamic affiliate location set.
         * This field doesn't apply generally to feed item sets. It is only used for
         * sets of affiliate locations.
         *
         * @generated from protobuf field: google.ads.googleads.v11.common.DynamicAffiliateLocationSetFilter dynamic_affiliate_location_set_filter = 6;
         */
        dynamicAffiliateLocationSetFilter: DynamicAffiliateLocationSetFilter;
    } | {
        oneofKind: undefined;
    };
}
declare class FeedItemSet$Type extends MessageType<FeedItemSet> {
    constructor();
    create(value?: PartialMessage<FeedItemSet>): FeedItemSet;
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeedItemSet): FeedItemSet;
    internalBinaryWrite(message: FeedItemSet, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
}
/**
 * @generated MessageType for protobuf message google.ads.googleads.v11.resources.FeedItemSet
 */
export declare const FeedItemSet: FeedItemSet$Type;
export {};
