UNPKG

@e280/authlocal

Version:

User-sovereign login system for everybody

41 lines (33 loc) 613 B
export type TokenHeader = { typ: "JWT" alg: "EdDSA" } export type Token = Partial<{ iss: string sub: string aud: string exp: number iat: number nbf: number jti: string }> export type WebToken<P extends Token = any> = { header: TokenHeader payload: P signature: Uint8Array } export type TokenVerifications = { atTime?: number | null allowedIssuers?: string[] allowedAudiences?: string[] } export class TokenVerifyError extends Error { name = this.constructor.name } export type TokenParams = { expiresAt?: number issuedAt?: number notBefore?: number audience?: string issuer?: string }