export declare namespace WebdaError {
    /**
     * Error with a code
     */
    class CodeError extends Error {
        code: string;
        /**
         *
         * @param code
         * @param message
         */
        constructor(code: string, message: string);
        /**
         * Return error code
         */
        getCode(): string;
        /**
         * Http response code
         * @returns
         */
        getResponseCode(): number;
    }
    class HttpError extends CodeError {
        statusCode: number;
        constructor(message: string, statusCode?: number);
        getResponseCode(): number;
    }
    class Unauthorized extends HttpError {
        constructor(message: string);
    }
    class Forbidden extends HttpError {
        constructor(message: string);
    }
    class NotFound extends HttpError {
        constructor(message: string);
    }
    class BadRequest extends HttpError {
        constructor(message: string);
    }
    class Conflict extends HttpError {
        constructor(message: string);
    }
    class NotImplemented extends HttpError {
        constructor(message: string);
    }
    class ServiceUnavailable extends HttpError {
        constructor(message: string);
    }
    class TooManyRequests extends HttpError {
        constructor(message: string);
    }
    class Gone extends HttpError {
        constructor(message: string);
    }
    class PreconditionFailed extends HttpError {
        constructor(message: string);
    }
    /**
     * Can be used to redirect the user
     */
    class Redirect extends HttpError {
        location: string;
        constructor(message: string, location: string);
    }
}
