import { z } from 'zod';

/**
 * Shared error response schema (OPENAPI-3).
 *
 * Generated controllers `@ApiResponse(...)` decorators reference this
 * schema by `$ref` (name `ErrorResponseDto`) for non-success status codes
 * (400, 401, 404, etc.). Shape matches NestJS's default `HttpException`
 * JSON body — see `packages/common/src/exceptions/http.exception.ts`.
 *
 * The registry auto-registers this schema on construction so every
 * consumer project exposes `components.schemas.ErrorResponseDto` on
 * `/docs-json` without per-entity duplication.
 */

declare const errorResponseSchema: z.ZodObject<{
    statusCode: z.ZodNumber;
    message: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
    error: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    statusCode: number;
    message: string | string[];
    error?: string | undefined;
}, {
    statusCode: number;
    message: string | string[];
    error?: string | undefined;
}>;
type ErrorResponseDto = z.infer<typeof errorResponseSchema>;
/** Canonical name used across `$ref` URIs in generated controllers. */
declare const ERROR_RESPONSE_SCHEMA_NAME = "ErrorResponseDto";

export { ERROR_RESPONSE_SCHEMA_NAME, type ErrorResponseDto, errorResponseSchema };
