use crate::entity::{MerchantApiRating, MerchantApiSpell};
use serde::{Deserialize, Serialize};
use serde_json::Value;
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct MerchantApiGoogleReviews {
pub product_id: Option<String>,
#[serde(rename = "type")]
pub result_type: Option<String>,
pub se_domain: Option<String>,
pub location_code: Option<i32>,
pub language_code: Option<String>,
pub check_url: Option<String>,
pub datetime: Option<String>,
pub spell: Option<MerchantApiSpell>,
pub title: Option<String>,
pub image_url: Option<String>,
pub rating: Option<MerchantApiRating>,
pub rating_groups: Option<Vec<Value>>,
pub top_keywords: Option<Vec<Value>>,
pub reviews_count: Option<i64>,
pub item_types: Option<Vec<String>>,
pub items_count: Option<i64>,
pub items: Option<Vec<MerchantApiGoogleReviewItem>>,
}
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct MerchantApiGoogleReviewItem {
#[serde(rename = "type")]
pub item_type: Option<String>,
pub rank_group: Option<i64>,
pub rank_absolute: Option<i64>,
pub position: Option<String>,
pub images: Option<Vec<String>>,
pub title: Option<String>,
pub url: Option<String>,
pub review_text: Option<String>,
pub provided_by: Option<String>,
pub author: Option<String>,
pub publication_date: Option<String>,
pub rating: Option<MerchantApiRating>,
}