/**
 * Client error factory functions (4xx)
 * @module hono-ban/factories/client-errors
 */
import type { BanError, BanOptions } from "../types";
/**
 * Create a 400 Bad Request error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function badRequest<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 401 Unauthorized error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function unauthorized<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 402 Payment Required error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function paymentRequired<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 403 Forbidden error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function forbidden<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 404 Not Found error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function notFound<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 405 Method Not Allowed error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function methodNotAllowed<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 406 Not Acceptable error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function notAcceptable<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 407 Proxy Authentication Required error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function proxyAuthRequired<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 408 Request Timeout error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function clientTimeout<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 409 Conflict error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function conflict<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 410 Gone error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function resourceGone<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 411 Length Required error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function lengthRequired<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 412 Precondition Failed error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function preconditionFailed<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 413 Payload Too Large error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function entityTooLarge<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 414 URI Too Long error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function uriTooLong<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 415 Unsupported Media Type error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function unsupportedMediaType<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 416 Range Not Satisfiable error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function rangeNotSatisfiable<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 417 Expectation Failed error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function expectationFailed<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 418 I'm a Teapot error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function teapot<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 421 Misdirected Request error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function misdirectedRequest<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 422 Unprocessable Entity error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function badData<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 423 Locked error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function locked<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 424 Failed Dependency error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function failedDependency<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 425 Too Early error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function tooEarly<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 426 Upgrade Required error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function upgradeRequired<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 428 Precondition Required error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function preconditionRequired<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 429 Too Many Requests error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function tooManyRequests<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 431 Request Header Fields Too Large error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function headerFieldsTooLarge<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
/**
 * Create a 451 Unavailable For Legal Reasons error
 * @param messageOrOptions - Error message or options
 * @param options - Additional options
 */
export declare function illegal<T = unknown>(messageOrOptions?: string | Partial<BanOptions<T>>, options?: Partial<BanOptions<T>>): BanError<T>;
