import type { EventHandler } from "h3"; declare const FRAMEWORK_PREFIX = "/_agent-native"; export declare const FRAMEWORK_AUTH_EARLY_PATHS: readonly ["/_agent-native/auth", "/", "/sign-in", "/_agent-native/sign-in", "/_agent-native/login", "/_agent-native/signup", "/login", "/signup"]; export { getPublicFrameworkPathname } from "./framework-request-context.js"; export interface H3AppShim { use(path: string, handler: EventHandler): void; use(handler: EventHandler): void; /** Register many mounted routes behind one middleware layer, in order. */ useGroup?(entries: ReadonlyArray<{ path: string; handler: EventHandler; }>): void; } export declare function markDefaultPluginProvided(nitroApp: any, stem: string): void; export declare function markFrameworkRoutesReadyBeforeBootstrap(nitroApp: any, paths: readonly string[]): void; export declare function getH3App(nitroApp: any): H3AppShim; /** * In Vite dev, Nitro proxies every request to a worker-thread server through * a keep-alive agent. The worker drops idle sockets after Node's 5 second * keep-alive timeout, and a busy main thread can hand one of them to a new * request just as it closes: every request in that burst fails with * `read ECONNRESET`, which Nitro passes on without retrying. Closing each * response's connection keeps the agent from ever reusing one. */ export declare function installDevConnectionCloseHook(nitroApp: any): void; export declare function awaitBootstrap(nitroApp: any): Promise; export declare function trackPluginInit(nitroApp: any, promise: Promise, options?: { paths?: string[]; excludedPaths?: string[]; }): void; export declare function awaitPluginsReady(nitroApp: any, reqPath?: string, options?: { skipUnscoped?: boolean; }): Promise; export declare function loadWorkspaceCoreServer(packageName: string, packageDir: string): Promise; export { FRAMEWORK_PREFIX };