UNPKG

@fanoutio/serve-grip

Version:
33 lines 1.81 kB
import { type IncomingMessage, type ServerResponse } from 'node:http'; import { GripInstruct, WebSocketContext } from '@fanoutio/grip'; import { type IRequestGrip } from '../IRequestGrip.js'; import { type IResponseGrip } from '../IResponseGrip.js'; import { type IServeGripConfig } from '../IServeGripConfig.js'; import { type OnAfterSetupParams, ServeGripBase } from '../ServeGripBase.js'; declare module 'node:http' { interface IncomingMessage { grip?: IRequestGrip; } interface ServerResponse { grip?: IResponseGrip; } } type NextFunction = (e?: Error) => void; export declare class ServeGrip extends ServeGripBase<IncomingMessage, ServerResponse> { koa: (ctx: any, next: () => Promise<void>) => Promise<void>; constructor(config?: IServeGripConfig, fn?: string); exec(req: IncomingMessage, res: ServerResponse, fn: NextFunction): void; getRequestGrip(req: IncomingMessage): IRequestGrip | undefined; setRequestGrip(req: IncomingMessage, grip: IRequestGrip): void; isRequestWsOverHttp(req: IncomingMessage): boolean; getRequestWebSocketContext(req: IncomingMessage): Promise<WebSocketContext>; getRequestHeaderValue(req: IncomingMessage, key: string): string | undefined; setResponseGrip(res: ServerResponse, grip: IResponseGrip): void; setResponseStatus(res: ServerResponse, code: number): void; endResponse(res: ServerResponse, chunk: string): ServerResponse<IncomingMessage>; onAfterSetup(params: OnAfterSetupParams<IncomingMessage, ServerResponse>): void; monkeyPatchResMethodsForWebSocket(res: ServerResponse, wsContext: WebSocketContext): void; monkeyPatchResMethodsForGripInstruct(res: ServerResponse, gripInstructGetter: () => GripInstruct | null): void; } export {}; //# sourceMappingURL=ServeGrip.d.ts.map