import type { RegisteredRoute, RegisteredViewRenderer } from "../contracts/registry.js"; export type StatusRendererKind = "page" | "component" | "fragment"; /** * Resolve a renderer for an HTTP status code on a route. * * Resolution order: * 1. route.statusRenderers[rendererKey][code] matching the requested kind and id * 2. (caller falls back to default renderer or no-body response) * * For 2xx success codes the caller may choose to fall back to the default * success renderer. For 4xx/5xx the caller may return no body. */ export declare function resolveStatusRenderer(route: RegisteredRoute, rendererKey: string, statusCode: number, kind: StatusRendererKind, targetKey?: string, method?: RegisteredViewRenderer["method"]): RegisteredViewRenderer | undefined; /** * Status code policy: * - 200, 201, 202 (and other 2xx): success - fall back to default renderer if no specific one. * - 204, 205, 206: no body (HTTP forbids body or strongly discourages). * - 1xx, 3xx: no body emitted by framework. * - 4xx, 5xx: try specific renderer; if absent, return status with empty body. */ export declare function shouldFallThroughToDefaultRenderer(statusCode: number): boolean; export declare function statusForbidsBody(statusCode: number): boolean; //# sourceMappingURL=statusViews.d.ts.map