@orpc/server
Version:
<div align="center"> <image align="center" src="https://orpc.dev/logo.webp" width=280 alt="oRPC logo" /> </div>
54 lines (50 loc) • 2.33 kB
text/typescript
import { Interceptor, MaybeOptionalOptions } from '@orpc/shared';
import { FastifyRequest, FastifyReply, SendStandardResponseOptions } from '@orpc/standard-server-fastify';
import { C as Context, R as Router } from '../../shared/server.qKsRrdxW.mjs';
import { b as StandardHandleOptions, f as StandardHandler } from '../../shared/server.BqadksTP.mjs';
import { F as FriendlyStandardHandleOptions } from '../../shared/server.B8gYOD5g.mjs';
import { S as StandardRPCHandlerOptions } from '../../shared/server.ChUyt5-i.mjs';
import '@orpc/client';
import '@orpc/contract';
import '@orpc/standard-server';
import '@orpc/client/standard';
import '../../shared/server.C8_sRzQB.mjs';
type FastifyHandleResult = {
matched: true;
} | {
matched: false;
};
interface FastifyInterceptorOptions<T extends Context> extends StandardHandleOptions<T> {
request: FastifyRequest;
reply: FastifyReply;
sendStandardResponseOptions: SendStandardResponseOptions;
}
interface FastifyHandlerOptions<T extends Context> extends SendStandardResponseOptions {
adapterInterceptors?: Interceptor<FastifyInterceptorOptions<T>, Promise<FastifyHandleResult>>[];
}
declare class FastifyHandler<T extends Context> {
private readonly standardHandler;
private readonly sendStandardResponseOptions;
private readonly adapterInterceptors;
constructor(standardHandler: StandardHandler<T>, options?: NoInfer<FastifyHandlerOptions<T>>);
handle(request: FastifyRequest, reply: FastifyReply, ...rest: MaybeOptionalOptions<FriendlyStandardHandleOptions<T>>): Promise<FastifyHandleResult>;
}
interface RPCHandlerOptions<T extends Context> extends FastifyHandlerOptions<T>, StandardRPCHandlerOptions<T> {
/**
* Enables or disables the StrictGetMethodPlugin.
*
* @default true
*/
strictGetMethodPluginEnabled?: boolean;
}
/**
* RPC Handler for Fastify Server
*
* @see {@link https://orpc.dev/docs/rpc-handler RPC Handler Docs}
* @see {@link https://orpc.dev/docs/adapters/http HTTP Adapter Docs}
*/
declare class RPCHandler<T extends Context> extends FastifyHandler<T> {
constructor(router: Router<any, T>, options?: NoInfer<RPCHandlerOptions<T>>);
}
export { FastifyHandler, RPCHandler };
export type { FastifyHandleResult, FastifyHandlerOptions, FastifyInterceptorOptions, RPCHandlerOptions };