import "../_dnt.polyfills.js"; import { BinaryResolver } from "./bins.js"; import type { DevRelaySpec } from "./DevRelaySpec.js"; import { NetProps, NetSpec } from "./NetSpec.js"; export interface DevNetProps extends NetProps { bin: string | BinaryResolver; chain: string; nodeCount?: number; customize?: (chainSpec: Record) => void; } export declare abstract class DevNetSpec extends NetSpec { #private; readonly binary: BinaryResolver; readonly chain: string; readonly nodeCount: number | undefined; readonly customize: ((chainSpec: Record) => void) | undefined; constructor(props: DevNetProps); abstract relay: DevRelaySpec; abstract preflightNetworkArgs(signal: AbortSignal, devnetTempDir: string): Promise; connection(name: string): { type: "DevnetConnection"; discovery: string; }; tempDir(parentDir: string): string; rawChainSpecPath(signal: AbortSignal, devnetTempDir: string): Promise; preflightNetwork(signal: AbortSignal, devnetTempDir: string): Promise; metadata(signal: AbortSignal, devnetTempDir: string): Promise; } export interface SpawnDevNetProps { tempDir: string; binary: string; chainSpecPath: string; nodeCount: number; extraArgs: string[]; signal: AbortSignal; } export interface DevNet { bootnodes: string; ports: number[]; } export declare function spawnDevNet({ tempDir, binary, chainSpecPath, nodeCount, extraArgs, signal, }: SpawnDevNetProps): Promise;