import { FishHashContext } from '@ironfish/rust-nodejs'; import { AssetsVerifier } from './assets'; import { Blockchain } from './blockchain'; import { Config, InternalStore, PeerStore } from './fileStores'; import { FileSystem } from './fileSystems'; import { Logger } from './logger'; import { MemPool } from './memPool'; import { MetricsMonitor } from './metrics'; import { Migrator } from './migrations'; import { MiningManager } from './mining'; import { PeerNetwork, PrivateIdentity } from './network'; import { IsomorphicWebSocketConstructor } from './network/types'; import { Network } from './networks/network'; import { Package } from './package'; import { RpcServer } from './rpc/server'; import { Syncer } from './syncer'; import { Telemetry } from './telemetry/telemetry'; import { Wallet } from './wallet'; import { WorkerPool } from './workerPool'; export declare class FullNode { chain: Blockchain; config: Config; internal: InternalStore; wallet: Wallet; logger: Logger; miningManager: MiningManager; metrics: MetricsMonitor; memPool: MemPool; migrator: Migrator; workerPool: WorkerPool; files: FileSystem; rpc: RpcServer; peerNetwork: PeerNetwork; syncer: Syncer; pkg: Package; telemetry: Telemetry; assetsVerifier: AssetsVerifier; network: Network; started: boolean; shutdownPromise: Promise | null; shutdownResolve: (() => void) | null; constructor({ pkg, chain, files, config, internal, wallet, metrics, memPool, workerPool, logger, webSocket, privateIdentity, peerStore, assetsVerifier, network, }: { pkg: Package; files: FileSystem; config: Config; internal: InternalStore; wallet: Wallet; chain: Blockchain; metrics: MetricsMonitor; memPool: MemPool; workerPool: WorkerPool; logger: Logger; webSocket: IsomorphicWebSocketConstructor; privateIdentity: PrivateIdentity; peerStore: PeerStore; assetsVerifier: AssetsVerifier; network: Network; }); static init({ pkg: pkg, dataDir, config, internal, autoSeed, logger, metrics, files, webSocket, privateIdentity, fishHashContext, customNetworkPath, networkId, }: { pkg: Package; dataDir?: string; config?: Config; internal?: InternalStore; autoSeed?: boolean; logger?: Logger; metrics?: MetricsMonitor; files: FileSystem; webSocket: IsomorphicWebSocketConstructor; privateIdentity?: PrivateIdentity; fishHashContext?: FishHashContext; customNetworkPath?: string; networkId?: number; }): Promise; openDB(): Promise; closeDB(): Promise; start(): Promise; waitForShutdown(): Promise; shutdown(): Promise; onPeerNetworkReady(): void; onPeerNetworkNotReady(): void; onConfigChange(key: string, newValue: unknown): Promise; } //# sourceMappingURL=node.d.ts.map