send-crypto
Version:
A minimal JavaScript library / wallet for sending crypto assets
65 lines (64 loc) • 1.7 kB
TypeScript
import { UTXO } from "../../lib/utxo";
export declare const broadcastTransaction: (insightURL: string) => (txHex: string) => Promise<string>;
export declare const Insight: {
fetchUTXO: (insightURL: string) => (txHash: string, vOut: number) => Promise<UTXO>;
fetchUTXOs: (insightURL: string) => (address: string, confirmations: number) => Promise<readonly UTXO[]>;
fetchTXs: (insightURL: string) => (address: string, confirmations: number) => Promise<readonly UTXO[]>;
broadcastTransaction: (insightURL: string) => (txHex: string) => Promise<string>;
};
export interface ScriptSig {
hex: string;
asm: string;
}
export interface Vin {
txid: string;
vout: number;
sequence: number;
n: number;
scriptSig: ScriptSig;
addr: string;
valueSat: number;
value: number;
doubleSpentTxID?: any;
}
export interface ScriptPubKey {
hex: string;
asm: string;
addresses: string[];
type: string;
}
export interface Vout {
value: string;
n: number;
scriptPubKey: ScriptPubKey;
spentTxId: string;
spentIndex: number;
spentHeight: number;
}
export interface TxResponse {
txid: string;
version: number;
locktime: number;
vin: Vin[];
vout: Vout[];
vjoinsplit: any[];
blockhash: string;
blockheight: number;
confirmations: number;
time: number;
blocktime: number;
valueOut: number;
size: number;
valueIn: number;
fees: number;
fOverwintered: boolean;
nVersionGroupId: number;
nExpiryHeight: number;
valueBalance: number;
spendDescs: any[];
outputDescs: any[];
}
export interface FetchTXsResult {
pagesTotal: number;
txs: TxResponse[];
}