import { ServiceType } from "@protobuf-ts/runtime-rpc"; 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 { Status } from "../../google/rpc/status"; import { AssetGroup } from "../resources/asset_group"; import { FieldMask } from "../../google/protobuf/field_mask"; /** * Request message for [AssetGroupService.MutateAssetGroups][google.ads.googleads.v11.services.AssetGroupService.MutateAssetGroups]. * * @generated from protobuf message google.ads.googleads.v11.services.MutateAssetGroupsRequest */ export interface MutateAssetGroupsRequest { /** * Required. The ID of the customer whose asset groups are being modified. * * @generated from protobuf field: string customer_id = 1; */ customerId: string; /** * Required. The list of operations to perform on individual asset groups. * * @generated from protobuf field: repeated google.ads.googleads.v11.services.AssetGroupOperation operations = 2; */ operations: AssetGroupOperation[]; /** * If true, the request is validated but not executed. Only errors are * returned, not results. * * @generated from protobuf field: bool validate_only = 4; */ validateOnly: boolean; } /** * A single operation (create, remove) on an asset group. * * @generated from protobuf message google.ads.googleads.v11.services.AssetGroupOperation */ export interface AssetGroupOperation { /** * FieldMask that determines which resource fields are modified in an update. * * @generated from protobuf field: google.protobuf.FieldMask update_mask = 4; */ updateMask?: FieldMask; /** * @generated from protobuf oneof: operation */ operation: { oneofKind: "create"; /** * Create operation: No resource name is expected for the new asset group * * @generated from protobuf field: google.ads.googleads.v11.resources.AssetGroup create = 1; */ create: AssetGroup; } | { oneofKind: "update"; /** * Update operation: The asset group is expected to have a valid resource * name. * * @generated from protobuf field: google.ads.googleads.v11.resources.AssetGroup update = 2; */ update: AssetGroup; } | { oneofKind: "remove"; /** * Remove operation: A resource name for the removed asset group is * expected, in this format: * `customers/{customer_id}/assetGroups/{asset_group_id}` * * @generated from protobuf field: string remove = 3; */ remove: string; } | { oneofKind: undefined; }; } /** * Response message for an asset group mutate. * * @generated from protobuf message google.ads.googleads.v11.services.MutateAssetGroupsResponse */ export interface MutateAssetGroupsResponse { /** * All results for the mutate. * * @generated from protobuf field: repeated google.ads.googleads.v11.services.MutateAssetGroupResult results = 1; */ results: MutateAssetGroupResult[]; /** * Errors that pertain to operation failures in the partial failure mode. * Returned only when partial_failure = true and all errors occur inside the * operations. If any errors occur outside the operations (for example, auth * errors), we return an RPC level error. * * @generated from protobuf field: google.rpc.Status partial_failure_error = 2; */ partialFailureError?: Status; } /** * The result for the asset group mutate. * * @generated from protobuf message google.ads.googleads.v11.services.MutateAssetGroupResult */ export interface MutateAssetGroupResult { /** * Returned for successful operations. * * @generated from protobuf field: string resource_name = 1; */ resourceName: string; } declare class MutateAssetGroupsRequest$Type extends MessageType { constructor(); create(value?: PartialMessage): MutateAssetGroupsRequest; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MutateAssetGroupsRequest): MutateAssetGroupsRequest; internalBinaryWrite(message: MutateAssetGroupsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.services.MutateAssetGroupsRequest */ export declare const MutateAssetGroupsRequest: MutateAssetGroupsRequest$Type; declare class AssetGroupOperation$Type extends MessageType { constructor(); create(value?: PartialMessage): AssetGroupOperation; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AssetGroupOperation): AssetGroupOperation; internalBinaryWrite(message: AssetGroupOperation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.services.AssetGroupOperation */ export declare const AssetGroupOperation: AssetGroupOperation$Type; declare class MutateAssetGroupsResponse$Type extends MessageType { constructor(); create(value?: PartialMessage): MutateAssetGroupsResponse; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MutateAssetGroupsResponse): MutateAssetGroupsResponse; internalBinaryWrite(message: MutateAssetGroupsResponse, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.services.MutateAssetGroupsResponse */ export declare const MutateAssetGroupsResponse: MutateAssetGroupsResponse$Type; declare class MutateAssetGroupResult$Type extends MessageType { constructor(); create(value?: PartialMessage): MutateAssetGroupResult; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MutateAssetGroupResult): MutateAssetGroupResult; internalBinaryWrite(message: MutateAssetGroupResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.services.MutateAssetGroupResult */ export declare const MutateAssetGroupResult: MutateAssetGroupResult$Type; /** * @generated ServiceType for protobuf service google.ads.googleads.v11.services.AssetGroupService */ export declare const AssetGroupService: ServiceType; export {};