Rindle

API index and search · Build metadata

@rindle/tanstack

0.0.0 · Public export map; development manifest version (0.0.0).

Source revision 05d0bf2c2e56 · build details
Source revision: 05d0bf2c2e56.
TypeScript input SHA-256: aabe6cfcc4172b870d5e272142958e9ea8d8784c2aa23133156e5a7ee633318e
Generated 2026-09-04T23:58:25.590Z with TypeScript 6.0.3. Public TypeScript checks and declaration emit passed. Package runtime tests are separate.

Entry point source

createRindleTanStack

FunctionDeclaration · Source: packages/tanstack/src/index.ts:89 · Supporting declarations

Bind one Rindle client/server pair to TanStack Router. The returned loader is used by routes; Provider replaces the app's manual useMatches() dehydration merge plus <RindleSSR> glue.

export declare function createRindleTanStack<S extends ColsMap>(options: RindleTanStackOptions<S>): RindleTanStackIntegration<S>;

mergeRindleLoaderData

FunctionDeclaration · Source: packages/tanstack/src/index.ts:149 · Supporting declarations

Merge the serialized Rindle slice from every matched route. Exported for custom providers/tests.

export declare function mergeRindleLoaderData(loaderData: readonly unknown[]): DehydratedState;

RINDLE_LOADER_DATA_KEY

VariableDeclaration · Source: packages/tanstack/src/index.ts:20 · Supporting declarations

The loader-data field serialized by TanStack Start and consumed by {@link Provider }.

export declare const RINDLE_LOADER_DATA_KEY: "rindle";

RindleLoaderContext

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:25 · Supporting declarations

The stable subset of TanStack's loader context exposed to route query factories. TanStack passes a richer object at runtime; keeping this structural avoids coupling the adapter to a generated router's route-tree generics while still contextually typing the common fields.

export interface RindleLoaderContext {
    abortController: AbortController;
    preload: boolean;
    params: Record<string, string>;
    deps: Record<string, unknown>;
    context: unknown;
    location: unknown;
    cause: "preload" | "enter" | "stay";
}

RindleLoaderData

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:35 · Supporting declarations

export interface RindleLoaderData {
    rindle: DehydratedState;
}

RindleProviderProps

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:74 · Supporting declarations

export interface RindleProviderProps {
    children?: ReactNode;
}

RindleRouteLoader

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:68 · Supporting declarations

export interface RindleRouteLoader<Context extends RindleLoaderContext = RindleLoaderContext> {
    handler(context: Context): Promise<RindleLoaderData>;
    /** Re-entry must not commit a stale match while its Rindle query is being warmed. */
    staleReloadMode: "blocking";
}

RindleRouteLoaderOptions

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:58 · Supporting declarations

export interface RindleRouteLoaderOptions<Context extends RindleLoaderContext = RindleLoaderContext> {
    /** Query (or queries) that blocks client route entry and is always included in the SSR seed. */
    query?: (context: Context) => QueryList;
    /** Additional queries needed for SSR first paint but not worth blocking client navigation on. */
    ssr?: (context: Context) => QueryList;
    /** Client readiness policy for `query`. Defaults to local-first `present`; set `complete` when
     *  route entry must wait for a server-authoritative result. */
    until?: EnsureQueryUntil;
}

RindleTanStackClient

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:39 · Supporting declarations

export interface RindleTanStackClient<S extends ColsMap> extends QueryEnsurer {
    store: Store<S>;
}

RindleTanStackIntegration

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:78 · Supporting declarations

export interface RindleTanStackIntegration<S extends ColsMap> {
    loader<Context extends RindleLoaderContext = RindleLoaderContext>(options: RindleRouteLoaderOptions<Context>): RindleRouteLoader<Context>;
    Provider(props: RindleProviderProps): ReturnType<typeof createElement>;
}

RindleTanStackOptions

InterfaceDeclaration · Source: packages/tanstack/src/index.ts:43 · Supporting declarations

export interface RindleTanStackOptions<S extends ColsMap> {
    schema: Schema<S>;
    /** Browser-only lazy client boot. The adapter calls it at most once and shares that client
     *  between route loaders and the provider. It is never called during SSR. */
    boot: () => Promise<RindleTanStackClient<S>>;
    /** Server-side named-query preload. A dynamic implementation keeps server authority code out of
     *  the browser bundle; the full loader context is forwarded for request-scoped auth/policy. */
    preload: (queries: readonly AnyQuery[], context: RindleLoaderContext) => Promise<DehydratedState>;
}