use crate::{
directions::response::{
directions_distance::DirectionsDistance, directions_duration::DirectionsDuration,
transit_fare::TransitFare,
},
distance_matrix::response::element_status::ElementStatus,
};
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Eq, Hash, Ord, PartialEq, PartialOrd, Serialize, Deserialize)]
pub struct Element {
#[serde(default)]
pub distance: Option<DirectionsDistance>,
#[serde(default)]
pub duration: Option<DirectionsDuration>,
#[serde(default)]
pub duration_in_traffic: Option<DirectionsDuration>,
#[serde(default)]
pub fare: Option<TransitFare>,
pub status: ElementStatus,
}