import type { Plugin } from "vite"; declare const REQUIRED_SYMBOLS: { readonly routeWiring: readonly ["makeThenableParams", "resolveAppPageSegmentParams", "routeLoadingComponent", "ancestorLoadingEntry", "slotParams", "ownerLoadingEntry"]; readonly routeMatching: readonly ["trieMatch", "getOrBuildTrie", "normalizePathnameForRouteMatch"]; readonly optimisticRouting: readonly ["getRouteTrie", "matchNode", "decodeMatchedParams", "hrefToRouteParts"]; readonly prefetchLearning: readonly ["resolveOptimisticNavigationPayload", "__basePath", "optimisticRouteTemplates", "optimisticRouteTemplateSources", "optimisticRouteTemplateLearning", "getOptimisticPrefetchSourceKey", "parsePrefetchCacheKey", "getPrefetchCache", "isSettledPrefetchCacheEntry", "learnOptimisticRouteTemplateFromPrefetch", "currentHref", "rscUrl"]; readonly suspenseProbe: readonly ["REACT_CLIENT_REFERENCE_TYPE"]; }; export type VinextPatchName = keyof typeof REQUIRED_SYMBOLS; export declare function hasRequiredSymbols(code: string, patchName: VinextPatchName): boolean; export declare function missingRequiredSymbols(code: string, patchName: VinextPatchName): string[]; export interface AppPageRouteWiringPatchOptions { unblockRenderDependencies?: boolean; unblockPageElementDependencies?: boolean; } export declare function isAppPageRouteWiringAlreadyFixed(code: string, options?: AppPageRouteWiringPatchOptions): boolean; export declare function patchAppPageRouteWiring(code: string, options?: AppPageRouteWiringPatchOptions): string; export declare function isRouteMatchingFile(id: string): boolean; export declare function isRouteMatchingAlreadyFixed(code: string): boolean; export declare function patchRouteMatching(code: string): string; export declare function isOptimisticRoutingFile(id: string): boolean; export declare function isOptimisticRoutingAlreadyFixed(code: string): boolean; export declare function patchOptimisticRouting(code: string): string; export declare function isPrefetchLearningFile(id: string): boolean; export declare function isPrefetchLearningAlreadyFixed(code: string): boolean; export declare function patchPrefetchLearning(code: string): string; export declare function resolveVinextBrowserEntryPath(root?: string): string | null; export declare function isAppPageProbeFile(id: string): boolean; export declare function isAppPageProbeAlreadyFixed(code: string): boolean; export declare function patchAppPageProbe(code: string): string; export declare function resolveVinextAppPageProbePath(root?: string): string | null; export declare function isVinextAppPageProbeSafeOnDisk(root?: string): boolean; export declare function isRenderDependencyFile(id: string): boolean; export declare function isRenderDependencyAlreadyFixed(code: string): boolean; export declare function patchRenderDependency(code: string): string; export declare function resolveVinextRenderDependencyPath(root?: string): string | null; export declare function isVinextRenderDependencySafeOnDisk(root?: string): boolean; export declare function isOptimisticLearningTimeoutFile(id: string): boolean; export declare function isOptimisticLearningTimeoutAlreadyFixed(code: string): boolean; export declare function patchOptimisticLearningTimeout(code: string, timeoutMs?: number): string; export declare function resolveVinextOptimisticLearningTimeoutPath(root?: string): string | null; export declare function isVinextOptimisticLearningTimeoutSafeOnDisk(root?: string): boolean; export declare function isPageInvokerSuspensionReleaseFile(id: string): boolean; export declare function isPageInvokerSuspensionReleaseAlreadyFixed(code: string): boolean; export declare function patchPageInvokerSuspensionRelease(code: string): string; export declare function resolveVinextPageInvokerSuspensionReleasePath(root?: string): string | null; export declare function isVinextPageInvokerSuspensionReleaseSafeOnDisk(root?: string): boolean; export declare function isRefreshDeferralNavControllerFile(id: string): boolean; export declare function isRefreshDeferralNavControllerAlreadyFixed(code: string): boolean; export declare function patchRefreshDeferralNavController(code: string): string; export declare function isRefreshDeferralEntryAlreadyFixed(code: string): boolean; export declare function patchRefreshDeferralEntry(code: string): string; export declare function resolveVinextNavControllerPath(root?: string): string | null; export declare function isAppPageRouteWiringFile(id: string): boolean; export declare function resolveVinextAppPageRouteWiringPath(root?: string): string | null; export declare function isVinextAppPageRouteWiringSafeOnDisk(root?: string): boolean; export declare function resolveVinextRouteMatchingPath(root?: string): string | null; export declare function resolveVinextOptimisticRoutingPath(root?: string): string | null; export interface SyncPatchVinextOnDiskOptions { routeWiring?: boolean; unblockRenderDependencies?: boolean; unblockPageElementDependencies?: boolean; refreshDeferral?: boolean; routeMatching?: boolean; optimisticRouting?: boolean; prefetchLearning?: boolean; suspenseProbe?: boolean; renderDependency?: boolean; optimisticLearningTimeout?: boolean | number; pageInvokerSuspensionRelease?: boolean; } export declare function syncPatchVinextOnDisk(root?: string, options?: SyncPatchVinextOnDiskOptions): boolean; export declare function bustVinextOptimizeDepsCache(cacheDir: string): boolean; export declare function isVinextOptimizeDepsCacheStale(root: string, cacheDir: string): boolean; export interface VinextRouteWiringFixPluginOptions { routeWiring?: boolean; routeMatching?: boolean; optimisticRouting?: boolean; prefetchLearning?: boolean; suspenseProbe?: boolean; renderDependency?: boolean; optimisticLearningTimeout?: boolean | number; pageInvokerSuspensionRelease?: boolean; unblockRenderDependencies?: boolean; unblockPageElementDependencies?: boolean; refreshDeferral?: boolean; } export declare function vinextRouteWiringFixPlugin(options?: VinextRouteWiringFixPluginOptions): Plugin; export {};