OpenAPIRequest | WebHare Platform SDK
WebHare Platform SDK
    Preparing search index...

    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<ResponseBody> & DisallowExtraPropsRecursive<
                                ResponseBody<ResponseBody>,
                                JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
                            >,
                            "status" & (
                                | keyof ResponseBody<ResponseBody>
                                | keyof DisallowExtraPropsRecursive<
                                    ResponseBody<ResponseBody>,
                                    JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
                                >
                            ),
                        >,
                    > & Omit<
                        ResponseBody<ResponseBody> & DisallowExtraPropsRecursive<
                            ResponseBody<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 HTTPSuccessCode,
            ResponseBody extends any,
        >(
            status: Status,
            jsonbody: ResponseBody & DisallowExtraPropsRecursive<
                ResponseBody,
                JSONResponseForCode<Responses, DefaultErrorFormat, Status>,
            >,
            options?: { headers?: Record<string, string> },
        ): WebResponse;
        createRawResponse<Status extends HTTPSuccessCode | HTTPErrorCode>(
            status: Status,
            body: string | Blob | ReadableStream<Uint8Array<ArrayBufferLike>>,
            options?: { headers?: Record<string, string> },
        ): WebResponse;
    }

    Type Parameters

    • Authorization = unknown
    • Params extends object = DefaultRestParams
    • Body = unknown
    • Responses extends RestResponsesBase = DefaultRestResponses
    • DefaultErrorFormat extends object = RestDefaultErrorBody
    Index

    Properties

    authorization: Authorization
    body: Body
    params: Params
    path: string
    route: string
    webRequest: WebRequest

    Methods

    • Create a webresponse for a successfull response, returning a raw file

      Type Parameters

      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