# Path: google/cloud/recommendationengine_v1beta1/types/catalog.py
# class CatalogItem(proto.Message):
#     class CategoryHierarchy(proto.Message):
# class ProductCatalogItem(proto.Message):
#     class StockState(proto.Enum):
#     class ExactPrice(proto.Message):
#     class PriceRange(proto.Message):
# class Image(proto.Message):
#         STOCK_STATE_UNSPECIFIED = 0
#         IN_STOCK = 0
#         OUT_OF_STOCK = 1
#         PREORDER = 2
#         BACKORDER = 3
# 
# Path: google/cloud/recommendationengine_v1beta1/types/common.py
# class FeatureMap(proto.Message):
#     class StringList(proto.Message):
#     class FloatList(proto.Message):


import proto  # type: ignore
from google.cloud.recommendationengine_v1beta1.types import catalog
from google.cloud.recommendationengine_v1beta1.types import common
from google.protobuf import timestamp_pb2  # type: ignore

            This field enables accurate attribution of recommendation
            model performance.

            This token enables us to accurately attribute page view or
            purchase back to the event and the particular predict
            response containing this clicked/purchased item. If user
            clicks on product K in the recommendation results, pass the
            ``PredictResponse.recommendationToken`` property as a url
            parameter to product K's page. When recording events on
            product K's page, log the
            PredictResponse.recommendation_token to this field.

            Optional, but highly encouraged for user events that are the
            result of a recommendation prediction query.
        event_attributes (google.cloud.recommendationengine_v1beta1.types.FeatureMap):
            Optional. Extra user event features to include in the
            recommendation model.

            For product recommendation, an example of extra user
            information is traffic_channel, i.e. how user arrives at the
            site. Users can arrive at the site by coming to the site
            directly, or coming through Google search, and etc.
    """

    uri = proto.Field(proto.STRING, number=1,)
    referrer_uri = proto.Field(proto.STRING, number=6,)
    page_view_id = proto.Field(proto.STRING, number=2,)
    experiment_ids = proto.RepeatedField(proto.STRING, number=3,)
    recommendation_token = proto.Field(proto.STRING, number=4,)

# Path: google/cloud/recommendationengine_v1beta1/types/catalog.py
# class CatalogItem(proto.Message):
#     class CategoryHierarchy(proto.Message):
# class ProductCatalogItem(proto.Message):
#     class StockState(proto.Enum):
#     class ExactPrice(proto.Message):
#     class PriceRange(proto.Message):
# class Image(proto.Message):
#         STOCK_STATE_UNSPECIFIED = 0
#         IN_STOCK = 0
#         OUT_OF_STOCK = 1
#         PREORDER = 2
#         BACKORDER = 3
# 
# Path: google/cloud/recommendationengine_v1beta1/types/common.py
# class FeatureMap(proto.Message):
#     class StringList(proto.Message):
#     class FloatList(proto.Message):


# Path: google/cloud/recommendationengine_v1beta1/types/user_event.py
import proto  # type: ignore
from google.cloud.recommendationengine_v1beta1.types import catalog
from google.cloud.recommendationengine_v1beta1.types import common
from google.protobuf import timestamp_pb2  # type: ignore


            This field enables accurate attribution of recommendation
            model performance.

            This token enables us to accurately attribute page view or
            purchase back to the event and the particular predict
            response containing this clicked/purchased item. If user
            clicks on product K in the recommendation results, pass the
            ``PredictResponse.recommendationToken`` property as a url
            parameter to product K's page. When recording events on
            product K's page, log the
            PredictResponse.recommendation_token to this field.

            Optional, but highly encouraged for user events that are the
            result of a recommendation prediction query.
        event_attributes (google.cloud.recommendationengine_v1beta1.types.FeatureMap):
            Optional. Extra user event features to include in the
            recommendation model.

            For product recommendation, an example of extra user
            information is traffic_channel, i.e. how user arrives at the
            site. Users can arrive at the site by coming to the site
            directly, or coming through Google search, and etc.
    """

    uri = proto.Field(proto.STRING, number=1,)
    referrer_uri = proto.Field(proto.STRING, number=6,)
    page_view_id = proto.Field(proto.STRING, number=2,)
    experiment_ids = proto.RepeatedField(proto.STRING, number=3,)
    recommendation_token = proto.Field(proto.STRING, number=4,)

    event_attributes = proto.Field(proto.MESSAGE, number=5, message=common.FeatureMap,)