bitgo 0.0.3

BitGo API client
Documentation
// use super::Transfer;

#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct SendCoin {
    pub transfer: Transfer,
    pub txid: String,
    pub tx: String,
    pub status: String,
}

#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
#[serde(rename_all = "camelCase")]
// TODO: duplicated from transfer::Transfer...?
pub struct Transfer {
    pub id: String,
    pub coin: String,
    pub wallet: String,
    pub txid: String,
    pub height: i64,
    pub height_id: String,
    pub date: String,
    #[serde(rename = "type")]
    pub type_field: String,
    pub value: i64,
    pub value_string: String,
    pub base_value: i64,
    pub base_value_string: String,
    pub fee_string: String,
    pub pay_go_fee: i64,
    pub pay_go_fee_string: String,
    pub usd: f64,
    pub usd_rate: f64,
    pub state: String,
    pub instant: bool,
    pub is_reward: bool,
    pub is_fee: bool,
    pub tags: Vec<String>,
    pub history: Vec<History>,
    pub v_size: i64,
    pub entries: Vec<Entry>,
    pub signed_time: String,
    pub created_time: String,
}

#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct History {
    pub date: String,
    pub action: String,
    pub user: Option<String>,
}

#[derive(Default, Debug, Clone, PartialEq, serde_derive::Serialize, serde_derive::Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Entry {
    pub address: String,
    pub wallet: Option<String>,
    pub value: i64,
    pub value_string: String,
    pub is_change: Option<bool>,
    pub is_pay_go: Option<bool>,
}