import { MaybePromise } from "@stryke/types"; import { AnyTRPCRouter, inferRouterContext } from "@trpc/server"; import { TRPCQueryOptions } from "@trpc/tanstack-react-query"; import { QueryClientConfig } from "@tanstack/react-query"; import React from "react"; import "server-only"; //#region src/tanstack-query/server.d.ts /** * Create a TRPC Tanstack Query server. * * @example * ```tsx title="app/api/trpc/route.tsx" * import { createTRPCTanstackQueryServer } from "@trpc-next/tanstack-query/server"; * import { z } from "zod"; * import { createRouter } from "@trpc/server"; * * const router = createRouter().query("hello", { * input: z.object({ * name: z.string() * }), * resolve({ input }) { * return `Hello, ${input.name}!`; * } * }); * * const { trpc, HydrateClient } = createTRPCTanstackQueryServer({ * router, * headers: async () => new Headers() * }); * ``` * * @param headers - A function that returns the headers for the TRPC context. * @param router - The TRPC router to use for the server. * @param createContext - A function that creates the context for the TRPC server. * @param queryClientConfig - Optional configuration for the Tanstack Query client. * @returns An object containing the TRPC context and a component to hydrate the client state. */ declare function createTRPCTanstackQueryServer = inferRouterContext>(headers: () => Promise, router: TRouter, createContext?: () => MaybePromise, queryClientConfig?: Partial): { trpc: import("@trpc/tanstack-react-query").TRPCOptionsProxy; HydrateClient: (props: { children: React.ReactNode; }) => React.JSX.Element; prefetch: >>(queryOptions: T) => void; }; //#endregion export { createTRPCTanstackQueryServer }; //# sourceMappingURL=server.d.cts.map