/// <summary>
 /// Creates, updates, or removes campaign budgets. Operation statuses are
 /// returned.
 ///
 /// List of thrown errors:
 /// [AuthenticationError]()
 /// [AuthorizationError]()
 /// [CampaignBudgetError]()
 /// [DatabaseError]()
 /// [DistinctError]()
 /// [FieldError]()
 /// [FieldMaskError]()
 /// [HeaderError]()
 /// [InternalError]()
 /// [MutateError]()
 /// [NewResourceCreationError]()
 /// [OperationAccessDeniedError]()
 /// [QuotaError]()
 /// [RangeError]()
 /// [RequestError]()
 /// [ResourceCountLimitExceededError]()
 /// [StringLengthError]()
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public override stt::Task <MutateCampaignBudgetsResponse> MutateCampaignBudgetsAsync(MutateCampaignBudgetsRequest request, gaxgrpc::CallSettings callSettings = null)
 {
     Modify_MutateCampaignBudgetsRequest(ref request, ref callSettings);
     return(_callMutateCampaignBudgets.Async(request, callSettings));
 }
 /// <summary>
 /// Creates, updates, or removes campaign budgets. Operation statuses are
 /// returned.
 ///
 /// List of thrown errors:
 /// [AuthenticationError]()
 /// [AuthorizationError]()
 /// [CampaignBudgetError]()
 /// [DatabaseError]()
 /// [DistinctError]()
 /// [FieldError]()
 /// [FieldMaskError]()
 /// [HeaderError]()
 /// [InternalError]()
 /// [MutateError]()
 /// [NewResourceCreationError]()
 /// [OperationAccessDeniedError]()
 /// [QuotaError]()
 /// [RangeError]()
 /// [RequestError]()
 /// [ResourceCountLimitExceededError]()
 /// [StringLengthError]()
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="cancellationToken">A <see cref="st::CancellationToken"/> to use for this RPC.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <MutateCampaignBudgetsResponse> MutateCampaignBudgetsAsync(MutateCampaignBudgetsRequest request, st::CancellationToken cancellationToken) =>
 MutateCampaignBudgetsAsync(request, gaxgrpc::CallSettings.FromCancellationToken(cancellationToken));
 partial void Modify_MutateCampaignBudgetsRequest(ref MutateCampaignBudgetsRequest request, ref gaxgrpc::CallSettings settings);
 /// <summary>
 /// Creates, updates, or removes campaign budgets. Operation statuses are
 /// returned.
 ///
 /// List of thrown errors:
 /// [AuthenticationError]()
 /// [AuthorizationError]()
 /// [CampaignBudgetError]()
 /// [DatabaseError]()
 /// [DistinctError]()
 /// [FieldError]()
 /// [FieldMaskError]()
 /// [HeaderError]()
 /// [InternalError]()
 /// [MutateError]()
 /// [NewResourceCreationError]()
 /// [OperationAccessDeniedError]()
 /// [QuotaError]()
 /// [RangeError]()
 /// [RequestError]()
 /// [ResourceCountLimitExceededError]()
 /// [StringLengthError]()
 /// </summary>
 /// <param name="request">The request object containing all of the parameters for the API call.</param>
 /// <param name="callSettings">If not null, applies overrides to this RPC call.</param>
 /// <returns>A Task containing the RPC response.</returns>
 public virtual stt::Task <MutateCampaignBudgetsResponse> MutateCampaignBudgetsAsync(MutateCampaignBudgetsRequest request, gaxgrpc::CallSettings callSettings = null) =>
 throw new sys::NotImplementedException();