@postel/edge
Public API of @postel/edge — verify, createKeyset, jwksHandler, dedup, signFixture, and the structured error classes. Generated from source via TypeDoc.
Classes
MalformedHeader
Defined in: typescript/packages/edge/src/errors.ts:25
Extends
Constructors
Constructor
new MalformedHeader(message, options?): MalformedHeader;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Inherited from
Properties
| Property | Modifier | Type | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
cause? | public | unknown | - | PostelError.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | readonly | "MALFORMED_HEADER" | PostelError.code | - | typescript/packages/edge/src/errors.ts:26 |
message | public | string | - | PostelError.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | - | PostelError.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | - | PostelError.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
abstract PostelError
Defined in: typescript/packages/edge/src/errors.ts:8
Extends
Error
Extended by
Constructors
Constructor
new PostelError(message, options?): PostelError;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Overrides
Error.constructorProperties
| Property | Modifier | Type | Inherited from | Defined in |
|---|---|---|---|---|
cause? | public | unknown | Error.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | abstract | PostelErrorCode | - | typescript/packages/edge/src/errors.ts:9 |
message | public | string | Error.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | Error.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | Error.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
RawBytesMismatchDetected
Defined in: typescript/packages/edge/src/errors.ts:33
Extends
Constructors
Constructor
new RawBytesMismatchDetected(message, options?): RawBytesMismatchDetected;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Inherited from
Properties
| Property | Modifier | Type | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
cause? | public | unknown | - | PostelError.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | readonly | "RAW_BYTES_MISMATCH_DETECTED" | PostelError.code | - | typescript/packages/edge/src/errors.ts:34 |
message | public | string | - | PostelError.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | - | PostelError.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | - | PostelError.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
SignatureInvalid
Defined in: typescript/packages/edge/src/errors.ts:17
Extends
Constructors
Constructor
new SignatureInvalid(message, options?): SignatureInvalid;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Inherited from
Properties
| Property | Modifier | Type | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
cause? | public | unknown | - | PostelError.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | readonly | "SIGNATURE_INVALID" | PostelError.code | - | typescript/packages/edge/src/errors.ts:18 |
message | public | string | - | PostelError.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | - | PostelError.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | - | PostelError.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
TimestampTooOld
Defined in: typescript/packages/edge/src/errors.ts:21
Extends
Constructors
Constructor
new TimestampTooOld(message, options?): TimestampTooOld;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Inherited from
Properties
| Property | Modifier | Type | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
cause? | public | unknown | - | PostelError.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | readonly | "TIMESTAMP_TOO_OLD" | PostelError.code | - | typescript/packages/edge/src/errors.ts:22 |
message | public | string | - | PostelError.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | - | PostelError.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | - | PostelError.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
UnknownKeyId
Defined in: typescript/packages/edge/src/errors.ts:29
Extends
Constructors
Constructor
new UnknownKeyId(message, options?): UnknownKeyId;Defined in: typescript/packages/edge/src/errors.ts:11
Parameters
| Parameter | Type |
|---|---|
message | string |
options? | ErrorOptions |
Returns
Inherited from
Properties
| Property | Modifier | Type | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
cause? | public | unknown | - | PostelError.cause | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es2022.error.d.ts:26 |
code | readonly | "UNKNOWN_KEY_ID" | PostelError.code | - | typescript/packages/edge/src/errors.ts:30 |
message | public | string | - | PostelError.message | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1077 |
name | public | string | - | PostelError.name | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1076 |
stack? | public | string | - | PostelError.stack | docs/node_modules/.pnpm/typescript@5.7.2/node_modules/typescript/lib/lib.es5.d.ts:1078 |
Interfaces
DedupAdapter
Defined in: typescript/packages/edge/src/types.ts:63
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
record | readonly | (messageId, ttlSeconds) => Promise<DedupResult> | typescript/packages/edge/src/types.ts:64 |
DedupOptions
Defined in: typescript/packages/edge/src/types.ts:54
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
adapter | readonly | DedupAdapter | typescript/packages/edge/src/types.ts:56 |
ttl | readonly | string | number | typescript/packages/edge/src/types.ts:55 |
DedupResult
Defined in: typescript/packages/edge/src/types.ts:59
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
duplicate | readonly | boolean | typescript/packages/edge/src/types.ts:60 |
InMemoryDedupOptions
Defined in: typescript/packages/edge/src/dedup.ts:13
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
now? | readonly | () => Date | typescript/packages/edge/src/dedup.ts:14 |
Jwk
Defined in: typescript/packages/edge/src/types.ts:21
Indexable
[key: string]: unknownProperties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
alg | readonly | string | typescript/packages/edge/src/types.ts:23 |
crv? | readonly | string | typescript/packages/edge/src/types.ts:25 |
kid | readonly | string | typescript/packages/edge/src/types.ts:22 |
kty | readonly | string | typescript/packages/edge/src/types.ts:24 |
not_after? | readonly | string | typescript/packages/edge/src/types.ts:27 |
x? | readonly | string | typescript/packages/edge/src/types.ts:26 |
Jwks
Defined in: typescript/packages/edge/src/types.ts:31
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
keys | readonly | readonly Jwk[] | typescript/packages/edge/src/types.ts:32 |
JwksHandlerOptions
Defined in: typescript/packages/edge/src/types.ts:49
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
keys | readonly | readonly Jwk[] | typescript/packages/edge/src/types.ts:50 |
tenantId? | readonly | string | typescript/packages/edge/src/types.ts:51 |
Keyset
Defined in: typescript/packages/edge/src/types.ts:42
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
findByKid | readonly | (kid) => Promise<Jwk | undefined> | typescript/packages/edge/src/types.ts:43 |
refresh | readonly | () => Promise<void> | typescript/packages/edge/src/types.ts:44 |
KeysetOptions
Defined in: typescript/packages/edge/src/types.ts:35
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
cacheTtl? | readonly | number | typescript/packages/edge/src/types.ts:38 |
fetch? | readonly | (input, init?) => Promise<Response> | typescript/packages/edge/src/types.ts:39 |
jwksUri | readonly | string | typescript/packages/edge/src/types.ts:36 |
refreshEvery? | readonly | number | typescript/packages/edge/src/types.ts:37 |
SignedFixture
Defined in: typescript/packages/edge/src/types.ts:74
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
body | readonly | string | typescript/packages/edge/src/types.ts:76 |
headers | readonly | WebhookHeaders | typescript/packages/edge/src/types.ts:75 |
SignFixtureOptions
Defined in: typescript/packages/edge/src/types.ts:67
Type Parameters
| Type Parameter | Default type |
|---|---|
TData | unknown |
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
messageId? | readonly | string | typescript/packages/edge/src/types.ts:70 |
payload | readonly | WebhookEvent<TData> | typescript/packages/edge/src/types.ts:69 |
secret | readonly | string | typescript/packages/edge/src/types.ts:68 |
timestamp? | readonly | Date | typescript/packages/edge/src/types.ts:71 |
VerifyOptions
Defined in: typescript/packages/edge/src/types.ts:11
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
now? | readonly | () => Date | typescript/packages/edge/src/types.ts:13 |
toleranceSeconds? | readonly | number | typescript/packages/edge/src/types.ts:12 |
VerifyResult
Defined in: typescript/packages/edge/src/types.ts:16
Type Parameters
| Type Parameter | Default type |
|---|---|
TData | unknown |
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
event | readonly | WebhookEvent<TData> | typescript/packages/edge/src/types.ts:17 |
matchedSecretIndex | readonly | number | typescript/packages/edge/src/types.ts:18 |
WebhookEvent
Defined in: typescript/packages/edge/src/types.ts:3
Type Parameters
| Type Parameter | Default type |
|---|---|
TData | unknown |
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
data? | readonly | TData | typescript/packages/edge/src/types.ts:6 |
timestamp? | readonly | string | typescript/packages/edge/src/types.ts:5 |
type | readonly | string | typescript/packages/edge/src/types.ts:4 |
Type Aliases
PostelErrorCode
type PostelErrorCode =
| "SIGNATURE_INVALID"
| "TIMESTAMP_TOO_OLD"
| "MALFORMED_HEADER"
| "UNKNOWN_KEY_ID"
| "RAW_BYTES_MISMATCH_DETECTED";Defined in: typescript/packages/edge/src/errors.ts:1
Secret
type Secret = string;Defined in: typescript/packages/edge/src/types.ts:9
SecretOrKeyset
type SecretOrKeyset =
| Secret
| ReadonlyArray<Secret>
| Keyset;Defined in: typescript/packages/edge/src/types.ts:47
WebhookHeaders
type WebhookHeaders = Readonly<Record<string, string>>;Defined in: typescript/packages/edge/src/types.ts:1
Functions
createKeyset()
function createKeyset(options): Keyset;Defined in: typescript/packages/edge/src/keyset.ts:19
Parameters
| Parameter | Type |
|---|---|
options | KeysetOptions |
Returns
dedup()
function dedup(messageId, options): Promise<DedupResult>;Defined in: typescript/packages/edge/src/dedup.ts:4
Parameters
| Parameter | Type |
|---|---|
messageId | string |
options | DedupOptions |
Returns
Promise<DedupResult>
inMemoryDedupAdapter()
function inMemoryDedupAdapter(options?): DedupAdapter;Defined in: typescript/packages/edge/src/dedup.ts:17
Parameters
| Parameter | Type |
|---|---|
options? | InMemoryDedupOptions |
Returns
jwksHandler()
function jwksHandler(options): (request) => Response;Defined in: typescript/packages/edge/src/jwks-handler.ts:4
Parameters
| Parameter | Type |
|---|---|
options | JwksHandlerOptions |
Returns
(request) => Response
signFixture()
function signFixture<TData>(options): Promise<SignedFixture>;Defined in: typescript/packages/edge/src/sign-fixture.ts:13
Type Parameters
| Type Parameter | Default type |
|---|---|
TData | unknown |
Parameters
| Parameter | Type |
|---|---|
options | SignFixtureOptions<TData> |
Returns
Promise<SignedFixture>
verify()
function verify<TData>(
rawBody,
headers,
secretOrKeyset,
options?): Promise<VerifyResult<TData>>;Defined in: typescript/packages/edge/src/verify.ts:113
Type Parameters
| Type Parameter | Default type |
|---|---|
TData | unknown |
Parameters
| Parameter | Type |
|---|---|
rawBody | string | ArrayBuffer | Uint8Array<ArrayBufferLike> |
headers | WebhookHeaders |
secretOrKeyset | SecretOrKeyset |
options? | VerifyOptions |
Returns
Promise<VerifyResult<TData>>