fireblocks_sdk/models/
extra_parameters_raw_message_data.rs

1// Fireblocks API
2//
3// 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)
4//
5// The version of the OpenAPI document: 1.8.0
6// Contact: developers@fireblocks.com
7// Generated by: https://openapi-generator.tech
8
9use {
10    crate::models,
11    serde::{Deserialize, Serialize},
12};
13
14/// ExtraParametersRawMessageData : Object containing messages for raw signing
15/// and the algorithm to be used.
16#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
17pub struct ExtraParametersRawMessageData {
18    #[serde(rename = "messages", skip_serializing_if = "Option::is_none")]
19    pub messages: Option<Vec<models::UnsignedMessage>>,
20    #[serde(rename = "algorithm", skip_serializing_if = "Option::is_none")]
21    pub algorithm: Option<Algorithm>,
22}
23
24impl ExtraParametersRawMessageData {
25    /// Object containing messages for raw signing and the algorithm to be used.
26    pub fn new() -> ExtraParametersRawMessageData {
27        ExtraParametersRawMessageData {
28            messages: None,
29            algorithm: None,
30        }
31    }
32}
33///
34#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
35pub enum Algorithm {
36    #[serde(rename = "MPC_ECDSA_SECP256K1")]
37    MpcEcdsaSecp256K1,
38    #[serde(rename = "MPC_ECDSA_SECP256R1")]
39    MpcEcdsaSecp256R1,
40    #[serde(rename = "MPC_EDDSA_ED25519")]
41    MpcEddsaEd25519,
42}
43
44impl Default for Algorithm {
45    fn default() -> Algorithm {
46        Self::MpcEcdsaSecp256K1
47    }
48}