// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/ads/googleads/v3/enums/app_campaign_bidding_strategy_goal_type.proto

package enums

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	_ "google.golang.org/genproto/googleapis/api/annotations"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

// Goal type of App campaign BiddingStrategy.
type AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType int32

const (
	// Not specified.
	AppCampaignBiddingStrategyGoalTypeEnum_UNSPECIFIED AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 0
	// Used for return value only. Represents value unknown in this version.
	AppCampaignBiddingStrategyGoalTypeEnum_UNKNOWN AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 1
	// Aim to maximize the number of app installs. The cpa bid is the
	// target cost per install.
	AppCampaignBiddingStrategyGoalTypeEnum_OPTIMIZE_INSTALLS_TARGET_INSTALL_COST AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 2
	// Aim to maximize the long term number of selected in-app conversions from
	// app installs. The cpa bid is the target cost per install.
	AppCampaignBiddingStrategyGoalTypeEnum_OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 3
	// Aim to maximize the long term number of selected in-app conversions from
	// app installs. The cpa bid is the target cost per in-app conversion. Note
	// that the actual cpa may seem higher than the target cpa at first, since
	// the long term conversions haven’t happened yet.
	AppCampaignBiddingStrategyGoalTypeEnum_OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 4
	// Aim to maximize all conversions' value, i.e. install + selected in-app
	// conversions while achieving or exceeding target return on advertising
	// spend.
	AppCampaignBiddingStrategyGoalTypeEnum_OPTIMIZE_RETURN_ON_ADVERTISING_SPEND AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType = 5
)

var AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType_name = map[int32]string{
	0: "UNSPECIFIED",
	1: "UNKNOWN",
	2: "OPTIMIZE_INSTALLS_TARGET_INSTALL_COST",
	3: "OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST",
	4: "OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST",
	5: "OPTIMIZE_RETURN_ON_ADVERTISING_SPEND",
}

var AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType_value = map[string]int32{
	"UNSPECIFIED":                           0,
	"UNKNOWN":                               1,
	"OPTIMIZE_INSTALLS_TARGET_INSTALL_COST": 2,
	"OPTIMIZE_IN_APP_CONVERSIONS_TARGET_INSTALL_COST":    3,
	"OPTIMIZE_IN_APP_CONVERSIONS_TARGET_CONVERSION_COST": 4,
	"OPTIMIZE_RETURN_ON_ADVERTISING_SPEND":               5,
}

func (x AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType) String() string {
	return proto.EnumName(AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType_name, int32(x))
}

func (AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_e9151c8d2d13e16b, []int{0, 0}
}

// Container for enum describing goal towards which the bidding strategy of an
// app campaign should optimize for.
type AppCampaignBiddingStrategyGoalTypeEnum struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *AppCampaignBiddingStrategyGoalTypeEnum) Reset() {
	*m = AppCampaignBiddingStrategyGoalTypeEnum{}
}
func (m *AppCampaignBiddingStrategyGoalTypeEnum) String() string { return proto.CompactTextString(m) }
func (*AppCampaignBiddingStrategyGoalTypeEnum) ProtoMessage()    {}
func (*AppCampaignBiddingStrategyGoalTypeEnum) Descriptor() ([]byte, []int) {
	return fileDescriptor_e9151c8d2d13e16b, []int{0}
}

func (m *AppCampaignBiddingStrategyGoalTypeEnum) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum.Unmarshal(m, b)
}
func (m *AppCampaignBiddingStrategyGoalTypeEnum) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum.Marshal(b, m, deterministic)
}
func (m *AppCampaignBiddingStrategyGoalTypeEnum) XXX_Merge(src proto.Message) {
	xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum.Merge(m, src)
}
func (m *AppCampaignBiddingStrategyGoalTypeEnum) XXX_Size() int {
	return xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum.Size(m)
}
func (m *AppCampaignBiddingStrategyGoalTypeEnum) XXX_DiscardUnknown() {
	xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum.DiscardUnknown(m)
}

var xxx_messageInfo_AppCampaignBiddingStrategyGoalTypeEnum proto.InternalMessageInfo

func init() {
	proto.RegisterEnum("google.ads.googleads.v3.enums.AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType", AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType_name, AppCampaignBiddingStrategyGoalTypeEnum_AppCampaignBiddingStrategyGoalType_value)
	proto.RegisterType((*AppCampaignBiddingStrategyGoalTypeEnum)(nil), "google.ads.googleads.v3.enums.AppCampaignBiddingStrategyGoalTypeEnum")
}

func init() {
	proto.RegisterFile("google/ads/googleads/v3/enums/app_campaign_bidding_strategy_goal_type.proto", fileDescriptor_e9151c8d2d13e16b)
}

