import type { SignOptions, VerifyOptions } from "jsonwebtoken"; import jwt from "jsonwebtoken"; export type ExpiresInType = NonNullable; export interface ICreateTokenOptions { secret?: string; expiresIn?: ExpiresInType; payload?: string | Buffer | object; issuer?: string; } export interface ITokenConfig { jwtSecret: string; expiresIn?: ExpiresInType; } export interface IAuthConfig { [key: string]: ITokenConfig; } export declare const createToken: (authConfig: IAuthConfig, productName: string, type: string, subject?: string | null, options?: ICreateTokenOptions) => string; export declare function serializeData(data: T, secret: string, issuer: string): string; export declare function deserializeData(data: string, secret: string, options?: VerifyOptions): T; export declare function createUserTokenSimple(authConfig: IAuthConfig, productName: string, options?: ICreateTokenOptions): string; export declare const decodeToken: (token: string, authConfig: IAuthConfig, type?: string) => string | jwt.JwtPayload; //# sourceMappingURL=jwtUtils.d.ts.map