UNPKG

@takentrade/takentrade-libs

Version:
24 lines (23 loc) 1.05 kB
import { Strategy } from 'passport-jwt'; import { TokenPayload, UserPayload, JwtConfig } from '../interfaces'; declare const TntJwtStrategy_base: new (...args: [opt: import("passport-jwt").StrategyOptionsWithRequest] | [opt: import("passport-jwt").StrategyOptionsWithoutRequest]) => Strategy & { validate(...args: any[]): unknown; }; /** * TNT JWT Strategy - Abstract base JWT strategy that services can extend. * This provides common JWT validation logic while allowing * each service to implement its own user lookup. */ export declare abstract class TntJwtStrategy extends TntJwtStrategy_base { constructor(jwtConfig: JwtConfig); /** * Validates the JWT payload and returns the authenticated user. * Each service must implement this method to perform its own user lookup. * * @param payload - The decoded JWT payload * @returns The authenticated user payload * @throws UnauthorizedException if validation fails */ abstract validate(payload: TokenPayload): Promise<UserPayload>; } export {};