import { ActionFunction, LoaderFunction, RouteObject } from 'react-router-dom';
type Element = () => JSX.Element;
export type Module = {
    default: Element;
    Loader?: LoaderFunction;
    Action?: ActionFunction;
    Catch?: Element;
    Pending?: Element;
};
export type LazyModule = () => Promise<Module>;
type PreservedKey = '_app' | '_404';
export declare const generatePreservedRoutes: (files: Record<string, Partial<Element>>) => Partial<Record<PreservedKey, Omit<Module, 'Action'>>>;
export declare const generateRouteObject: (module: Module, key: string) => RouteObject;
export declare const generateLazyRouteObject: (module: LazyModule, key: string) => RouteObject;
export declare function generateFileBasedRoutes(files: Record<string, Module | LazyModule>): RouteObject[];
export declare function generateFileBasedRoutes(files: Record<string, LazyModule>): RouteObject[];
export declare function generateFileBasedRoutes(files: Record<string, Module>): RouteObject[];
export {};
//# sourceMappingURL=core.d.ts.map