2020-02-16 22:15:07 +07:00
|
|
|
export interface MempoolInfo {
|
2019-07-21 17:59:47 +03:00
|
|
|
size: number;
|
|
|
|
bytes: number;
|
2019-10-22 17:09:07 +08:00
|
|
|
usage?: number;
|
|
|
|
maxmempool?: number;
|
|
|
|
mempoolminfee?: number;
|
|
|
|
minrelaytxfee?: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface MempoolBlock {
|
|
|
|
blockSize: number;
|
|
|
|
blockVSize: number;
|
|
|
|
nTx: number;
|
|
|
|
medianFee: number;
|
2020-03-17 21:53:20 +07:00
|
|
|
totalFees: number;
|
2020-02-16 22:15:07 +07:00
|
|
|
feeRange: number[];
|
|
|
|
}
|
|
|
|
|
2020-06-08 02:08:51 +07:00
|
|
|
export interface MempoolBlockWithTransactions extends MempoolBlock {
|
|
|
|
transactionIds: string[];
|
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface Transaction {
|
2019-07-21 17:59:47 +03:00
|
|
|
txid: string;
|
|
|
|
version: number;
|
2020-02-16 22:15:07 +07:00
|
|
|
locktime: number;
|
|
|
|
fee: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
size: number;
|
2019-10-28 16:47:42 +08:00
|
|
|
weight: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
vin: Vin[];
|
|
|
|
vout: Vout[];
|
2020-02-16 22:15:07 +07:00
|
|
|
status: Status;
|
2020-12-22 06:04:31 +07:00
|
|
|
|
|
|
|
// bitcoind (temp?)
|
|
|
|
in_active_chain?: boolean;
|
2020-02-16 22:15:07 +07:00
|
|
|
}
|
|
|
|
|
2020-06-09 02:08:46 +07:00
|
|
|
export interface TransactionMinerInfo {
|
|
|
|
vin: VinStrippedToScriptsig[];
|
|
|
|
vout: VoutStrippedToScriptPubkey[];
|
|
|
|
}
|
|
|
|
|
|
|
|
interface VinStrippedToScriptsig {
|
|
|
|
scriptsig: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface VoutStrippedToScriptPubkey {
|
|
|
|
scriptpubkey_address: string | undefined;
|
2020-06-19 23:32:17 +07:00
|
|
|
value: number;
|
2020-06-09 02:08:46 +07:00
|
|
|
}
|
|
|
|
|
2020-02-23 19:16:50 +07:00
|
|
|
export interface TransactionExtended extends Transaction {
|
2020-02-16 22:15:07 +07:00
|
|
|
vsize: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
feePerVsize: number;
|
2020-02-28 01:09:07 +07:00
|
|
|
firstSeen: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-09-26 02:11:30 +07:00
|
|
|
export interface TransactionStripped {
|
|
|
|
txid: string;
|
|
|
|
fee: number;
|
|
|
|
weight: number;
|
|
|
|
value: number;
|
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface Vin {
|
|
|
|
txid: string;
|
|
|
|
vout: number;
|
2020-06-17 15:01:58 +07:00
|
|
|
is_coinbase: boolean;
|
2020-02-16 22:15:07 +07:00
|
|
|
scriptsig: string;
|
|
|
|
scriptsig_asm: string;
|
|
|
|
inner_redeemscript_asm?: string;
|
2020-06-17 15:01:58 +07:00
|
|
|
inner_witnessscript_asm?: string;
|
2020-02-16 22:15:07 +07:00
|
|
|
sequence: any;
|
|
|
|
witness?: string[];
|
2020-06-17 15:01:58 +07:00
|
|
|
prevout: Vout;
|
|
|
|
// Elements
|
2020-05-10 01:34:28 +07:00
|
|
|
is_pegin?: boolean;
|
2020-05-05 15:26:23 +07:00
|
|
|
issuance?: Issuance;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Issuance {
|
|
|
|
asset_id: string;
|
|
|
|
is_reissuance: string;
|
|
|
|
asset_blinding_nonce: string;
|
|
|
|
asset_entropy: string;
|
|
|
|
contract_hash: string;
|
|
|
|
assetamount?: number;
|
|
|
|
assetamountcommitment?: string;
|
|
|
|
tokenamount?: number;
|
|
|
|
tokenamountcommitment?: string;
|
2020-02-16 22:15:07 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Vout {
|
|
|
|
scriptpubkey: string;
|
|
|
|
scriptpubkey_asm: string;
|
|
|
|
scriptpubkey_type: string;
|
2020-06-17 15:01:58 +07:00
|
|
|
scriptpubkey_address: string;
|
2020-02-16 22:15:07 +07:00
|
|
|
value: number;
|
2020-06-17 15:01:58 +07:00
|
|
|
// Elements
|
|
|
|
valuecommitment?: number;
|
2020-05-05 15:26:23 +07:00
|
|
|
asset?: string;
|
2020-06-17 15:01:58 +07:00
|
|
|
pegout?: Pegout;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Pegout {
|
|
|
|
genesis_hash: string;
|
|
|
|
scriptpubkey: string;
|
|
|
|
scriptpubkey_asm: string;
|
|
|
|
scriptpubkey_address: string;
|
2020-02-16 22:15:07 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Status {
|
|
|
|
confirmed: boolean;
|
|
|
|
block_height?: number;
|
|
|
|
block_hash?: string;
|
|
|
|
block_time?: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface Block {
|
|
|
|
id: string;
|
2019-07-21 17:59:47 +03:00
|
|
|
height: number;
|
|
|
|
version: number;
|
2020-02-16 22:15:07 +07:00
|
|
|
timestamp: number;
|
2020-06-17 15:01:58 +07:00
|
|
|
bits: number;
|
2020-12-20 22:36:36 +07:00
|
|
|
nonce: number;
|
2020-06-17 15:01:58 +07:00
|
|
|
difficulty: number;
|
|
|
|
merkle_root: string;
|
2020-02-16 22:15:07 +07:00
|
|
|
tx_count: number;
|
|
|
|
size: number;
|
|
|
|
weight: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
previousblockhash: string;
|
|
|
|
|
2020-06-17 15:01:58 +07:00
|
|
|
// Custom properties
|
2019-07-21 17:59:47 +03:00
|
|
|
medianFee?: number;
|
2020-02-16 22:15:07 +07:00
|
|
|
feeRange?: number[];
|
2020-03-04 15:10:30 +07:00
|
|
|
reward?: number;
|
2020-06-18 13:54:54 +07:00
|
|
|
coinbaseTx?: TransactionMinerInfo;
|
2020-12-20 22:36:36 +07:00
|
|
|
matchRate?: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface RpcBlock {
|
|
|
|
hash: string;
|
|
|
|
confirmations: number;
|
|
|
|
size: number;
|
|
|
|
strippedsize: number;
|
|
|
|
weight: number;
|
|
|
|
height: number;
|
2020-12-21 23:08:34 +07:00
|
|
|
version: number;
|
2020-12-20 22:36:36 +07:00
|
|
|
versionHex: string;
|
|
|
|
merkleroot: string;
|
|
|
|
tx: Transaction[];
|
|
|
|
time: number;
|
|
|
|
mediantime: number;
|
|
|
|
nonce: number;
|
|
|
|
bits: number;
|
|
|
|
difficulty: number;
|
|
|
|
chainwork: string;
|
2020-12-21 23:08:34 +07:00
|
|
|
nTx: number;
|
2020-12-20 22:36:36 +07:00
|
|
|
previousblockhash: string;
|
|
|
|
nextblockhash: string;
|
|
|
|
}
|
|
|
|
|
2020-12-21 23:08:34 +07:00
|
|
|
export interface MempoolEntries { [txId: string]: MempoolEntry; }
|
2020-12-20 22:36:36 +07:00
|
|
|
|
|
|
|
export interface MempoolEntry {
|
2020-12-21 23:08:34 +07:00
|
|
|
fees: Fees;
|
|
|
|
vsize: number;
|
|
|
|
weight: number;
|
|
|
|
fee: number;
|
|
|
|
modifiedfee: number;
|
|
|
|
time: number;
|
|
|
|
height: number;
|
|
|
|
descendantcount: number;
|
|
|
|
descendantsize: number;
|
|
|
|
descendantfees: number;
|
|
|
|
ancestorcount: number;
|
|
|
|
ancestorsize: number;
|
|
|
|
ancestorfees: number;
|
|
|
|
wtxid: string;
|
|
|
|
depends: any[];
|
|
|
|
spentby: any[];
|
|
|
|
'bip125-replaceable': boolean;
|
2020-12-20 22:36:36 +07:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Fees {
|
2020-12-21 23:08:34 +07:00
|
|
|
base: number;
|
|
|
|
modified: number;
|
|
|
|
ancestor: number;
|
|
|
|
descendant: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface Address {
|
|
|
|
address: string;
|
|
|
|
chain_stats: ChainStats;
|
|
|
|
mempool_stats: MempoolStats;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface ChainStats {
|
|
|
|
funded_txo_count: number;
|
|
|
|
funded_txo_sum: number;
|
|
|
|
spent_txo_count: number;
|
|
|
|
spent_txo_sum: number;
|
|
|
|
tx_count: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface MempoolStats {
|
|
|
|
funded_txo_count: number;
|
|
|
|
funded_txo_sum: number;
|
|
|
|
spent_txo_count: number;
|
|
|
|
spent_txo_sum: number;
|
|
|
|
tx_count: number;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface Statistic {
|
2019-07-21 17:59:47 +03:00
|
|
|
id?: number;
|
|
|
|
added: string;
|
|
|
|
unconfirmed_transactions: number;
|
|
|
|
tx_per_second: number;
|
|
|
|
vbytes_per_second: number;
|
|
|
|
total_fee: number;
|
|
|
|
mempool_byte_weight: number;
|
|
|
|
fee_data: string;
|
|
|
|
|
|
|
|
vsize_1: number;
|
|
|
|
vsize_2: number;
|
|
|
|
vsize_3: number;
|
|
|
|
vsize_4: number;
|
|
|
|
vsize_5: number;
|
|
|
|
vsize_6: number;
|
|
|
|
vsize_8: number;
|
|
|
|
vsize_10: number;
|
|
|
|
vsize_12: number;
|
|
|
|
vsize_15: number;
|
|
|
|
vsize_20: number;
|
|
|
|
vsize_30: number;
|
|
|
|
vsize_40: number;
|
|
|
|
vsize_50: number;
|
|
|
|
vsize_60: number;
|
|
|
|
vsize_70: number;
|
|
|
|
vsize_80: number;
|
|
|
|
vsize_90: number;
|
|
|
|
vsize_100: number;
|
|
|
|
vsize_125: number;
|
|
|
|
vsize_150: number;
|
|
|
|
vsize_175: number;
|
|
|
|
vsize_200: number;
|
|
|
|
vsize_250: number;
|
|
|
|
vsize_300: number;
|
|
|
|
vsize_350: number;
|
|
|
|
vsize_400: number;
|
|
|
|
vsize_500: number;
|
|
|
|
vsize_600: number;
|
|
|
|
vsize_700: number;
|
|
|
|
vsize_800: number;
|
|
|
|
vsize_900: number;
|
|
|
|
vsize_1000: number;
|
|
|
|
vsize_1200: number;
|
|
|
|
vsize_1400: number;
|
|
|
|
vsize_1600: number;
|
|
|
|
vsize_1800: number;
|
|
|
|
vsize_2000: number;
|
|
|
|
}
|
|
|
|
|
2020-02-17 00:26:57 +07:00
|
|
|
export interface OptimizedStatistic {
|
|
|
|
id: number;
|
|
|
|
added: string;
|
|
|
|
unconfirmed_transactions: number;
|
|
|
|
tx_per_second: number;
|
|
|
|
vbytes_per_second: number;
|
|
|
|
total_fee: number;
|
|
|
|
mempool_byte_weight: number;
|
|
|
|
vsizes: number[];
|
|
|
|
}
|
|
|
|
|
2020-02-16 22:15:07 +07:00
|
|
|
export interface Outspend {
|
|
|
|
spent: boolean;
|
|
|
|
txid: string;
|
|
|
|
vin: number;
|
|
|
|
status: Status;
|
2019-07-21 17:59:47 +03:00
|
|
|
}
|
2020-04-13 02:06:10 +07:00
|
|
|
export interface WebsocketResponse {
|
|
|
|
action: string;
|
|
|
|
data: string[];
|
|
|
|
'track-tx': string;
|
|
|
|
'track-address': string;
|
|
|
|
'watch-mempool': boolean;
|
|
|
|
}
|
2020-06-10 23:52:14 +07:00
|
|
|
|
|
|
|
export interface VbytesPerSecond {
|
|
|
|
unixTime: number;
|
|
|
|
vSize: number;
|
|
|
|
}
|
2020-07-03 23:45:19 +07:00
|
|
|
|
2020-09-10 14:46:23 +07:00
|
|
|
export interface RequiredSpec { [name: string]: RequiredParams; }
|
2020-07-14 21:26:02 +07:00
|
|
|
|
2020-09-10 14:46:23 +07:00
|
|
|
interface RequiredParams {
|
|
|
|
required: boolean;
|
2020-09-13 17:51:53 +07:00
|
|
|
types: ('@string' | '@number' | '@boolean' | string)[];
|
2020-07-14 21:26:02 +07:00
|
|
|
}
|
2020-12-22 06:04:31 +07:00
|
|
|
|
|
|
|
export interface AddressInformation {
|
|
|
|
isvalid: boolean;
|
|
|
|
address: string;
|
|
|
|
scriptPubKey: string;
|
|
|
|
isscript: boolean;
|
|
|
|
iswitness: boolean;
|
|
|
|
witness_version?: boolean;
|
|
|
|
witness_program: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ScriptHashBalance {
|
|
|
|
confirmed: number;
|
|
|
|
unconfirmed: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ScriptHashHistory {
|
|
|
|
height: number;
|
|
|
|
tx_hash: string;
|
|
|
|
fee?: number;
|
|
|
|
}
|