// Code generated by mockery v1.0.0

// Code generated DO NOT EDIT

package mocks

import aws "github.com/aws/aws-sdk-go/aws"
import cloudwatch "github.com/aws/aws-sdk-go/service/cloudwatch"

import mock "github.com/stretchr/testify/mock"
import request "github.com/aws/aws-sdk-go/aws/request"

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

// DeleteAlarms provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DeleteAlarms(_a0 *cloudwatch.DeleteAlarmsInput) (*cloudwatch.DeleteAlarmsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DeleteAlarmsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DeleteAlarmsInput) *cloudwatch.DeleteAlarmsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DeleteAlarmsOutput)
		}
	}

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

	return r0, r1
}

// DeleteAlarmsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DeleteAlarmsRequest(_a0 *cloudwatch.DeleteAlarmsInput) (*request.Request, *cloudwatch.DeleteAlarmsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DeleteAlarmsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DeleteAlarmsInput) *cloudwatch.DeleteAlarmsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DeleteAlarmsOutput)
		}
	}

	return r0, r1
}

// DeleteAlarmsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DeleteAlarmsWithContext(_a0 aws.Context, _a1 *cloudwatch.DeleteAlarmsInput, _a2 ...request.Option) (*cloudwatch.DeleteAlarmsOutput, 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 *cloudwatch.DeleteAlarmsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DeleteAlarmsInput, ...request.Option) *cloudwatch.DeleteAlarmsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DeleteAlarmsOutput)
		}
	}

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

	return r0, r1
}

// DeleteDashboards provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DeleteDashboards(_a0 *cloudwatch.DeleteDashboardsInput) (*cloudwatch.DeleteDashboardsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DeleteDashboardsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DeleteDashboardsInput) *cloudwatch.DeleteDashboardsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DeleteDashboardsOutput)
		}
	}

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

	return r0, r1
}

// DeleteDashboardsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DeleteDashboardsRequest(_a0 *cloudwatch.DeleteDashboardsInput) (*request.Request, *cloudwatch.DeleteDashboardsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DeleteDashboardsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DeleteDashboardsInput) *cloudwatch.DeleteDashboardsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DeleteDashboardsOutput)
		}
	}

	return r0, r1
}

// DeleteDashboardsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DeleteDashboardsWithContext(_a0 aws.Context, _a1 *cloudwatch.DeleteDashboardsInput, _a2 ...request.Option) (*cloudwatch.DeleteDashboardsOutput, 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 *cloudwatch.DeleteDashboardsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DeleteDashboardsInput, ...request.Option) *cloudwatch.DeleteDashboardsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DeleteDashboardsOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarmHistory provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarmHistory(_a0 *cloudwatch.DescribeAlarmHistoryInput) (*cloudwatch.DescribeAlarmHistoryOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DescribeAlarmHistoryOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DescribeAlarmHistoryInput) *cloudwatch.DescribeAlarmHistoryOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmHistoryOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarmHistoryPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchAPI) DescribeAlarmHistoryPages(_a0 *cloudwatch.DescribeAlarmHistoryInput, _a1 func(*cloudwatch.DescribeAlarmHistoryOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

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

	return r0
}

// DescribeAlarmHistoryPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchAPI) DescribeAlarmHistoryPagesWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmHistoryInput, _a2 func(*cloudwatch.DescribeAlarmHistoryOutput, 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(aws.Context, *cloudwatch.DescribeAlarmHistoryInput, func(*cloudwatch.DescribeAlarmHistoryOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeAlarmHistoryRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarmHistoryRequest(_a0 *cloudwatch.DescribeAlarmHistoryInput) (*request.Request, *cloudwatch.DescribeAlarmHistoryOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DescribeAlarmHistoryOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DescribeAlarmHistoryInput) *cloudwatch.DescribeAlarmHistoryOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DescribeAlarmHistoryOutput)
		}
	}

	return r0, r1
}

// DescribeAlarmHistoryWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DescribeAlarmHistoryWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmHistoryInput, _a2 ...request.Option) (*cloudwatch.DescribeAlarmHistoryOutput, 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 *cloudwatch.DescribeAlarmHistoryOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DescribeAlarmHistoryInput, ...request.Option) *cloudwatch.DescribeAlarmHistoryOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmHistoryOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarms provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarms(_a0 *cloudwatch.DescribeAlarmsInput) (*cloudwatch.DescribeAlarmsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DescribeAlarmsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DescribeAlarmsInput) *cloudwatch.DescribeAlarmsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmsOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarmsForMetric provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarmsForMetric(_a0 *cloudwatch.DescribeAlarmsForMetricInput) (*cloudwatch.DescribeAlarmsForMetricOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DescribeAlarmsForMetricOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DescribeAlarmsForMetricInput) *cloudwatch.DescribeAlarmsForMetricOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmsForMetricOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarmsForMetricRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarmsForMetricRequest(_a0 *cloudwatch.DescribeAlarmsForMetricInput) (*request.Request, *cloudwatch.DescribeAlarmsForMetricOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DescribeAlarmsForMetricOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DescribeAlarmsForMetricInput) *cloudwatch.DescribeAlarmsForMetricOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DescribeAlarmsForMetricOutput)
		}
	}

	return r0, r1
}

// DescribeAlarmsForMetricWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DescribeAlarmsForMetricWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmsForMetricInput, _a2 ...request.Option) (*cloudwatch.DescribeAlarmsForMetricOutput, 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 *cloudwatch.DescribeAlarmsForMetricOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DescribeAlarmsForMetricInput, ...request.Option) *cloudwatch.DescribeAlarmsForMetricOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmsForMetricOutput)
		}
	}

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

	return r0, r1
}

// DescribeAlarmsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchAPI) DescribeAlarmsPages(_a0 *cloudwatch.DescribeAlarmsInput, _a1 func(*cloudwatch.DescribeAlarmsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

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

	return r0
}

// DescribeAlarmsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchAPI) DescribeAlarmsPagesWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmsInput, _a2 func(*cloudwatch.DescribeAlarmsOutput, 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(aws.Context, *cloudwatch.DescribeAlarmsInput, func(*cloudwatch.DescribeAlarmsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// DescribeAlarmsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DescribeAlarmsRequest(_a0 *cloudwatch.DescribeAlarmsInput) (*request.Request, *cloudwatch.DescribeAlarmsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DescribeAlarmsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DescribeAlarmsInput) *cloudwatch.DescribeAlarmsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DescribeAlarmsOutput)
		}
	}

	return r0, r1
}

// DescribeAlarmsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DescribeAlarmsWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmsInput, _a2 ...request.Option) (*cloudwatch.DescribeAlarmsOutput, 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 *cloudwatch.DescribeAlarmsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DescribeAlarmsInput, ...request.Option) *cloudwatch.DescribeAlarmsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DescribeAlarmsOutput)
		}
	}

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

	return r0, r1
}

// DisableAlarmActions provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DisableAlarmActions(_a0 *cloudwatch.DisableAlarmActionsInput) (*cloudwatch.DisableAlarmActionsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.DisableAlarmActionsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.DisableAlarmActionsInput) *cloudwatch.DisableAlarmActionsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DisableAlarmActionsOutput)
		}
	}

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

	return r0, r1
}

// DisableAlarmActionsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) DisableAlarmActionsRequest(_a0 *cloudwatch.DisableAlarmActionsInput) (*request.Request, *cloudwatch.DisableAlarmActionsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.DisableAlarmActionsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.DisableAlarmActionsInput) *cloudwatch.DisableAlarmActionsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.DisableAlarmActionsOutput)
		}
	}

	return r0, r1
}

// DisableAlarmActionsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) DisableAlarmActionsWithContext(_a0 aws.Context, _a1 *cloudwatch.DisableAlarmActionsInput, _a2 ...request.Option) (*cloudwatch.DisableAlarmActionsOutput, 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 *cloudwatch.DisableAlarmActionsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DisableAlarmActionsInput, ...request.Option) *cloudwatch.DisableAlarmActionsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.DisableAlarmActionsOutput)
		}
	}

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

	return r0, r1
}

// EnableAlarmActions provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) EnableAlarmActions(_a0 *cloudwatch.EnableAlarmActionsInput) (*cloudwatch.EnableAlarmActionsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.EnableAlarmActionsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.EnableAlarmActionsInput) *cloudwatch.EnableAlarmActionsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.EnableAlarmActionsOutput)
		}
	}

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

	return r0, r1
}

// EnableAlarmActionsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) EnableAlarmActionsRequest(_a0 *cloudwatch.EnableAlarmActionsInput) (*request.Request, *cloudwatch.EnableAlarmActionsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.EnableAlarmActionsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.EnableAlarmActionsInput) *cloudwatch.EnableAlarmActionsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.EnableAlarmActionsOutput)
		}
	}

	return r0, r1
}

// EnableAlarmActionsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) EnableAlarmActionsWithContext(_a0 aws.Context, _a1 *cloudwatch.EnableAlarmActionsInput, _a2 ...request.Option) (*cloudwatch.EnableAlarmActionsOutput, 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 *cloudwatch.EnableAlarmActionsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.EnableAlarmActionsInput, ...request.Option) *cloudwatch.EnableAlarmActionsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.EnableAlarmActionsOutput)
		}
	}

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

	return r0, r1
}

// GetDashboard provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetDashboard(_a0 *cloudwatch.GetDashboardInput) (*cloudwatch.GetDashboardOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.GetDashboardOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.GetDashboardInput) *cloudwatch.GetDashboardOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetDashboardOutput)
		}
	}

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

	return r0, r1
}

// GetDashboardRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetDashboardRequest(_a0 *cloudwatch.GetDashboardInput) (*request.Request, *cloudwatch.GetDashboardOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.GetDashboardOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.GetDashboardInput) *cloudwatch.GetDashboardOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.GetDashboardOutput)
		}
	}

	return r0, r1
}

// GetDashboardWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) GetDashboardWithContext(_a0 aws.Context, _a1 *cloudwatch.GetDashboardInput, _a2 ...request.Option) (*cloudwatch.GetDashboardOutput, 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 *cloudwatch.GetDashboardOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.GetDashboardInput, ...request.Option) *cloudwatch.GetDashboardOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetDashboardOutput)
		}
	}

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

	return r0, r1
}

// GetMetricData provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetMetricData(_a0 *cloudwatch.GetMetricDataInput) (*cloudwatch.GetMetricDataOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.GetMetricDataOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.GetMetricDataInput) *cloudwatch.GetMetricDataOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetMetricDataOutput)
		}
	}

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

	return r0, r1
}

// GetMetricDataRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetMetricDataRequest(_a0 *cloudwatch.GetMetricDataInput) (*request.Request, *cloudwatch.GetMetricDataOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.GetMetricDataOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.GetMetricDataInput) *cloudwatch.GetMetricDataOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.GetMetricDataOutput)
		}
	}

	return r0, r1
}

// GetMetricDataWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) GetMetricDataWithContext(_a0 aws.Context, _a1 *cloudwatch.GetMetricDataInput, _a2 ...request.Option) (*cloudwatch.GetMetricDataOutput, 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 *cloudwatch.GetMetricDataOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.GetMetricDataInput, ...request.Option) *cloudwatch.GetMetricDataOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetMetricDataOutput)
		}
	}

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

	return r0, r1
}

// GetMetricStatistics provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetMetricStatistics(_a0 *cloudwatch.GetMetricStatisticsInput) (*cloudwatch.GetMetricStatisticsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.GetMetricStatisticsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.GetMetricStatisticsInput) *cloudwatch.GetMetricStatisticsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetMetricStatisticsOutput)
		}
	}

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

	return r0, r1
}

// GetMetricStatisticsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) GetMetricStatisticsRequest(_a0 *cloudwatch.GetMetricStatisticsInput) (*request.Request, *cloudwatch.GetMetricStatisticsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.GetMetricStatisticsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.GetMetricStatisticsInput) *cloudwatch.GetMetricStatisticsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.GetMetricStatisticsOutput)
		}
	}

	return r0, r1
}

// GetMetricStatisticsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) GetMetricStatisticsWithContext(_a0 aws.Context, _a1 *cloudwatch.GetMetricStatisticsInput, _a2 ...request.Option) (*cloudwatch.GetMetricStatisticsOutput, 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 *cloudwatch.GetMetricStatisticsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.GetMetricStatisticsInput, ...request.Option) *cloudwatch.GetMetricStatisticsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.GetMetricStatisticsOutput)
		}
	}

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

	return r0, r1
}

// ListDashboards provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) ListDashboards(_a0 *cloudwatch.ListDashboardsInput) (*cloudwatch.ListDashboardsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.ListDashboardsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.ListDashboardsInput) *cloudwatch.ListDashboardsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.ListDashboardsOutput)
		}
	}

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

	return r0, r1
}

// ListDashboardsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) ListDashboardsRequest(_a0 *cloudwatch.ListDashboardsInput) (*request.Request, *cloudwatch.ListDashboardsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.ListDashboardsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.ListDashboardsInput) *cloudwatch.ListDashboardsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.ListDashboardsOutput)
		}
	}

	return r0, r1
}

// ListDashboardsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) ListDashboardsWithContext(_a0 aws.Context, _a1 *cloudwatch.ListDashboardsInput, _a2 ...request.Option) (*cloudwatch.ListDashboardsOutput, 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 *cloudwatch.ListDashboardsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.ListDashboardsInput, ...request.Option) *cloudwatch.ListDashboardsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.ListDashboardsOutput)
		}
	}

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

	return r0, r1
}

// ListMetrics provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) ListMetrics(_a0 *cloudwatch.ListMetricsInput) (*cloudwatch.ListMetricsOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.ListMetricsOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.ListMetricsInput) *cloudwatch.ListMetricsOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.ListMetricsOutput)
		}
	}

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

	return r0, r1
}

// ListMetricsPages provides a mock function with given fields: _a0, _a1
func (_m *CloudWatchAPI) ListMetricsPages(_a0 *cloudwatch.ListMetricsInput, _a1 func(*cloudwatch.ListMetricsOutput, bool) bool) error {
	ret := _m.Called(_a0, _a1)

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

	return r0
}

// ListMetricsPagesWithContext provides a mock function with given fields: _a0, _a1, _a2, _a3
func (_m *CloudWatchAPI) ListMetricsPagesWithContext(_a0 aws.Context, _a1 *cloudwatch.ListMetricsInput, _a2 func(*cloudwatch.ListMetricsOutput, 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(aws.Context, *cloudwatch.ListMetricsInput, func(*cloudwatch.ListMetricsOutput, bool) bool, ...request.Option) error); ok {
		r0 = rf(_a0, _a1, _a2, _a3...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// ListMetricsRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) ListMetricsRequest(_a0 *cloudwatch.ListMetricsInput) (*request.Request, *cloudwatch.ListMetricsOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.ListMetricsOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.ListMetricsInput) *cloudwatch.ListMetricsOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.ListMetricsOutput)
		}
	}

	return r0, r1
}

// ListMetricsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) ListMetricsWithContext(_a0 aws.Context, _a1 *cloudwatch.ListMetricsInput, _a2 ...request.Option) (*cloudwatch.ListMetricsOutput, 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 *cloudwatch.ListMetricsOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.ListMetricsInput, ...request.Option) *cloudwatch.ListMetricsOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.ListMetricsOutput)
		}
	}

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

	return r0, r1
}

// PutDashboard provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutDashboard(_a0 *cloudwatch.PutDashboardInput) (*cloudwatch.PutDashboardOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.PutDashboardOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.PutDashboardInput) *cloudwatch.PutDashboardOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutDashboardOutput)
		}
	}

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

	return r0, r1
}

// PutDashboardRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutDashboardRequest(_a0 *cloudwatch.PutDashboardInput) (*request.Request, *cloudwatch.PutDashboardOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.PutDashboardOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.PutDashboardInput) *cloudwatch.PutDashboardOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.PutDashboardOutput)
		}
	}

	return r0, r1
}

// PutDashboardWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) PutDashboardWithContext(_a0 aws.Context, _a1 *cloudwatch.PutDashboardInput, _a2 ...request.Option) (*cloudwatch.PutDashboardOutput, 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 *cloudwatch.PutDashboardOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.PutDashboardInput, ...request.Option) *cloudwatch.PutDashboardOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutDashboardOutput)
		}
	}

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

	return r0, r1
}

// PutMetricAlarm provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutMetricAlarm(_a0 *cloudwatch.PutMetricAlarmInput) (*cloudwatch.PutMetricAlarmOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.PutMetricAlarmOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.PutMetricAlarmInput) *cloudwatch.PutMetricAlarmOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutMetricAlarmOutput)
		}
	}

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

	return r0, r1
}

// PutMetricAlarmRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutMetricAlarmRequest(_a0 *cloudwatch.PutMetricAlarmInput) (*request.Request, *cloudwatch.PutMetricAlarmOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.PutMetricAlarmOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.PutMetricAlarmInput) *cloudwatch.PutMetricAlarmOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.PutMetricAlarmOutput)
		}
	}

	return r0, r1
}

// PutMetricAlarmWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) PutMetricAlarmWithContext(_a0 aws.Context, _a1 *cloudwatch.PutMetricAlarmInput, _a2 ...request.Option) (*cloudwatch.PutMetricAlarmOutput, 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 *cloudwatch.PutMetricAlarmOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.PutMetricAlarmInput, ...request.Option) *cloudwatch.PutMetricAlarmOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutMetricAlarmOutput)
		}
	}

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

	return r0, r1
}

// PutMetricData provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutMetricData(_a0 *cloudwatch.PutMetricDataInput) (*cloudwatch.PutMetricDataOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.PutMetricDataOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.PutMetricDataInput) *cloudwatch.PutMetricDataOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutMetricDataOutput)
		}
	}

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

	return r0, r1
}

// PutMetricDataRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) PutMetricDataRequest(_a0 *cloudwatch.PutMetricDataInput) (*request.Request, *cloudwatch.PutMetricDataOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.PutMetricDataOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.PutMetricDataInput) *cloudwatch.PutMetricDataOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.PutMetricDataOutput)
		}
	}

	return r0, r1
}

// PutMetricDataWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) PutMetricDataWithContext(_a0 aws.Context, _a1 *cloudwatch.PutMetricDataInput, _a2 ...request.Option) (*cloudwatch.PutMetricDataOutput, 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 *cloudwatch.PutMetricDataOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.PutMetricDataInput, ...request.Option) *cloudwatch.PutMetricDataOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.PutMetricDataOutput)
		}
	}

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

	return r0, r1
}

// SetAlarmState provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) SetAlarmState(_a0 *cloudwatch.SetAlarmStateInput) (*cloudwatch.SetAlarmStateOutput, error) {
	ret := _m.Called(_a0)

	var r0 *cloudwatch.SetAlarmStateOutput
	if rf, ok := ret.Get(0).(func(*cloudwatch.SetAlarmStateInput) *cloudwatch.SetAlarmStateOutput); ok {
		r0 = rf(_a0)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.SetAlarmStateOutput)
		}
	}

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

	return r0, r1
}

// SetAlarmStateRequest provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) SetAlarmStateRequest(_a0 *cloudwatch.SetAlarmStateInput) (*request.Request, *cloudwatch.SetAlarmStateOutput) {
	ret := _m.Called(_a0)

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

	var r1 *cloudwatch.SetAlarmStateOutput
	if rf, ok := ret.Get(1).(func(*cloudwatch.SetAlarmStateInput) *cloudwatch.SetAlarmStateOutput); ok {
		r1 = rf(_a0)
	} else {
		if ret.Get(1) != nil {
			r1 = ret.Get(1).(*cloudwatch.SetAlarmStateOutput)
		}
	}

	return r0, r1
}

// SetAlarmStateWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) SetAlarmStateWithContext(_a0 aws.Context, _a1 *cloudwatch.SetAlarmStateInput, _a2 ...request.Option) (*cloudwatch.SetAlarmStateOutput, 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 *cloudwatch.SetAlarmStateOutput
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.SetAlarmStateInput, ...request.Option) *cloudwatch.SetAlarmStateOutput); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).(*cloudwatch.SetAlarmStateOutput)
		}
	}

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

	return r0, r1
}

// WaitUntilAlarmExists provides a mock function with given fields: _a0
func (_m *CloudWatchAPI) WaitUntilAlarmExists(_a0 *cloudwatch.DescribeAlarmsInput) error {
	ret := _m.Called(_a0)

	var r0 error
	if rf, ok := ret.Get(0).(func(*cloudwatch.DescribeAlarmsInput) error); ok {
		r0 = rf(_a0)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}

// WaitUntilAlarmExistsWithContext provides a mock function with given fields: _a0, _a1, _a2
func (_m *CloudWatchAPI) WaitUntilAlarmExistsWithContext(_a0 aws.Context, _a1 *cloudwatch.DescribeAlarmsInput, _a2 ...request.WaiterOption) 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 error
	if rf, ok := ret.Get(0).(func(aws.Context, *cloudwatch.DescribeAlarmsInput, ...request.WaiterOption) error); ok {
		r0 = rf(_a0, _a1, _a2...)
	} else {
		r0 = ret.Error(0)
	}

	return r0
}
