// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/go-webauthn/webauthn/metadata (interfaces: Provider)
//
// Generated by this command:
//
//	mockgen -package mocks -destination metadata.go -mock_names Provider=MockMetadataProvider github.com/go-webauthn/webauthn/metadata Provider
//

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

import (
	context "context"
	reflect "reflect"

	metadata "github.com/go-webauthn/webauthn/metadata"
	uuid "github.com/google/uuid"
	gomock "go.uber.org/mock/gomock"
)

// MockMetadataProvider is a mock of Provider interface.
type MockMetadataProvider struct {
	ctrl     *gomock.Controller
	recorder *MockMetadataProviderMockRecorder
	isgomock struct{}
}

// MockMetadataProviderMockRecorder is the mock recorder for MockMetadataProvider.
type MockMetadataProviderMockRecorder struct {
	mock *MockMetadataProvider
}

// NewMockMetadataProvider creates a new mock instance.
func NewMockMetadataProvider(ctrl *gomock.Controller) *MockMetadataProvider {
	mock := &MockMetadataProvider{ctrl: ctrl}
	mock.recorder = &MockMetadataProviderMockRecorder{mock}
	return mock
}

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

// GetEntry mocks base method.
func (m *MockMetadataProvider) GetEntry(ctx context.Context, aaguid uuid.UUID) (*metadata.Entry, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetEntry", ctx, aaguid)
	ret0, _ := ret[0].(*metadata.Entry)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetEntry indicates an expected call of GetEntry.
func (mr *MockMetadataProviderMockRecorder) GetEntry(ctx, aaguid any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetEntry", reflect.TypeOf((*MockMetadataProvider)(nil).GetEntry), ctx, aaguid)
}

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

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

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

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

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

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

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

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

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

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

// ValidateStatusReports mocks base method.
func (m *MockMetadataProvider) ValidateStatusReports(ctx context.Context, reports []metadata.StatusReport) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ValidateStatusReports", ctx, reports)
	ret0, _ := ret[0].(error)
	return ret0
}

// ValidateStatusReports indicates an expected call of ValidateStatusReports.
func (mr *MockMetadataProviderMockRecorder) ValidateStatusReports(ctx, reports any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateStatusReports", reflect.TypeOf((*MockMetadataProvider)(nil).ValidateStatusReports), ctx, reports)
}
