type ClientErrorCode = 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 421 | 422 | 423 | 424 | 425 | 426 | 428 | 429 | 431 | 451 ; type ServerErrorCode = 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 510 | 511 ; type ErrorCode = ClientErrorCode | ServerErrorCode ; const ErrorDescriptionTable = new Map < ErrorCode , string > ( [ [ 400 , "Bad Request" ] , [ 401 , "Unauthorized" ] , [ 402 , "Payment Required " ] , [ 403 , "Forbidden" ] , [ 404 , "Not Found" ] , [ 405 , "Method Not Allowed" ] , [ 406 , "Not Acceptable" ] , [ 407 , "Proxy Authentication Required" ] , [ 408 , "Request Timeout" ] , [ 409 , "Conflict" ] , [ 410 , "Gone" ] , [ 411 , "Length Required" ] , [ 412 , "Precondition Failed" ] , [ 413 , "Payload Too Large" ] , [ 414 , "URI Too Long" ] , [ 415 , "Unsupported Media Type" ] , [ 416 , "Range Not Satisfiable" ] , [ 417 , "Expectation Failed" ] , [ 418 , "I'm a teapot" ] , [ 421 , "Misdirected Request" ] , [ 422 , "Unprocessable Entity" ] , [ 423 , "Locked" ] , [ 424 , "Failed Dependency" ] , [ 425 , "Too Early" ] , [ 426 , "Upgrade Required" ] , [ 428 , "Precondition Required" ] , [ 429 , "Too Many Requests" ] , [ 431 , "Request Header Fields Too Large" ] , [ 451 , "Unavailable For Legal Reasons" ] , [ 500 , "Internal Server Error" ] , [ 501 , "Not Implemented" ] , [ 502 , "Bad Gateway" ] , [ 503 , "Service Unavailable" ] , [ 504 , "Gateway Timeout" ] , [ 505 , "HTTP Version Not Supported" ] , [ 506 , "Variant Also Negotiates" ] , [ 507 , "Insufficient Storage" ] , [ 508 , "Loop Detected" ] , [ 510 , "Not Extended" ] , [ 511 , "Network Authentication Required" ] , ] ) ; /**
 * Represents an server-side error that can be relayed back to the client. :th
 */ export class ServerException extends Error { constructor ( readonly errorCode , message ? , readonly content ? , readonly errorDescription = ErrorDescriptionTable . get ( errorCode ) ) { super ( message ?? errorDescription ) ; } }