/// import { IncomingHttpHeaders } from 'http'; import { Attachments } from './Attachment'; import { ILogger, IResolver } from 'agentstack'; import { Identity } from '../utils/Identity'; import { WebApplicationSettings } from './WebApplicationSettings'; export interface WebRequest extends IResolver { readonly identity: Identity; readonly logger: ILogger; readonly settings: T; readonly state: any; readonly resolver: IResolver; readonly ip: string; readonly url: string; readonly href: string; readonly publicUrl: string; readonly origin: string; readonly protocol: string; readonly hostname: string; readonly port: number; readonly path: string; readonly method: string; readonly params: any; readonly query: any; readonly headers: IncomingHttpHeaders; readonly cookies: any; readonly signedCookies: any; readonly type: string; readonly length: number | null; readonly body: any | null; readonly attachments: Attachments; fingerprint(): any; data(): Promise; json(): Promise; text(): Promise; form(): Promise; accepts(...type: Array): string | false; acceptsEncodings(...encoding: Array): string | Array | false; acceptsCharsets(...charset: Array): string | Array | false; acceptsLanguages(...lang: Array): string | Array | false; is(...type: Array): string | false | null; range(max: number): any; get(name: string): number | string | string[] | undefined; }