@orpc/openapi
Version:
<div align="center"> <image align="center" src="https://orpc.unnoq.com/logo.webp" width=280 alt="oRPC logo" /> </div>
32 lines (28 loc) • 1.57 kB
TypeScript
import { StandardOpenAPIJsonSerializerOptions, StandardBracketNotationSerializerOptions } from '@orpc/openapi-client/standard';
import { TraverseContractProcedureCallbackOptions, AnyRouter, Context, Router } from '@orpc/server';
import { StandardMatcher, StandardMatchResult, StandardHandlerOptions, StandardHandler } from '@orpc/server/standard';
import { HTTPPath } from '@orpc/client';
import { Value } from '@orpc/shared';
interface StandardOpenAPIMatcherOptions {
/**
* Filter procedures. Return `false` to exclude a procedure from matching.
*
* @default true
*/
filter?: Value<boolean, [options: TraverseContractProcedureCallbackOptions]>;
}
declare class StandardOpenAPIMatcher implements StandardMatcher {
private readonly filter;
private readonly tree;
private pendingRouters;
constructor(options?: StandardOpenAPIMatcherOptions);
init(router: AnyRouter, path?: readonly string[]): void;
match(method: string, pathname: HTTPPath): Promise<StandardMatchResult>;
}
interface StandardOpenAPIHandlerOptions<T extends Context> extends StandardHandlerOptions<T>, StandardOpenAPIJsonSerializerOptions, StandardBracketNotationSerializerOptions, StandardOpenAPIMatcherOptions {
}
declare class StandardOpenAPIHandler<T extends Context> extends StandardHandler<T> {
constructor(router: Router<any, T>, options: NoInfer<StandardOpenAPIHandlerOptions<T>>);
}
export { StandardOpenAPIHandler as a, StandardOpenAPIMatcher as c };
export type { StandardOpenAPIHandlerOptions as S, StandardOpenAPIMatcherOptions as b };