# NOTE: This file is auto generated by googly. Do not edit it manually. defmodule Googly.CloudVision.Model.WebPage do @moduledoc """ Metadata for web pages. ## Attributes * `full_matching_images` (*type:* `list(Googly.CloudVision.Model.WebImage.t())`) - Fully matching images on the page. Can include resized copies of the query image. * `page_title` (*type:* `String.t()`) - Title for the web page, may contain HTML markups. * `partial_matching_images` (*type:* `list(Googly.CloudVision.Model.WebImage.t())`) - Partial matching images on the page. Those images are similar enough to share some key-point features. For example an original image will likely have partial matching for its crops. * `score` (*type:* `number()`) - (Deprecated) Overall relevancy score for the web page. * `url` (*type:* `String.t()`) - The result web page URL. """ defstruct [:full_matching_images, :page_title, :partial_matching_images, :score, :url] @type t :: %__MODULE__{ full_matching_images: list(Googly.CloudVision.Model.WebImage.t()) | nil, page_title: String.t() | nil, partial_matching_images: list(Googly.CloudVision.Model.WebImage.t()) | nil, score: number() | nil, url: String.t() | nil } @wire %{ full_matching_images: "fullMatchingImages", page_title: "pageTitle", partial_matching_images: "partialMatchingImages" } @doc false def __wire__, do: @wire @doc false def decode(nil), do: nil def decode(list) when is_list(list), do: Enum.map(list, &decode/1) def decode(m) do %__MODULE__{ full_matching_images: Googly.CloudVision.Model.WebImage.decode(m["fullMatchingImages"]), page_title: m["pageTitle"], partial_matching_images: Googly.CloudVision.Model.WebImage.decode(m["partialMatchingImages"]), score: m["score"], url: m["url"] } end end