eth_twc_sdk/types/
args.rs1use alloy::primitives::{Address, B256, U256};
4
5use super::transfer_detail::{CommittedTransferDetail, TransferDetail};
6
7#[derive(Clone, Debug)]
11pub struct SelfSingleTransferArgs {
12 pub token: Address,
14 pub to: Address,
16 pub value: U256,
18 pub commitment: B256,
20}
21
22#[derive(Clone, Debug)]
24pub struct SelfUniCommitTransfersArgs {
25 pub details: Vec<TransferDetail>,
27 pub commitment: B256,
29}
30
31#[derive(Clone, Debug)]
33pub struct SelfBatchTransferWithCommitArgs {
34 pub details: Vec<CommittedTransferDetail>,
36}
37
38#[derive(Clone, Debug)]
42pub struct SignatureSingleTransferArgs {
43 pub from: Address,
45 pub to: Address,
47 pub token: Address,
49 pub executor: Address,
51 pub value: U256,
53 pub commitment: B256,
55 pub valid_after: Option<U256>,
57 pub valid_before: Option<U256>,
59}
60
61#[derive(Clone, Debug)]
63pub struct SignatureUniCommitTransfersArgs {
64 pub from: Address,
66 pub executor: Address,
68 pub details: Vec<TransferDetail>,
70 pub commitment: B256,
71 pub valid_after: Option<U256>,
73 pub valid_before: Option<U256>,
75}
76
77#[derive(Clone, Debug)]
79pub struct SignatureBatchTransferWithCommitArgs {
80 pub from: Address,
82 pub executor: Address,
84 pub details: Vec<CommittedTransferDetail>,
86 pub batch_commitment: B256,
88 pub valid_after: Option<U256>,
90 pub valid_before: Option<U256>,
92}
93
94#[derive(Clone, Debug)]
96pub struct CancelAuthorizationArgs {
97 pub authorizer: Address,
99 pub commitment: B256,
101}
102
103pub type SingleTransferArgs = SignatureSingleTransferArgs;
105pub type UniCommitTransfersArgs = SignatureUniCommitTransfersArgs;
107pub type BatchTransferWithCommitArgs = SignatureBatchTransferWithCommitArgs;