import * as z from "zod/v3"; import { ClosedEnum } from "../../types/enums.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; /** * The intended use of the key. 'sig' for signature, 'enc' for encryption. */ export declare const Use: { readonly Sig: "sig"; readonly Enc: "enc"; }; /** * The intended use of the key. 'sig' for signature, 'enc' for encryption. */ export type Use = ClosedEnum; /** * Describes an [RFC7517](https://datatracker.ietf.org/doc/html/rfc7517) web key. */ export type JSONWebKey = { /** * The cryptographic algorithm family used with the key (e.g., 'RSA', 'EC', 'oct'). */ kty: string; /** * The intended use of the key. 'sig' for signature, 'enc' for encryption. */ use?: Use | undefined; /** * The permitted operations for the key, e.g., 'sign', 'verify', 'encrypt', 'decrypt'. */ keyOps?: Array | undefined; /** * The algorithm intended for use with the key, e.g., 'RS256' or 'ES256'. */ alg?: string | undefined; /** * A unique identifier for the key. */ kid?: string | undefined; /** * The curve for Elliptic Curve keys, e.g., 'P-256', 'P-384', or 'P-521'. * * @remarks * * This field is required when `kty` is 'EC'. */ crv?: string | undefined; /** * The x coordinate for Elliptic Curve keys. * * @remarks * * This field is required when `kty` is 'EC'. */ x?: string | undefined; /** * The y coordinate for Elliptic Curve keys. * * @remarks * * This field is required when `kty` is 'EC'. */ y?: string | undefined; /** * The modulus value for RSA keys. * * @remarks * * This field is required when `kty` is 'RSA'. */ n?: string | undefined; /** * The exponent value for RSA keys. * * @remarks * * This field is required when `kty` is 'RSA'. */ e?: string | undefined; }; /** @internal */ export declare const Use$inboundSchema: z.ZodNativeEnum; /** @internal */ export declare const Use$outboundSchema: z.ZodNativeEnum; /** @internal */ export declare const JSONWebKey$inboundSchema: z.ZodType; /** @internal */ export type JSONWebKey$Outbound = { kty: string; use?: string | undefined; key_ops?: Array | undefined; alg?: string | undefined; kid?: string | undefined; crv?: string | undefined; x?: string | undefined; y?: string | undefined; n?: string | undefined; e?: string | undefined; }; /** @internal */ export declare const JSONWebKey$outboundSchema: z.ZodType; export declare function jsonWebKeyToJSON(jsonWebKey: JSONWebKey): string; export declare function jsonWebKeyFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=jsonwebkey.d.ts.map