import './matchers'; import { FishHashContext } from '@ironfish/rust-nodejs'; import { Blockchain } from '../blockchain'; import { Verifier } from '../consensus/verifier'; import { ConfigOptions } from '../fileStores/config'; import { PeerNetwork } from '../network'; import { Network, NetworkDefinition } from '../networks'; import { FullNode } from '../node'; import { IronfishSdk } from '../sdk'; import { Syncer } from '../syncer'; import { Wallet } from '../wallet'; import { WorkerPool } from '../workerPool'; export type NodeTestOptions = { config?: Partial; autoSeed?: boolean; networkDefinition?: NetworkDefinition; dataDir?: string; } | undefined; export declare const FISH_HASH_CONTEXT: FishHashContext; /** * Used as an easy wrapper for testing the node, and blockchain. Use * {@link createNodeTest} to create one to make sure you call the proper * test lifecycle methods on the NodeTest */ export declare class NodeTest { options: NodeTestOptions; sdk: IronfishSdk; node: FullNode; network: Network; verifier: Verifier; chain: Blockchain; wallet: Wallet; peerNetwork: PeerNetwork; syncer: Syncer; workerPool: WorkerPool; setups: { sdk: IronfishSdk; node: FullNode; network: Network; chain: Blockchain; wallet: Wallet; peerNetwork: PeerNetwork; syncer: Syncer; workerPool: WorkerPool; }[]; constructor(options?: NodeTestOptions); createSetup(options?: NodeTestOptions): Promise<{ sdk: IronfishSdk; node: FullNode; network: Network; verifier: Verifier; chain: Blockchain; wallet: Wallet; peerNetwork: PeerNetwork; syncer: Syncer; workerPool: WorkerPool; }>; setup(): Promise; teardownEach(): Promise; teardownAll(): Promise; } /** Call this to create a {@link NodeTest} and ensure its test lifecycle * methods are called properly like beforeEach, beforeAll, etc */ export declare function createNodeTest(preserveState?: boolean, options?: NodeTestOptions): NodeTest; //# sourceMappingURL=nodeTest.d.ts.map