import { RouterManagedTag } from '@tanstack/router-core';
import { Rollup } from 'vite';
type RouteTreeRoute = {
    filePath?: string;
    preloads?: Array<string>;
    assets?: Array<RouterManagedTag>;
    children?: Array<string>;
};
type RouteTreeRoutes = Record<string, RouteTreeRoute>;
interface ScannedClientChunks {
    entryChunk: Rollup.OutputChunk;
    chunksByFileName: Map<string, Rollup.OutputChunk>;
    routeChunksByFilePath: Map<string, Array<Rollup.OutputChunk>>;
    routeEntryChunks: Set<Rollup.OutputChunk>;
}
interface ManifestAssetResolvers {
    getAssetPath: (fileName: string) => string;
    getChunkPreloads: (chunk: Rollup.OutputChunk) => Array<string>;
    getStylesheetAsset: (cssFile: string) => RouterManagedTag;
}
export declare function appendUniqueStrings(target: Array<string> | undefined, source: Array<string>): string[] | undefined;
export declare function appendUniqueAssets(target: Array<RouterManagedTag> | undefined, source: Array<RouterManagedTag>): RouterManagedTag[] | undefined;
export declare function buildStartManifest(options: {
    clientBundle: Rollup.OutputBundle;
    routeTreeRoutes: RouteTreeRoutes;
    basePath: string;
}): {
    routes: Record<string, RouteTreeRoute>;
    clientEntry: string;
};
export declare function scanClientChunks(clientBundle: Rollup.OutputBundle): ScannedClientChunks;
export declare function getRouteFilePathsFromModuleIds(moduleIds: Array<string>): string[];
export declare function collectDynamicImportCss(routeEntryChunks: Set<Rollup.OutputChunk>, chunksByFileName: Map<string, Rollup.OutputChunk>, entryChunk?: Rollup.OutputChunk): Set<string>;
export declare function createManifestAssetResolvers(options: {
    basePath: string;
    hashedCssFiles?: Set<string>;
}): ManifestAssetResolvers;
export declare function createChunkCssAssetCollector(options: {
    chunksByFileName: Map<string, Rollup.OutputChunk>;
    getStylesheetAsset: (cssFile: string) => RouterManagedTag;
}): {
    getChunkCssAssets: (chunk: Rollup.OutputChunk) => Array<RouterManagedTag>;
};
export declare function buildRouteManifestRoutes(options: {
    routeTreeRoutes: RouteTreeRoutes;
    routeChunksByFilePath: Map<string, Array<Rollup.OutputChunk>>;
    chunksByFileName: Map<string, Rollup.OutputChunk>;
    entryChunk: Rollup.OutputChunk;
    assetResolvers: ManifestAssetResolvers;
}): Record<string, RouteTreeRoute>;
export declare function dedupeNestedRoutePreloads(route: {
    preloads?: Array<string>;
    children?: Array<string>;
}, routesById: Record<string, RouteTreeRoute>, seenPreloads?: Set<string>): void;
export {};
