pub trait Valuate<Balance, CurrencyId> {
    // Required methods
    fn get_liquidity_asset(
        first_asset_id: CurrencyId,
        second_asset_id: CurrencyId
    ) -> Result<CurrencyId, DispatchError>;
    fn get_liquidity_token_mga_pool(
        liquidity_token_id: CurrencyId
    ) -> Result<(CurrencyId, CurrencyId), DispatchError>;
    fn valuate_liquidity_token(
        liquidity_token_id: CurrencyId,
        liquidity_token_amount: Balance
    ) -> Balance;
    fn valuate_non_liquidity_token(
        liquidity_token_id: CurrencyId,
        liquidity_token_amount: Balance
    ) -> Balance;
    fn scale_liquidity_by_mga_valuation(
        mga_valuation: Balance,
        liquidity_token_amount: Balance,
        mga_token_amount: Balance
    ) -> Balance;
    fn get_pool_state(
        liquidity_token_id: CurrencyId
    ) -> Option<(Balance, Balance)>;
    fn get_reserves(
        first_asset_id: CurrencyId,
        second_asset_id: CurrencyId
    ) -> Result<(Balance, Balance), DispatchError>;
    fn is_liquidity_token(liquidity_asset_id: CurrencyId) -> bool;
}

Required Methods§

source

fn get_liquidity_asset( first_asset_id: CurrencyId, second_asset_id: CurrencyId ) -> Result<CurrencyId, DispatchError>

source

fn get_liquidity_token_mga_pool( liquidity_token_id: CurrencyId ) -> Result<(CurrencyId, CurrencyId), DispatchError>

source

fn valuate_liquidity_token( liquidity_token_id: CurrencyId, liquidity_token_amount: Balance ) -> Balance

source

fn valuate_non_liquidity_token( liquidity_token_id: CurrencyId, liquidity_token_amount: Balance ) -> Balance

source

fn scale_liquidity_by_mga_valuation( mga_valuation: Balance, liquidity_token_amount: Balance, mga_token_amount: Balance ) -> Balance

source

fn get_pool_state(liquidity_token_id: CurrencyId) -> Option<(Balance, Balance)>

source

fn get_reserves( first_asset_id: CurrencyId, second_asset_id: CurrencyId ) -> Result<(Balance, Balance), DispatchError>

source

fn is_liquidity_token(liquidity_asset_id: CurrencyId) -> bool

Implementors§