/**
 * rsc-router/loader (RSC/server version)
 *
 * Server-side createLoader implementation with full loader functionality.
 * Only used in react-server context via export conditions.
 *
 * For non-fetchable loaders: returns a loader definition with fn included
 * For fetchable loaders: stores fn in registry and returns a serializable loader with action
 *
 * The $$id is injected by the Vite exposeInternalIds plugin as a hidden parameter.
 * Users don't need to pass any name - IDs are auto-generated from file path.
 */
import type { FetchableLoaderOptions, LoaderDefinition, LoaderFn } from "./types.js";
import { getFetchableLoader } from "./server/fetchable-loader-store.js";
export { getFetchableLoader };
export declare function createLoader<T>(fn: LoaderFn<T, Record<string, string | undefined>, any>): LoaderDefinition<Awaited<T>, Record<string, string | undefined>>;
export declare function createLoader<T>(fn: LoaderFn<T, Record<string, string | undefined>, any>, fetchable: true): LoaderDefinition<Awaited<T>, Record<string, string | undefined>>;
export declare function createLoader<T>(fn: LoaderFn<T, Record<string, string | undefined>, any>, options: FetchableLoaderOptions): LoaderDefinition<Awaited<T>, Record<string, string | undefined>>;
//# sourceMappingURL=loader.rsc.d.ts.map