fireblocks-sdk 2026.3.27

Rust implementation of the Fireblocks SDK
Documentation
// Fireblocks API
//
// Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain.  - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com)
//
// The version of the OpenAPI document: 1.8.0
// Contact: developers@fireblocks.com
// Generated by: https://openapi-generator.tech

use {
    crate::models,
    serde::{Deserialize, Serialize},
};

/// ComplianceResult : The result of the Compliance AML/Travel Rule screening.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ComplianceResult {
    /// The end result of the AML screening.
    #[serde(rename = "aml", skip_serializing_if = "Option::is_none")]
    pub aml: Option<Vec<models::ComplianceScreeningResult>>,
    /// The result of the Travel Rule screening.
    #[serde(rename = "tr", skip_serializing_if = "Option::is_none")]
    pub tr: Option<Vec<models::ComplianceScreeningResult>>,
    /// The list of all results of the AML screening.
    #[serde(rename = "amlList", skip_serializing_if = "Option::is_none")]
    pub aml_list: Option<Vec<models::ComplianceScreeningResult>>,
    /// Status of compliance result screening.
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<Status>,
    /// The results of the AML address registration.
    #[serde(rename = "amlRegistration", skip_serializing_if = "Option::is_none")]
    pub aml_registration: Option<Vec<models::AmlRegistrationResult>>,
}

impl ComplianceResult {
    /// The result of the Compliance AML/Travel Rule screening.
    pub fn new() -> ComplianceResult {
        ComplianceResult {
            aml: None,
            tr: None,
            aml_list: None,
            status: None,
            aml_registration: None,
        }
    }
}
/// Status of compliance result screening.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Status {
    #[serde(rename = "Started")]
    Started,
    #[serde(rename = "AMLStarted")]
    AmlStarted,
    #[serde(rename = "AMLCompleted")]
    AmlCompleted,
    #[serde(rename = "AMLFailed")]
    AmlFailed,
    #[serde(rename = "AMLInBackground")]
    AmlinBackground,
    #[serde(rename = "TRStarted")]
    TrStarted,
    #[serde(rename = "TRCompleted")]
    TrCompleted,
    #[serde(rename = "TRFailed")]
    TrFailed,
    #[serde(rename = "Completed")]
    Completed,
    #[serde(rename = "RegistrationStarted")]
    RegistrationStarted,
    #[serde(rename = "AMLRegistrationStarted")]
    AmlRegistrationStarted,
    #[serde(rename = "AMLRegistrationCompleted")]
    AmlRegistrationCompleted,
    #[serde(rename = "TRUpdateStarted")]
    TrUpdateStarted,
    #[serde(rename = "TRUpdateCompleted")]
    TrUpdateCompleted,
    #[serde(rename = "UpdateCompleted")]
    UpdateCompleted,
    #[serde(rename = "IncomingStarted")]
    IncomingStarted,
    #[serde(rename = "AMLIncomingStarted")]
    AmlIncomingStarted,
    #[serde(rename = "AMLIncomingCompleted")]
    AmlIncomingCompleted,
    #[serde(rename = "AMLIncomingFailed")]
    AmlIncomingFailed,
    #[serde(rename = "AMLIncomingInBackground")]
    AmlIncomingInBackground,
    #[serde(rename = "TRIncomingStarted")]
    TrIncomingStarted,
    #[serde(rename = "TRIncomingCompleted")]
    TrIncomingCompleted,
    #[serde(rename = "TRIncomingFailed")]
    TrIncomingFailed,
    #[serde(rename = "IncomingCompleted")]
    IncomingCompleted,
}

impl Default for Status {
    fn default() -> Status {
        Self::Started
    }
}