// Code generated by mockery v2.53.3. DO NOT EDIT.

package mock

import (
	bizerr "github.com/tidbcloud/pkgv2/bizerr"

	context "context"

	domain "github.com/tidbcloud/dataflow-service/app/models/domain"

	mock "github.com/stretchr/testify/mock"
)

// AWSBucketManagerModel is an autogenerated mock type for the AWSBucketManagerModel type
type AWSBucketManagerModel struct {
	mock.Mock
}

// AddAllowRoleArnToBucketPolicy provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) AddAllowRoleArnToBucketPolicy(ctx context.Context, req *domain.AddAWSAllowRoleArnToBucketPolicyReq) (*domain.AddAWSAllowRoleArnToBucketPolicyResp, bizerr.BizError) {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for AddAllowRoleArnToBucketPolicy")
	}

	var r0 *domain.AddAWSAllowRoleArnToBucketPolicyResp
	var r1 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AddAWSAllowRoleArnToBucketPolicyReq) (*domain.AddAWSAllowRoleArnToBucketPolicyResp, bizerr.BizError)); ok {
		return rf(ctx, req)
	}
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AddAWSAllowRoleArnToBucketPolicyReq) *domain.AddAWSAllowRoleArnToBucketPolicyResp); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*domain.AddAWSAllowRoleArnToBucketPolicyResp)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, *domain.AddAWSAllowRoleArnToBucketPolicyReq) bizerr.BizError); ok {
		r1 = rf(ctx, req)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(bizerr.BizError)
		}
	}

	return r0, r1
}

// AddBucketLifecycleConfiguration provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) AddBucketLifecycleConfiguration(ctx context.Context, req *domain.AddBucketLifecycleConfigurationReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for AddBucketLifecycleConfiguration")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AddBucketLifecycleConfigurationReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// AddBucketReplication provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) AddBucketReplication(ctx context.Context, req *domain.AddAWSBucketReplicationReq) (*domain.AddAWSBucketReplicationResp, bizerr.BizError) {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for AddBucketReplication")
	}

	var r0 *domain.AddAWSBucketReplicationResp
	var r1 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AddAWSBucketReplicationReq) (*domain.AddAWSBucketReplicationResp, bizerr.BizError)); ok {
		return rf(ctx, req)
	}
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AddAWSBucketReplicationReq) *domain.AddAWSBucketReplicationResp); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*domain.AddAWSBucketReplicationResp)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, *domain.AddAWSBucketReplicationReq) bizerr.BizError); ok {
		r1 = rf(ctx, req)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(bizerr.BizError)
		}
	}

	return r0, r1
}

// CheckBucketIfExists provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) CheckBucketIfExists(ctx context.Context, req *domain.AWSBucketReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for CheckBucketIfExists")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AWSBucketReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// CreateBucket provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) CreateBucket(ctx context.Context, req *domain.CreateAWSBucketReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for CreateBucket")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.CreateAWSBucketReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// DeleteBucketIgnoreNotFound provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) DeleteBucketIgnoreNotFound(ctx context.Context, req *domain.AWSBucketReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for DeleteBucketIgnoreNotFound")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.AWSBucketReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// DeleteBucketReplication provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) DeleteBucketReplication(ctx context.Context, req *domain.DeleteAWSBucketReplicationReq) (*domain.DeleteAWSBucketReplicationResp, bizerr.BizError) {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for DeleteBucketReplication")
	}

	var r0 *domain.DeleteAWSBucketReplicationResp
	var r1 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.DeleteAWSBucketReplicationReq) (*domain.DeleteAWSBucketReplicationResp, bizerr.BizError)); ok {
		return rf(ctx, req)
	}
	if rf, ok := ret.Get(0).(func(context.Context, *domain.DeleteAWSBucketReplicationReq) *domain.DeleteAWSBucketReplicationResp); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*domain.DeleteAWSBucketReplicationResp)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, *domain.DeleteAWSBucketReplicationReq) bizerr.BizError); ok {
		r1 = rf(ctx, req)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(bizerr.BizError)
		}
	}

	return r0, r1
}

// DeleteRoleArnFromBucketPolicy provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) DeleteRoleArnFromBucketPolicy(ctx context.Context, req *domain.DeleteAWSRoleArnFromBucketPolicyReq) (*domain.DeleteAWSRoleArnFromBucketPolicyResp, bizerr.BizError) {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for DeleteRoleArnFromBucketPolicy")
	}

	var r0 *domain.DeleteAWSRoleArnFromBucketPolicyResp
	var r1 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.DeleteAWSRoleArnFromBucketPolicyReq) (*domain.DeleteAWSRoleArnFromBucketPolicyResp, bizerr.BizError)); ok {
		return rf(ctx, req)
	}
	if rf, ok := ret.Get(0).(func(context.Context, *domain.DeleteAWSRoleArnFromBucketPolicyReq) *domain.DeleteAWSRoleArnFromBucketPolicyResp); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*domain.DeleteAWSRoleArnFromBucketPolicyResp)
		}
	}

	if rf, ok := ret.Get(1).(func(context.Context, *domain.DeleteAWSRoleArnFromBucketPolicyReq) bizerr.BizError); ok {
		r1 = rf(ctx, req)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(bizerr.BizError)
		}
	}

	return r0, r1
}

// EnableBucketEncryption provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) EnableBucketEncryption(ctx context.Context, req *domain.EnableAWSBucketEncryptionReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for EnableBucketEncryption")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.EnableAWSBucketEncryptionReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// EnableBucketVersioning provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) EnableBucketVersioning(ctx context.Context, req *domain.EnableAWSBucketVersioningReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for EnableBucketVersioning")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.EnableAWSBucketVersioningReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// ModifyReplicationRTC provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) ModifyReplicationRTC(ctx context.Context, req *domain.ModifyReplicationRTCReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for ModifyReplicationRTC")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.ModifyReplicationRTCReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// PutBucketTags provides a mock function with given fields: ctx, req
func (_m *AWSBucketManagerModel) PutBucketTags(ctx context.Context, req *domain.PutAWSBucketTagsReq) bizerr.BizError {
	ret := _m.Called(ctx, req)

	if len(ret) == 0 {
		panic("no return value specified for PutBucketTags")
	}

	var r0 bizerr.BizError
	if rf, ok := ret.Get(0).(func(context.Context, *domain.PutAWSBucketTagsReq) bizerr.BizError); ok {
		r0 = rf(ctx, req)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(bizerr.BizError)
		}
	}

	return r0
}

// NewAWSBucketManagerModel creates a new instance of AWSBucketManagerModel. It also registers a testing interface on the mock and a cleanup function to assert the mocks expectations.
// The first argument is typically a *testing.T value.
func NewAWSBucketManagerModel(t interface {
	mock.TestingT
	Cleanup(func())
}) *AWSBucketManagerModel {
	mock := &AWSBucketManagerModel{}
	mock.Mock.Test(t)

	t.Cleanup(func() { mock.AssertExpectations(t) })

	return mock
}
