{"version":3,"file":"okpJwk.mjs","names":[],"sources":["../../../../../../src/modules/kms/jwk/kty/okp/okpJwk.ts"],"sourcesContent":["import { z } from 'zod'\nimport { zBase64Url, zOptionalToUndefined } from '../../../../../utils/zod'\nimport { vJwkCommon } from '../../jwk'\n\n// TODO: we should probably create a separate Jwk type for each crv, so we\n// can use the type in Credo if we need a specific key\nexport const zKmsJwkPublicOkp = z.object({\n  ...vJwkCommon.shape,\n  kty: z.literal('OKP'),\n  crv: z.enum(['X25519', 'Ed25519']),\n\n  // Public\n  x: zBase64Url,\n\n  // Private\n  d: z.optional(zBase64Url),\n})\nexport type KmsJwkPublicOkp = z.output<typeof zKmsJwkPublicOkp>\n\nexport const zKmsJwkPrivateToPublicOkp = z.object({\n  ...zKmsJwkPublicOkp.shape,\n  d: zOptionalToUndefined(zBase64Url),\n})\n\nexport const zKmsJwkPrivateOkp = z.object({\n  ...zKmsJwkPublicOkp.shape,\n\n  // Private\n  d: zBase64Url,\n})\nexport type KmsJwkPrivateOkp = z.output<typeof zKmsJwkPrivateOkp>\n"],"mappings":";;;;;;;AAMA,MAAa,mBAAmB,EAAE,OAAO;CACvC,GAAG,WAAW;CACd,KAAK,EAAE,QAAQ,MAAM;CACrB,KAAK,EAAE,KAAK,CAAC,UAAU,UAAU,CAAC;CAGlC,GAAG;CAGH,GAAG,EAAE,SAAS,WAAW;CAC1B,CAAC;AAGF,MAAa,4BAA4B,EAAE,OAAO;CAChD,GAAG,iBAAiB;CACpB,GAAG,qBAAqB,WAAW;CACpC,CAAC;AAEF,MAAa,oBAAoB,EAAE,OAAO;CACxC,GAAG,iBAAiB;CAGpB,GAAG;CACJ,CAAC"}