// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/aisupport/packages/sdk-go/infra/lark/client/meeting (interfaces: Meeting)
//
// Generated by this command:
//
//	mockgen -destination meeting_mock.go -package=meeting github.com/tidbcloud/aisupport/packages/sdk-go/infra/lark/client/meeting Meeting
//

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

import (
	context "context"
	reflect "reflect"
	time "time"

	larkcore "github.com/larksuite/oapi-sdk-go/v3/core"
	larkvc "github.com/larksuite/oapi-sdk-go/v3/service/vc/v1"
	gomock "go.uber.org/mock/gomock"
)

// MockMeeting is a mock of Meeting interface.
type MockMeeting struct {
	ctrl     *gomock.Controller
	recorder *MockMeetingMockRecorder
	isgomock struct{}
}

// MockMeetingMockRecorder is the mock recorder for MockMeeting.
type MockMeetingMockRecorder struct {
	mock *MockMeeting
}

// NewMockMeeting creates a new mock instance.
func NewMockMeeting(ctrl *gomock.Controller) *MockMeeting {
	mock := &MockMeeting{ctrl: ctrl}
	mock.recorder = &MockMeetingMockRecorder{mock}
	return mock
}

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

// GetMeeting mocks base method.
func (m *MockMeeting) GetMeeting(ctx context.Context, param GetMeetingParam) (*larkvc.Meeting, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetMeeting", ctx, param)
	ret0, _ := ret[0].(*larkvc.Meeting)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetRecording mocks base method.
func (m *MockMeeting) GetRecording(ctx context.Context, meetingID string, opts ...larkcore.RequestOptionFunc) (*larkvc.MeetingRecording, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx, meetingID}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetRecording", varargs...)
	ret0, _ := ret[0].(*larkvc.MeetingRecording)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetRecording indicates an expected call of GetRecording.
func (mr *MockMeetingMockRecorder) GetRecording(ctx, meetingID any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, meetingID}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRecording", reflect.TypeOf((*MockMeeting)(nil).GetRecording), varargs...)
}

// ListMeetingByNumber mocks base method.
func (m *MockMeeting) ListMeetingByNumber(ctx context.Context, number string, start, end time.Time) ([]*larkvc.Meeting, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListMeetingByNumber", ctx, number, start, end)
	ret0, _ := ret[0].([]*larkvc.Meeting)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListMeetingByNumber indicates an expected call of ListMeetingByNumber.
func (mr *MockMeetingMockRecorder) ListMeetingByNumber(ctx, number, start, end any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListMeetingByNumber", reflect.TypeOf((*MockMeeting)(nil).ListMeetingByNumber), ctx, number, start, end)
}
