import { type RouteChunkCache, type RouteChunkConfig } from './route-chunks.js';
export type RouteClientEntryArtifactOptions = {
    code: string;
    resourcePath: string;
    environmentName?: string;
    isBuild: boolean;
    routeChunkCache?: RouteChunkCache;
    routeChunkConfig: RouteChunkConfig;
    /** React Router route id for this route module, when known. */
    routeId?: string;
    /** Emit development HMR/HDR glue into web route client entries. */
    devHmr?: boolean;
};
type RouteClientEntryArtifact = {
    code: string;
};
export type RouteChunkArtifactOptions = {
    code: string;
    resource: string;
    resourcePath: string;
    isBuild: boolean;
    routeChunkCache?: RouteChunkCache;
    routeChunkConfig: RouteChunkConfig;
};
type RouteChunkArtifact = {
    code: string;
    map: null;
};
export declare const HMR_PATCHABLE_ROUTE_FLAGS: readonly ["hasAction", "hasClientAction", "hasClientLoader", "hasClientMiddleware", "hasErrorBoundary", "hasLoader"];
export declare const buildRouteHmrFlags: (exportNames: readonly string[]) => number;
export declare const buildRouteClientEntryCode: ({ exportNames, chunkedExports, isServer, resourcePath, routeId, devHmr, }: {
    exportNames: readonly string[];
    chunkedExports: readonly string[];
    isServer: boolean;
    resourcePath: string;
    routeId?: string;
    devHmr?: boolean;
}) => string;
export declare const createRouteClientEntryArtifact: ({ code, resourcePath, environmentName, isBuild, routeChunkCache, routeChunkConfig, routeId, devHmr, }: RouteClientEntryArtifactOptions) => Promise<RouteClientEntryArtifact>;
export declare const createRouteChunkArtifact: ({ code, resource, resourcePath, isBuild, routeChunkCache, routeChunkConfig, }: RouteChunkArtifactOptions) => Promise<RouteChunkArtifact>;
export {};
