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

package resources

import (
	fmt "fmt"
	math "math"

	proto "github.com/golang/protobuf/proto"
	wrappers "github.com/golang/protobuf/ptypes/wrappers"
	enums "google.golang.org/genproto/googleapis/ads/googleads/v3/enums"
	_ "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

// A Product Bidding Category.
type ProductBiddingCategoryConstant struct {
	// Output only. The resource name of the product bidding category.
	// Product bidding category resource names have the form:
	//
	// `productBiddingCategoryConstants/{country_code}~{level}~{id}`
	ResourceName string `protobuf:"bytes,1,opt,name=resource_name,json=resourceName,proto3" json:"resource_name,omitempty"`
	// Output only. ID of the product bidding category.
	//
	// This ID is equivalent to the google_product_category ID as described in
	// this article: https://support.google.com/merchants/answer/6324436.
	Id *wrappers.Int64Value `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"`
	// Output only. Two-letter upper-case country code of the product bidding category.
	CountryCode *wrappers.StringValue `protobuf:"bytes,3,opt,name=country_code,json=countryCode,proto3" json:"country_code,omitempty"`
	// Output only. Resource name of the parent product bidding category.
	ProductBiddingCategoryConstantParent *wrappers.StringValue `protobuf:"bytes,4,opt,name=product_bidding_category_constant_parent,json=productBiddingCategoryConstantParent,proto3" json:"product_bidding_category_constant_parent,omitempty"`
	// Output only. Level of the product bidding category.
	Level enums.ProductBiddingCategoryLevelEnum_ProductBiddingCategoryLevel `protobuf:"varint,5,opt,name=level,proto3,enum=google.ads.googleads.v3.enums.ProductBiddingCategoryLevelEnum_ProductBiddingCategoryLevel" json:"level,omitempty"`
	// Output only. Status of the product bidding category.
	Status enums.ProductBiddingCategoryStatusEnum_ProductBiddingCategoryStatus `protobuf:"varint,6,opt,name=status,proto3,enum=google.ads.googleads.v3.enums.ProductBiddingCategoryStatusEnum_ProductBiddingCategoryStatus" json:"status,omitempty"`
	// Output only. Language code of the product bidding category.
	LanguageCode *wrappers.StringValue `protobuf:"bytes,7,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
	// Output only. Display value of the product bidding category localized according to
	// language_code.
	LocalizedName        *wrappers.StringValue `protobuf:"bytes,8,opt,name=localized_name,json=localizedName,proto3" json:"localized_name,omitempty"`
	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
	XXX_unrecognized     []byte                `json:"-"`
	XXX_sizecache        int32                 `json:"-"`
}

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

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

var xxx_messageInfo_ProductBiddingCategoryConstant proto.InternalMessageInfo

func (m *ProductBiddingCategoryConstant) GetResourceName() string {
	if m != nil {
		return m.ResourceName
	}
	return ""
}

func (m *ProductBiddingCategoryConstant) GetId() *wrappers.Int64Value {
	if m != nil {
		return m.Id
	}
	return nil
}

func (m *ProductBiddingCategoryConstant) GetCountryCode() *wrappers.StringValue {
	if m != nil {
		return m.CountryCode
	}
	return nil
}

func (m *ProductBiddingCategoryConstant) GetProductBiddingCategoryConstantParent() *wrappers.StringValue {
	if m != nil {
		return m.ProductBiddingCategoryConstantParent
	}
	return nil
}

func (m *ProductBiddingCategoryConstant) GetLevel() enums.ProductBiddingCategoryLevelEnum_ProductBiddingCategoryLevel {
	if m != nil {
		return m.Level
	}
	return enums.ProductBiddingCategoryLevelEnum_UNSPECIFIED
}

func (m *ProductBiddingCategoryConstant) GetStatus() enums.ProductBiddingCategoryStatusEnum_ProductBiddingCategoryStatus {
	if m != nil {
		return m.Status
	}
	return enums.ProductBiddingCategoryStatusEnum_UNSPECIFIED
}

func (m *ProductBiddingCategoryConstant) GetLanguageCode() *wrappers.StringValue {
	if m != nil {
		return m.LanguageCode
	}
	return nil
}

func (m *ProductBiddingCategoryConstant) GetLocalizedName() *wrappers.StringValue {
	if m != nil {
		return m.LocalizedName
	}
	return nil
}

func init() {
	proto.RegisterType((*ProductBiddingCategoryConstant)(nil), "google.ads.googleads.v3.resources.ProductBiddingCategoryConstant")
}

func init() {
	proto.RegisterFile("google/ads/googleads/v3/resources/product_bidding_category_constant.proto", fileDescriptor_52fb4d93554a21c8)
}

var fileDescriptor_52fb4d93554a21c8 = []byte{
	// 590 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x54, 0x4f, 0x6b, 0xd4, 0x4c,
	0x18, 0x27, 0xd9, 0xb7, 0xed, 0xeb, 0xb4, 0xdb, 0x43, 0x4e, 0xb1, 0x96, 0xba, 0x55, 0x0b, 0x7b,
	0x9a, 0x48, 0x23, 0x8a, 0xf1, 0x20, 0xc9, 0xaa, 0xb5, 0x22, 0xb2, 0x6c, 0x61, 0x0f, 0x65, 0x21,
	0xcc, 0x66, 0xa6, 0x31, 0x90, 0xcc, 0x84, 0xcc, 0x64, 0xa5, 0x8a, 0x82, 0xdf, 0xc0, 0xcf, 0xe0,
	0xd1, 0xbb, 0x57, 0x3f, 0x80, 0x9f, 0xa2, 0xe7, 0x7e, 0x04, 0x4f, 0x92, 0x99, 0x49, 0xba, 0xa0,
	0xcd, 0x2e, 0xeb, 0xed, 0x09, 0xcf, 0xef, 0xcf, 0x33, 0xcf, 0xf3, 0x23, 0xe0, 0x38, 0x66, 0x2c,
	0x4e, 0x89, 0x83, 0x30, 0x77, 0x54, 0x59, 0x55, 0x33, 0xd7, 0x29, 0x08, 0x67, 0x65, 0x11, 0x11,
	0xee, 0xe4, 0x05, 0xc3, 0x65, 0x24, 0xc2, 0x69, 0x82, 0x71, 0x42, 0xe3, 0x30, 0x42, 0x82, 0xc4,
	0xac, 0x38, 0x0f, 0x23, 0x46, 0xb9, 0x40, 0x54, 0xc0, 0xbc, 0x60, 0x82, 0x59, 0xfb, 0x8a, 0x0f,
	0x11, 0xe6, 0xb0, 0x91, 0x82, 0x33, 0x17, 0x36, 0x52, 0x3b, 0xc1, 0x75, 0x6e, 0x84, 0x96, 0x59,
	0x8b, 0x53, 0x4a, 0x66, 0x24, 0x55, 0x36, 0x3b, 0x83, 0x15, 0x35, 0xb8, 0x40, 0xa2, 0xe4, 0x5a,
	0xe4, 0x76, 0x2d, 0x92, 0x27, 0xce, 0x59, 0x42, 0x52, 0x1c, 0x4e, 0xc9, 0x5b, 0x34, 0x4b, 0x58,
	0xa1, 0x01, 0x37, 0xe7, 0x00, 0xf5, 0xfc, 0xba, 0xb5, 0xa7, 0x5b, 0xf2, 0x6b, 0x5a, 0x9e, 0x39,
	0xef, 0x0a, 0x94, 0xe7, 0xa4, 0xa8, 0xb5, 0x77, 0xe7, 0xa8, 0x88, 0x52, 0x26, 0x90, 0x48, 0x18,
	0xd5, 0xdd, 0x3b, 0x3f, 0x36, 0xc0, 0xde, 0x50, 0xcd, 0x18, 0xa8, 0x11, 0x07, 0x7a, 0xc2, 0x81,
	0x5e, 0xa7, 0x85, 0x41, 0xb7, 0xb6, 0x0c, 0x29, 0xca, 0x88, 0x6d, 0xf4, 0x8c, 0xfe, 0x8d, 0xe0,
	0xe9, 0x85, 0xdf, 0xf9, 0xe5, 0x3f, 0x06, 0x8f, 0xae, 0x96, 0xab, 0xab, 0x3c, 0xe1, 0x30, 0x62,
	0x99, 0xd3, 0xae, 0x3b, 0xda, 0xaa, 0x55, 0xdf, 0xa0, 0x8c, 0x58, 0xf7, 0x81, 0x99, 0x60, 0xdb,
	0xec, 0x19, 0xfd, 0xcd, 0xc3, 0x5b, 0x5a, 0x09, 0xd6, 0x6f, 0x82, 0xc7, 0x54, 0x3c, 0x7c, 0x30,
	0x46, 0x69, 0x49, 0x82, 0xce, 0x85, 0xdf, 0x19, 0x99, 0x09, 0xb6, 0x9e, 0x81, 0xad, 0x88, 0x95,
	0x54, 0xc8, 0xd3, 0x63, 0x62, 0x77, 0x24, 0x77, 0xf7, 0x0f, 0xee, 0x89, 0x28, 0x12, 0x1a, 0xcf,
	0x91, 0x37, 0x35, 0x6d, 0xc0, 0x30, 0xb1, 0xbe, 0x1b, 0xa0, 0xbf, 0x30, 0x52, 0x61, 0x8e, 0x0a,
	0x42, 0x85, 0xfd, 0xdf, 0x12, 0x16, 0xff, 0xbc, 0x97, 0x7b, 0x79, 0x6b, 0x7f, 0x28, 0x47, 0xb1,
	0x4a, 0xb0, 0x26, 0x63, 0x68, 0xaf, 0xf5, 0x8c, 0xfe, 0xf6, 0xe1, 0x29, 0xbc, 0x2e, 0xee, 0x32,
	0x87, 0xf0, 0xef, 0x9e, 0xaf, 0x2b, 0x85, 0xe7, 0xb4, 0xcc, 0xda, 0xfa, 0x6a, 0x69, 0xca, 0xcd,
	0x3a, 0x07, 0xeb, 0x2a, 0xb9, 0xf6, 0xba, 0xf4, 0x9d, 0xac, 0xe4, 0x7b, 0x22, 0x25, 0x5a, 0x8c,
	0x15, 0x40, 0x39, 0x6b, 0x43, 0xeb, 0x05, 0xe8, 0xa6, 0x88, 0xc6, 0x25, 0x8a, 0x89, 0x3a, 0xf8,
	0xc6, 0xb2, 0x07, 0xdf, 0xaa, 0x79, 0xf2, 0xe2, 0x2f, 0xc1, 0x76, 0xca, 0x22, 0x94, 0x26, 0xef,
	0x09, 0x56, 0x81, 0xfe, 0x7f, 0x59, 0xa1, 0x6e, 0x43, 0xac, 0x32, 0xeb, 0x7d, 0x36, 0x2e, 0xfd,
	0x4f, 0x2b, 0x1f, 0xda, 0x1a, 0xb4, 0x1f, 0x9a, 0x3b, 0x1f, 0x16, 0x06, 0xf3, 0x63, 0xf0, 0xc5,
	0x04, 0x07, 0x11, 0xcb, 0xe0, 0xc2, 0xbf, 0x5d, 0x70, 0xb7, 0x7d, 0x9c, 0x61, 0xf5, 0xea, 0xa1,
	0x71, 0xfa, 0x4a, 0x2b, 0xc5, 0xac, 0xda, 0x1a, 0x64, 0x45, 0xec, 0xc4, 0x84, 0xca, 0x9d, 0x38,
	0x57, 0xef, 0x6b, 0xf9, 0x43, 0x3f, 0x69, 0xaa, 0xaf, 0x66, 0xe7, 0xc8, 0xf7, 0xbf, 0x99, 0xfb,
	0x47, 0x4a, 0xd2, 0xc7, 0x1c, 0xaa, 0xb2, 0xaa, 0xc6, 0x2e, 0x1c, 0xd5, 0xc8, 0x9f, 0x35, 0x66,
	0xe2, 0x63, 0x3e, 0x69, 0x30, 0x93, 0xb1, 0x3b, 0x69, 0x30, 0x97, 0xe6, 0x81, 0x6a, 0x78, 0x9e,
	0x8f, 0xb9, 0xe7, 0x35, 0x28, 0xcf, 0x1b, 0xbb, 0x9e, 0xd7, 0xe0, 0xa6, 0xeb, 0x72, 0x58, 0xf7,
	0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0x8e, 0x28, 0xdd, 0x23, 0x4d, 0x06, 0x00, 0x00,
}
