This repository has been archived by the owner on Dec 12, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathrequest-token-error.ts
68 lines (56 loc) · 1.66 KB
/
request-token-error.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// TODO: decide whether this should be a ValidationError
export type RequestTokenErrorParams = {
message: string
cause?: unknown
}
/**
* Error thrown for request token related things
* @beta
*/
export class RequestTokenError extends Error {
constructor(params: RequestTokenErrorParams) {
super(params.message, { cause: params.cause })
this.name = this.constructor.name
Object.setPrototypeOf(this, RequestTokenError.prototype)
}
}
/**
* Error thrown when a request token cannot be signed
* @beta
*/
export class RequestTokenSigningError extends RequestTokenError {
constructor(params: RequestTokenErrorParams) {
super(params)
Object.setPrototypeOf(this, RequestTokenSigningError.prototype)
}
}
/**
* Error thrown when a request token cannot be verified
* @beta
*/
export class RequestTokenVerificationError extends RequestTokenError {
constructor(params: RequestTokenErrorParams) {
super(params)
Object.setPrototypeOf(this, RequestTokenVerificationError.prototype)
}
}
/**
* Error thrown when a request token is missing required claims
* @beta
*/
export class RequestTokenMissingClaimsError extends RequestTokenError {
constructor(params: RequestTokenErrorParams) {
super(params)
Object.setPrototypeOf(this, RequestTokenMissingClaimsError.prototype)
}
}
/**
* Error thrown when a request token aud does not match the PFI did for which its intended
* @beta
*/
export class RequestTokenAudienceMismatchError extends RequestTokenError {
constructor(params: RequestTokenErrorParams) {
super(params)
Object.setPrototypeOf(this, RequestTokenAudienceMismatchError.prototype)
}
}