fixed APIRoute type (#3365)

* fixed APIRoute type

* fixed EndpointHandler type
This commit is contained in:
Rafid Muhymin Wafi 2022-05-31 20:10:57 +06:00 committed by GitHub
parent 71af9c8dca
commit 0ead51ae9c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -869,8 +869,6 @@ export type Params = Record<string, string | number | undefined>;
export type Props = Record<string, unknown>; export type Props = Record<string, unknown>;
type Body = string;
export interface AstroAdapter { export interface AstroAdapter {
name: string; name: string;
serverEntrypoint?: string; serverEntrypoint?: string;
@ -878,16 +876,18 @@ export interface AstroAdapter {
args?: any; args?: any;
} }
type Body = string;
export interface APIContext { export interface APIContext {
params: Params; params: Params;
request: Request; request: Request;
} }
export interface EndpointOutput<Output extends Body = Body> { export interface EndpointOutput {
body: Output; body: Body;
} }
export type APIRoute = (context: APIContext) => EndpointOutput | Response; export type APIRoute = (context: APIContext) => EndpointOutput | Response | Promise<EndpointOutput | Response>;
export interface EndpointHandler { export interface EndpointHandler {
[method: string]: APIRoute | ((params: Params, request: Request) => EndpointOutput | Response); [method: string]: APIRoute | ((params: Params, request: Request) => EndpointOutput | Response);