import { Server } from "../Server";
import { Request } from "../Request";
import { Response } from "../Response";
import { Register } from "../Applications/Register";
export declare class ErrorsHandler {
    protected server: Server;
    protected register: Register;
    protected request?: Request;
    protected response?: Response;
    constructor(server: Server, cache: Register);
    SetHandledRequestProperties(req: Request, res: Response): ErrorsHandler;
    /**
     * @summary Print error in command line a little more nicely or log error by custom error log handler:
     */
    LogError(e: Error, code: number, req?: Request, res?: Response): ErrorsHandler;
    /**
     * @summary Print exception in command line a little more nicely in response:
     */
    PrintError(e: Error, code?: number, req?: Request, res?: Response): ErrorsHandler;
    /**
     * @summary Initialize uncatch error and uncatch warning handlers
     */
    protected initErrorsHandlers(): void;
    /**
     * @summary Clear all modules on any uncatched error
     */
    protected handleUncatchError(clearRequireCache: boolean, error: Error): void;
    /**
     * @summary Render error as text for development purposes:
     */
    protected renderErrorText(e?: Error): string;
}
