import { Exception } from "@ascot/common"; export interface HTTPResponseData { error?: HTTPResponseError; data?: T; } export declare class HTTPResponseError { statusCode?: number; message: string; private constructor(); static fromException(e: Exception): HTTPResponseError; static fromError(statusCode: number, e: Error): HTTPResponseError; static fromString(statusCode: number, e: string): HTTPResponseError; } export declare class Response { status?: number; headers?: { [key: string]: string; }; body?: any; cookies?: { name: string; value: string; options?: { maxAge?: number; signed?: boolean; expires?: Date; path?: string; domain?: string; secure?: boolean; httpOnly?: boolean; }; }[]; private constructor(); static create(res: Response): Response; static success(data: T, res?: Response, prettify?: boolean): Response; static error(error: HTTPResponseError, res?: Response, prettify?: boolean): Response; static json(json: T, res?: Response, prettify?: boolean): Response; static text(text: string, res?: Response): Response; static html(html: string, res?: Response): Response; private static statusResponse; static redirect(url: string, status: 301 | 302, data?: Response): Response; static ok(text?: string, res?: Response): Response; static multipleChoices(text?: string, res?: Response): Response; static notModified(text?: string, res?: Response): Response; static badRequest(text?: string, res?: Response): Response; static unauthorized(text?: string, res?: Response): Response; static forbidden(text?: string, res?: Response): Response; static notFound(text?: string, res?: Response): Response; static gone(text?: string, res?: Response): Response; static notImplemented(text?: string, res?: Response): Response; static serviceUnavailable(text?: string, res?: Response): Response; static permissiondenied(text?: string, res?: Response): Response; }