/** Vite-style dev-server port resolution. * * Probes the requested port. If busy, falls through to the next port up * to `portRange-1` neighbors. With `strictPort: true`, fails on the very * first conflict so users who pin a port know immediately. * * Bun's `Bun.serve` rejects EADDRINUSE asynchronously and only after * partially binding, which is awkward to clean up — `node:net.createServer` * is simpler and battle-tested for this exact "is anyone listening here" * probe. */ export type ResolveDevPortOptions = { strictPort?: boolean; portRange?: number; host?: string; }; export declare const isPortFree: (port: number, host?: string) => Promise; export type ResolveDevPortResult = { port: number; fellBack: boolean; }; export declare const resolveDevPort: (requestedPort: number, options?: ResolveDevPortOptions) => Promise<{ fellBack: boolean; port: number; }>;