Make Blockchain from methods inheritable
This commit is contained in:
@@ -109,17 +109,18 @@ export class BlockchainElectrum extends BaseBlockchain<
|
||||
|
||||
/**
|
||||
* Creates a new BlockchainElectrum instance.
|
||||
* @param {BlockchainElectrumParams} params - The parameters for the BlockchainElectrum instance.
|
||||
* @returns {BlockchainElectrum} A new BlockchainElectrum instance.
|
||||
* @param params - The parameters for the BlockchainElectrum instance.
|
||||
* @returns A new BlockchainElectrum instance.
|
||||
*/
|
||||
static async from(
|
||||
static async from<T extends typeof BlockchainElectrum>(
|
||||
this: T,
|
||||
params: BlockchainElectrumParams = {},
|
||||
): Promise<BlockchainElectrum> {
|
||||
const blockchain = new BlockchainElectrum(params);
|
||||
) {
|
||||
const blockchain = new this(params);
|
||||
|
||||
await blockchain.start();
|
||||
|
||||
return blockchain;
|
||||
return blockchain as InstanceType<T>;
|
||||
}
|
||||
|
||||
async start() {
|
||||
|
||||
@@ -24,8 +24,10 @@ import {
|
||||
// Local Blockchain Adapter.
|
||||
// This simulates the BCH Blockchain.
|
||||
export class BlockchainInMemory extends BaseBlockchain {
|
||||
static from() {
|
||||
return new BlockchainInMemory();
|
||||
static async from<T extends typeof BlockchainInMemory>(this: T) {
|
||||
const blockchain = new this();
|
||||
await blockchain.start();
|
||||
return blockchain as InstanceType<T>;
|
||||
}
|
||||
|
||||
private transactions: BlockchainTransactions;
|
||||
|
||||
Reference in New Issue
Block a user