{"version":3,"file":"okpJwk.mjs","names":["z"],"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,mBAAmBA,IAAE,OAAO;CACvC,GAAG,WAAW;CACd,KAAKA,IAAE,QAAQ,KAAK;CACpB,KAAKA,IAAE,KAAK,CAAC,UAAU,SAAS,CAAC;CAGjC,GAAG;CAGH,GAAGA,IAAE,SAAS,UAAU;AAC1B,CAAC;AAGD,MAAa,4BAA4BA,IAAE,OAAO;CAChD,GAAG,iBAAiB;CACpB,GAAG,qBAAqB,UAAU;AACpC,CAAC;AAED,MAAa,oBAAoBA,IAAE,OAAO;CACxC,GAAG,iBAAiB;CAGpB,GAAG;AACL,CAAC"}