UNPKG

@bitgo/utxo-ord

Version:

Utilities for building ordinals with BitGo utxo-lib

67 lines 2.65 kB
import { Network, bitgo } from '@bitgo/utxo-lib'; import { SatPoint } from './SatPoint'; import { OutputLayout } from './OutputLayout'; type WalletUnspent = bitgo.WalletUnspent<bigint>; export type WalletOutputPath = { chain: bitgo.ChainCode; index: number; }; export type WalletInputBuilder = { walletKeys: bitgo.RootWalletKeys; signer: bitgo.KeyName; cosigner: bitgo.KeyName; }; /** * Describes all outputs of an inscription transaction */ export type InscriptionTransactionOutputs = { inscriptionRecipient: string | Buffer; changeOutputs: [WalletOutputPath, WalletOutputPath]; }; /** @deprecated */ export type InscriptionOutputs = InscriptionTransactionOutputs; export type InscriptionTransactionConstraints = { feeRateSatKB: number; minChangeOutput?: bigint; minInscriptionOutput?: bigint; maxInscriptionOutput?: bigint; }; export declare const DefaultInscriptionConstraints: { minChangeOutput: bigint; minInscriptionOutput: bigint; maxInscriptionOutput: bigint; }; export declare function createPsbtFromOutputLayout(network: Network, inputBuilder: WalletInputBuilder, unspents: WalletUnspent[], outputs: InscriptionTransactionOutputs, outputLayout: OutputLayout): bitgo.UtxoPsbt; /** * @param inputs - inscription input must come first * @param satPoint - location of the inscription * @param outputs * @param constraints * @param minimizeInputs */ export declare function findOutputLayoutForWalletUnspents(inputs: WalletUnspent[], satPoint: SatPoint, outputs: InscriptionTransactionOutputs, constraints: InscriptionTransactionConstraints, { minimizeInputs }?: { minimizeInputs?: boolean | undefined; }): { inputs: WalletUnspent[]; layout: OutputLayout; } | undefined; export declare const MAX_UNSPENTS_FOR_OUTPUT_LAYOUT = 5; export declare class ErrorNoLayout extends Error { constructor(); } /** * @param network * @param inputBuilder * @param unspent * @param satPoint * @param outputs * @param constraints * @param supplementaryUnspents - additional inputs to cover fee. * @param [minimizeInputs=true] - try to find input combination with minimal fees. Limits supplementaryUnspents to 4. */ export declare function createPsbtForSingleInscriptionPassingTransaction(network: Network, inputBuilder: WalletInputBuilder, unspent: WalletUnspent | WalletUnspent[], satPoint: SatPoint, outputs: InscriptionTransactionOutputs, constraints: InscriptionTransactionConstraints, { supplementaryUnspents, minimizeInputs, }?: { supplementaryUnspents?: WalletUnspent[]; minimizeInputs?: boolean; }): bitgo.UtxoPsbt; export {}; //# sourceMappingURL=psbt.d.ts.map