import type { RuntimeDescriptorView } from '../server/runtime-descriptor.js'; type SignalName = 'SIGINT' | 'SIGTERM'; type SignalListener = () => void; export interface SignalSource { once(signal: SignalName, listener: SignalListener): unknown; off(signal: SignalName, listener: SignalListener): unknown; } export interface ServeCommandOptions { readonly host?: string; readonly port?: number; readonly json?: boolean; } export interface ServeStartup { readonly status: 'running'; readonly url: string; readonly descriptor: RuntimeDescriptorView; } export interface ServeRuntime { readonly url: string; readonly descriptor: RuntimeDescriptorView; close(): Promise | void; } export type ServeStarter = (options: { readonly host: string; readonly port: number; }) => PromiseLike; export interface ServeCommandDependencies { readonly startServer?: ServeStarter; readonly signals?: SignalSource; readonly onStarted?: (startup: ServeStartup) => void | PromiseLike; } export declare function runServeCommand(options?: ServeCommandOptions, dependencies?: ServeCommandDependencies): Promise; export {}; //# sourceMappingURL=serve.d.ts.map