@openid4vc/openid4vp 0.3.0-alpha-20250713104317 → 0.3.0-alpha-20250713113151

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as zod from 'zod';
2
2
  import zod__default, { z } from 'zod';
3
3
  import * as _openid4vc_oauth2 from '@openid4vc/oauth2';
4
- import { Jwk, JwtSignerWithJwk, decodeJwt, CallbackContext, JwtPayload, JwtSigner, JweEncryptor, HashAlgorithm } from '@openid4vc/oauth2';
4
+ import { Jwk, JwtSignerWithJwk, decodeJwt, CallbackContext, JwtPayload, JwtSigner, JweEncryptor, HashAlgorithm, JwkSet } from '@openid4vc/oauth2';
5
5
 
6
6
  declare const zOpenid4vpAuthorizationRequest: z.ZodObject<{
7
7
  response_type: z.ZodLiteral<"vp_token">;
@@ -11687,6 +11687,14 @@ declare const zClientMetadata: z.ZodObject<{
11687
11687
  }, z.ZodTypeAny, "passthrough">>;
11688
11688
  type ClientMetadata = z.infer<typeof zClientMetadata>;
11689
11689
 
11690
+ /**
11691
+ * The Openid4vpVersionNumber
11692
+ *
11693
+ * 100 means 1.0 final, all others are draft versions
11694
+ */
11695
+ type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
11696
+ declare function parseAuthorizationRequestVersion(request: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi): Openid4vpVersionNumber;
11697
+
11690
11698
  declare const zClientIdPrefix: z.ZodEnum<["pre-registered", "redirect_uri", "verifier_attestation", "https", "openid_federation", "did", "decentralized_identifier", "x509_san_uri", "x509_hash", "x509_san_dns", "origin", "web-origin"]>;
11691
11699
  declare const zUniformClientIdPrefix: z.ZodEnum<["pre-registered", "redirect_uri", "verifier_attestation", "openid_federation", "decentralized_identifier", "x509_san_uri", "x509_hash", "x509_san_dns", "origin"]>;
11692
11700
  type ClientIdPrefix = z.infer<typeof zClientIdPrefix>;
@@ -11753,6 +11761,15 @@ interface GetOpenid4vpClientIdOptions {
11753
11761
  legacyClientIdScheme?: unknown;
11754
11762
  responseMode: unknown;
11755
11763
  origin?: string;
11764
+ /**
11765
+ * The version of OpenID4VP used.
11766
+ *
11767
+ * Currently it is only used for:
11768
+ * - determining whether effective client id is `origin:` or `web-origin:` when DC API is used.
11769
+ *
11770
+ * When no version is provided, it is assumed version 1.0 (100) is used.
11771
+ */
11772
+ version?: Openid4vpVersionNumber;
11756
11773
  }
11757
11774
  /**
11758
11775
  * Get the client id for an authorization request based on the response_mode, client_id, client_id_scheme and origin values.
@@ -12573,14 +12590,6 @@ declare const zJarmClientMetadata: z.ZodObject<{
12573
12590
  }>;
12574
12591
  type JarmClientMetadata = z.infer<typeof zJarmClientMetadata>;
12575
12592
 
12576
- /**
12577
- * The Openid4vpVersionNumber
12578
- *
12579
- * 100 means 1.0 final, all others are draft versions
12580
- */
12581
- type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
12582
- declare function parseAuthorizationRequestVersion(request: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi): Openid4vpVersionNumber;
12583
-
12584
12593
  interface CreateJarAuthorizationRequestOptions {
12585
12594
  authorizationRequestPayload: JwtPayload & {
12586
12595
  client_id?: string;
@@ -31236,6 +31245,47 @@ declare const jarmResponseMode: readonly ["jwt", "query.jwt", "fragment.jwt", "f
31236
31245
  type JarmResponseMode = (typeof jarmResponseMode)[number];
31237
31246
  declare const isJarmResponseMode: (responseMode: string) => responseMode is JarmResponseMode;
31238
31247
 
31248
+ declare function extractEncryptionJwkFromJwks(jwks: JwkSet, { kid, supportedAlgValues, }: {
31249
+ kid?: string;
31250
+ supportedAlgValues?: string[];
31251
+ }): zod.objectOutputType<{
31252
+ kty: zod.ZodString;
31253
+ crv: zod.ZodOptional<zod.ZodString>;
31254
+ x: zod.ZodOptional<zod.ZodString>;
31255
+ y: zod.ZodOptional<zod.ZodString>;
31256
+ e: zod.ZodOptional<zod.ZodString>;
31257
+ n: zod.ZodOptional<zod.ZodString>;
31258
+ alg: zod.ZodOptional<zod.ZodString>;
31259
+ d: zod.ZodOptional<zod.ZodString>;
31260
+ dp: zod.ZodOptional<zod.ZodString>;
31261
+ dq: zod.ZodOptional<zod.ZodString>;
31262
+ ext: zod.ZodOptional<zod.ZodBoolean>;
31263
+ k: zod.ZodOptional<zod.ZodString>;
31264
+ key_ops: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
31265
+ kid: zod.ZodOptional<zod.ZodString>;
31266
+ oth: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
31267
+ d: zod.ZodOptional<zod.ZodString>;
31268
+ r: zod.ZodOptional<zod.ZodString>;
31269
+ t: zod.ZodOptional<zod.ZodString>;
31270
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
31271
+ d: zod.ZodOptional<zod.ZodString>;
31272
+ r: zod.ZodOptional<zod.ZodString>;
31273
+ t: zod.ZodOptional<zod.ZodString>;
31274
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
31275
+ d: zod.ZodOptional<zod.ZodString>;
31276
+ r: zod.ZodOptional<zod.ZodString>;
31277
+ t: zod.ZodOptional<zod.ZodString>;
31278
+ }, zod.ZodTypeAny, "passthrough">>, "many">>;
31279
+ p: zod.ZodOptional<zod.ZodString>;
31280
+ q: zod.ZodOptional<zod.ZodString>;
31281
+ qi: zod.ZodOptional<zod.ZodString>;
31282
+ use: zod.ZodOptional<zod.ZodString>;
31283
+ x5c: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
31284
+ x5t: zod.ZodOptional<zod.ZodString>;
31285
+ 'x5t#S256': zod.ZodOptional<zod.ZodString>;
31286
+ x5u: zod.ZodOptional<zod.ZodString>;
31287
+ }, zod.ZodTypeAny, "passthrough"> | undefined;
31288
+
31239
31289
  declare const zCredentialFormat: z.ZodEnum<["jwt_vc_json", "ldp_vc", "mso_mdoc", "dc+sd-jwt", "vc+sd-jwt"]>;
31240
31290
  type CredentialFormat = z.infer<typeof zCredentialFormat>;
31241
31291
 
@@ -31271,4 +31321,4 @@ declare const zVerifierAttestations: zod__default.ZodArray<zod__default.ZodObjec
31271
31321
  type VerifierAttestation = zod__default.infer<typeof zVerifierAttestation>;
31272
31322
  type VerifierAttestations = zod__default.infer<typeof zVerifierAttestations>;
31273
31323
 
31274
- export { type ClientIdPrefix, type ClientMetadata, type CreateOpenid4vpAuthorizationRequestOptions, type CreateOpenid4vpAuthorizationResponseOptions, type CreateOpenid4vpAuthorizationResponseResult, type CredentialFormat, type GetOpenid4vpClientIdOptions, type JarmClientMetadata, JarmMode, type Openid4vpAuthorizationRequest, type Openid4vpAuthorizationRequestDcApi, type Openid4vpAuthorizationResponse, Openid4vpClient, Openid4vpVerifier, type Openid4vpVersionNumber, type ParseJarmAuthorizationResponseOptions, type ParseOpenid4vpAuthorizationRequestOptions, type ParseOpenid4vpAuthorizationResponseOptions, type ParseTransactionDataOptions, type ParsedOpenid4vpAuthorizationResponse, type ProofFormat, type ResolveOpenid4vpAuthorizationRequestOptions, type ResolvedOpenid4vpAuthorizationRequest, type SubmitOpenid4vpAuthorizationResponseOptions, type TransactionDataEntry, type TransactionDataHashesCredentials, type ValidateOpenid4VpAuthorizationResponseResult, type ValidateOpenid4VpDcqlAuthorizationResponseResult, type ValidateOpenid4VpPexAuthorizationResponseResult, type ValidateOpenid4vpAuthorizationRequestPayloadOptions, type ValidateOpenid4vpAuthorizationResponseOptions, type VerifiedTransactionDataEntry, type VerifierAttestation, type VerifierAttestations, type VerifyJarmAuthorizationResponseOptions, type VerifyTransactionDataOptions, type VpToken, type VpTokenDcql, type VpTokenPex, type VpTokenPresentationEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseAuthorizationRequestVersion, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
31324
+ export { type ClientIdPrefix, type ClientMetadata, type CreateOpenid4vpAuthorizationRequestOptions, type CreateOpenid4vpAuthorizationResponseOptions, type CreateOpenid4vpAuthorizationResponseResult, type CredentialFormat, type GetOpenid4vpClientIdOptions, type JarmClientMetadata, JarmMode, type Openid4vpAuthorizationRequest, type Openid4vpAuthorizationRequestDcApi, type Openid4vpAuthorizationResponse, Openid4vpClient, Openid4vpVerifier, type Openid4vpVersionNumber, type ParseJarmAuthorizationResponseOptions, type ParseOpenid4vpAuthorizationRequestOptions, type ParseOpenid4vpAuthorizationResponseOptions, type ParseTransactionDataOptions, type ParsedOpenid4vpAuthorizationResponse, type ProofFormat, type ResolveOpenid4vpAuthorizationRequestOptions, type ResolvedOpenid4vpAuthorizationRequest, type SubmitOpenid4vpAuthorizationResponseOptions, type TransactionDataEntry, type TransactionDataHashesCredentials, type ValidateOpenid4VpAuthorizationResponseResult, type ValidateOpenid4VpDcqlAuthorizationResponseResult, type ValidateOpenid4VpPexAuthorizationResponseResult, type ValidateOpenid4vpAuthorizationRequestPayloadOptions, type ValidateOpenid4vpAuthorizationResponseOptions, type VerifiedTransactionDataEntry, type VerifierAttestation, type VerifierAttestations, type VerifyJarmAuthorizationResponseOptions, type VerifyTransactionDataOptions, type VpToken, type VpTokenDcql, type VpTokenPex, type VpTokenPresentationEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, extractEncryptionJwkFromJwks, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseAuthorizationRequestVersion, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as zod from 'zod';
2
2
  import zod__default, { z } from 'zod';
3
3
  import * as _openid4vc_oauth2 from '@openid4vc/oauth2';
4
- import { Jwk, JwtSignerWithJwk, decodeJwt, CallbackContext, JwtPayload, JwtSigner, JweEncryptor, HashAlgorithm } from '@openid4vc/oauth2';
4
+ import { Jwk, JwtSignerWithJwk, decodeJwt, CallbackContext, JwtPayload, JwtSigner, JweEncryptor, HashAlgorithm, JwkSet } from '@openid4vc/oauth2';
5
5
 
6
6
  declare const zOpenid4vpAuthorizationRequest: z.ZodObject<{
7
7
  response_type: z.ZodLiteral<"vp_token">;
@@ -11687,6 +11687,14 @@ declare const zClientMetadata: z.ZodObject<{
11687
11687
  }, z.ZodTypeAny, "passthrough">>;
11688
11688
  type ClientMetadata = z.infer<typeof zClientMetadata>;
11689
11689
 
11690
+ /**
11691
+ * The Openid4vpVersionNumber
11692
+ *
11693
+ * 100 means 1.0 final, all others are draft versions
11694
+ */
11695
+ type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
11696
+ declare function parseAuthorizationRequestVersion(request: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi): Openid4vpVersionNumber;
11697
+
11690
11698
  declare const zClientIdPrefix: z.ZodEnum<["pre-registered", "redirect_uri", "verifier_attestation", "https", "openid_federation", "did", "decentralized_identifier", "x509_san_uri", "x509_hash", "x509_san_dns", "origin", "web-origin"]>;
11691
11699
  declare const zUniformClientIdPrefix: z.ZodEnum<["pre-registered", "redirect_uri", "verifier_attestation", "openid_federation", "decentralized_identifier", "x509_san_uri", "x509_hash", "x509_san_dns", "origin"]>;
11692
11700
  type ClientIdPrefix = z.infer<typeof zClientIdPrefix>;
@@ -11753,6 +11761,15 @@ interface GetOpenid4vpClientIdOptions {
11753
11761
  legacyClientIdScheme?: unknown;
11754
11762
  responseMode: unknown;
11755
11763
  origin?: string;
11764
+ /**
11765
+ * The version of OpenID4VP used.
11766
+ *
11767
+ * Currently it is only used for:
11768
+ * - determining whether effective client id is `origin:` or `web-origin:` when DC API is used.
11769
+ *
11770
+ * When no version is provided, it is assumed version 1.0 (100) is used.
11771
+ */
11772
+ version?: Openid4vpVersionNumber;
11756
11773
  }
11757
11774
  /**
11758
11775
  * Get the client id for an authorization request based on the response_mode, client_id, client_id_scheme and origin values.
@@ -12573,14 +12590,6 @@ declare const zJarmClientMetadata: z.ZodObject<{
12573
12590
  }>;
12574
12591
  type JarmClientMetadata = z.infer<typeof zJarmClientMetadata>;
12575
12592
 
12576
- /**
12577
- * The Openid4vpVersionNumber
12578
- *
12579
- * 100 means 1.0 final, all others are draft versions
12580
- */
12581
- type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
12582
- declare function parseAuthorizationRequestVersion(request: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi): Openid4vpVersionNumber;
12583
-
12584
12593
  interface CreateJarAuthorizationRequestOptions {
12585
12594
  authorizationRequestPayload: JwtPayload & {
12586
12595
  client_id?: string;
@@ -31236,6 +31245,47 @@ declare const jarmResponseMode: readonly ["jwt", "query.jwt", "fragment.jwt", "f
31236
31245
  type JarmResponseMode = (typeof jarmResponseMode)[number];
31237
31246
  declare const isJarmResponseMode: (responseMode: string) => responseMode is JarmResponseMode;
31238
31247
 
31248
+ declare function extractEncryptionJwkFromJwks(jwks: JwkSet, { kid, supportedAlgValues, }: {
31249
+ kid?: string;
31250
+ supportedAlgValues?: string[];
31251
+ }): zod.objectOutputType<{
31252
+ kty: zod.ZodString;
31253
+ crv: zod.ZodOptional<zod.ZodString>;
31254
+ x: zod.ZodOptional<zod.ZodString>;
31255
+ y: zod.ZodOptional<zod.ZodString>;
31256
+ e: zod.ZodOptional<zod.ZodString>;
31257
+ n: zod.ZodOptional<zod.ZodString>;
31258
+ alg: zod.ZodOptional<zod.ZodString>;
31259
+ d: zod.ZodOptional<zod.ZodString>;
31260
+ dp: zod.ZodOptional<zod.ZodString>;
31261
+ dq: zod.ZodOptional<zod.ZodString>;
31262
+ ext: zod.ZodOptional<zod.ZodBoolean>;
31263
+ k: zod.ZodOptional<zod.ZodString>;
31264
+ key_ops: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
31265
+ kid: zod.ZodOptional<zod.ZodString>;
31266
+ oth: zod.ZodOptional<zod.ZodArray<zod.ZodObject<{
31267
+ d: zod.ZodOptional<zod.ZodString>;
31268
+ r: zod.ZodOptional<zod.ZodString>;
31269
+ t: zod.ZodOptional<zod.ZodString>;
31270
+ }, "passthrough", zod.ZodTypeAny, zod.objectOutputType<{
31271
+ d: zod.ZodOptional<zod.ZodString>;
31272
+ r: zod.ZodOptional<zod.ZodString>;
31273
+ t: zod.ZodOptional<zod.ZodString>;
31274
+ }, zod.ZodTypeAny, "passthrough">, zod.objectInputType<{
31275
+ d: zod.ZodOptional<zod.ZodString>;
31276
+ r: zod.ZodOptional<zod.ZodString>;
31277
+ t: zod.ZodOptional<zod.ZodString>;
31278
+ }, zod.ZodTypeAny, "passthrough">>, "many">>;
31279
+ p: zod.ZodOptional<zod.ZodString>;
31280
+ q: zod.ZodOptional<zod.ZodString>;
31281
+ qi: zod.ZodOptional<zod.ZodString>;
31282
+ use: zod.ZodOptional<zod.ZodString>;
31283
+ x5c: zod.ZodOptional<zod.ZodArray<zod.ZodString, "many">>;
31284
+ x5t: zod.ZodOptional<zod.ZodString>;
31285
+ 'x5t#S256': zod.ZodOptional<zod.ZodString>;
31286
+ x5u: zod.ZodOptional<zod.ZodString>;
31287
+ }, zod.ZodTypeAny, "passthrough"> | undefined;
31288
+
31239
31289
  declare const zCredentialFormat: z.ZodEnum<["jwt_vc_json", "ldp_vc", "mso_mdoc", "dc+sd-jwt", "vc+sd-jwt"]>;
31240
31290
  type CredentialFormat = z.infer<typeof zCredentialFormat>;
31241
31291
 
@@ -31271,4 +31321,4 @@ declare const zVerifierAttestations: zod__default.ZodArray<zod__default.ZodObjec
31271
31321
  type VerifierAttestation = zod__default.infer<typeof zVerifierAttestation>;
31272
31322
  type VerifierAttestations = zod__default.infer<typeof zVerifierAttestations>;
31273
31323
 
31274
- export { type ClientIdPrefix, type ClientMetadata, type CreateOpenid4vpAuthorizationRequestOptions, type CreateOpenid4vpAuthorizationResponseOptions, type CreateOpenid4vpAuthorizationResponseResult, type CredentialFormat, type GetOpenid4vpClientIdOptions, type JarmClientMetadata, JarmMode, type Openid4vpAuthorizationRequest, type Openid4vpAuthorizationRequestDcApi, type Openid4vpAuthorizationResponse, Openid4vpClient, Openid4vpVerifier, type Openid4vpVersionNumber, type ParseJarmAuthorizationResponseOptions, type ParseOpenid4vpAuthorizationRequestOptions, type ParseOpenid4vpAuthorizationResponseOptions, type ParseTransactionDataOptions, type ParsedOpenid4vpAuthorizationResponse, type ProofFormat, type ResolveOpenid4vpAuthorizationRequestOptions, type ResolvedOpenid4vpAuthorizationRequest, type SubmitOpenid4vpAuthorizationResponseOptions, type TransactionDataEntry, type TransactionDataHashesCredentials, type ValidateOpenid4VpAuthorizationResponseResult, type ValidateOpenid4VpDcqlAuthorizationResponseResult, type ValidateOpenid4VpPexAuthorizationResponseResult, type ValidateOpenid4vpAuthorizationRequestPayloadOptions, type ValidateOpenid4vpAuthorizationResponseOptions, type VerifiedTransactionDataEntry, type VerifierAttestation, type VerifierAttestations, type VerifyJarmAuthorizationResponseOptions, type VerifyTransactionDataOptions, type VpToken, type VpTokenDcql, type VpTokenPex, type VpTokenPresentationEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseAuthorizationRequestVersion, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
31324
+ export { type ClientIdPrefix, type ClientMetadata, type CreateOpenid4vpAuthorizationRequestOptions, type CreateOpenid4vpAuthorizationResponseOptions, type CreateOpenid4vpAuthorizationResponseResult, type CredentialFormat, type GetOpenid4vpClientIdOptions, type JarmClientMetadata, JarmMode, type Openid4vpAuthorizationRequest, type Openid4vpAuthorizationRequestDcApi, type Openid4vpAuthorizationResponse, Openid4vpClient, Openid4vpVerifier, type Openid4vpVersionNumber, type ParseJarmAuthorizationResponseOptions, type ParseOpenid4vpAuthorizationRequestOptions, type ParseOpenid4vpAuthorizationResponseOptions, type ParseTransactionDataOptions, type ParsedOpenid4vpAuthorizationResponse, type ProofFormat, type ResolveOpenid4vpAuthorizationRequestOptions, type ResolvedOpenid4vpAuthorizationRequest, type SubmitOpenid4vpAuthorizationResponseOptions, type TransactionDataEntry, type TransactionDataHashesCredentials, type ValidateOpenid4VpAuthorizationResponseResult, type ValidateOpenid4VpDcqlAuthorizationResponseResult, type ValidateOpenid4VpPexAuthorizationResponseResult, type ValidateOpenid4vpAuthorizationRequestPayloadOptions, type ValidateOpenid4vpAuthorizationResponseOptions, type VerifiedTransactionDataEntry, type VerifierAttestation, type VerifierAttestations, type VerifyJarmAuthorizationResponseOptions, type VerifyTransactionDataOptions, type VpToken, type VpTokenDcql, type VpTokenPex, type VpTokenPresentationEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, extractEncryptionJwkFromJwks, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseAuthorizationRequestVersion, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
package/dist/index.js CHANGED
@@ -35,6 +35,7 @@ __export(index_exports, {
35
35
  Openid4vpVerifier: () => Openid4vpVerifier,
36
36
  createOpenid4vpAuthorizationRequest: () => createOpenid4vpAuthorizationRequest,
37
37
  createOpenid4vpAuthorizationResponse: () => createOpenid4vpAuthorizationResponse,
38
+ extractEncryptionJwkFromJwks: () => extractEncryptionJwkFromJwks,
38
39
  getOpenid4vpClientId: () => getOpenid4vpClientId,
39
40
  isJarmResponseMode: () => isJarmResponseMode,
40
41
  isOpenid4vpAuthorizationRequestDcApi: () => isOpenid4vpAuthorizationRequestDcApi,
@@ -349,6 +350,7 @@ function getOpenid4vpClientId(options) {
349
350
  const original = {
350
351
  clientId: options.clientId
351
352
  };
353
+ const version = options.version ?? 100;
352
354
  if (isOpenid4vpResponseModeDcApi(options.responseMode)) {
353
355
  if (!options.clientId) {
354
356
  if (!options.origin) {
@@ -361,10 +363,7 @@ function getOpenid4vpClientId(options) {
361
363
  clientIdPrefix: "origin",
362
364
  effectiveClientIdPrefix: "origin",
363
365
  clientIdIdentifier: options.origin,
364
- // FIXME: draft 24 uses web-origin, draft 25+ uses origin
365
- // But it's not really possible to know which one to use as the
366
- // 'effective' client id. Defaulting to origin: since that's newer
367
- effectiveClientId: `origin:${options.origin}`,
366
+ effectiveClientId: version >= 25 ? `origin:${options.origin}` : `web-origin:${options.origin}`,
368
367
  original
369
368
  };
370
369
  }
@@ -1456,6 +1455,7 @@ async function resolveOpenid4vpAuthorizationRequest(options) {
1456
1455
  disableOriginValidation
1457
1456
  });
1458
1457
  }
1458
+ const version = parseAuthorizationRequestVersion(authorizationRequestPayload);
1459
1459
  let clientMetadata = authorizationRequestPayload.client_metadata;
1460
1460
  if (!isOpenid4vpAuthorizationRequestDcApi(authorizationRequestPayload) && !clientMetadata && authorizationRequestPayload.client_metadata_uri) {
1461
1461
  clientMetadata = await fetchClientMetadata({ clientMetadataUri: authorizationRequestPayload.client_metadata_uri });
@@ -1467,7 +1467,8 @@ async function resolveOpenid4vpAuthorizationRequest(options) {
1467
1467
  },
1468
1468
  jar,
1469
1469
  callbacks,
1470
- origin
1470
+ origin,
1471
+ version
1471
1472
  });
1472
1473
  let pex;
1473
1474
  let dcql;
@@ -1494,7 +1495,7 @@ async function resolveOpenid4vpAuthorizationRequest(options) {
1494
1495
  client: clientMeta,
1495
1496
  pex,
1496
1497
  dcql,
1497
- version: parseAuthorizationRequestVersion(authorizationRequestPayload)
1498
+ version
1498
1499
  };
1499
1500
  }
1500
1501
  function validateOpenId4vpAuthorizationRequestPayload(options) {
@@ -2152,6 +2153,7 @@ var zWalletMetadata = import_zod23.z.object({
2152
2153
  Openid4vpVerifier,
2153
2154
  createOpenid4vpAuthorizationRequest,
2154
2155
  createOpenid4vpAuthorizationResponse,
2156
+ extractEncryptionJwkFromJwks,
2155
2157
  getOpenid4vpClientId,
2156
2158
  isJarmResponseMode,
2157
2159
  isOpenid4vpAuthorizationRequestDcApi,