var fileDescriptor_e9151c8d2d13e16b = []byte{
	// 411 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x52, 0xcd, 0x8a, 0xdb, 0x30,
	0x10, 0x6e, 0xbc, 0xfd, 0x01, 0xed, 0xa1, 0xc1, 0xc7, 0xd2, 0x3d, 0x6c, 0xe8, 0xef, 0x45, 0x86,
	0x1a, 0x7a, 0x50, 0x4f, 0x4a, 0xa2, 0x1a, 0xb1, 0x5b, 0xd9, 0x58, 0x8a, 0x0b, 0x4b, 0x40, 0x68,
	0xd7, 0x46, 0x18, 0x12, 0x49, 0x44, 0xde, 0x85, 0xdc, 0xfb, 0x24, 0x3d, 0xf6, 0xd2, 0xf7, 0xe8,
	0xa3, 0xf4, 0x19, 0x7a, 0x28, 0xb1, 0x12, 0xb7, 0x87, 0xb6, 0xe9, 0xc5, 0x7c, 0x9e, 0xf9, 0x7e,
	0xc4, 0xcc, 0x80, 0x0b, 0x6d, 0xad, 0x5e, 0x35, 0x89, 0xaa, 0x7d, 0x12, 0xe0, 0x0e, 0xdd, 0xa5,
	0x49, 0x63, 0x6e, 0xd7, 0x3e, 0x51, 0xce, 0xc9, 0x1b, 0xb5, 0x76, 0xaa, 0xd5, 0x46, 0x5e, 0xb7,
	0x75, 0xdd, 0x1a, 0x2d, 0x7d, 0xb7, 0x51, 0x5d, 0xa3, 0xb7, 0x52, 0x5b, 0xb5, 0x92, 0xdd, 0xd6,
	0x35, 0xd0, 0x6d, 0x6c, 0x67, 0xe3, 0xb3, 0xe0, 0x00, 0x55, 0xed, 0xe1, 0x60, 0x06, 0xef, 0x52,
	0xd8, 0x9b, 0x3d, 0x79, 0x7a, 0xc8, 0x72, 0x6d, 0xa2, 0x8c, 0xb1, 0x9d, 0xea, 0x5a, 0x6b, 0x7c,
	0x10, 0x4f, 0xbe, 0x46, 0xe0, 0x05, 0x76, 0x6e, 0xb6, 0x4f, 0x9b, 0x86, 0x30, 0xbe, 0xcf, 0xca,
	0xac, 0x5a, 0x89, 0xad, 0x6b, 0x88, 0xb9, 0x5d, 0x4f, 0x3e, 0x45, 0x60, 0x72, 0x9c, 0x1a, 0x3f,
	0x06, 0xa7, 0x0b, 0xc6, 0x0b, 0x32, 0xa3, 0xef, 0x29, 0x99, 0x8f, 0xef, 0xc5, 0xa7, 0xe0, 0xd1,
	0x82, 0x5d, 0xb0, 0xfc, 0x23, 0x1b, 0x8f, 0xe2, 0xd7, 0xe0, 0x79, 0x5e, 0x08, 0xfa, 0x81, 0x5e,
	0x11, 0x49, 0x19, 0x17, 0xf8, 0xf2, 0x92, 0x4b, 0x81, 0xcb, 0x8c, 0x88, 0xc3, 0xbf, 0x9c, 0xe5,
	0x5c, 0x8c, 0xa3, 0x38, 0x05, 0xc9, 0x6f, 0x54, 0x89, 0x8b, 0x42, 0xce, 0x72, 0x56, 0x91, 0x92,
	0xd3, 0x9c, 0xfd, 0x59, 0x74, 0x12, 0xbf, 0x05, 0x6f, 0xfe, 0x43, 0xf4, 0xab, 0x14, 0x74, 0xf7,
	0xe3, 0x57, 0xe0, 0xd9, 0xa0, 0x2b, 0x89, 0x58, 0x94, 0x4c, 0xe6, 0x4c, 0xe2, 0x79, 0x45, 0x4a,
	0x41, 0x39, 0x65, 0x99, 0xe4, 0x05, 0x61, 0xf3, 0xf1, 0x83, 0xe9, 0x8f, 0x11, 0x38, 0xbf, 0xb1,
	0x6b, 0xf8, 0xcf, 0xa9, 0x4f, 0x5f, 0x1e, 0x9f, 0x54, 0xb1, 0x5b, 0x40, 0x31, 0xba, 0x9a, 0xee,
	0x9d, 0xb4, 0x5d, 0x29, 0xa3, 0xa1, 0xdd, 0xe8, 0x44, 0x37, 0xa6, 0x5f, 0xcf, 0xe1, 0x38, 0x5c,
	0xeb, 0xff, 0x72, 0x2b, 0xef, 0xfa, 0xef, 0xe7, 0xe8, 0x24, 0xc3, 0xf8, 0x4b, 0x74, 0x96, 0x05,
	0x2b, 0x5c, 0x7b, 0x18, 0xe0, 0x0e, 0x55, 0x29, 0xdc, 0x2d, 0xd0, 0x7f, 0x3b, 0xf4, 0x97, 0xb8,
	0xf6, 0xcb, 0xa1, 0xbf, 0xac, 0xd2, 0x65, 0xdf, 0xff, 0x1e, 0x9d, 0x87, 0x22, 0x42, 0xb8, 0xf6,
	0x08, 0x0d, 0x0c, 0x84, 0xaa, 0x14, 0xa1, 0x9e, 0x73, 0xfd, 0xb0, 0x7f, 0x58, 0xfa, 0x33, 0x00,
	0x00, 0xff, 0xff, 0x7e, 0x89, 0xee, 0x47, 0xc3, 0x02, 0x00, 0x00,
}
