ProblemDetails
import { ProblemDetails } from "jsr:@ende/http/unstable-problem-details";type alias · experimental
type ProblemDetails<T extends ProblemDetailsExtensions = Record<string, never>> = { type?: string; status?: number; title?: string; detail?: string; instance?: string } & TA Problem Details object as defined by RFC 9457.
Standard members are explicitly typed. Extension members are represented as a generic parameter intersected with the base type, so they appear as top-level properties in both the TypeScript type and the serialized JSON — matching the wire format exactly.
If T declares a property whose name matches one of the five standard
members with an incompatible type, the intersection collapses that field
to never.