interbtc-api

@interlay/interbtc-api / Exports / DefaultNominationAPI

Class: DefaultNominationAPI

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new DefaultNominationAPI(api, wrappedCurrency, vaultsAPI, rewardsAPI): DefaultNominationAPI

Parameters

Name Type
api ApiPromise
wrappedCurrency Currency
vaultsAPI VaultsAPI
rewardsAPI RewardsAPI

Returns

DefaultNominationAPI

Defined in

src/parachain/nomination.ts:145

Properties

api

Private api: ApiPromise

Defined in

src/parachain/nomination.ts:146


rewardsAPI

Private rewardsAPI: RewardsAPI

Defined in

src/parachain/nomination.ts:149


vaultsAPI

Private vaultsAPI: VaultsAPI

Defined in

src/parachain/nomination.ts:148


wrappedCurrency

Private wrappedCurrency: Currency

Defined in

src/parachain/nomination.ts:147

Methods

depositCollateral

depositCollateral(vaultAccountId, amount): ExtrinsicData

Parameters

Name Type Description
vaultAccountId AccountId Vault to nominate collateral to
amount MonetaryAmount<CollateralCurrencyExt> Amount to deposit, as a Monetary.js object or ForeignAsset

Returns

ExtrinsicData

A submittable extrinsic and an event that is emitted when extrinsic is submitted.

Implementation of

NominationAPI.depositCollateral

Defined in

src/parachain/nomination.ts:163


getActiveNominatorRewards

getActiveNominatorRewards(nominatorId): Promise<NominationData[]>

Parameters

Name Type Description
nominatorId AccountId Id of user who nominated to one or more vaults

Returns

Promise<NominationData[]>

The rewards a currently active nominator has accumulated

Implementation of

NominationAPI.getActiveNominatorRewards

Defined in

src/parachain/nomination.ts:304


getFilteredNominations

getFilteredNominations(vaultId?, collateralCurrency?, nominatorId?): Promise<Nomination[]>

Parameters

Name Type Description
vaultId? AccountId Id of vault who is opted in to nomination
collateralCurrency? CollateralCurrencyExt -
nominatorId? AccountId Id of user who nominated to one or more vaults

Returns

Promise<Nomination[]>

Remarks

At least one of the parameters must be specified

Implementation of

NominationAPI.getFilteredNominations

Defined in

src/parachain/nomination.ts:323


getNominationStatus

getNominationStatus(vaultId, collateralCurrency, nominatorId): Promise<NominationStatus>

Parameters

Name Type
vaultId AccountId
collateralCurrency CollateralCurrencyExt
nominatorId AccountId

Returns

Promise<NominationStatus>

Defined in

src/parachain/nomination.ts:366


getNominatorReward

getNominatorReward(vaultId, collateralCurrency, rewardCurrency): Promise<MonetaryAmount<Currency>>

Parameters

Name Type Description
vaultId AccountId -
collateralCurrency CollateralCurrencyExt The currency towards whose issuance the nomination was made
rewardCurrency Currency The reward currency, e.g. kBTC, KINT, interBTC, INTR

Returns

Promise<MonetaryAmount<Currency>>

The rewards a (possibly inactive) nominator has accumulated

Implementation of

NominationAPI.getNominatorReward

Defined in

src/parachain/nomination.ts:311


getNonces

getNonces(): Promise<Map<InterbtcPrimitivesVaultId, number>>

Returns

Promise<Map<InterbtcPrimitivesVaultId, number>>

A map (vaultId => nonce), representing the nonces for each reward pool with the given currency

Implementation of

NominationAPI.getNonces

Defined in

src/parachain/nomination.ts:240


getTotalNomination

getTotalNomination(vaultId?, collateralCurrency?, nominatorId?): Promise<MonetaryAmount<CollateralCurrencyExt>>

Parameters

Name Type Description
vaultId? AccountId Id of vault who is opted in to nomination
collateralCurrency? CollateralCurrencyExt The collateral currency of the nominations
nominatorId? AccountId Id of user who nominated to one or more vaults

Returns

Promise<MonetaryAmount<CollateralCurrencyExt>>

The total nominated amount, filtered using the given parameters

Remarks

At least one of the parameters must be specified

Implementation of

NominationAPI.getTotalNomination

Defined in

src/parachain/nomination.ts:384


isNominationEnabled

isNominationEnabled(): Promise<boolean>

Returns

Promise<boolean>

A boolean value representing whether the vault nomination feature is enabled

Implementation of

NominationAPI.isNominationEnabled

Defined in

src/parachain/nomination.ts:235


isVaultOptedIn

isVaultOptedIn(accountId, collateralCurrency): Promise<boolean>

Parameters

