// Code generated by MockGen. DO NOT EDIT.
// Source: pkg/auth/auth.go
//
// Generated by this command:
//
//	mockgen -source pkg/auth/auth.go -destination pkg/auth/mock_gen.go -package auth
//

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

import (
	context "context"
	reflect "reflect"

	macaroons "github.com/cloudcarver/anclax/pkg/macaroons"
	fiber "github.com/gofiber/fiber/v2"
	gomock "go.uber.org/mock/gomock"
)

// MockAuthInterface is a mock of AuthInterface interface.
type MockAuthInterface struct {
	ctrl     *gomock.Controller
	recorder *MockAuthInterfaceMockRecorder
	isgomock struct{}
}

// MockAuthInterfaceMockRecorder is the mock recorder for MockAuthInterface.
type MockAuthInterfaceMockRecorder struct {
	mock *MockAuthInterface
}

// NewMockAuthInterface creates a new mock instance.
func NewMockAuthInterface(ctrl *gomock.Controller) *MockAuthInterface {
	mock := &MockAuthInterface{ctrl: ctrl}
	mock.recorder = &MockAuthInterfaceMockRecorder{mock}
	return mock
}

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

// Authfunc mocks base method.
func (m *MockAuthInterface) Authfunc(c *fiber.Ctx) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Authfunc", c)
	ret0, _ := ret[0].(error)
	return ret0
}

// Authfunc indicates an expected call of Authfunc.
func (mr *MockAuthInterfaceMockRecorder) Authfunc(c any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Authfunc", reflect.TypeOf((*MockAuthInterface)(nil).Authfunc), c)
}

// CreateRefreshToken mocks base method.
func (m *MockAuthInterface) CreateRefreshToken(ctx context.Context, accessKeyID int64, userID int32) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateRefreshToken", ctx, accessKeyID, userID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateRefreshToken indicates an expected call of CreateRefreshToken.
func (mr *MockAuthInterfaceMockRecorder) CreateRefreshToken(ctx, accessKeyID, userID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateRefreshToken", reflect.TypeOf((*MockAuthInterface)(nil).CreateRefreshToken), ctx, accessKeyID, userID)
}

// CreateToken mocks base method.
func (m *MockAuthInterface) CreateToken(ctx context.Context, userID, orgID int32, caveats ...macaroons.Caveat) (int64, string, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx, userID, orgID}
	for _, a := range caveats {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "CreateToken", varargs...)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(string)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// CreateToken indicates an expected call of CreateToken.
func (mr *MockAuthInterfaceMockRecorder) CreateToken(ctx, userID, orgID any, caveats ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, userID, orgID}, caveats...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateToken", reflect.TypeOf((*MockAuthInterface)(nil).CreateToken), varargs...)
}

// InvalidateUserTokens mocks base method.
func (m *MockAuthInterface) InvalidateUserTokens(ctx context.Context, userID int32) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "InvalidateUserTokens", ctx, userID)
	ret0, _ := ret[0].(error)
	return ret0
}

// InvalidateUserTokens indicates an expected call of InvalidateUserTokens.
func (mr *MockAuthInterfaceMockRecorder) InvalidateUserTokens(ctx, userID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InvalidateUserTokens", reflect.TypeOf((*MockAuthInterface)(nil).InvalidateUserTokens), ctx, userID)
}

// ParseRefreshToken mocks base method.
func (m *MockAuthInterface) ParseRefreshToken(ctx context.Context, refreshToken string) (int32, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ParseRefreshToken", ctx, refreshToken)
	ret0, _ := ret[0].(int32)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ParseRefreshToken indicates an expected call of ParseRefreshToken.
func (mr *MockAuthInterfaceMockRecorder) ParseRefreshToken(ctx, refreshToken any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ParseRefreshToken", reflect.TypeOf((*MockAuthInterface)(nil).ParseRefreshToken), ctx, refreshToken)
}
