import * as jwt from '../utils/jwt.js'; import Config from './config.js'; import Redis from './redis.js'; import ServiceInterface from './interface.js'; import type { Redis as RedisClient } from 'ioredis'; interface TokenConfig { prefix: string; secret: string; } declare class JsonWebToken extends ServiceInterface { redis: RedisClient; config: TokenConfig; static dependencies: (typeof Config | typeof Redis)[]; constructor(config: Config, redis: Redis); getProto(): typeof jwt; getRedis(): RedisClient; getPrefix(): string; save(uid: string | number, item: object): Promise; find(tokenString: string): Promise; clear(tokenString: string): boolean | Promise; getRedisKey(tokenString: string, groupOnly?: boolean): string; encode(item: object, secret?: string): string; decode(str: string, secret?: string): object; } export default JsonWebToken;