Interface OpenAPIRequest<Authorization, Params, Body, Responses, DefaultErrorFormat>
interface OpenAPIRequest<
Authorization = unknown,
Params extends object = DefaultRestParams,
Body = unknown,
Responses extends RestResponsesBase = DefaultRestResponses,
DefaultErrorFormat extends object = RestDefaultErrorBody,
> {
authorization: Authorization;
body: Body;
params: Params;
path: string;
route: string;
webRequest: WebRequest;
createErrorResponse<
Status extends HTTPErrorCode,
ResponseBody extends object,
>(
status: Status,
jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody
| keyof DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
},
options?: { headers?: Record<string, string> },
): WebResponse;
createJSONResponse<
Status extends
200
| 201
| 202
| 204
| 205
| 206
| 301
| 302
| 303
| 304
| 307
| 308,
ResponseBody extends any,
>(
status: Status,
jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
options?: { headers?: Record<string, string> },
): WebResponse;
createRawResponse<Status extends HTTPErrorCode | HTTPSuccessCode>(
status: Status,
body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>,
options?: { headers?: Record<string, string> },
): WebResponse;
}
Authorization = unknown,
Params extends object = DefaultRestParams,
Body = unknown,
Responses extends RestResponsesBase = DefaultRestResponses,
DefaultErrorFormat extends object = RestDefaultErrorBody,
> {
authorization: Authorization;
body: Body;
params: Params;
path: string;
route: string;
webRequest: WebRequest;
createErrorResponse<
Status extends HTTPErrorCode,
ResponseBody extends object,
>(
status: Status,
jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody
| keyof DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
},
options?: { headers?: Record<string, string> },
): WebResponse;
createJSONResponse<
Status extends
200
| 201
| 202
| 204
| 205
| 206
| 301
| 302
| 303
| 304
| 307
| 308,
ResponseBody extends any,
>(
status: Status,
jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
options?: { headers?: Record<string, string> },
): WebResponse;
createRawResponse<Status extends HTTPErrorCode | HTTPSuccessCode>(
status: Status,
body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>,
options?: { headers?: Record<string, string> },
): WebResponse;
}
Type Parameters
- Params extends object = DefaultRestParams
- Body = unknown
- Responses extends RestResponsesBase = DefaultRestResponses
- DefaultErrorFormat extends object = RestDefaultErrorBody
Index
Properties
Methods
Properties
authorization
Readonlybody
Readonlyparams
Readonlypath
path: string
Readonlyroute
route: string
Readonlyweb Request
Methods
create Error Response
- createErrorResponse<Status extends HTTPErrorCode, ResponseBody extends object>(
status: Status,
jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody
| keyof DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
},
options?: { headers?: Record<string, string> },
): WebResponseType Parameters
- Status extends HTTPErrorCode
- ResponseBody extends object
Parameters
- status: Status
Status code to return
- jsonbody: ResponseBody extends { status?: number }
? Simplify<
Partial<
Pick<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status" & (
| keyof ResponseBody
| keyof DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>
),
>,
> & Omit<
ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
"status",
>,
>
: {
"[error]": "Cannot use this function, the error schema doesn't contain a 'status' property";
}The JSON body to return
Optionaloptions: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
create JSON Response
- createJSONResponse<
Status extends
200
| 201
| 202
| 204
| 205
| 206
| 301
| 302
| 303
| 304
| 307
| 308,
ResponseBody extends any,
>(
status: Status,
jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>,
options?: { headers?: Record<string, string> },
): WebResponseCreate a webresponse for a successfull response, returning a JSON body
Type Parameters
- Status extends 200 | 201 | 202 | 204 | 205 | 206 | 301 | 302 | 303 | 304 | 307 | 308
- ResponseBody extends any
Parameters
- status: Status
Status code to return
- jsonbody: ResponseBody & DisallowExtraPropsRecursive<
ResponseBody,
JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
>The JSON body to return
Optionaloptions: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
create Raw Response
- createRawResponse<Status extends HTTPErrorCode | HTTPSuccessCode>(
status: Status,
body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>,
options?: { headers?: Record<string, string> },
): WebResponseCreate a webresponse for a successfull response, returning a raw file
Type Parameters
- Status extends HTTPErrorCode | HTTPSuccessCode
Inferred type of the status code, used for typing purposes
Parameters
- status: Status
Status code to return
- body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>
The body of the response to return
Optionaloptions: { headers?: Record<string, string> }Optional statuscode and headers
Returns WebResponse
- Status extends HTTPErrorCode | HTTPSuccessCode
Create a webresponse for an error response, returning a JSON body. Only allowed when the return body can contain a 'status' property.