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 { FeedAttributeTypeEnum_FeedAttributeType } from "../enums/feed_attribute_type"; import { AffiliateLocationFeedRelationshipTypeEnum_AffiliateLocationFeedRelationshipType } from "../enums/affiliate_location_feed_relationship_type"; import { FeedStatusEnum_FeedStatus } from "../enums/feed_status"; import { FeedOriginEnum_FeedOrigin } from "../enums/feed_origin"; /** * A feed. * * @generated from protobuf message google.ads.googleads.v11.resources.Feed */ export interface Feed { /** * Immutable. The resource name of the feed. * Feed resource names have the form: * * `customers/{customer_id}/feeds/{feed_id}` * * @generated from protobuf field: string resource_name = 1; */ resourceName: string; /** * Output only. The ID of the feed. * This field is read-only. * * @generated from protobuf field: optional int64 id = 11; */ id?: bigint; /** * Immutable. Name of the feed. Required. * * @generated from protobuf field: optional string name = 12; */ name?: string; /** * The Feed's attributes. Required on CREATE, unless * system_feed_generation_data is provided, in which case Google Ads will * update the feed with the correct attributes. * Disallowed on UPDATE. Use attribute_operations to add new attributes. * * @generated from protobuf field: repeated google.ads.googleads.v11.resources.FeedAttribute attributes = 4; */ attributes: FeedAttribute[]; /** * The list of operations changing the feed attributes. Attributes can only * be added, not removed. * * @generated from protobuf field: repeated google.ads.googleads.v11.resources.FeedAttributeOperation attribute_operations = 9; */ attributeOperations: FeedAttributeOperation[]; /** * Immutable. Specifies who manages the FeedAttributes for the Feed. * * @generated from protobuf field: google.ads.googleads.v11.enums.FeedOriginEnum.FeedOrigin origin = 5; */ origin: FeedOriginEnum_FeedOrigin; /** * Output only. Status of the feed. * This field is read-only. * * @generated from protobuf field: google.ads.googleads.v11.enums.FeedStatusEnum.FeedStatus status = 8; */ status: FeedStatusEnum_FeedStatus; /** * @generated from protobuf oneof: system_feed_generation_data */ systemFeedGenerationData: { oneofKind: "placesLocationFeedData"; /** * Data used to configure a location feed populated from Business Profile. * * @generated from protobuf field: google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData places_location_feed_data = 6; */ placesLocationFeedData: Feed_PlacesLocationFeedData; } | { oneofKind: "affiliateLocationFeedData"; /** * Data used to configure an affiliate location feed populated with * the specified chains. * * @generated from protobuf field: google.ads.googleads.v11.resources.Feed.AffiliateLocationFeedData affiliate_location_feed_data = 7; */ affiliateLocationFeedData: Feed_AffiliateLocationFeedData; } | { oneofKind: undefined; }; } /** * Data used to configure a location feed populated from Business Profile. * * @generated from protobuf message google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData */ export interface Feed_PlacesLocationFeedData { /** * Immutable. Required authentication token (from OAuth API) for the email. * This field can only be specified in a create request. All its subfields * are not selectable. * * @generated from protobuf field: google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData.OAuthInfo oauth_info = 1; */ oauthInfo?: Feed_PlacesLocationFeedData_OAuthInfo; /** * Email address of a Business Profile or email address of a * manager of the Business Profile. Required. * * @generated from protobuf field: optional string email_address = 7; */ emailAddress?: string; /** * Plus page ID of the managed business whose locations should be used. If * this field is not set, then all businesses accessible by the user * (specified by email_address) are used. * This field is mutate-only and is not selectable. * * @generated from protobuf field: string business_account_id = 8; */ businessAccountId: string; /** * Used to filter Business Profile listings by business name. If * business_name_filter is set, only listings with a matching business name * are candidates to be sync'd into FeedItems. * * @generated from protobuf field: optional string business_name_filter = 9; */ businessNameFilter?: string; /** * Used to filter Business Profile listings by categories. If entries * exist in category_filters, only listings that belong to any of the * categories are candidates to be sync'd into FeedItems. If no entries * exist in category_filters, then all listings are candidates for syncing. * * @generated from protobuf field: repeated string category_filters = 11; */ categoryFilters: string[]; /** * Used to filter Business Profile listings by labels. If entries exist in * label_filters, only listings that has any of the labels set are * candidates to be synchronized into FeedItems. If no entries exist in * label_filters, then all listings are candidates for syncing. * * @generated from protobuf field: repeated string label_filters = 12; */ labelFilters: string[]; } /** * Data used for authorization using OAuth. * * @generated from protobuf message google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData.OAuthInfo */ export interface Feed_PlacesLocationFeedData_OAuthInfo { /** * The HTTP method used to obtain authorization. * * @generated from protobuf field: optional string http_method = 4; */ httpMethod?: string; /** * The HTTP request URL used to obtain authorization. * * @generated from protobuf field: optional string http_request_url = 5; */ httpRequestUrl?: string; /** * The HTTP authorization header used to obtain authorization. * * @generated from protobuf field: optional string http_authorization_header = 6; */ httpAuthorizationHeader?: string; } /** * Data used to configure an affiliate location feed populated with the * specified chains. * * @generated from protobuf message google.ads.googleads.v11.resources.Feed.AffiliateLocationFeedData */ export interface Feed_AffiliateLocationFeedData { /** * The list of chains that the affiliate location feed will sync the * locations from. * * @generated from protobuf field: repeated int64 chain_ids = 3; */ chainIds: bigint[]; /** * The relationship the chains have with the advertiser. * * @generated from protobuf field: google.ads.googleads.v11.enums.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType relationship_type = 2; */ relationshipType: AffiliateLocationFeedRelationshipTypeEnum_AffiliateLocationFeedRelationshipType; } /** * FeedAttributes define the types of data expected to be present in a Feed. A * single FeedAttribute specifies the expected type of the FeedItemAttributes * with the same FeedAttributeId. Optionally, a FeedAttribute can be marked as * being part of a FeedItem's unique key. * * @generated from protobuf message google.ads.googleads.v11.resources.FeedAttribute */ export interface FeedAttribute { /** * ID of the attribute. * * @generated from protobuf field: optional int64 id = 5; */ id?: bigint; /** * The name of the attribute. Required. * * @generated from protobuf field: optional string name = 6; */ name?: string; /** * Data type for feed attribute. Required. * * @generated from protobuf field: google.ads.googleads.v11.enums.FeedAttributeTypeEnum.FeedAttributeType type = 3; */ type: FeedAttributeTypeEnum_FeedAttributeType; /** * Indicates that data corresponding to this attribute is part of a * FeedItem's unique key. It defaults to false if it is unspecified. Note * that a unique key is not required in a Feed's schema, in which case the * FeedItems must be referenced by their feed_item_id. * * @generated from protobuf field: optional bool is_part_of_key = 7; */ isPartOfKey?: boolean; } /** * Operation to be performed on a feed attribute list in a mutate. * * @generated from protobuf message google.ads.googleads.v11.resources.FeedAttributeOperation */ export interface FeedAttributeOperation { /** * Output only. Type of list operation to perform. * * @generated from protobuf field: google.ads.googleads.v11.resources.FeedAttributeOperation.Operator operator = 1; */ operator: FeedAttributeOperation_Operator; /** * Output only. The feed attribute being added to the list. * * @generated from protobuf field: google.ads.googleads.v11.resources.FeedAttribute value = 2; */ value?: FeedAttribute; } /** * The operator. * * @generated from protobuf enum google.ads.googleads.v11.resources.FeedAttributeOperation.Operator */ export declare enum FeedAttributeOperation_Operator { /** * Unspecified. * * @generated from protobuf enum value: UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * Used for return value only. Represents value unknown in this version. * * @generated from protobuf enum value: UNKNOWN = 1; */ UNKNOWN = 1, /** * Add the attribute to the existing attributes. * * @generated from protobuf enum value: ADD = 2; */ ADD = 2 } declare class Feed$Type extends MessageType { constructor(); create(value?: PartialMessage): Feed; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feed): Feed; internalBinaryWrite(message: Feed, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.Feed */ export declare const Feed: Feed$Type; declare class Feed_PlacesLocationFeedData$Type extends MessageType { constructor(); create(value?: PartialMessage): Feed_PlacesLocationFeedData; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feed_PlacesLocationFeedData): Feed_PlacesLocationFeedData; internalBinaryWrite(message: Feed_PlacesLocationFeedData, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData */ export declare const Feed_PlacesLocationFeedData: Feed_PlacesLocationFeedData$Type; declare class Feed_PlacesLocationFeedData_OAuthInfo$Type extends MessageType { constructor(); create(value?: PartialMessage): Feed_PlacesLocationFeedData_OAuthInfo; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feed_PlacesLocationFeedData_OAuthInfo): Feed_PlacesLocationFeedData_OAuthInfo; internalBinaryWrite(message: Feed_PlacesLocationFeedData_OAuthInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.Feed.PlacesLocationFeedData.OAuthInfo */ export declare const Feed_PlacesLocationFeedData_OAuthInfo: Feed_PlacesLocationFeedData_OAuthInfo$Type; declare class Feed_AffiliateLocationFeedData$Type extends MessageType { constructor(); create(value?: PartialMessage): Feed_AffiliateLocationFeedData; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Feed_AffiliateLocationFeedData): Feed_AffiliateLocationFeedData; internalBinaryWrite(message: Feed_AffiliateLocationFeedData, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.Feed.AffiliateLocationFeedData */ export declare const Feed_AffiliateLocationFeedData: Feed_AffiliateLocationFeedData$Type; declare class FeedAttribute$Type extends MessageType { constructor(); create(value?: PartialMessage): FeedAttribute; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeedAttribute): FeedAttribute; internalBinaryWrite(message: FeedAttribute, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.FeedAttribute */ export declare const FeedAttribute: FeedAttribute$Type; declare class FeedAttributeOperation$Type extends MessageType { constructor(); create(value?: PartialMessage): FeedAttributeOperation; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FeedAttributeOperation): FeedAttributeOperation; internalBinaryWrite(message: FeedAttributeOperation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.FeedAttributeOperation */ export declare const FeedAttributeOperation: FeedAttributeOperation$Type; export {};