UNPKG

cumulocity-cypress

Version:
32 lines (31 loc) 1.97 kB
import { Request, RequestHandler, Response } from "express"; import winston from "winston"; import { ClientRequest, IncomingMessage, ServerResponse } from "http"; import { C8yAuthOptions } from "../auth"; import { C8yPactHttpController } from "./httpcontroller"; import type { C8yCtrlHeader, C8yPactHttpResponse } from "./httpcontroller-options"; import { C8yBaseUrl } from "../types"; export declare function createMiddleware(c8yctrl: C8yPactHttpController, options?: { auth?: C8yAuthOptions; baseUrl?: C8yBaseUrl; logger?: winston.Logger; ignoredPaths?: string[]; errorHandler?: RequestHandler; }): RequestHandler; /** * Wraps a RequestHandler to ignore certain paths. For paths matching items in the * `ignoredPaths` parameter, the handler will call `next()` immediately and not call * the wrapped handler. For matching `startsWith` is used. * @param handler The RequestHandler to wrap * @param ignoredPaths The paths to ignore using exact match * @returns The RequestHandler wrapper */ export declare function wrapPathIgnoreHandler(handler: RequestHandler, ignoredPaths: string[]): RequestHandler; export declare function createResponseInterceptor(c8yctrl: C8yPactHttpController, errorHandler?: RequestHandler): (responseBuffer: Buffer, proxyRes: Request, req: Request, res: Response) => Promise<string | Buffer<ArrayBufferLike>>; export declare function createRequestHandler(c8yctrl: C8yPactHttpController, auth?: C8yAuthOptions): (proxyReq: ClientRequest, req: Request, res: Response) => void; export declare function addC8yCtrlHeader(response: C8yPactHttpResponse | Response, ctrlHeader: C8yCtrlHeader, value: string): void; export declare function toC8yPactResponse(res: Response<any, any>, body: any): C8yPactHttpResponse; export declare function toCypressResponse(req: IncomingMessage | Request, res: ServerResponse<IncomingMessage> | Response, options?: { reqBody?: string; resBody?: string; }): Cypress.Response<any>;