UNPKG

@ledgerhq/coin-canton

Version:
67 lines 2.7 kB
import { CryptoCurrency } from "@ledgerhq/ledger-wallet-framework/types"; import type { Account, AccountRaw, CurrencyBridge, TransactionCommon, TransactionCommonRaw, TransactionStatusCommon, TransactionStatusCommonRaw } from "@ledgerhq/types-live"; import type { BigNumber } from "bignumber.js"; import type { Observable } from "rxjs"; import type { TransferProposal } from "../network/gateway"; import type { CantonOnboardProgress, CantonOnboardResult, CantonAuthorizeProgress, CantonAuthorizeResult } from "./onboard"; export interface CantonCurrencyBridge extends CurrencyBridge { onboardAccount: (currency: CryptoCurrency, deviceId: string, creatableAccount: Account) => Observable<CantonOnboardProgress | CantonOnboardResult>; authorizePreapproval: (currency: CryptoCurrency, deviceId: string, creatableAccount: Account, partyId: string) => Observable<CantonAuthorizeProgress | CantonAuthorizeResult>; transferInstruction: (currency: CryptoCurrency, deviceId: string, account: Account, partyId: string, contractId: string, type: "accept-transfer-instruction" | "reject-transfer-instruction" | "withdraw-transfer-instruction", reason?: string) => Promise<void>; } export type NetworkInfo = { family: "canton"; serverFee: BigNumber; baseReserve: BigNumber; }; export type NetworkInfoRaw = { family: "canton"; serverFee: string; baseReserve: string; }; export type Transaction = TransactionCommon & { family: "canton"; fee: BigNumber | null | undefined; memo?: string; tokenId: string; expireInSeconds?: number; instrumentAdmin?: string; }; export type TransactionRaw = TransactionCommonRaw & { family: "canton"; fee: string | null | undefined; memo?: string; tokenId: string; expireInSeconds?: number; instrumentAdmin?: string; }; export declare enum DurationEnum { ONE_DAY = "1d", THREE_HOURS = "3h", SIX_HOURS = "6h", ONE_WEEK = "1w", ONE_MONTH = "1m" } export type TransactionStatus = TransactionStatusCommon; export type TransactionStatusRaw = TransactionStatusCommonRaw; export type CantonResources = { isOnboarded: boolean; instrumentUtxoCounts: Record<string, number>; pendingTransferProposals: TransferProposal[]; publicKey?: string; xpub?: string; }; export type CantonResourcesRaw = { isOnboarded: boolean; instrumentUtxoCounts: Record<string, number>; pendingTransferProposals: TransferProposal[]; publicKey?: string; xpub?: string; }; export type CantonAccount = Account & { cantonResources: CantonResources; }; export type CantonAccountRaw = AccountRaw & { cantonResources: CantonResourcesRaw; }; //# sourceMappingURL=bridge.d.ts.map