breez_sdk_spark/issuer/
models.rs

1use serde::Serialize;
2
3#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
4#[derive(Debug, Serialize)]
5pub struct CreateIssuerTokenRequest {
6    pub name: String,
7    pub ticker: String,
8    pub decimals: u32,
9    pub is_freezable: bool,
10    pub max_supply: u128,
11}
12
13#[derive(Debug, Serialize)]
14#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
15pub struct MintIssuerTokenRequest {
16    pub amount: u128,
17}
18
19#[derive(Debug, Serialize)]
20#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
21pub struct BurnIssuerTokenRequest {
22    pub amount: u128,
23}
24
25#[derive(Debug, Serialize)]
26#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
27pub struct FreezeIssuerTokenRequest {
28    pub address: String,
29}
30
31#[derive(Debug, Serialize)]
32#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
33pub struct FreezeIssuerTokenResponse {
34    pub impacted_output_ids: Vec<String>,
35    pub impacted_token_amount: u128,
36}
37
38impl From<spark_wallet::FreezeIssuerTokenResponse> for FreezeIssuerTokenResponse {
39    fn from(value: spark_wallet::FreezeIssuerTokenResponse) -> Self {
40        Self {
41            impacted_output_ids: value.impacted_output_ids,
42            impacted_token_amount: value.impacted_token_amount,
43        }
44    }
45}
46
47#[derive(Debug, Serialize)]
48#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
49pub struct UnfreezeIssuerTokenRequest {
50    pub address: String,
51}
52
53#[derive(Debug, Serialize)]
54#[cfg_attr(feature = "uniffi", derive(uniffi::Record))]
55pub struct UnfreezeIssuerTokenResponse {
56    pub impacted_output_ids: Vec<String>,
57    pub impacted_token_amount: u128,
58}
59
60impl From<spark_wallet::FreezeIssuerTokenResponse> for UnfreezeIssuerTokenResponse {
61    fn from(value: spark_wallet::FreezeIssuerTokenResponse) -> Self {
62        Self {
63            impacted_output_ids: value.impacted_output_ids,
64            impacted_token_amount: value.impacted_token_amount,
65        }
66    }
67}