import { z } from 'zod'; import { SchemaLike } from './schema-runtime.js'; export interface Problem { type: URL; title: string; status: number; detail?: string; instance?: URL; [key: string]: unknown; } export declare const ProblemWireSchema: z.ZodObject<{ type: z.ZodOptional]>>; title: z.ZodString; status: z.ZodNumber; detail: z.ZodOptional; instance: z.ZodOptional]>>; }, z.core.$loose>; export type ProblemSpec = z.infer; export declare class Problem extends Error implements Problem { static readonly BLANK_URL: URL; type: URL; title: string; status: number; detail?: string; instance?: URL; private readonly _parameters?; get parameters(): Record | undefined; constructor(spec: ProblemSpec); toString(): string; static fromStatus(status: number, title: string): Problem; static fromResponse(response: Response): Promise; private static parseURL; } export declare function createProblemCodec>(problemType: new (spec: TWire) => TProblem, wireSchema: z.ZodType): z.ZodType; export declare const ProblemSchema: SchemaLike;