use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct FinalDestinationHit {
#[serde(rename = "id")]
pub id: uuid::Uuid,
#[serde(rename = "address")]
pub address: String,
#[serde(rename = "geojson")]
pub geojson: Box<models::FinalDestinationHitGeojson>,
#[serde(rename = "distance", skip_serializing_if = "Option::is_none")]
pub distance: Option<f64>,
#[serde(rename = "search_confidence", skip_serializing_if = "Option::is_none")]
pub search_confidence: Option<f64>,
#[serde(rename = "match_level", skip_serializing_if = "Option::is_none")]
pub match_level: Option<models::FinalDestinationMatchLevel>,
#[serde(rename = "structured_response", skip_serializing_if = "Option::is_none")]
pub structured_response: Option<Box<models::StructuredAddress>>,
#[serde(rename = "source_id", skip_serializing_if = "Option::is_none")]
pub source_id: Option<Box<models::FinalDestinationSourceIdResponse>>,
}
impl FinalDestinationHit {
pub fn new(id: uuid::Uuid, address: String, geojson: models::FinalDestinationHitGeojson) -> FinalDestinationHit {
FinalDestinationHit {
id,
address,
geojson: Box::new(geojson),
distance: None,
search_confidence: None,
match_level: None,
structured_response: None,
source_id: None,
}
}
}