# frozen_string_literal: true

# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Auto-generated by gapic-generator-ruby. DO NOT EDIT!


module Google
  module Ads
    module GoogleAds
      module V7
        module Resources
          # A link between an AdGroupAd and an Asset.
          # Currently we only support AdGroupAdAssetView for AppAds.
          # @!attribute [r] resource_name
          #   @return [::String]
          #     Output only. The resource name of the ad group ad asset view.
          #     Ad group ad asset view resource names have the form (Before V4):
          #
          #     `customers/{customer_id}/adGroupAdAssets/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}`
          #
          #     Ad group ad asset view resource names have the form (Beginning from V4):
          #
          #     `customers/{customer_id}/adGroupAdAssetViews/{AdGroupAdAsset.ad_group_id}~{AdGroupAdAsset.ad_id}~{AdGroupAdAsset.asset_id}~{AdGroupAdAsset.field_type}`
          # @!attribute [r] ad_group_ad
          #   @return [::String]
          #     Output only. The ad group ad to which the asset is linked.
          # @!attribute [r] asset
          #   @return [::String]
          #     Output only. The asset which is linked to the ad group ad.
          # @!attribute [r] field_type
          #   @return [::Google::Ads::GoogleAds::V7::Enums::AssetFieldTypeEnum::AssetFieldType]
          #     Output only. Role that the asset takes in the ad.
          # @!attribute [r] enabled
          #   @return [::Boolean]
          #     Output only. The status between the asset and the latest version of the ad. If true, the
          #     asset is linked to the latest version of the ad. If false, it means the
          #     link once existed but has been removed and is no longer present in the
          #     latest version of the ad.
          # @!attribute [r] policy_summary
          #   @return [::Google::Ads::GoogleAds::V7::Resources::AdGroupAdAssetPolicySummary]
          #     Output only. Policy information for the ad group ad asset.
          # @!attribute [r] performance_label
          #   @return [::Google::Ads::GoogleAds::V7::Enums::AssetPerformanceLabelEnum::AssetPerformanceLabel]
          #     Output only. Performance of an asset linkage.
          class AdGroupAdAssetView
            include ::Google::Protobuf::MessageExts
            extend ::Google::Protobuf::MessageExts::ClassMethods
          end

          # Contains policy information for an ad group ad asset.
          # @!attribute [r] policy_topic_entries
          #   @return [::Array<::Google::Ads::GoogleAds::V7::Common::PolicyTopicEntry>]
          #     Output only. The list of policy findings for the ad group ad asset.
          # @!attribute [r] review_status
          #   @return [::Google::Ads::GoogleAds::V7::Enums::PolicyReviewStatusEnum::PolicyReviewStatus]
          #     Output only. Where in the review process this ad group ad asset is.
          # @!attribute [r] approval_status
          #   @return [::Google::Ads::GoogleAds::V7::Enums::PolicyApprovalStatusEnum::PolicyApprovalStatus]
          #     Output only. The overall approval status of this ad group ad asset, calculated based on
          #     the status of its individual policy topic entries.
          class AdGroupAdAssetPolicySummary
            include ::Google::Protobuf::MessageExts
            extend ::Google::Protobuf::MessageExts::ClassMethods
          end
        end
      end
    end
  end
end
