// Code generated by MockGen. DO NOT EDIT.
// Source: redis.go

// Package mock is a generated GoMock package.
package mock

import (
	context "context"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	ddbtoredis "github.com/tidbcloud/api-gateway/ddbtoredis"
)

// MockRedisReaderWriter is a mock of RedisReaderWriter interface.
type MockRedisReaderWriter struct {
	ctrl     *gomock.Controller
	recorder *MockRedisReaderWriterMockRecorder
}

// MockRedisReaderWriterMockRecorder is the mock recorder for MockRedisReaderWriter.
type MockRedisReaderWriterMockRecorder struct {
	mock *MockRedisReaderWriter
}

// NewMockRedisReaderWriter creates a new mock instance.
func NewMockRedisReaderWriter(ctrl *gomock.Controller) *MockRedisReaderWriter {
	mock := &MockRedisReaderWriter{ctrl: ctrl}
	mock.recorder = &MockRedisReaderWriterMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockRedisReaderWriter) EXPECT() *MockRedisReaderWriterMockRecorder {
	return m.recorder
}

// DeleteAPIKey mocks base method.
func (m *MockRedisReaderWriter) DeleteAPIKey(ctx context.Context, publicKey string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteAPIKey", ctx, publicKey)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteAPIKey indicates an expected call of DeleteAPIKey.
func (mr *MockRedisReaderWriterMockRecorder) DeleteAPIKey(ctx, publicKey interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteAPIKey", reflect.TypeOf((*MockRedisReaderWriter)(nil).DeleteAPIKey), ctx, publicKey)
}

// ListAPIKeys mocks base method.
func (m *MockRedisReaderWriter) ListAPIKeys(ctx context.Context) (map[string]ddbtoredis.APIKey, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListAPIKeys", ctx)
	ret0, _ := ret[0].(map[string]ddbtoredis.APIKey)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListAPIKeys indicates an expected call of ListAPIKeys.
func (mr *MockRedisReaderWriterMockRecorder) ListAPIKeys(ctx interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListAPIKeys", reflect.TypeOf((*MockRedisReaderWriter)(nil).ListAPIKeys), ctx)
}

// SetAPIKey mocks base method.
func (m *MockRedisReaderWriter) SetAPIKey(ctx context.Context, publicKey, encryptedPrivateKey string, rateLimitRpm, expiredTs int) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SetAPIKey", ctx, publicKey, encryptedPrivateKey, rateLimitRpm, expiredTs)
	ret0, _ := ret[0].(error)
	return ret0
}

// SetAPIKey indicates an expected call of SetAPIKey.
func (mr *MockRedisReaderWriterMockRecorder) SetAPIKey(ctx, publicKey, encryptedPrivateKey, rateLimitRpm, expiredTs interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetAPIKey", reflect.TypeOf((*MockRedisReaderWriter)(nil).SetAPIKey), ctx, publicKey, encryptedPrivateKey, rateLimitRpm, expiredTs)
}
