import { TSS_SERVER_FUNCTION } from './constants.js'; import { AnyFunctionMiddleware, AnyRequestMiddleware, CreateMiddlewareFn } from './createMiddleware.js'; import { AnySerializationAdapter, Register, SSROption } from '@tanstack/router-core'; export interface StartInstanceOptions { '~types': StartInstanceTypes; serializationAdapters?: TSerializationAdapters; defaultSsr?: TDefaultSsr; requestMiddleware?: TRequestMiddlewares; functionMiddleware?: TFunctionMiddlewares; } export interface StartInstance { getOptions: () => Promise> | StartInstanceOptions; createMiddleware: CreateMiddlewareFn; } export interface StartInstanceTypes { serializationAdapters: TSerializationAdapters; defaultSsr: TDefaultSsr; requestMiddleware: TRequestMiddlewares; functionMiddleware: TFunctionMiddlewares; } export declare const createStart: = [], TDefaultSsr extends SSROption = SSROption, const TRequestMiddlewares extends ReadonlyArray = [], const TFunctionMiddlewares extends ReadonlyArray = []>(getOptions: () => Promise, "~types">> | Omit, "~types">) => StartInstance; export type AnyStartInstance = StartInstance; export type AnyStartInstanceOptions = StartInstanceOptions; declare module '@tanstack/router-core' { interface SerializableExtensions { serverFn: { [TSS_SERVER_FUNCTION]: true; }; } }