import { type KeyObject } from "node:crypto";
export declare class JWK {
    Kty: string;
    Kid: string;
    Use: string;
    Alg: string;
    E: string;
    N: string;
    Crv: string;
    X: string;
    PublicKey(): KeyObject;
    toJSON(): Record<string, string>;
}
export declare function Fetch(ctx: unknown, jwksURL: string, kid: string): Promise<JWK>;
export declare function ValidateTokenSignature(ctx: unknown, token: string, jwksURL: string): Promise<void>;
