templar_common/
event.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
use near_sdk::{near, AccountId};

use crate::{
    asset::{BorrowAssetAmount, CollateralAssetAmount},
    snapshot::Snapshot,
};

#[near(event_json(standard = "templar-market"))]
pub enum MarketEvent {
    #[event_version("1.0.0")]
    SnapshotFinalized {
        index: u32,
        #[serde(flatten)]
        snapshot: Snapshot,
    },
    #[event_version("1.0.0")]
    YieldAccumulated {
        account_id: AccountId,
        borrow_asset_amount: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    InterestAccumulated {
        account_id: AccountId,
        borrow_asset_amount: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    SupplyDeposited {
        account_id: AccountId,
        borrow_asset_amount: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    SupplyWithdrawn {
        account_id: AccountId,
        borrow_asset_amount_to_account: BorrowAssetAmount,
        borrow_asset_amount_to_fees: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    CollateralDeposited {
        account_id: AccountId,
        collateral_asset_amount: CollateralAssetAmount,
    },
    #[event_version("1.0.0")]
    CollateralWithdrawn {
        account_id: AccountId,
        collateral_asset_amount: CollateralAssetAmount,
    },
    #[event_version("1.0.0")]
    BorrowWithdrawn {
        account_id: AccountId,
        borrow_asset_amount: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    BorrowRepaid {
        account_id: AccountId,
        borrow_asset_fees_repaid: BorrowAssetAmount,
        borrow_asset_principal_repaid: BorrowAssetAmount,
        borrow_asset_principal_remaining: BorrowAssetAmount,
    },
    #[event_version("1.0.0")]
    Liquidation {
        liquidator_id: AccountId,
        account_id: AccountId,
        borrow_asset_recovered: BorrowAssetAmount,
        collateral_asset_liquidated: CollateralAssetAmount,
    },
}