{"version":3,"file":"jwk.mjs","names":["z"],"sources":["../../../../src/modules/kms/jwk/jwk.ts"],"sourcesContent":["import { z } from 'zod'\n\nimport { zJwkKeyOps, zJwkUse } from './keyOps'\n\nexport const vJwkCommon = z\n  .object({\n    kty: z.string(),\n    kid: z.optional(z.string()),\n    alg: z.optional(z.string()),\n\n    key_ops: z.optional(zJwkKeyOps),\n    use: z.optional(zJwkUse),\n\n    ext: z.optional(z.boolean()),\n\n    x5c: z.optional(z.array(z.string())),\n    x5t: z.optional(z.string()),\n    'x5t#S256': z.optional(z.string()),\n    x5u: z.optional(z.string()),\n  })\n  .loose()\nexport type JwkCommon = z.output<typeof vJwkCommon>\n\n// This can be used to verify the general structure matches\n// without verifying any key type specific combinations (just\n// that if e.g. x is present it should be a string)\nexport const vJwk = z\n  .object({\n    ...vJwkCommon.shape,\n\n    // EC/OKP\n    crv: z.optional(z.string()),\n    x: z.optional(z.string()),\n    d: z.optional(z.string()),\n\n    // EC\n    y: z.optional(z.string()),\n\n    // oct\n    k: z.optional(z.string()),\n\n    // RSA\n    e: z.optional(z.string()),\n    n: z.optional(z.string()),\n    dp: z.optional(z.string()),\n    dq: z.optional(z.string()),\n    oth: z.optional(\n      z.array(\n        z\n          .object({\n            d: z.optional(z.string()),\n            r: z.optional(z.string()),\n            t: z.optional(z.string()),\n          })\n          .loose()\n      )\n    ),\n    p: z.optional(z.string()),\n    q: z.optional(z.string()),\n    qi: z.optional(z.string()),\n  })\n  .loose()\nexport type Jwk = z.output<typeof vJwk>\n"],"mappings":";;;AAIA,MAAa,aAAaA,IACvB,OAAO;CACN,KAAKA,IAAE,OAAO;CACd,KAAKA,IAAE,SAASA,IAAE,OAAO,CAAC;CAC1B,KAAKA,IAAE,SAASA,IAAE,OAAO,CAAC;CAE1B,SAASA,IAAE,SAAS,UAAU;CAC9B,KAAKA,IAAE,SAAS,OAAO;CAEvB,KAAKA,IAAE,SAASA,IAAE,QAAQ,CAAC;CAE3B,KAAKA,IAAE,SAASA,IAAE,MAAMA,IAAE,OAAO,CAAC,CAAC;CACnC,KAAKA,IAAE,SAASA,IAAE,OAAO,CAAC;CAC1B,YAAYA,IAAE,SAASA,IAAE,OAAO,CAAC;CACjC,KAAKA,IAAE,SAASA,IAAE,OAAO,CAAC;AAC5B,CAAC,CAAC,CACD,MAAM;AAMWA,IACjB,OAAO;CACN,GAAG,WAAW;CAGd,KAAKA,IAAE,SAASA,IAAE,OAAO,CAAC;CAC1B,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CACxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CAGxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CAGxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CAGxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CACxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CACxB,IAAIA,IAAE,SAASA,IAAE,OAAO,CAAC;CACzB,IAAIA,IAAE,SAASA,IAAE,OAAO,CAAC;CACzB,KAAKA,IAAE,SACLA,IAAE,MACAA,IACG,OAAO;EACN,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;EACxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;EACxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CAC1B,CAAC,CAAC,CACD,MAAM,CACX,CACF;CACA,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CACxB,GAAGA,IAAE,SAASA,IAAE,OAAO,CAAC;CACxB,IAAIA,IAAE,SAASA,IAAE,OAAO,CAAC;AAC3B,CAAC,CAAC,CACD,MAAM"}