///
///
import type { IncomingMessage } from 'http';
import type { Readable } from 'stream';
import type { Request } from 'express-serve-static-core';
import type { EventEventEmitter } from '../index.js';
import type { Mock } from 'vitest';
interface StreamReadable extends EventEventEmitter {
readable?: Readable['readable'];
readableHighWaterMark?: Readable['readableHighWaterMark'];
readableLength?: Readable['readableLength'];
readableObjectMode?: Readable['readableObjectMode'];
destroyed?: Readable['destroyed'];
_read?: Mock;
read?: Mock;
setEncoding?: Mock;
pause?: Mock;
resume?: Mock;
isPaused?: Mock;
unpipe?: Mock;
unshift?: Mock;
wrap?: Mock;
push?: Mock;
_destroy?: Mock;
addListener?: Mock;
emit?: Mock;
on?: Mock;
once?: Mock;
prependListener?: Mock;
prependOnceListener?: Mock;
removeListener?: Mock;
destroy?: Mock;
}
interface HttpIncomingMessage extends StreamReadable {
aborted?: IncomingMessage['aborted'];
httpVersion?: IncomingMessage['httpVersion'];
httpVersionMajor?: IncomingMessage['httpVersionMajor'];
httpVersionMinor?: IncomingMessage['httpVersionMinor'];
complete?: IncomingMessage['complete'];
connection?: Partial;
socket?: Partial;
headers?: Partial;
rawHeaders?: IncomingMessage['rawHeaders'];
trailers?: IncomingMessage['trailers'];
rawTrailers?: IncomingMessage['rawTrailers'];
setTimeout?: Mock;
statusCode?: IncomingMessage['statusCode'];
statusMessage?: IncomingMessage['statusMessage'];
destroy?: Mock;
}
export interface MockRequest extends HttpIncomingMessage {
params?: Request['params'];
query?: Request['query'];
body?: Request['body'];
cookies?: Request['cookies'];
method?: Request['method'];
protocol?: Request['protocol'];
secure?: Request['secure'];
ip?: Request['ip'];
ips?: Request['ips'];
subdomains?: Request['subdomains'];
path?: Request['path'];
hostname?: Request['hostname'];
host?: Request['host'];
fresh?: Request['fresh'];
stale?: Request['stale'];
xhr?: Request['xhr'];
route?: Request['route'];
signedCookies?: Request['signedCookies'];
originalUrl?: Request['originalUrl'];
url?: Request['url'];
baseUrl?: Request['baseUrl'];
accepted?: Request['accepted'];
get?: Mock;
header?: Mock;
accepts?: Mock;
acceptsCharsets?: Mock;
acceptsEncodings?: Mock;
acceptsLanguages?: Mock;
range?: Mock;
param?: Mock;
is?: Mock;
app?: Partial;
res?: Partial;
next?: Mock;
[key: string]: any;
}
export {};