UNPKG

@faktoryfun/styx-sdk

Version:

Bitcoin deposit SDK for Stacks applications, enabling trustless Bitcoin-to-sBTC deposits

76 lines (75 loc) 1.91 kB
export interface FeeEstimates { low: number; medium: number; high: number; } export interface DepositCreateParams { btcAmount: number; stxReceiver: string; btcSender: string; } export interface DepositUpdateParams { id: string; data: { btcTxId?: string; status?: string; }; } export type FeePriority = "low" | "medium" | "high"; export interface TransactionPrepareParams { amount: string; userAddress: string; btcAddress: string; feePriority: FeePriority; walletProvider: "leather" | "xverse" | null; } export interface PreparedTransactionData { utxos: any[]; opReturnData: string; depositAddress: string; fee: number; changeAmount: number; amountInSatoshis: number; feeRate: number; inscriptionCount: number; inputCount: number; outputCount: number; } export interface TransactionDetails { inputCount: number; outputCount: number; totalValueIn: number; primaryOutput: number; changeOutput: number; fee: number; feeRate: number; } export interface ExecuteTransactionResponse { txPsbtHex: string; txPsbtBase64: string; utxos: any[]; addressType: "segwit" | "p2sh" | "legacy"; needsFrontendInputHandling: boolean; transactionDetails: TransactionDetails; } export type DepositStatus = "initiated" | "broadcast" | "processing" | "confirmed" | "refund-requested" | "canceled"; export interface Deposit { id: string; btcAmount: number; sbtcAmount: number | null; stxReceiver: string; btcSender: string; btcTxId: string | null; btcTxBlockHeight: number | null; stxTxId: string | null; stxTxBlockHeight: number | null; status: DepositStatus; createdAt: number | null; updatedAt: number | null; } export declare enum TransactionPriority { Low = "low", Medium = "medium", High = "high" } export {};