// Code generated by MockGen. DO NOT EDIT.
// Source: authelia.com/provider/oauth2/handler/oauth2 (interfaces: AccessTokenStrategy)
//
// Generated by this command:
//
//	mockgen -package mocks -destination oauth2_access_token_strategy.go -mock_names Provider=MockAccessTokenStrategy authelia.com/provider/oauth2/handler/oauth2 AccessTokenStrategy
//

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

import (
	context "context"
	reflect "reflect"

	oauth2 "authelia.com/provider/oauth2"
	gomock "go.uber.org/mock/gomock"
)

// MockAccessTokenStrategy is a mock of AccessTokenStrategy interface.
type MockAccessTokenStrategy struct {
	ctrl     *gomock.Controller
	recorder *MockAccessTokenStrategyMockRecorder
	isgomock struct{}
}

// MockAccessTokenStrategyMockRecorder is the mock recorder for MockAccessTokenStrategy.
type MockAccessTokenStrategyMockRecorder struct {
	mock *MockAccessTokenStrategy
}

// NewMockAccessTokenStrategy creates a new mock instance.
func NewMockAccessTokenStrategy(ctrl *gomock.Controller) *MockAccessTokenStrategy {
	mock := &MockAccessTokenStrategy{ctrl: ctrl}
	mock.recorder = &MockAccessTokenStrategyMockRecorder{mock}
	return mock
}

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

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

// AccessTokenSignature indicates an expected call of AccessTokenSignature.
func (mr *MockAccessTokenStrategyMockRecorder) AccessTokenSignature(ctx, token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AccessTokenSignature", reflect.TypeOf((*MockAccessTokenStrategy)(nil).AccessTokenSignature), ctx, token)
}

// GenerateAccessToken mocks base method.
func (m *MockAccessTokenStrategy) GenerateAccessToken(ctx context.Context, requester oauth2.Requester) (string, string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GenerateAccessToken", ctx, requester)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(string)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GenerateAccessToken indicates an expected call of GenerateAccessToken.
func (mr *MockAccessTokenStrategyMockRecorder) GenerateAccessToken(ctx, requester any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GenerateAccessToken", reflect.TypeOf((*MockAccessTokenStrategy)(nil).GenerateAccessToken), ctx, requester)
}

// IsOpaqueAccessToken mocks base method.
func (m *MockAccessTokenStrategy) IsOpaqueAccessToken(ctx context.Context, token string) bool {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "IsOpaqueAccessToken", ctx, token)
	ret0, _ := ret[0].(bool)
	return ret0
}

// IsOpaqueAccessToken indicates an expected call of IsOpaqueAccessToken.
func (mr *MockAccessTokenStrategyMockRecorder) IsOpaqueAccessToken(ctx, token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IsOpaqueAccessToken", reflect.TypeOf((*MockAccessTokenStrategy)(nil).IsOpaqueAccessToken), ctx, token)
}

// ValidateAccessToken mocks base method.
func (m *MockAccessTokenStrategy) ValidateAccessToken(ctx context.Context, requester oauth2.Requester, token string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ValidateAccessToken", ctx, requester, token)
	ret0, _ := ret[0].(error)
	return ret0
}

// ValidateAccessToken indicates an expected call of ValidateAccessToken.
func (mr *MockAccessTokenStrategyMockRecorder) ValidateAccessToken(ctx, requester, token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateAccessToken", reflect.TypeOf((*MockAccessTokenStrategy)(nil).ValidateAccessToken), ctx, requester, token)
}
