import type { VanaNetworkName } from "../../core/network.js"; export interface DetachedStart { /** Every event the background server wrote, in order. */ events: Array>; ready: boolean; pid: number | null; logPath: string; } /** * Run `vana server start` again as a background process that outlives this * one, and wait until it answers: ready, and once registered, until its * public URL answers too. It runs with --no-input, so everything that needs * a person (login, owner confirmation, installs) must be done before. */ export declare function startDetachedServer(input: { network: VanaNetworkName; /** The owner's data dir; the background server's output goes there. */ dataDir: string; port?: number; local?: boolean; timeoutMs?: number; tunnelTimeoutMs?: number; /** Called once per event, as the background server writes it. */ onEvent?: (event: Record) => void; }): Promise; /** * Stop the server `vana server start` runs from `dataDir`, detached or not, * the way Ctrl+C does, and wait until it has cleaned up. */ export declare function stopLocalServer(dataDir: string, timeoutMs?: number): Promise<"stopped" | "not-running" | "timeout">; //# sourceMappingURL=detach.d.ts.map