async validate(token) {
        /** @type any */
        const claims = jwt.verify(token, this.secret, {
            algorithms: ['HS256'],
            maxAge: '10m'
        });

        if (!claims || typeof claims === 'string') {
            // @TODO: throw a detailed error message here
            throw new UnauthorizedError();
        }

        return claims;
    }
@param {JSONWebToken} token
@returns {Promise<Data>}