import { Bitcoin, Currency, MonetaryAmount } from "@interlay/monetary-js"; import { AccountId } from "@polkadot/types/interfaces"; import { CollateralCurrencyExt, WrappedCurrency } from "../types"; import { InterbtcPrimitivesVaultId, InterbtcPrimitivesReplaceReplaceRequestStatus } from "@polkadot/types/lookup"; export interface Issue { id: string; wrappedAmount: MonetaryAmount; userParachainAddress: string; bridgeFee: MonetaryAmount; griefingCollateral: MonetaryAmount; vaultWalletPubkey: string; creationBlock: number; creationTimestamp?: number; vaultWrappedAddress: string; vaultId: InterbtcPrimitivesVaultId; btcTxId?: string; confirmations?: number; btcBlockHeight?: number; btcConfirmationActiveBlockHeight?: number; btcAmountSubmittedByUser?: MonetaryAmount; status: IssueStatus; refundBtcAddress?: string; refundAmountWrapped?: MonetaryAmount; executedAmountWrapped?: MonetaryAmount; period: number; } export declare enum IssueStatus { Completed = 0, Cancelled = 1, RequestedRefund = 2, Expired = 3, PendingWithBtcTxNotFound = 4, PendingWithBtcTxNotIncluded = 5, PendingWithTooFewConfirmations = 6, PendingWithEnoughConfirmations = 7 } export declare enum NominationStatus { Staked = 0, Unstaked = 1, Refunded = 2 } export interface Redeem { id: string; userParachainAddress: string; amountBTC: MonetaryAmount; collateralPremium: MonetaryAmount; bridgeFee: MonetaryAmount; btcTransferFee: MonetaryAmount; creationTimestamp?: number; creationBlock: number; vaultId: InterbtcPrimitivesVaultId; userBTCAddress: string; btcTxId?: string; confirmations?: number; btcBlockHeight?: number; status: RedeemStatus; period: number; } export declare enum RedeemStatus { Completed = 0, Expired = 1, Reimbursed = 2, Retried = 3, PendingWithBtcTxNotFound = 4, PendingWithBtcTxNotIncluded = 5, PendingWithTooFewConfirmations = 6, PendingWithEnoughConfirmations = 7 } export interface RefundRequestExt { vaultId: InterbtcPrimitivesVaultId; amountIssuing: MonetaryAmount; fee: MonetaryAmount; amountBtc: MonetaryAmount; issuer: AccountId; btcAddress: string; issueId: string; completed: boolean; } export interface ReplaceRequestExt { id: string; btcAddress: string; newVault: InterbtcPrimitivesVaultId; oldVault: InterbtcPrimitivesVaultId; amount: MonetaryAmount; griefingCollateral: MonetaryAmount; collateral: MonetaryAmount; acceptTime: number; period: number; btcHeight: number; status: InterbtcPrimitivesReplaceReplaceRequestStatus; }