import type { Application, State } from "./application.js"; import type { RouteParams, RouterContext } from "./router.js"; /** Creates a mock of `Application`. */ export declare function createMockApp = Record>(state?: S): Application; /** Options that can be set in a mock context. */ export interface MockContextOptions = RouteParams, S extends State = Record> { app?: Application; ip?: string; method?: string; params?: P; path?: string; state?: S; headers?: [string, string][]; } /** Allows external parties to modify the context state. */ export declare const mockContextState: { /** Adjusts the return value of the `acceptedEncodings` in the context's * `request` object. */ encodingsAccepted: string; }; /** Create a mock of `Context` or `RouterContext`. */ export declare function createMockContext = RouteParams, S extends State = Record>({ ip, method, params, path, state, app, headers: requestHeaders, }?: MockContextOptions): RouterContext; /** Creates a mock `next()` function which can be used when calling * middleware. */ export declare function createMockNext(): () => Promise;