raiden_state_machine/
constants.rs

1use raiden_primitives::types::Bytes;
2
3use crate::types::{
4	ChannelStatus,
5	PayeeState,
6	PayerState,
7};
8
9pub const ABSENT_SECRET: Bytes = Bytes(vec![]);
10
11pub const SECRET_LENGTH: u8 = 32;
12
13pub const MIN_REVEAL_TIMEOUT: u32 = 1;
14
15pub const DEFAULT_REVEAL_TIMEOUT: u32 = 50;
16
17pub const DEFAULT_SETTLE_TIMEOUT: u32 = 500;
18
19pub const DEFAULT_RETRY_TIMEOUT: u64 = 500;
20
21pub const DEFAULT_NUMBER_OF_BLOCK_CONFIRMATIONS: u64 = 5;
22
23pub const DEFAULT_WAIT_BEFORE_LOCK_REMOVAL: u64 = 2 * DEFAULT_NUMBER_OF_BLOCK_CONFIRMATIONS;
24
25pub const MAXIMUM_PENDING_TRANSFERS: usize = 160;
26
27pub const NUM_DISCRETISATION_POINTS: u64 = 21;
28
29pub const MAX_MEDIATION_FEE_PERC: (u32, u32) = (20, 100);
30
31pub const DEFAULT_MEDIATION_FEE_MARGIN: (u32, u32) = (3, 100);
32
33pub const PAYMENT_AMOUNT_BASED_FEE_MARGIN: (u32, u32) = (5, 10000);
34
35pub const DEFAULT_MEDIATION_FLAT_FEE: u64 = 0;
36
37pub const DEFAULT_MEDIATION_PROPORTIONAL_FEE: u64 = 4000; // 0.4% in parts per million
38
39pub const DEFAULT_MEDIATION_PROPORTIONAL_IMBALANCE_FEE: u64 = 3000; // 0.3% in parts per million
40
41pub const CHANNEL_STATES_PRIOR_TO_CLOSE: [ChannelStatus; 2] =
42	[ChannelStatus::Opened, ChannelStatus::Closing];
43pub const CHANNEL_STATES_UP_TO_CLOSE: [ChannelStatus; 3] =
44	[ChannelStatus::Opened, ChannelStatus::Closing, ChannelStatus::Closed];
45pub const PAYEE_STATE_TRANSFER_PAID: [PayeeState; 2] =
46	[PayeeState::BalanceProof, PayeeState::ContractUnlock];
47pub const PAYER_STATE_TRANSFER_PAID: [PayerState; 1] = [PayerState::BalanceProof];
48
49pub const PAYEE_STATE_TRANSFER_FINAL: [PayeeState; 3] =
50	[PayeeState::ContractUnlock, PayeeState::BalanceProof, PayeeState::Expired];
51pub const PAYEE_STATE_SECRET_KNOWN: [PayeeState; 3] =
52	[PayeeState::SecretRevealed, PayeeState::ContractUnlock, PayeeState::BalanceProof];
53pub const PAYER_STATE_SECRET_KNOWN: [PayerState; 3] =
54	[PayerState::SecretRevealed, PayerState::WaitingUnlock, PayerState::BalanceProof];
55pub const PAYER_STATE_TRANSFER_FINAL: [PayerState; 2] =
56	[PayerState::BalanceProof, PayerState::Expired];