/// <summary>
 /// Creates, updates, or removes criteria. Operation statuses are returned.
 ///
 /// List of thrown errors:
 ///   [AdxError]()
 ///   [AuthenticationError]()
 ///   [AuthorizationError]()
 ///   [CampaignCriterionError]()
 ///   [CollectionSizeError]()
 ///   [ContextError]()
 ///   [CriterionError]()
 ///   [DatabaseError]()
 ///   [DistinctError]()
 ///   [FieldError]()
 ///   [FieldMaskError]()
 ///   [FunctionError]()
 ///   [HeaderError]()
 ///   [IdError]()
 ///   [InternalError]()
 ///   [MutateError]()
 ///   [NewResourceCreationError]()
 ///   [NotEmptyError]()
 ///   [NullError]()
 ///   [OperationAccessDeniedError]()
 ///   [OperatorError]()
 ///   [QuotaError]()
 ///   [RangeError]()
 ///   [RegionCodeError]()
 ///   [RequestError]()
 ///   [ResourceCountLimitExceededError]()
 ///   [SizeLimitError]()
 ///   [StringFormatError]()
 ///   [StringLengthError]()
 /// </summary>
 /// <param name="request">The request to send to the server.</param>
 /// <param name="headers">The initial metadata to send with the call. This parameter is optional.</param>
 /// <param name="deadline">An optional deadline for the call. The call will be cancelled if deadline is hit.</param>
 /// <param name="cancellationToken">An optional token for canceling the call.</param>
 /// <returns>The call object.</returns>
 public virtual grpc::AsyncUnaryCall <global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaResponse> MutateCampaignCriteriaAsync(global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaRequest request, grpc::Metadata headers = null, global::System.DateTime?deadline = null, global::System.Threading.CancellationToken cancellationToken = default(global::System.Threading.CancellationToken))
 {
     return(MutateCampaignCriteriaAsync(request, new grpc::CallOptions(headers, deadline, cancellationToken)));
 }
 /// <summary>
 /// Creates, updates, or removes criteria. Operation statuses are returned.
 ///
 /// List of thrown errors:
 ///   [AdxError]()
 ///   [AuthenticationError]()
 ///   [AuthorizationError]()
 ///   [CampaignCriterionError]()
 ///   [CollectionSizeError]()
 ///   [ContextError]()
 ///   [CriterionError]()
 ///   [DatabaseError]()
 ///   [DistinctError]()
 ///   [FieldError]()
 ///   [FieldMaskError]()
 ///   [FunctionError]()
 ///   [HeaderError]()
 ///   [IdError]()
 ///   [InternalError]()
 ///   [MutateError]()
 ///   [NewResourceCreationError]()
 ///   [NotEmptyError]()
 ///   [NullError]()
 ///   [OperationAccessDeniedError]()
 ///   [OperatorError]()
 ///   [QuotaError]()
 ///   [RangeError]()
 ///   [RegionCodeError]()
 ///   [RequestError]()
 ///   [ResourceCountLimitExceededError]()
 ///   [SizeLimitError]()
 ///   [StringFormatError]()
 ///   [StringLengthError]()
 /// </summary>
 /// <param name="request">The request to send to the server.</param>
 /// <param name="options">The options for the call.</param>
 /// <returns>The call object.</returns>
 public virtual grpc::AsyncUnaryCall <global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaResponse> MutateCampaignCriteriaAsync(global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaRequest request, grpc::CallOptions options)
 {
     return(CallInvoker.AsyncUnaryCall(__Method_MutateCampaignCriteria, null, options, request));
 }
 /// <summary>
 /// Creates, updates, or removes criteria. Operation statuses are returned.
 ///
 /// List of thrown errors:
 ///   [AdxError]()
 ///   [AuthenticationError]()
 ///   [AuthorizationError]()
 ///   [CampaignCriterionError]()
 ///   [CollectionSizeError]()
 ///   [ContextError]()
 ///   [CriterionError]()
 ///   [DatabaseError]()
 ///   [DistinctError]()
 ///   [FieldError]()
 ///   [FieldMaskError]()
 ///   [FunctionError]()
 ///   [HeaderError]()
 ///   [IdError]()
 ///   [InternalError]()
 ///   [MutateError]()
 ///   [NewResourceCreationError]()
 ///   [NotEmptyError]()
 ///   [NullError]()
 ///   [OperationAccessDeniedError]()
 ///   [OperatorError]()
 ///   [QuotaError]()
 ///   [RangeError]()
 ///   [RegionCodeError]()
 ///   [RequestError]()
 ///   [ResourceCountLimitExceededError]()
 ///   [SizeLimitError]()
 ///   [StringFormatError]()
 ///   [StringLengthError]()
 /// </summary>
 /// <param name="request">The request received from the client.</param>
 /// <param name="context">The context of the server-side call handler being invoked.</param>
 /// <returns>The response to send back to the client (wrapped by a task).</returns>
 public virtual global::System.Threading.Tasks.Task <global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaResponse> MutateCampaignCriteria(global::Google.Ads.GoogleAds.V8.Services.MutateCampaignCriteriaRequest request, grpc::ServerCallContext context)
 {
     throw new grpc::RpcException(new grpc::Status(grpc::StatusCode.Unimplemented, ""));
 }