@breautek/storm
Version:
Object-Oriented REST API framework
28 lines (27 loc) • 960 B
TypeScript
import { Token } from './Token';
import { IJWTVerifyOptions } from './IJWTVerifyOptions';
import { IAuthTokenData } from './IAuthTokenData';
import { StringValue } from 'ms';
export type TExpiresIn = StringValue | number;
export declare class TokenManager<TAuthToken extends IAuthTokenData = IAuthTokenData> {
private $secret;
constructor(secret: string);
sign(payload: {
[key: string]: any;
}, expiresIn: TExpiresIn): Promise<Token>;
verify(token: Token, options?: IJWTVerifyOptions): Promise<TAuthToken>;
/**
* Decodes the token. Use this method only on verified tokens as this does not verify against tampering
*
* @param token
* @returns
*/
decodeSync(token: Token): TAuthToken;
/**
* Decodes the token. Use this method only on verified tokens as this does not verify against tampering
*
* @param token
* @returns
*/
decode(token: Token): Promise<TAuthToken>;
}