// Code generated by MockGen. DO NOT EDIT.
// Source: ../pkg/terminal/terminal.go
//
// Generated by this command:
//
//	mockgen -source ../pkg/terminal/terminal.go -package=mocks Terminal
//

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

import (
	context "context"
	reflect "reflect"

	terminal "github.com/digitalocean/doctl/pkg/terminal"
	gomock "go.uber.org/mock/gomock"
)

// MockTerminal is a mock of Terminal interface.
type MockTerminal struct {
	ctrl     *gomock.Controller
	recorder *MockTerminalMockRecorder
	isgomock struct{}
}

// MockTerminalMockRecorder is the mock recorder for MockTerminal.
type MockTerminalMockRecorder struct {
	mock *MockTerminal
}

// NewMockTerminal creates a new mock instance.
func NewMockTerminal(ctrl *gomock.Controller) *MockTerminal {
	mock := &MockTerminal{ctrl: ctrl}
	mock.recorder = &MockTerminalMockRecorder{mock}
	return mock
}

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

// MonitorResizeEvents mocks base method.
func (m *MockTerminal) MonitorResizeEvents(ctx context.Context, resizeEvents chan<- terminal.TerminalSize) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "MonitorResizeEvents", ctx, resizeEvents)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// ReadRawStdin mocks base method.
func (m *MockTerminal) ReadRawStdin(ctx context.Context, stdinCh chan<- string) (func(), error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReadRawStdin", ctx, stdinCh)
	ret0, _ := ret[0].(func())
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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