UNPKG

@teamsight/flight

Version:

Lambda life cycles

35 lines (34 loc) 970 B
export interface IJsonWebTokenStore { getSecretForId(id: string): Promise<string>; } export interface ICreateJWTOptions { tokenId: string; secret: string; audience: string; expiresInHours: number; payload: any; subject?: string; } export interface IPayload { sub: string; aud?: string; exp?: number; iat?: number; header?: { kid?: string; alg?: string; typ?: string; }; } export interface IJsonWebTokenManager { createServer(): string; create(opts: ICreateJWTOptions): string; process<TPayload extends IPayload>(token: string, audience: string): Promise<TPayload>; } export declare class JsonWebTokenManager implements IJsonWebTokenManager { private tokenStore; constructor(tokenStore: IJsonWebTokenStore); create(opts: ICreateJWTOptions): string; createServer(): string; process<TPayload extends IPayload>(token: string, audience: string): Promise<TPayload>; }