UNPKG

@trpc/server

Version:

The tRPC server library

62 lines (61 loc) • 3.21 kB
/** * If you're making an adapter for tRPC and looking at this file for reference, you should import types and functions from `@trpc/server` and `@trpc/server/http` * * @example * ```ts * import type { AnyTRPCRouter } from '@trpc/server' * import type { HTTPBaseHandlerOptions } from '@trpc/server/http' * ``` */ import { zn as AnyRouter } from "../unstable-core-do-not-import-C8Gy-fzS.cjs"; import "../index-DVXG_v0W.cjs"; import { NodeHTTPCreateContextFnOptions, NodeHTTPHandlerOptions, NodeHTTPRequest, NodeHTTPResponse } from "./node-http/index.cjs"; import http from "http"; import * as http2 from "http2"; export type StandaloneHandlerOptions<TRouter extends AnyRouter, TRequest extends NodeHTTPRequest, TResponse extends NodeHTTPResponse> = NodeHTTPHandlerOptions<TRouter, TRequest, TResponse> & { /** * The path the router is served at, such as `/trpc/`. It's cut from the * start of each request's path. * @default '/' * @see https://trpc.io/docs/server/adapters/standalone#custom-basePath */ basePath?: string; }; /** The options of `createHTTPServer` and `createHTTPHandler`. */ export type CreateHTTPHandlerOptions<TRouter extends AnyRouter> = StandaloneHandlerOptions<TRouter, http.IncomingMessage, http.ServerResponse>; /** * What `createContext` gets in the standalone adapter: `req`, `res` and * the request's `info`. * @see https://trpc.io/docs/server/adapters/standalone#2-use-the-standalone-adapter */ export type CreateHTTPContextOptions = NodeHTTPCreateContextFnOptions<http.IncomingMessage, http.ServerResponse>; /** * Creates a Node.js request listener for a router, to use with your own * `http.createServer()`. * @see https://trpc.io/docs/server/adapters/standalone#adding-a-handler-to-a-custom-http-server * @internal */ export declare function createHTTPHandler<TRouter extends AnyRouter>(opts: CreateHTTPHandlerOptions<TRouter>): http.RequestListener; /** * Creates a Node.js HTTP server for a router. Call `.listen()` on it. * @example * ```ts * createHTTPServer({ router: appRouter, createContext }).listen(3000); * ``` * @see https://trpc.io/docs/server/adapters/standalone#2-use-the-standalone-adapter */ export declare function createHTTPServer<TRouter extends AnyRouter>(opts: CreateHTTPHandlerOptions<TRouter>): http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>; /** The options of `createHTTP2Handler`. */ export type CreateHTTP2HandlerOptions<TRouter extends AnyRouter> = StandaloneHandlerOptions<TRouter, http2.Http2ServerRequest, http2.Http2ServerResponse>; /** * What `createContext` gets in the HTTP/2 standalone adapter. * @see https://trpc.io/docs/server/adapters/standalone#http2 */ export type CreateHTTP2ContextOptions = NodeHTTPCreateContextFnOptions<http2.Http2ServerRequest, http2.Http2ServerResponse>; /** * Creates a request listener for a router, to use with Node.js's * `http2.createSecureServer()`. * @see https://trpc.io/docs/server/adapters/standalone#http2 */ export declare function createHTTP2Handler(opts: CreateHTTP2HandlerOptions<AnyRouter>): (req: http2.Http2ServerRequest, res: http2.Http2ServerResponse<http2.Http2ServerRequest>) => void; //# sourceMappingURL=standalone.d.cts.map