Name Type
accountId AccountId
collateralCurrency CollateralCurrencyExt

Returns

Promise<boolean>

A boolean value

Implementation of

NominationAPI.isVaultOptedIn

Defined in

src/parachain/nomination.ts:425


list

list(): Promise<Nomination[]>

Returns

Promise<Nomination[]>

All nominations for the wrapped currency set in the API

Implementation of

NominationAPI.list

Defined in

src/parachain/nomination.ts:319


listAllNominations

listAllNominations(): Promise<RawNomination[]>

Returns

Promise<RawNomination[]>

Defined in

src/parachain/nomination.ts:253


listNominatorRewards

listNominatorRewards(): Promise<NominationData[]>

Returns

Promise<NominationData[]>

The rewards a nominator has accumulated, in wrapped token (e.g. interBTC, kBTC)

Implementation of

NominationAPI.listNominatorRewards

Defined in

src/parachain/nomination.ts:285


listVaults

listVaults(): Promise<InterbtcPrimitivesVaultId[]>

Returns

Promise<InterbtcPrimitivesVaultId[]>

A list of all vaults that opted in to the nomination feature.

Implementation of

NominationAPI.listVaults

Defined in

src/parachain/nomination.ts:420


optIn

optIn(collateralCurrency): ExtrinsicData

Parameters

Name Type Description
collateralCurrency CollateralCurrencyExt Currency to accept as nomination

Returns

ExtrinsicData

A submittable extrinsic and an event that is emitted when extrinsic is submitted.

Remarks

Function callable by vaults to opt in to the nomination feature

Implementation of

NominationAPI.optIn

Defined in

src/parachain/nomination.ts:218


optOut

optOut(collateralCurrency): ExtrinsicData

Parameters

Name Type Description
collateralCurrency CollateralCurrencyExt Currency to stop accepting as nomination

Returns

ExtrinsicData

A submittable extrinsic and an event that is emitted when extrinsic is submitted.

Remarks

Function callable by vaults to opt out of the nomination feature

Implementation of

NominationAPI.optOut

Defined in

src/parachain/nomination.ts:224


setNominationEnabled

setNominationEnabled(enabled): ExtrinsicData

Parameters

Name Type
enabled boolean

Returns

ExtrinsicData

A submittable extrinsic and an event that is emitted when extrinsic is submitted.

Remarks

Testnet utility function

Implementation of

NominationAPI.setNominationEnabled

Defined in

src/parachain/nomination.ts:230


withdrawCollateral

withdrawCollateral(vaultAccountId, amount, nonce?): Promise<ExtrinsicData>

Parameters

Name Type Description
vaultAccountId AccountId Vault that collateral was nominated to
amount MonetaryAmount<CollateralCurrencyExt> Amount to withdraw, as a Monetary.js object or ForeignAsset
nonce? number -

Returns

Promise<ExtrinsicData>

A submittable extrinsic and an event that is emitted when extrinsic is submitted.

Implementation of

NominationAPI.withdrawCollateral

Defined in

src/parachain/nomination.ts:202


buildDepositCollateralExtrinsic

buildDepositCollateralExtrinsic(api, vaultAccountId, amount, wrappedCurrency): SubmittableExtrinsic<"promise", ISubmittableResult>

Parameters

Name Type
api ApiPromise
vaultAccountId AccountId
amount MonetaryAmount<CollateralCurrencyExt>
wrappedCurrency Currency

Returns

SubmittableExtrinsic<"promise", ISubmittableResult>

Defined in

src/parachain/nomination.ts:152


buildWithdrawAllCollateralExtrinsic

buildWithdrawAllCollateralExtrinsic(api, rewardsAPI, vaultAccountId, collateralCurrency, wrappedCurrency, nonce?): Promise<SubmittableExtrinsic<"promise", ISubmittableResult>>

Parameters

Name Type
api ApiPromise
rewardsAPI RewardsAPI
vaultAccountId AccountId
collateralCurrency Currency
wrappedCurrency Currency
nonce? number

Returns

Promise<SubmittableExtrinsic<"promise", ISubmittableResult>>

Defined in

src/parachain/nomination.ts:188


buildWithdrawCollateralExtrinsic

buildWithdrawCollateralExtrinsic(api, rewardsAPI, vaultAccountId, amount, wrappedCurrency, nonce?): Promise<SubmittableExtrinsic<"promise", ISubmittableResult>>

Parameters

Name Type
api ApiPromise
rewardsAPI RewardsAPI
vaultAccountId AccountId
amount MonetaryAmount<CollateralCurrencyExt>
wrappedCurrency Currency
nonce? number

Returns

Promise<SubmittableExtrinsic<"promise", ISubmittableResult>>

Defined in

src/parachain/nomination.ts:173