// Code generated by mockery v1.0.0. DO NOT EDIT.

package mocks

import (
	cloudwatchlogs "github.com/aws/aws-sdk-go/service/cloudwatchlogs"

	context "context"

	mock "github.com/stretchr/testify/mock"

	request "github.com/aws/aws-sdk-go/aws/request"
)

// CloudWatchLogsAPI is an autogenerated mock type for the CloudWatchLogsAPI type
type CloudWatchLogsAPI struct {
	mock.Mock
}

// AssociateKmsKey provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) AssociateKmsKey(_a0 *cloudwatchlogs.AssociateKmsKeyInput) (*cloudwatchlogs.AssociateKmsKeyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.AssociateKmsKeyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.AssociateKmsKeyInput) *cloudwatchlogs.AssociateKmsKeyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.AssociateKmsKeyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.AssociateKmsKeyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// AssociateKmsKeyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) AssociateKmsKeyRequest(_a0 *cloudwatchlogs.AssociateKmsKeyInput) (*request.Request, *cloudwatchlogs.AssociateKmsKeyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.AssociateKmsKeyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.AssociateKmsKeyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.AssociateKmsKeyInput) *cloudwatchlogs.AssociateKmsKeyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.AssociateKmsKeyOutput)
		}
	}

	return r0, r1
}

// AssociateKmsKeyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) AssociateKmsKeyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.AssociateKmsKeyInput, _a2 ...request.Option) (*cloudwatchlogs.AssociateKmsKeyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.AssociateKmsKeyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.AssociateKmsKeyInput, ...request.Option) *cloudwatchlogs.AssociateKmsKeyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.AssociateKmsKeyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.AssociateKmsKeyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CancelExportTask provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CancelExportTask(_a0 *cloudwatchlogs.CancelExportTaskInput) (*cloudwatchlogs.CancelExportTaskOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.CancelExportTaskOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CancelExportTaskInput) *cloudwatchlogs.CancelExportTaskOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CancelExportTaskOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CancelExportTaskInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CancelExportTaskRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CancelExportTaskRequest(_a0 *cloudwatchlogs.CancelExportTaskInput) (*request.Request, *cloudwatchlogs.CancelExportTaskOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CancelExportTaskInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.CancelExportTaskOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CancelExportTaskInput) *cloudwatchlogs.CancelExportTaskOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.CancelExportTaskOutput)
		}
	}

	return r0, r1
}

// CancelExportTaskWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) CancelExportTaskWithContext(_a0 context.Context, _a1 *cloudwatchlogs.CancelExportTaskInput, _a2 ...request.Option) (*cloudwatchlogs.CancelExportTaskOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.CancelExportTaskOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.CancelExportTaskInput, ...request.Option) *cloudwatchlogs.CancelExportTaskOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CancelExportTaskOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.CancelExportTaskInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateExportTask provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateExportTask(_a0 *cloudwatchlogs.CreateExportTaskInput) (*cloudwatchlogs.CreateExportTaskOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.CreateExportTaskOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateExportTaskInput) *cloudwatchlogs.CreateExportTaskOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateExportTaskOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateExportTaskInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateExportTaskRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateExportTaskRequest(_a0 *cloudwatchlogs.CreateExportTaskInput) (*request.Request, *cloudwatchlogs.CreateExportTaskOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateExportTaskInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.CreateExportTaskOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateExportTaskInput) *cloudwatchlogs.CreateExportTaskOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.CreateExportTaskOutput)
		}
	}

	return r0, r1
}

// CreateExportTaskWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) CreateExportTaskWithContext(_a0 context.Context, _a1 *cloudwatchlogs.CreateExportTaskInput, _a2 ...request.Option) (*cloudwatchlogs.CreateExportTaskOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.CreateExportTaskOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.CreateExportTaskInput, ...request.Option) *cloudwatchlogs.CreateExportTaskOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateExportTaskOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.CreateExportTaskInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateLogGroup provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateLogGroup(_a0 *cloudwatchlogs.CreateLogGroupInput) (*cloudwatchlogs.CreateLogGroupOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.CreateLogGroupOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateLogGroupInput) *cloudwatchlogs.CreateLogGroupOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateLogGroupInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateLogGroupRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateLogGroupRequest(_a0 *cloudwatchlogs.CreateLogGroupInput) (*request.Request, *cloudwatchlogs.CreateLogGroupOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateLogGroupInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.CreateLogGroupOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateLogGroupInput) *cloudwatchlogs.CreateLogGroupOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.CreateLogGroupOutput)
		}
	}

	return r0, r1
}

// CreateLogGroupWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) CreateLogGroupWithContext(_a0 context.Context, _a1 *cloudwatchlogs.CreateLogGroupInput, _a2 ...request.Option) (*cloudwatchlogs.CreateLogGroupOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.CreateLogGroupOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.CreateLogGroupInput, ...request.Option) *cloudwatchlogs.CreateLogGroupOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.CreateLogGroupInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateLogStream provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateLogStream(_a0 *cloudwatchlogs.CreateLogStreamInput) (*cloudwatchlogs.CreateLogStreamOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.CreateLogStreamOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateLogStreamInput) *cloudwatchlogs.CreateLogStreamOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateLogStreamOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateLogStreamInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// CreateLogStreamRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) CreateLogStreamRequest(_a0 *cloudwatchlogs.CreateLogStreamInput) (*request.Request, *cloudwatchlogs.CreateLogStreamOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.CreateLogStreamInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.CreateLogStreamOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.CreateLogStreamInput) *cloudwatchlogs.CreateLogStreamOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.CreateLogStreamOutput)
		}
	}

	return r0, r1
}

// CreateLogStreamWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) CreateLogStreamWithContext(_a0 context.Context, _a1 *cloudwatchlogs.CreateLogStreamInput, _a2 ...request.Option) (*cloudwatchlogs.CreateLogStreamOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.CreateLogStreamOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.CreateLogStreamInput, ...request.Option) *cloudwatchlogs.CreateLogStreamOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.CreateLogStreamOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.CreateLogStreamInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteDestination provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteDestination(_a0 *cloudwatchlogs.DeleteDestinationInput) (*cloudwatchlogs.DeleteDestinationOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteDestinationOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteDestinationInput) *cloudwatchlogs.DeleteDestinationOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteDestinationOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteDestinationInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteDestinationRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteDestinationRequest(_a0 *cloudwatchlogs.DeleteDestinationInput) (*request.Request, *cloudwatchlogs.DeleteDestinationOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteDestinationInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteDestinationOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteDestinationInput) *cloudwatchlogs.DeleteDestinationOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteDestinationOutput)
		}
	}

	return r0, r1
}

// DeleteDestinationWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteDestinationWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteDestinationInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteDestinationOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteDestinationOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteDestinationInput, ...request.Option) *cloudwatchlogs.DeleteDestinationOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteDestinationOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteDestinationInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteLogGroup provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteLogGroup(_a0 *cloudwatchlogs.DeleteLogGroupInput) (*cloudwatchlogs.DeleteLogGroupOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteLogGroupOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteLogGroupInput) *cloudwatchlogs.DeleteLogGroupOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteLogGroupInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteLogGroupRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteLogGroupRequest(_a0 *cloudwatchlogs.DeleteLogGroupInput) (*request.Request, *cloudwatchlogs.DeleteLogGroupOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteLogGroupInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteLogGroupOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteLogGroupInput) *cloudwatchlogs.DeleteLogGroupOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteLogGroupOutput)
		}
	}

	return r0, r1
}

// DeleteLogGroupWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteLogGroupWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteLogGroupInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteLogGroupOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteLogGroupOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteLogGroupInput, ...request.Option) *cloudwatchlogs.DeleteLogGroupOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteLogGroupInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteLogStream provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteLogStream(_a0 *cloudwatchlogs.DeleteLogStreamInput) (*cloudwatchlogs.DeleteLogStreamOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteLogStreamOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteLogStreamInput) *cloudwatchlogs.DeleteLogStreamOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteLogStreamOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteLogStreamInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteLogStreamRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteLogStreamRequest(_a0 *cloudwatchlogs.DeleteLogStreamInput) (*request.Request, *cloudwatchlogs.DeleteLogStreamOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteLogStreamInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteLogStreamOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteLogStreamInput) *cloudwatchlogs.DeleteLogStreamOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteLogStreamOutput)
		}
	}

	return r0, r1
}

// DeleteLogStreamWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteLogStreamWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteLogStreamInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteLogStreamOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteLogStreamOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteLogStreamInput, ...request.Option) *cloudwatchlogs.DeleteLogStreamOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteLogStreamOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteLogStreamInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteMetricFilter provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteMetricFilter(_a0 *cloudwatchlogs.DeleteMetricFilterInput) (*cloudwatchlogs.DeleteMetricFilterOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteMetricFilterOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteMetricFilterInput) *cloudwatchlogs.DeleteMetricFilterOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteMetricFilterInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteMetricFilterRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteMetricFilterRequest(_a0 *cloudwatchlogs.DeleteMetricFilterInput) (*request.Request, *cloudwatchlogs.DeleteMetricFilterOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteMetricFilterInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteMetricFilterOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteMetricFilterInput) *cloudwatchlogs.DeleteMetricFilterOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteMetricFilterOutput)
		}
	}

	return r0, r1
}

// DeleteMetricFilterWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteMetricFilterWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteMetricFilterInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteMetricFilterOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteMetricFilterOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteMetricFilterInput, ...request.Option) *cloudwatchlogs.DeleteMetricFilterOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteMetricFilterInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteQueryDefinition provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteQueryDefinition(_a0 *cloudwatchlogs.DeleteQueryDefinitionInput) (*cloudwatchlogs.DeleteQueryDefinitionOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteQueryDefinitionOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteQueryDefinitionInput) *cloudwatchlogs.DeleteQueryDefinitionOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteQueryDefinitionOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteQueryDefinitionInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteQueryDefinitionRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteQueryDefinitionRequest(_a0 *cloudwatchlogs.DeleteQueryDefinitionInput) (*request.Request, *cloudwatchlogs.DeleteQueryDefinitionOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteQueryDefinitionInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteQueryDefinitionOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteQueryDefinitionInput) *cloudwatchlogs.DeleteQueryDefinitionOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteQueryDefinitionOutput)
		}
	}

	return r0, r1
}

// DeleteQueryDefinitionWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteQueryDefinitionWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteQueryDefinitionInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteQueryDefinitionOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteQueryDefinitionOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteQueryDefinitionInput, ...request.Option) *cloudwatchlogs.DeleteQueryDefinitionOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteQueryDefinitionOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteQueryDefinitionInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteResourcePolicy provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteResourcePolicy(_a0 *cloudwatchlogs.DeleteResourcePolicyInput) (*cloudwatchlogs.DeleteResourcePolicyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteResourcePolicyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteResourcePolicyInput) *cloudwatchlogs.DeleteResourcePolicyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteResourcePolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteResourcePolicyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteResourcePolicyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteResourcePolicyRequest(_a0 *cloudwatchlogs.DeleteResourcePolicyInput) (*request.Request, *cloudwatchlogs.DeleteResourcePolicyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteResourcePolicyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteResourcePolicyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteResourcePolicyInput) *cloudwatchlogs.DeleteResourcePolicyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteResourcePolicyOutput)
		}
	}

	return r0, r1
}

// DeleteResourcePolicyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteResourcePolicyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteResourcePolicyInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteResourcePolicyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteResourcePolicyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteResourcePolicyInput, ...request.Option) *cloudwatchlogs.DeleteResourcePolicyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteResourcePolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteResourcePolicyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteRetentionPolicy provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteRetentionPolicy(_a0 *cloudwatchlogs.DeleteRetentionPolicyInput) (*cloudwatchlogs.DeleteRetentionPolicyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteRetentionPolicyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteRetentionPolicyInput) *cloudwatchlogs.DeleteRetentionPolicyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteRetentionPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteRetentionPolicyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteRetentionPolicyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteRetentionPolicyRequest(_a0 *cloudwatchlogs.DeleteRetentionPolicyInput) (*request.Request, *cloudwatchlogs.DeleteRetentionPolicyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteRetentionPolicyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteRetentionPolicyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteRetentionPolicyInput) *cloudwatchlogs.DeleteRetentionPolicyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteRetentionPolicyOutput)
		}
	}

	return r0, r1
}

// DeleteRetentionPolicyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteRetentionPolicyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteRetentionPolicyInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteRetentionPolicyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteRetentionPolicyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteRetentionPolicyInput, ...request.Option) *cloudwatchlogs.DeleteRetentionPolicyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteRetentionPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteRetentionPolicyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteSubscriptionFilter provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteSubscriptionFilter(_a0 *cloudwatchlogs.DeleteSubscriptionFilterInput) (*cloudwatchlogs.DeleteSubscriptionFilterOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DeleteSubscriptionFilterOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteSubscriptionFilterInput) *cloudwatchlogs.DeleteSubscriptionFilterOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteSubscriptionFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteSubscriptionFilterInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DeleteSubscriptionFilterRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DeleteSubscriptionFilterRequest(_a0 *cloudwatchlogs.DeleteSubscriptionFilterInput) (*request.Request, *cloudwatchlogs.DeleteSubscriptionFilterOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DeleteSubscriptionFilterInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DeleteSubscriptionFilterOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DeleteSubscriptionFilterInput) *cloudwatchlogs.DeleteSubscriptionFilterOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DeleteSubscriptionFilterOutput)
		}
	}

	return r0, r1
}

// DeleteSubscriptionFilterWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DeleteSubscriptionFilterWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DeleteSubscriptionFilterInput, _a2 ...request.Option) (*cloudwatchlogs.DeleteSubscriptionFilterOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DeleteSubscriptionFilterOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DeleteSubscriptionFilterInput, ...request.Option) *cloudwatchlogs.DeleteSubscriptionFilterOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DeleteSubscriptionFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DeleteSubscriptionFilterInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeDestinations provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeDestinations(_a0 *cloudwatchlogs.DescribeDestinationsInput) (*cloudwatchlogs.DescribeDestinationsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeDestinationsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeDestinationsInput) *cloudwatchlogs.DescribeDestinationsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeDestinationsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeDestinationsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeDestinationsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) DescribeDestinationsPages(_a0 *cloudwatchlogs.DescribeDestinationsInput, _a1 func(*cloudwatchlogs.DescribeDestinationsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeDestinationsInput, func(*cloudwatchlogs.DescribeDestinationsOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeDestinationsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) DescribeDestinationsPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeDestinationsInput, _a2 func(*cloudwatchlogs.DescribeDestinationsOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeDestinationsInput, func(*cloudwatchlogs.DescribeDestinationsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeDestinationsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeDestinationsRequest(_a0 *cloudwatchlogs.DescribeDestinationsInput) (*request.Request, *cloudwatchlogs.DescribeDestinationsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeDestinationsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeDestinationsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeDestinationsInput) *cloudwatchlogs.DescribeDestinationsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeDestinationsOutput)
		}
	}

	return r0, r1
}

// DescribeDestinationsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeDestinationsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeDestinationsInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeDestinationsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeDestinationsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeDestinationsInput, ...request.Option) *cloudwatchlogs.DescribeDestinationsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeDestinationsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeDestinationsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeExportTasks provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeExportTasks(_a0 *cloudwatchlogs.DescribeExportTasksInput) (*cloudwatchlogs.DescribeExportTasksOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeExportTasksOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeExportTasksInput) *cloudwatchlogs.DescribeExportTasksOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeExportTasksOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeExportTasksInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeExportTasksRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeExportTasksRequest(_a0 *cloudwatchlogs.DescribeExportTasksInput) (*request.Request, *cloudwatchlogs.DescribeExportTasksOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeExportTasksInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeExportTasksOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeExportTasksInput) *cloudwatchlogs.DescribeExportTasksOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeExportTasksOutput)
		}
	}

	return r0, r1
}

// DescribeExportTasksWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeExportTasksWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeExportTasksInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeExportTasksOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeExportTasksOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeExportTasksInput, ...request.Option) *cloudwatchlogs.DescribeExportTasksOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeExportTasksOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeExportTasksInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeLogGroups provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeLogGroups(_a0 *cloudwatchlogs.DescribeLogGroupsInput) (*cloudwatchlogs.DescribeLogGroupsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeLogGroupsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogGroupsInput) *cloudwatchlogs.DescribeLogGroupsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeLogGroupsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeLogGroupsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeLogGroupsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) DescribeLogGroupsPages(_a0 *cloudwatchlogs.DescribeLogGroupsInput, _a1 func(*cloudwatchlogs.DescribeLogGroupsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogGroupsInput, func(*cloudwatchlogs.DescribeLogGroupsOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeLogGroupsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) DescribeLogGroupsPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeLogGroupsInput, _a2 func(*cloudwatchlogs.DescribeLogGroupsOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeLogGroupsInput, func(*cloudwatchlogs.DescribeLogGroupsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeLogGroupsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeLogGroupsRequest(_a0 *cloudwatchlogs.DescribeLogGroupsInput) (*request.Request, *cloudwatchlogs.DescribeLogGroupsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogGroupsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeLogGroupsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeLogGroupsInput) *cloudwatchlogs.DescribeLogGroupsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeLogGroupsOutput)
		}
	}

	return r0, r1
}

// DescribeLogGroupsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeLogGroupsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeLogGroupsInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeLogGroupsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeLogGroupsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeLogGroupsInput, ...request.Option) *cloudwatchlogs.DescribeLogGroupsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeLogGroupsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeLogGroupsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeLogStreams provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeLogStreams(_a0 *cloudwatchlogs.DescribeLogStreamsInput) (*cloudwatchlogs.DescribeLogStreamsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeLogStreamsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogStreamsInput) *cloudwatchlogs.DescribeLogStreamsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeLogStreamsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeLogStreamsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeLogStreamsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) DescribeLogStreamsPages(_a0 *cloudwatchlogs.DescribeLogStreamsInput, _a1 func(*cloudwatchlogs.DescribeLogStreamsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogStreamsInput, func(*cloudwatchlogs.DescribeLogStreamsOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeLogStreamsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) DescribeLogStreamsPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeLogStreamsInput, _a2 func(*cloudwatchlogs.DescribeLogStreamsOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeLogStreamsInput, func(*cloudwatchlogs.DescribeLogStreamsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeLogStreamsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeLogStreamsRequest(_a0 *cloudwatchlogs.DescribeLogStreamsInput) (*request.Request, *cloudwatchlogs.DescribeLogStreamsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeLogStreamsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeLogStreamsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeLogStreamsInput) *cloudwatchlogs.DescribeLogStreamsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeLogStreamsOutput)
		}
	}

	return r0, r1
}

// DescribeLogStreamsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeLogStreamsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeLogStreamsInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeLogStreamsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeLogStreamsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeLogStreamsInput, ...request.Option) *cloudwatchlogs.DescribeLogStreamsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeLogStreamsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeLogStreamsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeMetricFilters provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeMetricFilters(_a0 *cloudwatchlogs.DescribeMetricFiltersInput) (*cloudwatchlogs.DescribeMetricFiltersOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeMetricFiltersOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeMetricFiltersInput) *cloudwatchlogs.DescribeMetricFiltersOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeMetricFiltersOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeMetricFiltersInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeMetricFiltersPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) DescribeMetricFiltersPages(_a0 *cloudwatchlogs.DescribeMetricFiltersInput, _a1 func(*cloudwatchlogs.DescribeMetricFiltersOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeMetricFiltersInput, func(*cloudwatchlogs.DescribeMetricFiltersOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeMetricFiltersPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) DescribeMetricFiltersPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeMetricFiltersInput, _a2 func(*cloudwatchlogs.DescribeMetricFiltersOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeMetricFiltersInput, func(*cloudwatchlogs.DescribeMetricFiltersOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeMetricFiltersRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeMetricFiltersRequest(_a0 *cloudwatchlogs.DescribeMetricFiltersInput) (*request.Request, *cloudwatchlogs.DescribeMetricFiltersOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeMetricFiltersInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeMetricFiltersOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeMetricFiltersInput) *cloudwatchlogs.DescribeMetricFiltersOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeMetricFiltersOutput)
		}
	}

	return r0, r1
}

// DescribeMetricFiltersWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeMetricFiltersWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeMetricFiltersInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeMetricFiltersOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeMetricFiltersOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeMetricFiltersInput, ...request.Option) *cloudwatchlogs.DescribeMetricFiltersOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeMetricFiltersOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeMetricFiltersInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeQueries provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeQueries(_a0 *cloudwatchlogs.DescribeQueriesInput) (*cloudwatchlogs.DescribeQueriesOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeQueriesOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeQueriesInput) *cloudwatchlogs.DescribeQueriesOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeQueriesOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeQueriesInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeQueriesRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeQueriesRequest(_a0 *cloudwatchlogs.DescribeQueriesInput) (*request.Request, *cloudwatchlogs.DescribeQueriesOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeQueriesInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeQueriesOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeQueriesInput) *cloudwatchlogs.DescribeQueriesOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeQueriesOutput)
		}
	}

	return r0, r1
}

// DescribeQueriesWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeQueriesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeQueriesInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeQueriesOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeQueriesOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeQueriesInput, ...request.Option) *cloudwatchlogs.DescribeQueriesOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeQueriesOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeQueriesInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeQueryDefinitions provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeQueryDefinitions(_a0 *cloudwatchlogs.DescribeQueryDefinitionsInput) (*cloudwatchlogs.DescribeQueryDefinitionsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeQueryDefinitionsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeQueryDefinitionsInput) *cloudwatchlogs.DescribeQueryDefinitionsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeQueryDefinitionsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeQueryDefinitionsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeQueryDefinitionsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeQueryDefinitionsRequest(_a0 *cloudwatchlogs.DescribeQueryDefinitionsInput) (*request.Request, *cloudwatchlogs.DescribeQueryDefinitionsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeQueryDefinitionsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeQueryDefinitionsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeQueryDefinitionsInput) *cloudwatchlogs.DescribeQueryDefinitionsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeQueryDefinitionsOutput)
		}
	}

	return r0, r1
}

// DescribeQueryDefinitionsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeQueryDefinitionsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeQueryDefinitionsInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeQueryDefinitionsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeQueryDefinitionsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeQueryDefinitionsInput, ...request.Option) *cloudwatchlogs.DescribeQueryDefinitionsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeQueryDefinitionsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeQueryDefinitionsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeResourcePolicies provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeResourcePolicies(_a0 *cloudwatchlogs.DescribeResourcePoliciesInput) (*cloudwatchlogs.DescribeResourcePoliciesOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeResourcePoliciesOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeResourcePoliciesInput) *cloudwatchlogs.DescribeResourcePoliciesOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeResourcePoliciesOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeResourcePoliciesInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeResourcePoliciesRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeResourcePoliciesRequest(_a0 *cloudwatchlogs.DescribeResourcePoliciesInput) (*request.Request, *cloudwatchlogs.DescribeResourcePoliciesOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeResourcePoliciesInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeResourcePoliciesOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeResourcePoliciesInput) *cloudwatchlogs.DescribeResourcePoliciesOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeResourcePoliciesOutput)
		}
	}

	return r0, r1
}

// DescribeResourcePoliciesWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeResourcePoliciesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeResourcePoliciesInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeResourcePoliciesOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeResourcePoliciesOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeResourcePoliciesInput, ...request.Option) *cloudwatchlogs.DescribeResourcePoliciesOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeResourcePoliciesOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeResourcePoliciesInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeSubscriptionFilters provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeSubscriptionFilters(_a0 *cloudwatchlogs.DescribeSubscriptionFiltersInput) (*cloudwatchlogs.DescribeSubscriptionFiltersOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DescribeSubscriptionFiltersOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeSubscriptionFiltersInput) *cloudwatchlogs.DescribeSubscriptionFiltersOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeSubscriptionFiltersOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeSubscriptionFiltersInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DescribeSubscriptionFiltersPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) DescribeSubscriptionFiltersPages(_a0 *cloudwatchlogs.DescribeSubscriptionFiltersInput, _a1 func(*cloudwatchlogs.DescribeSubscriptionFiltersOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeSubscriptionFiltersInput, func(*cloudwatchlogs.DescribeSubscriptionFiltersOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeSubscriptionFiltersPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) DescribeSubscriptionFiltersPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeSubscriptionFiltersInput, _a2 func(*cloudwatchlogs.DescribeSubscriptionFiltersOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeSubscriptionFiltersInput, func(*cloudwatchlogs.DescribeSubscriptionFiltersOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeSubscriptionFiltersRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DescribeSubscriptionFiltersRequest(_a0 *cloudwatchlogs.DescribeSubscriptionFiltersInput) (*request.Request, *cloudwatchlogs.DescribeSubscriptionFiltersOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DescribeSubscriptionFiltersInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DescribeSubscriptionFiltersOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DescribeSubscriptionFiltersInput) *cloudwatchlogs.DescribeSubscriptionFiltersOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DescribeSubscriptionFiltersOutput)
		}
	}

	return r0, r1
}

// DescribeSubscriptionFiltersWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DescribeSubscriptionFiltersWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DescribeSubscriptionFiltersInput, _a2 ...request.Option) (*cloudwatchlogs.DescribeSubscriptionFiltersOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DescribeSubscriptionFiltersOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DescribeSubscriptionFiltersInput, ...request.Option) *cloudwatchlogs.DescribeSubscriptionFiltersOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DescribeSubscriptionFiltersOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DescribeSubscriptionFiltersInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DisassociateKmsKey provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DisassociateKmsKey(_a0 *cloudwatchlogs.DisassociateKmsKeyInput) (*cloudwatchlogs.DisassociateKmsKeyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.DisassociateKmsKeyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DisassociateKmsKeyInput) *cloudwatchlogs.DisassociateKmsKeyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DisassociateKmsKeyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DisassociateKmsKeyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// DisassociateKmsKeyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) DisassociateKmsKeyRequest(_a0 *cloudwatchlogs.DisassociateKmsKeyInput) (*request.Request, *cloudwatchlogs.DisassociateKmsKeyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.DisassociateKmsKeyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.DisassociateKmsKeyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.DisassociateKmsKeyInput) *cloudwatchlogs.DisassociateKmsKeyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.DisassociateKmsKeyOutput)
		}
	}

	return r0, r1
}

// DisassociateKmsKeyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) DisassociateKmsKeyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.DisassociateKmsKeyInput, _a2 ...request.Option) (*cloudwatchlogs.DisassociateKmsKeyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.DisassociateKmsKeyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.DisassociateKmsKeyInput, ...request.Option) *cloudwatchlogs.DisassociateKmsKeyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.DisassociateKmsKeyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.DisassociateKmsKeyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// FilterLogEvents provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) FilterLogEvents(_a0 *cloudwatchlogs.FilterLogEventsInput) (*cloudwatchlogs.FilterLogEventsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.FilterLogEventsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.FilterLogEventsInput) *cloudwatchlogs.FilterLogEventsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.FilterLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.FilterLogEventsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// FilterLogEventsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) FilterLogEventsPages(_a0 *cloudwatchlogs.FilterLogEventsInput, _a1 func(*cloudwatchlogs.FilterLogEventsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.FilterLogEventsInput, func(*cloudwatchlogs.FilterLogEventsOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// FilterLogEventsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) FilterLogEventsPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.FilterLogEventsInput, _a2 func(*cloudwatchlogs.FilterLogEventsOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.FilterLogEventsInput, func(*cloudwatchlogs.FilterLogEventsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// FilterLogEventsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) FilterLogEventsRequest(_a0 *cloudwatchlogs.FilterLogEventsInput) (*request.Request, *cloudwatchlogs.FilterLogEventsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.FilterLogEventsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.FilterLogEventsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.FilterLogEventsInput) *cloudwatchlogs.FilterLogEventsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.FilterLogEventsOutput)
		}
	}

	return r0, r1
}

// FilterLogEventsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) FilterLogEventsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.FilterLogEventsInput, _a2 ...request.Option) (*cloudwatchlogs.FilterLogEventsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.FilterLogEventsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.FilterLogEventsInput, ...request.Option) *cloudwatchlogs.FilterLogEventsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.FilterLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.FilterLogEventsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogEvents provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogEvents(_a0 *cloudwatchlogs.GetLogEventsInput) (*cloudwatchlogs.GetLogEventsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.GetLogEventsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogEventsInput) *cloudwatchlogs.GetLogEventsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogEventsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogEventsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchLogsAPI) GetLogEventsPages(_a0 *cloudwatchlogs.GetLogEventsInput, _a1 func(*cloudwatchlogs.GetLogEventsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogEventsInput, func(*cloudwatchlogs.GetLogEventsOutput, bool) bool) error); ok {
		r0 = rf(_a0, _a1)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// GetLogEventsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchLogsAPI) GetLogEventsPagesWithContext(_a0 context.Context, _a1 *cloudwatchlogs.GetLogEventsInput, _a2 func(*cloudwatchlogs.GetLogEventsOutput, bool) bool, _a3 ...request.Option) error {
	_va := make([]interface{}, len(_a3))
	for _i := range _a3 {
		_va[_i] = _a3[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1, _a2)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 error
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.GetLogEventsInput, func(*cloudwatchlogs.GetLogEventsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// GetLogEventsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogEventsRequest(_a0 *cloudwatchlogs.GetLogEventsInput) (*request.Request, *cloudwatchlogs.GetLogEventsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogEventsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.GetLogEventsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogEventsInput) *cloudwatchlogs.GetLogEventsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.GetLogEventsOutput)
		}
	}

	return r0, r1
}

// GetLogEventsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) GetLogEventsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.GetLogEventsInput, _a2 ...request.Option) (*cloudwatchlogs.GetLogEventsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.GetLogEventsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.GetLogEventsInput, ...request.Option) *cloudwatchlogs.GetLogEventsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.GetLogEventsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogGroupFields provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogGroupFields(_a0 *cloudwatchlogs.GetLogGroupFieldsInput) (*cloudwatchlogs.GetLogGroupFieldsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.GetLogGroupFieldsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogGroupFieldsInput) *cloudwatchlogs.GetLogGroupFieldsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogGroupFieldsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogGroupFieldsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogGroupFieldsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogGroupFieldsRequest(_a0 *cloudwatchlogs.GetLogGroupFieldsInput) (*request.Request, *cloudwatchlogs.GetLogGroupFieldsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogGroupFieldsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.GetLogGroupFieldsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogGroupFieldsInput) *cloudwatchlogs.GetLogGroupFieldsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.GetLogGroupFieldsOutput)
		}
	}

	return r0, r1
}

// GetLogGroupFieldsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) GetLogGroupFieldsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.GetLogGroupFieldsInput, _a2 ...request.Option) (*cloudwatchlogs.GetLogGroupFieldsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.GetLogGroupFieldsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.GetLogGroupFieldsInput, ...request.Option) *cloudwatchlogs.GetLogGroupFieldsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogGroupFieldsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.GetLogGroupFieldsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogRecord provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogRecord(_a0 *cloudwatchlogs.GetLogRecordInput) (*cloudwatchlogs.GetLogRecordOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.GetLogRecordOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogRecordInput) *cloudwatchlogs.GetLogRecordOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogRecordOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogRecordInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetLogRecordRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetLogRecordRequest(_a0 *cloudwatchlogs.GetLogRecordInput) (*request.Request, *cloudwatchlogs.GetLogRecordOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetLogRecordInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.GetLogRecordOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetLogRecordInput) *cloudwatchlogs.GetLogRecordOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.GetLogRecordOutput)
		}
	}

	return r0, r1
}

// GetLogRecordWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) GetLogRecordWithContext(_a0 context.Context, _a1 *cloudwatchlogs.GetLogRecordInput, _a2 ...request.Option) (*cloudwatchlogs.GetLogRecordOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.GetLogRecordOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.GetLogRecordInput, ...request.Option) *cloudwatchlogs.GetLogRecordOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetLogRecordOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.GetLogRecordInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetQueryResults provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetQueryResults(_a0 *cloudwatchlogs.GetQueryResultsInput) (*cloudwatchlogs.GetQueryResultsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.GetQueryResultsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetQueryResultsInput) *cloudwatchlogs.GetQueryResultsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetQueryResultsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetQueryResultsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// GetQueryResultsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) GetQueryResultsRequest(_a0 *cloudwatchlogs.GetQueryResultsInput) (*request.Request, *cloudwatchlogs.GetQueryResultsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.GetQueryResultsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.GetQueryResultsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.GetQueryResultsInput) *cloudwatchlogs.GetQueryResultsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.GetQueryResultsOutput)
		}
	}

	return r0, r1
}

// GetQueryResultsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) GetQueryResultsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.GetQueryResultsInput, _a2 ...request.Option) (*cloudwatchlogs.GetQueryResultsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.GetQueryResultsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.GetQueryResultsInput, ...request.Option) *cloudwatchlogs.GetQueryResultsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.GetQueryResultsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.GetQueryResultsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// ListTagsLogGroup provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) ListTagsLogGroup(_a0 *cloudwatchlogs.ListTagsLogGroupInput) (*cloudwatchlogs.ListTagsLogGroupOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.ListTagsLogGroupOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.ListTagsLogGroupInput) *cloudwatchlogs.ListTagsLogGroupOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.ListTagsLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.ListTagsLogGroupInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// ListTagsLogGroupRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) ListTagsLogGroupRequest(_a0 *cloudwatchlogs.ListTagsLogGroupInput) (*request.Request, *cloudwatchlogs.ListTagsLogGroupOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.ListTagsLogGroupInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.ListTagsLogGroupOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.ListTagsLogGroupInput) *cloudwatchlogs.ListTagsLogGroupOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.ListTagsLogGroupOutput)
		}
	}

	return r0, r1
}

// ListTagsLogGroupWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) ListTagsLogGroupWithContext(_a0 context.Context, _a1 *cloudwatchlogs.ListTagsLogGroupInput, _a2 ...request.Option) (*cloudwatchlogs.ListTagsLogGroupOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.ListTagsLogGroupOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.ListTagsLogGroupInput, ...request.Option) *cloudwatchlogs.ListTagsLogGroupOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.ListTagsLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.ListTagsLogGroupInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutDestination provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutDestination(_a0 *cloudwatchlogs.PutDestinationInput) (*cloudwatchlogs.PutDestinationOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutDestinationOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutDestinationInput) *cloudwatchlogs.PutDestinationOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutDestinationOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutDestinationInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutDestinationPolicy provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutDestinationPolicy(_a0 *cloudwatchlogs.PutDestinationPolicyInput) (*cloudwatchlogs.PutDestinationPolicyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutDestinationPolicyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutDestinationPolicyInput) *cloudwatchlogs.PutDestinationPolicyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutDestinationPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutDestinationPolicyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutDestinationPolicyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutDestinationPolicyRequest(_a0 *cloudwatchlogs.PutDestinationPolicyInput) (*request.Request, *cloudwatchlogs.PutDestinationPolicyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutDestinationPolicyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutDestinationPolicyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutDestinationPolicyInput) *cloudwatchlogs.PutDestinationPolicyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutDestinationPolicyOutput)
		}
	}

	return r0, r1
}

// PutDestinationPolicyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutDestinationPolicyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutDestinationPolicyInput, _a2 ...request.Option) (*cloudwatchlogs.PutDestinationPolicyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutDestinationPolicyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutDestinationPolicyInput, ...request.Option) *cloudwatchlogs.PutDestinationPolicyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutDestinationPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutDestinationPolicyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutDestinationRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutDestinationRequest(_a0 *cloudwatchlogs.PutDestinationInput) (*request.Request, *cloudwatchlogs.PutDestinationOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutDestinationInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutDestinationOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutDestinationInput) *cloudwatchlogs.PutDestinationOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutDestinationOutput)
		}
	}

	return r0, r1
}

// PutDestinationWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutDestinationWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutDestinationInput, _a2 ...request.Option) (*cloudwatchlogs.PutDestinationOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutDestinationOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutDestinationInput, ...request.Option) *cloudwatchlogs.PutDestinationOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutDestinationOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutDestinationInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutLogEvents provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutLogEvents(_a0 *cloudwatchlogs.PutLogEventsInput) (*cloudwatchlogs.PutLogEventsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutLogEventsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutLogEventsInput) *cloudwatchlogs.PutLogEventsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutLogEventsInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutLogEventsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutLogEventsRequest(_a0 *cloudwatchlogs.PutLogEventsInput) (*request.Request, *cloudwatchlogs.PutLogEventsOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutLogEventsInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutLogEventsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutLogEventsInput) *cloudwatchlogs.PutLogEventsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutLogEventsOutput)
		}
	}

	return r0, r1
}

// PutLogEventsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutLogEventsWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutLogEventsInput, _a2 ...request.Option) (*cloudwatchlogs.PutLogEventsOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutLogEventsOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutLogEventsInput, ...request.Option) *cloudwatchlogs.PutLogEventsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutLogEventsOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutLogEventsInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutMetricFilter provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutMetricFilter(_a0 *cloudwatchlogs.PutMetricFilterInput) (*cloudwatchlogs.PutMetricFilterOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutMetricFilterOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutMetricFilterInput) *cloudwatchlogs.PutMetricFilterOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutMetricFilterInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutMetricFilterRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutMetricFilterRequest(_a0 *cloudwatchlogs.PutMetricFilterInput) (*request.Request, *cloudwatchlogs.PutMetricFilterOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutMetricFilterInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutMetricFilterOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutMetricFilterInput) *cloudwatchlogs.PutMetricFilterOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutMetricFilterOutput)
		}
	}

	return r0, r1
}

// PutMetricFilterWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutMetricFilterWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutMetricFilterInput, _a2 ...request.Option) (*cloudwatchlogs.PutMetricFilterOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutMetricFilterOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutMetricFilterInput, ...request.Option) *cloudwatchlogs.PutMetricFilterOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutMetricFilterInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutQueryDefinition provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutQueryDefinition(_a0 *cloudwatchlogs.PutQueryDefinitionInput) (*cloudwatchlogs.PutQueryDefinitionOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutQueryDefinitionOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutQueryDefinitionInput) *cloudwatchlogs.PutQueryDefinitionOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutQueryDefinitionOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutQueryDefinitionInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutQueryDefinitionRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutQueryDefinitionRequest(_a0 *cloudwatchlogs.PutQueryDefinitionInput) (*request.Request, *cloudwatchlogs.PutQueryDefinitionOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutQueryDefinitionInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutQueryDefinitionOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutQueryDefinitionInput) *cloudwatchlogs.PutQueryDefinitionOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutQueryDefinitionOutput)
		}
	}

	return r0, r1
}

// PutQueryDefinitionWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutQueryDefinitionWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutQueryDefinitionInput, _a2 ...request.Option) (*cloudwatchlogs.PutQueryDefinitionOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutQueryDefinitionOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutQueryDefinitionInput, ...request.Option) *cloudwatchlogs.PutQueryDefinitionOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutQueryDefinitionOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutQueryDefinitionInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutResourcePolicy provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutResourcePolicy(_a0 *cloudwatchlogs.PutResourcePolicyInput) (*cloudwatchlogs.PutResourcePolicyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutResourcePolicyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutResourcePolicyInput) *cloudwatchlogs.PutResourcePolicyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutResourcePolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutResourcePolicyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutResourcePolicyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutResourcePolicyRequest(_a0 *cloudwatchlogs.PutResourcePolicyInput) (*request.Request, *cloudwatchlogs.PutResourcePolicyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutResourcePolicyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutResourcePolicyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutResourcePolicyInput) *cloudwatchlogs.PutResourcePolicyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutResourcePolicyOutput)
		}
	}

	return r0, r1
}

// PutResourcePolicyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutResourcePolicyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutResourcePolicyInput, _a2 ...request.Option) (*cloudwatchlogs.PutResourcePolicyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutResourcePolicyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutResourcePolicyInput, ...request.Option) *cloudwatchlogs.PutResourcePolicyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutResourcePolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutResourcePolicyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutRetentionPolicy provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutRetentionPolicy(_a0 *cloudwatchlogs.PutRetentionPolicyInput) (*cloudwatchlogs.PutRetentionPolicyOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutRetentionPolicyOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutRetentionPolicyInput) *cloudwatchlogs.PutRetentionPolicyOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutRetentionPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutRetentionPolicyInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutRetentionPolicyRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutRetentionPolicyRequest(_a0 *cloudwatchlogs.PutRetentionPolicyInput) (*request.Request, *cloudwatchlogs.PutRetentionPolicyOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutRetentionPolicyInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutRetentionPolicyOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutRetentionPolicyInput) *cloudwatchlogs.PutRetentionPolicyOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutRetentionPolicyOutput)
		}
	}

	return r0, r1
}

// PutRetentionPolicyWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutRetentionPolicyWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutRetentionPolicyInput, _a2 ...request.Option) (*cloudwatchlogs.PutRetentionPolicyOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutRetentionPolicyOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutRetentionPolicyInput, ...request.Option) *cloudwatchlogs.PutRetentionPolicyOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutRetentionPolicyOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutRetentionPolicyInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutSubscriptionFilter provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutSubscriptionFilter(_a0 *cloudwatchlogs.PutSubscriptionFilterInput) (*cloudwatchlogs.PutSubscriptionFilterOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.PutSubscriptionFilterOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutSubscriptionFilterInput) *cloudwatchlogs.PutSubscriptionFilterOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutSubscriptionFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutSubscriptionFilterInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// PutSubscriptionFilterRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) PutSubscriptionFilterRequest(_a0 *cloudwatchlogs.PutSubscriptionFilterInput) (*request.Request, *cloudwatchlogs.PutSubscriptionFilterOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.PutSubscriptionFilterInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.PutSubscriptionFilterOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.PutSubscriptionFilterInput) *cloudwatchlogs.PutSubscriptionFilterOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.PutSubscriptionFilterOutput)
		}
	}

	return r0, r1
}

// PutSubscriptionFilterWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) PutSubscriptionFilterWithContext(_a0 context.Context, _a1 *cloudwatchlogs.PutSubscriptionFilterInput, _a2 ...request.Option) (*cloudwatchlogs.PutSubscriptionFilterOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.PutSubscriptionFilterOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.PutSubscriptionFilterInput, ...request.Option) *cloudwatchlogs.PutSubscriptionFilterOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.PutSubscriptionFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.PutSubscriptionFilterInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// StartQuery provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) StartQuery(_a0 *cloudwatchlogs.StartQueryInput) (*cloudwatchlogs.StartQueryOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.StartQueryOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.StartQueryInput) *cloudwatchlogs.StartQueryOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.StartQueryOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.StartQueryInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// StartQueryRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) StartQueryRequest(_a0 *cloudwatchlogs.StartQueryInput) (*request.Request, *cloudwatchlogs.StartQueryOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.StartQueryInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.StartQueryOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.StartQueryInput) *cloudwatchlogs.StartQueryOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.StartQueryOutput)
		}
	}

	return r0, r1
}

// StartQueryWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) StartQueryWithContext(_a0 context.Context, _a1 *cloudwatchlogs.StartQueryInput, _a2 ...request.Option) (*cloudwatchlogs.StartQueryOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.StartQueryOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.StartQueryInput, ...request.Option) *cloudwatchlogs.StartQueryOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.StartQueryOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.StartQueryInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// StopQuery provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) StopQuery(_a0 *cloudwatchlogs.StopQueryInput) (*cloudwatchlogs.StopQueryOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.StopQueryOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.StopQueryInput) *cloudwatchlogs.StopQueryOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.StopQueryOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.StopQueryInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// StopQueryRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) StopQueryRequest(_a0 *cloudwatchlogs.StopQueryInput) (*request.Request, *cloudwatchlogs.StopQueryOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.StopQueryInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.StopQueryOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.StopQueryInput) *cloudwatchlogs.StopQueryOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.StopQueryOutput)
		}
	}

	return r0, r1
}

// StopQueryWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) StopQueryWithContext(_a0 context.Context, _a1 *cloudwatchlogs.StopQueryInput, _a2 ...request.Option) (*cloudwatchlogs.StopQueryOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.StopQueryOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.StopQueryInput, ...request.Option) *cloudwatchlogs.StopQueryOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.StopQueryOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.StopQueryInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// TagLogGroup provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) TagLogGroup(_a0 *cloudwatchlogs.TagLogGroupInput) (*cloudwatchlogs.TagLogGroupOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.TagLogGroupOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.TagLogGroupInput) *cloudwatchlogs.TagLogGroupOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.TagLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.TagLogGroupInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// TagLogGroupRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) TagLogGroupRequest(_a0 *cloudwatchlogs.TagLogGroupInput) (*request.Request, *cloudwatchlogs.TagLogGroupOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.TagLogGroupInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.TagLogGroupOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.TagLogGroupInput) *cloudwatchlogs.TagLogGroupOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.TagLogGroupOutput)
		}
	}

	return r0, r1
}

// TagLogGroupWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) TagLogGroupWithContext(_a0 context.Context, _a1 *cloudwatchlogs.TagLogGroupInput, _a2 ...request.Option) (*cloudwatchlogs.TagLogGroupOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.TagLogGroupOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.TagLogGroupInput, ...request.Option) *cloudwatchlogs.TagLogGroupOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.TagLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.TagLogGroupInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// TestMetricFilter provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) TestMetricFilter(_a0 *cloudwatchlogs.TestMetricFilterInput) (*cloudwatchlogs.TestMetricFilterOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.TestMetricFilterOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.TestMetricFilterInput) *cloudwatchlogs.TestMetricFilterOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.TestMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.TestMetricFilterInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// TestMetricFilterRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) TestMetricFilterRequest(_a0 *cloudwatchlogs.TestMetricFilterInput) (*request.Request, *cloudwatchlogs.TestMetricFilterOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.TestMetricFilterInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.TestMetricFilterOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.TestMetricFilterInput) *cloudwatchlogs.TestMetricFilterOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.TestMetricFilterOutput)
		}
	}

	return r0, r1
}

// TestMetricFilterWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) TestMetricFilterWithContext(_a0 context.Context, _a1 *cloudwatchlogs.TestMetricFilterInput, _a2 ...request.Option) (*cloudwatchlogs.TestMetricFilterOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.TestMetricFilterOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.TestMetricFilterInput, ...request.Option) *cloudwatchlogs.TestMetricFilterOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.TestMetricFilterOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.TestMetricFilterInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// UntagLogGroup provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) UntagLogGroup(_a0 *cloudwatchlogs.UntagLogGroupInput) (*cloudwatchlogs.UntagLogGroupOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatchlogs.UntagLogGroupOutput
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.UntagLogGroupInput) *cloudwatchlogs.UntagLogGroupOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.UntagLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.UntagLogGroupInput) error); ok {
		r1 = rf(_a0)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}

// UntagLogGroupRequest provides a mock function with given fields: _a0
func (_m *CloudWatchLogsAPI) UntagLogGroupRequest(_a0 *cloudwatchlogs.UntagLogGroupInput) (*request.Request, *cloudwatchlogs.UntagLogGroupOutput) {
	ret := _m.Called(_a0)

	var r0 *request.Request
	if rf, ok := ret.Get(0).(func(*cloudwatchlogs.UntagLogGroupInput) *request.Request); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*request.Request)
		}
	}

	var r1 *cloudwatchlogs.UntagLogGroupOutput
	if rf, ok := ret.Get(1).(func(*cloudwatchlogs.UntagLogGroupInput) *cloudwatchlogs.UntagLogGroupOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatchlogs.UntagLogGroupOutput)
		}
	}

	return r0, r1
}

// UntagLogGroupWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchLogsAPI) UntagLogGroupWithContext(_a0 context.Context, _a1 *cloudwatchlogs.UntagLogGroupInput, _a2 ...request.Option) (*cloudwatchlogs.UntagLogGroupOutput, error) {
	_va := make([]interface{}, len(_a2))
	for _i := range _a2 {
		_va[_i] = _a2[_i]
	}
	var _ca []interface{}
	_ca = append(_ca, _a0, _a1)
	_ca = append(_ca, _va...)
	ret := _m.Called(_ca...)

	var r0 *cloudwatchlogs.UntagLogGroupOutput
	if rf, ok := ret.Get(0).(func(context.Context, *cloudwatchlogs.UntagLogGroupInput, ...request.Option) *cloudwatchlogs.UntagLogGroupOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatchlogs.UntagLogGroupOutput)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, *cloudwatchlogs.UntagLogGroupInput, ...request.Option) error); ok {
		r1 = rf(_a0, _a1, _a2...)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}
