export = Jwk;
declare class Jwk {
    /**
     * Creates a JWK based on a PEM-formatted public key
     * @param {String} pem public key in PEM format
     * @returns Jwk
     */
    static fromPEM(pem: string): import("./Jwk");
    static mapAlgToNodeAlg(alg: any): "RSA-SHA256" | "RSA-SHA384" | "RSA-SHA512";
    static cleanUpPemKey(pem?: string): string;
    /**
     * Creates a JWK based on a jwk-formatted public key
     * @param {Object} key key information in jwk format
     */
    constructor(key: any);
    key: any;
    pubKey: crypto.KeyObject;
    nodeAlg: any;
    /**
     * Validates if the token was signed with the private key that belongs to this public key.
     * @param {Token} token
     * @throws ValidationError when signature is invalid
     */
    validateSignature(token: Token): void;
}
declare namespace Jwk {
    export { Token };
}
import crypto = require("crypto");
type Token = import("../token/Token");
//# sourceMappingURL=Jwk.d.ts.map