UNPKG

next

Version:

The React Framework

98 lines (97 loc) • 3.57 kB
import type { ManifestRoute } from '../../../build'; import type { NextConfigRuntime } from '../../config-shared'; import type { PatchMatcher } from '../../../shared/lib/router/utils/path-match'; import type { MiddlewareRouteMatch } from '../../../shared/lib/router/utils/middleware-route-matcher'; import type { __ApiPreviewProps } from '../../api-utils'; import type { Params } from '../../request/params'; import type { RouteDefinition } from '../../route-definitions/route-definition'; import { type Rewrite } from '../../../lib/load-custom-routes'; export type FsOutput = { type: 'appFile' | 'pageFile' | 'nextImage' | 'publicFolder' | 'nextStaticFolder' | 'legacyStaticFolder' | 'devVirtualFsItem'; itemPath: string; fsPath?: string; itemsRoot?: string; locale?: string; route?: RouteDefinition; params?: Params; requestPath?: string; error?: Error; }; type FilesystemRouteDefinition = RouteDefinition & { i18n?: { locale?: string; }; }; export type FilesystemDynamicRoute = ManifestRoute & { /** * The path matcher that can be used to match paths against this route. */ match: PatchMatcher; }; export declare const buildCustomRoute: <T>(type: "redirect" | "header" | "rewrite" | "before_files_rewrite", item: T & { source: string; }, basePath?: string, caseSensitive?: boolean) => T & { match: PatchMatcher; check?: boolean; regex: string; }; export declare function setupFsCheck(opts: { dir: string; dev: boolean; minimalMode?: boolean; config: NextConfigRuntime; }): Promise<{ headers: (import("../../../lib/load-custom-routes").Header & { match: PatchMatcher; check?: boolean; regex: string; })[]; onMatchHeaders: (import("../../../lib/load-custom-routes").Header & { match: PatchMatcher; check?: boolean; regex: string; })[]; rewrites: { beforeFiles: (Rewrite & { match: PatchMatcher; check?: boolean; regex: string; })[]; afterFiles: (Rewrite & { match: PatchMatcher; check?: boolean; regex: string; })[]; fallback: (Rewrite & { match: PatchMatcher; check?: boolean; regex: string; })[]; }; redirects: (import("../../../lib/load-custom-routes").Redirect & { match: PatchMatcher; check?: boolean; regex: string; })[]; buildId: string; handleLocale: (pathname: string, locales?: string[]) => { locale: string | undefined; pathname: string; }; appFiles: Set<string>; pageFiles: Set<string>; staticMetadataFiles: Map<string, string>; dynamicRoutes: FilesystemDynamicRoute[]; nextDataRoutes: Set<string>; setRouteDefinitions(type: "appFile" | "pageFile", definitions: ReadonlyArray<RouteDefinition>): void; getRouteDefinition: (type: "appFile" | "pageFile", itemPath: string, locale: string | undefined) => FilesystemRouteDefinition | undefined; exportPathMapRoutes: undefined | ReturnType<typeof buildCustomRoute<Rewrite>>[]; devVirtualFsItems: Set<string>; previewProps: __ApiPreviewProps; middlewareMatcher: MiddlewareRouteMatch | undefined; ensureCallback(fn: (item: FsOutput) => Promise<void> | undefined): void; getItem(itemPath: string, requestPath?: string): Promise<FsOutput | null>; getDynamicRoutes(): FilesystemDynamicRoute[]; getMiddlewareMatchers(): MiddlewareRouteMatch | undefined; }>; export {};