2019-07-21 17:59:47 +03:00
|
|
|
export interface IMempoolInfo {
|
|
|
|
size: number;
|
|
|
|
bytes: number;
|
|
|
|
usage: number;
|
|
|
|
maxmempool: number;
|
|
|
|
mempoolminfee: number;
|
|
|
|
minrelaytxfee: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IMempoolDefaultResponse {
|
|
|
|
mempoolInfo?: IMempoolInfo;
|
|
|
|
blocks?: IBlock[];
|
|
|
|
block?: IBlock;
|
|
|
|
projectedBlocks?: IProjectedBlock[];
|
2019-07-26 12:48:32 +03:00
|
|
|
'live-2h-chart'?: IMempoolStats;
|
2019-07-21 17:59:47 +03:00
|
|
|
txPerSecond?: number;
|
|
|
|
vBytesPerSecond: number;
|
|
|
|
'track-tx'?: ITrackTx;
|
|
|
|
conversions?: any;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ITrackTx {
|
|
|
|
tx?: ITransaction;
|
|
|
|
blockHeight: number;
|
|
|
|
tracking: boolean;
|
|
|
|
message?: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IProjectedBlock {
|
|
|
|
blockSize: number;
|
|
|
|
blockWeight: number;
|
|
|
|
maxFee: number;
|
|
|
|
maxWeightFee: number;
|
|
|
|
medianFee: number;
|
|
|
|
minFee: number;
|
|
|
|
minWeightFee: number;
|
|
|
|
nTx: number;
|
|
|
|
hasMytx: boolean;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IStrippedBlock {
|
|
|
|
bits: number;
|
|
|
|
difficulty: number;
|
|
|
|
hash: string;
|
|
|
|
height: number;
|
|
|
|
nTx: number;
|
|
|
|
size: number;
|
|
|
|
strippedsize: number;
|
|
|
|
time: number;
|
|
|
|
weight: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface ITransaction {
|
|
|
|
txid: string;
|
|
|
|
hash: string;
|
|
|
|
version: number;
|
|
|
|
size: number;
|
|
|
|
vsize: number;
|
|
|
|
locktime: number;
|
|
|
|
vin: Vin[];
|
|
|
|
vout: Vout[];
|
|
|
|
hex: string;
|
|
|
|
|
|
|
|
fee: number;
|
|
|
|
feePerVsize: number;
|
|
|
|
feePerWeightUnit: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IBlock {
|
|
|
|
hash: string;
|
|
|
|
confirmations: number;
|
|
|
|
strippedsize: number;
|
|
|
|
size: number;
|
|
|
|
weight: number;
|
|
|
|
height: number;
|
|
|
|
version: number;
|
|
|
|
versionHex: string;
|
|
|
|
merkleroot: string;
|
|
|
|
tx: ITransaction[];
|
|
|
|
time: number;
|
|
|
|
mediantime: number;
|
|
|
|
nonce: number;
|
|
|
|
bits: string;
|
|
|
|
difficulty: number;
|
|
|
|
chainwork: string;
|
|
|
|
nTx: number;
|
|
|
|
previousblockhash: string;
|
|
|
|
|
|
|
|
minFee: number;
|
|
|
|
maxFee: number;
|
|
|
|
medianFee: number;
|
|
|
|
fees: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface ScriptSig {
|
|
|
|
asm: string;
|
|
|
|
hex: string;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Vin {
|
|
|
|
txid: string;
|
|
|
|
vout: number;
|
|
|
|
scriptSig: ScriptSig;
|
|
|
|
sequence: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface ScriptPubKey {
|
|
|
|
asm: string;
|
|
|
|
hex: string;
|
|
|
|
reqSigs: number;
|
|
|
|
type: string;
|
|
|
|
addresses: string[];
|
|
|
|
}
|
|
|
|
|
|
|
|
interface Vout {
|
|
|
|
value: number;
|
|
|
|
n: number;
|
|
|
|
scriptPubKey: ScriptPubKey;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IMempoolStats {
|
|
|
|
id: number;
|
|
|
|
added: string;
|
|
|
|
unconfirmed_transactions: number;
|
|
|
|
tx_per_second: number;
|
|
|
|
vbytes_per_second: number;
|
|
|
|
mempool_byte_weight: number;
|
|
|
|
fee_data: IFeeData;
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface IBlockTransaction {
|
|
|
|
f: number;
|
|
|
|
fpv: number;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface IFeeData {
|
|
|
|
wu: { [ fee: string ]: number };
|
|
|
|
vsize: { [ fee: string ]: number };
|
|
|
|
}
|