defuse_core/
fees.rs

1use std::borrow::Cow;
2
3pub use defuse_fees::{Pips, PipsOutOfRange};
4use near_sdk::{AccountId, AccountIdRef, near};
5
6#[near(serializers = [borsh, json])]
7#[derive(Debug, Clone)]
8pub struct FeesConfig {
9    pub fee: Pips,
10    pub fee_collector: AccountId,
11}
12
13#[must_use = "make sure to `.emit()` this event"]
14#[near(serializers = [json])]
15#[derive(Debug, Clone)]
16pub struct FeeChangedEvent {
17    pub old_fee: Pips,
18    pub new_fee: Pips,
19}
20
21#[must_use = "make sure to `.emit()` this event"]
22#[near(serializers = [json])]
23#[derive(Debug, Clone)]
24pub struct FeeCollectorChangedEvent<'a> {
25    pub old_fee_collector: Cow<'a, AccountIdRef>,
26    pub new_fee_collector: Cow<'a, AccountIdRef>,
27}