nibiru_std/bindings/
msg.rs

1use cosmwasm_schema::cw_serde;
2use cosmwasm_std::{Coin, Decimal, Uint128};
3
4#[cw_serde]
5pub enum NibiruMsg {
6    MarketOrder {
7        pair: String,
8        is_long: bool,
9        quote_amount: Uint128,
10        leverage: Decimal,
11        base_amount_limit: Uint128,
12    },
13
14    ClosePosition {
15        pair: String,
16    },
17
18    AddMargin {
19        pair: String,
20        margin: Coin,
21    },
22
23    RemoveMargin {
24        pair: String,
25        margin: Coin,
26    },
27
28    MultiLiquidate {
29        pair: String,
30        liquidations: Vec<LiquidationArgs>,
31    },
32
33    DonateToInsuranceFund {
34        donation: Coin,
35    },
36
37    NoOp {},
38}
39
40#[cw_serde]
41pub struct LiquidationArgs {
42    pub pair: String,
43    pub trader: String,
44}