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},
};

/// PayoutState : - CREATED - payout instruction set created with all its
/// details - FILE_FOUND - new file found in the FTP - REQUESTED - payout
/// requested with all its details - TRANSLATED - payout instruction account IDs
/// identified and translated - PROCESSING - payout instruction set executed and
/// is processing - SUBMITTED - transactions submitted for payout instructions -
/// FINALIZED - payout finished processing, all transactions processed
/// successfully - INSUFFICIENT_BALANCE - insufficient balance in the payment
/// account (can be a temporary state) - FAILED - one or more of the payout
/// instructions failed
/// - CREATED - payout instruction set created with all its details - FILE_FOUND
///   - new file found in the FTP - REQUESTED - payout requested with all its
///   details - TRANSLATED - payout instruction account IDs identified and
///   translated - PROCESSING - payout instruction set executed and is
///   processing - SUBMITTED - transactions submitted for payout instructions -
///   FINALIZED - payout finished processing, all transactions processed
///   successfully - INSUFFICIENT_BALANCE - insufficient balance in the payment
///   account (can be a temporary state) - FAILED - one or more of the payout
///   instructions failed
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum PayoutState {
    #[serde(rename = "CREATED")]
    Created,
    #[serde(rename = "FILE_FOUND")]
    FileFound,
    #[serde(rename = "REQUESTED")]
    Requested,
    #[serde(rename = "TRANSLATED")]
    Translated,
    #[serde(rename = "PROCESSING")]
    Processing,
    #[serde(rename = "SUBMITTED")]
    Submitted,
    #[serde(rename = "FINALIZED")]
    Finalized,
    #[serde(rename = "INSUFFICIENT_BALANCE")]
    InsufficientBalance,
    #[serde(rename = "FAILED")]
    Failed,
}

impl std::fmt::Display for PayoutState {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Created => write!(f, "CREATED"),
            Self::FileFound => write!(f, "FILE_FOUND"),
            Self::Requested => write!(f, "REQUESTED"),
            Self::Translated => write!(f, "TRANSLATED"),
            Self::Processing => write!(f, "PROCESSING"),
            Self::Submitted => write!(f, "SUBMITTED"),
            Self::Finalized => write!(f, "FINALIZED"),
            Self::InsufficientBalance => write!(f, "INSUFFICIENT_BALANCE"),
            Self::Failed => write!(f, "FAILED"),
        }
    }
}

impl Default for PayoutState {
    fn default() -> PayoutState {
        Self::Created
    }
}