use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::collections::HashMap;
#[derive(Debug, Clone, Default, Serialize, Deserialize, PartialEq)]
pub struct ProtestRecord {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub case_id: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub case_number: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub title: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub source_system: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub outcome: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub filed_date: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub decision_date: Option<String>,
#[serde(flatten)]
pub extra: HashMap<String, Value>,
}