@openid4vc/openid4vp 0.3.0-alpha-20250707121837 → 0.3.0-alpha-20250711120307

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
@@ -21665,7 +21665,12 @@ interface ParsedTransactionDataEntry {
21665
21665
  }
21666
21666
  declare function parseTransactionData(options: ParseTransactionDataOptions): ParsedTransactionDataEntry[];
21667
21667
 
21668
- type Openid4vpDraftVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29;
21668
+ /**
21669
+ * The Openid4vpVersionNumber
21670
+ *
21671
+ * 100 means 1.0 final, all others are draft versions
21672
+ */
21673
+ type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
21669
21674
 
21670
21675
  interface ResolveOpenid4vpAuthorizationRequestOptions {
21671
21676
  authorizationRequestPayload: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi | JarAuthorizationRequest;
@@ -21687,9 +21692,11 @@ type ResolvedOpenid4vpAuthorizationRequest = {
21687
21692
  query: unknown;
21688
21693
  } | undefined;
21689
21694
  /**
21690
- * The highest possible draft version number based on draft-specific version checks done on the request.
21695
+ * The highest possible version number based on (draft)-version checks done on the request.
21696
+ *
21697
+ * 100 means 1.0 final, all other numbers are draft versions.
21691
21698
  */
21692
- version: Openid4vpDraftVersionNumber;
21699
+ version: Openid4vpVersionNumber;
21693
21700
  };
21694
21701
  declare function resolveOpenid4vpAuthorizationRequest(options: ResolveOpenid4vpAuthorizationRequestOptions): Promise<ResolvedOpenid4vpAuthorizationRequest>;
21695
21702
 
@@ -21711,7 +21718,7 @@ type JarmServerMetadata = z.infer<typeof zJarmServerMetadata>;
21711
21718
  declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21712
21719
  state: z.ZodOptional<z.ZodString>;
21713
21720
  id_token: z.ZodOptional<z.ZodString>;
21714
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21721
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21715
21722
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21716
21723
  refresh_token: z.ZodOptional<z.ZodString>;
21717
21724
  token_type: z.ZodOptional<z.ZodString>;
@@ -21720,7 +21727,7 @@ declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21720
21727
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
21721
21728
  state: z.ZodOptional<z.ZodString>;
21722
21729
  id_token: z.ZodOptional<z.ZodString>;
21723
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21730
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21724
21731
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21725
21732
  refresh_token: z.ZodOptional<z.ZodString>;
21726
21733
  token_type: z.ZodOptional<z.ZodString>;
@@ -21729,7 +21736,7 @@ declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21729
21736
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
21730
21737
  state: z.ZodOptional<z.ZodString>;
21731
21738
  id_token: z.ZodOptional<z.ZodString>;
21732
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21739
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21733
21740
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21734
21741
  refresh_token: z.ZodOptional<z.ZodString>;
21735
21742
  token_type: z.ZodOptional<z.ZodString>;
@@ -21788,20 +21795,20 @@ declare function submitOpenid4vpAuthorizationResponse(options: SubmitOpenid4vpAu
21788
21795
  response: Response;
21789
21796
  }>;
21790
21797
 
21791
- declare const zVpTokenPexEntry: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>;
21798
+ declare const zVpTokenPresentationEntry: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>;
21799
+ type VpTokenPresentationEntry = z.infer<typeof zVpTokenPresentationEntry>;
21792
21800
  declare const zVpTokenPex: z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>;
21793
21801
  type VpTokenPex = z.infer<typeof zVpTokenPex>;
21794
- type VpTokenPexEntry = z.infer<typeof zVpTokenPexEntry>;
21795
- declare const zVpTokenDcql: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>;
21802
+ declare const zVpTokenDcql: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>;
21796
21803
  type VpTokenDcql = z.infer<typeof zVpTokenDcql>;
21797
- declare const zVpToken: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21804
+ declare const zVpToken: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21798
21805
  type VpToken = z.infer<typeof zVpToken>;
21799
21806
 
21800
21807
  interface ValidateOpenid4VpPexAuthorizationResponseResult {
21801
21808
  type: 'pex';
21802
21809
  pex: {
21803
21810
  presentationSubmission: PexPresentationSubmission;
21804
- presentations: [VpTokenPexEntry, ...VpTokenPexEntry[]];
21811
+ presentations: [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]];
21805
21812
  } & ({
21806
21813
  scope: string;
21807
21814
  presentationDefinition?: never;
@@ -21813,7 +21820,7 @@ interface ValidateOpenid4VpPexAuthorizationResponseResult {
21813
21820
  interface ValidateOpenid4VpDcqlAuthorizationResponseResult {
21814
21821
  type: 'dcql';
21815
21822
  dcql: {
21816
- presentations: VpTokenDcql;
21823
+ presentations: Record<string, [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]]>;
21817
21824
  } & ({
21818
21825
  scope: string;
21819
21826
  query?: never;
@@ -21870,8 +21877,8 @@ interface VerifiedTransactionDataEntry {
21870
21877
  credentialHashIndex: number;
21871
21878
  }
21872
21879
 
21873
- declare function parsePexVpToken(vpToken: unknown): [VpTokenPexEntry, ...VpTokenPexEntry[]];
21874
- declare function parseDcqlVpToken(vpToken: unknown): VpTokenDcql;
21880
+ declare function parsePexVpToken(vpToken: unknown): [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]];
21881
+ declare function parseDcqlVpToken(vpToken: unknown): Record<string, [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]]>;
21875
21882
 
21876
21883
  declare const zJarmHeader: z.ZodObject<{
21877
21884
  apu: z.ZodOptional<z.ZodString>;
@@ -22104,7 +22111,7 @@ declare function parseOpenid4vpAuthorizationResponse(options: ParseOpenid4vpAuth
22104
22111
  declare function parseOpenid4VpAuthorizationResponsePayload(payload: Record<string, unknown>): zod.objectOutputType<{
22105
22112
  state: zod.ZodOptional<zod.ZodString>;
22106
22113
  id_token: zod.ZodOptional<zod.ZodString>;
22107
- vp_token: zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>>, zod.ZodUnion<[zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">]>]>;
22114
+ vp_token: zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodUnion<[zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">, zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>]>>, zod.ZodUnion<[zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">]>]>;
22108
22115
  presentation_submission: zod.ZodOptional<zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodAny>, zod.ZodEffects<zod.ZodString, any, string>]>>;
22109
22116
  refresh_token: zod.ZodOptional<zod.ZodString>;
22110
22117
  token_type: zod.ZodOptional<zod.ZodString>;
@@ -31172,7 +31179,7 @@ declare class Openid4vpVerifier {
31172
31179
  parseOpenid4vpAuthorizationResponse(options: ParseOpenid4vpAuthorizationResponseOptions): Promise<ParsedOpenid4vpAuthorizationResponse>;
31173
31180
  validateOpenid4vpAuthorizationResponsePayload(options: ValidateOpenid4vpAuthorizationResponseOptions): ValidateOpenid4VpAuthorizationResponseResult;
31174
31181
  parsePexVpToken(vpToken: unknown): [string | Record<string, any>, ...(string | Record<string, any>)[]];
31175
- parseDcqlVpToken(vpToken: unknown): Record<string, string | Record<string, any>>;
31182
+ parseDcqlVpToken(vpToken: unknown): Record<string, [string | Record<string, any>, ...(string | Record<string, any>)[]]>;
31176
31183
  parseTransactionData(options: ParseTransactionDataOptions): ParsedTransactionDataEntry[];
31177
31184
  verifyTransactionData(options: Omit<VerifyTransactionDataOptions, 'callbacks'>): Promise<VerifiedTransactionDataEntry[]>;
31178
31185
  }
@@ -31216,4 +31223,4 @@ declare const zVerifierAttestations: zod__default.ZodArray<zod__default.ZodObjec
31216
31223
  type VerifierAttestation = zod__default.infer<typeof zVerifierAttestation>;
31217
31224
  type VerifierAttestations = zod__default.infer<typeof zVerifierAttestations>;
31218
31225
 
31219
- 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 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 VpTokenPexEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
31226
+ 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 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, 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
@@ -21665,7 +21665,12 @@ interface ParsedTransactionDataEntry {
21665
21665
  }
21666
21666
  declare function parseTransactionData(options: ParseTransactionDataOptions): ParsedTransactionDataEntry[];
21667
21667
 
21668
- type Openid4vpDraftVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29;
21668
+ /**
21669
+ * The Openid4vpVersionNumber
21670
+ *
21671
+ * 100 means 1.0 final, all others are draft versions
21672
+ */
21673
+ type Openid4vpVersionNumber = 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 100;
21669
21674
 
21670
21675
  interface ResolveOpenid4vpAuthorizationRequestOptions {
21671
21676
  authorizationRequestPayload: Openid4vpAuthorizationRequest | Openid4vpAuthorizationRequestDcApi | JarAuthorizationRequest;
@@ -21687,9 +21692,11 @@ type ResolvedOpenid4vpAuthorizationRequest = {
21687
21692
  query: unknown;
21688
21693
  } | undefined;
21689
21694
  /**
21690
- * The highest possible draft version number based on draft-specific version checks done on the request.
21695
+ * The highest possible version number based on (draft)-version checks done on the request.
21696
+ *
21697
+ * 100 means 1.0 final, all other numbers are draft versions.
21691
21698
  */
21692
- version: Openid4vpDraftVersionNumber;
21699
+ version: Openid4vpVersionNumber;
21693
21700
  };
21694
21701
  declare function resolveOpenid4vpAuthorizationRequest(options: ResolveOpenid4vpAuthorizationRequestOptions): Promise<ResolvedOpenid4vpAuthorizationRequest>;
21695
21702
 
@@ -21711,7 +21718,7 @@ type JarmServerMetadata = z.infer<typeof zJarmServerMetadata>;
21711
21718
  declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21712
21719
  state: z.ZodOptional<z.ZodString>;
21713
21720
  id_token: z.ZodOptional<z.ZodString>;
21714
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21721
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21715
21722
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21716
21723
  refresh_token: z.ZodOptional<z.ZodString>;
21717
21724
  token_type: z.ZodOptional<z.ZodString>;
@@ -21720,7 +21727,7 @@ declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21720
21727
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
21721
21728
  state: z.ZodOptional<z.ZodString>;
21722
21729
  id_token: z.ZodOptional<z.ZodString>;
21723
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21730
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21724
21731
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21725
21732
  refresh_token: z.ZodOptional<z.ZodString>;
21726
21733
  token_type: z.ZodOptional<z.ZodString>;
@@ -21729,7 +21736,7 @@ declare const zOpenid4vpAuthorizationResponse: z.ZodObject<{
21729
21736
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
21730
21737
  state: z.ZodOptional<z.ZodString>;
21731
21738
  id_token: z.ZodOptional<z.ZodString>;
21732
- vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21739
+ vp_token: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21733
21740
  presentation_submission: z.ZodOptional<z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodAny>, z.ZodEffects<z.ZodString, any, string>]>>;
21734
21741
  refresh_token: z.ZodOptional<z.ZodString>;
21735
21742
  token_type: z.ZodOptional<z.ZodString>;
@@ -21788,20 +21795,20 @@ declare function submitOpenid4vpAuthorizationResponse(options: SubmitOpenid4vpAu
21788
21795
  response: Response;
21789
21796
  }>;
21790
21797
 
21791
- declare const zVpTokenPexEntry: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>;
21798
+ declare const zVpTokenPresentationEntry: z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>;
21799
+ type VpTokenPresentationEntry = z.infer<typeof zVpTokenPresentationEntry>;
21792
21800
  declare const zVpTokenPex: z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>;
21793
21801
  type VpTokenPex = z.infer<typeof zVpTokenPex>;
21794
- type VpTokenPexEntry = z.infer<typeof zVpTokenPexEntry>;
21795
- declare const zVpTokenDcql: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>;
21802
+ declare const zVpTokenDcql: z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>;
21796
21803
  type VpTokenDcql = z.infer<typeof zVpTokenDcql>;
21797
- declare const zVpToken: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21804
+ declare const zVpToken: z.ZodUnion<[z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">, z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>]>>, z.ZodUnion<[z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>, "atleastone">]>]>;
21798
21805
  type VpToken = z.infer<typeof zVpToken>;
21799
21806
 
21800
21807
  interface ValidateOpenid4VpPexAuthorizationResponseResult {
21801
21808
  type: 'pex';
21802
21809
  pex: {
21803
21810
  presentationSubmission: PexPresentationSubmission;
21804
- presentations: [VpTokenPexEntry, ...VpTokenPexEntry[]];
21811
+ presentations: [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]];
21805
21812
  } & ({
21806
21813
  scope: string;
21807
21814
  presentationDefinition?: never;
@@ -21813,7 +21820,7 @@ interface ValidateOpenid4VpPexAuthorizationResponseResult {
21813
21820
  interface ValidateOpenid4VpDcqlAuthorizationResponseResult {
21814
21821
  type: 'dcql';
21815
21822
  dcql: {
21816
- presentations: VpTokenDcql;
21823
+ presentations: Record<string, [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]]>;
21817
21824
  } & ({
21818
21825
  scope: string;
21819
21826
  query?: never;
@@ -21870,8 +21877,8 @@ interface VerifiedTransactionDataEntry {
21870
21877
  credentialHashIndex: number;
21871
21878
  }
21872
21879
 
21873
- declare function parsePexVpToken(vpToken: unknown): [VpTokenPexEntry, ...VpTokenPexEntry[]];
21874
- declare function parseDcqlVpToken(vpToken: unknown): VpTokenDcql;
21880
+ declare function parsePexVpToken(vpToken: unknown): [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]];
21881
+ declare function parseDcqlVpToken(vpToken: unknown): Record<string, [VpTokenPresentationEntry, ...VpTokenPresentationEntry[]]>;
21875
21882
 
21876
21883
  declare const zJarmHeader: z.ZodObject<{
21877
21884
  apu: z.ZodOptional<z.ZodString>;
@@ -22104,7 +22111,7 @@ declare function parseOpenid4vpAuthorizationResponse(options: ParseOpenid4vpAuth
22104
22111
  declare function parseOpenid4VpAuthorizationResponsePayload(payload: Record<string, unknown>): zod.objectOutputType<{
22105
22112
  state: zod.ZodOptional<zod.ZodString>;
22106
22113
  id_token: zod.ZodOptional<zod.ZodString>;
22107
- vp_token: zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>>, zod.ZodUnion<[zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">]>]>;
22114
+ vp_token: zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodUnion<[zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">, zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>]>>, zod.ZodUnion<[zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, zod.ZodArray<zod.ZodUnion<[zod.ZodString, zod.ZodRecord<zod.ZodString, zod.ZodAny>]>, "atleastone">]>]>;
22108
22115
  presentation_submission: zod.ZodOptional<zod.ZodUnion<[zod.ZodRecord<zod.ZodString, zod.ZodAny>, zod.ZodEffects<zod.ZodString, any, string>]>>;
22109
22116
  refresh_token: zod.ZodOptional<zod.ZodString>;
22110
22117
  token_type: zod.ZodOptional<zod.ZodString>;
@@ -31172,7 +31179,7 @@ declare class Openid4vpVerifier {
31172
31179
  parseOpenid4vpAuthorizationResponse(options: ParseOpenid4vpAuthorizationResponseOptions): Promise<ParsedOpenid4vpAuthorizationResponse>;
31173
31180
  validateOpenid4vpAuthorizationResponsePayload(options: ValidateOpenid4vpAuthorizationResponseOptions): ValidateOpenid4VpAuthorizationResponseResult;
31174
31181
  parsePexVpToken(vpToken: unknown): [string | Record<string, any>, ...(string | Record<string, any>)[]];
31175
- parseDcqlVpToken(vpToken: unknown): Record<string, string | Record<string, any>>;
31182
+ parseDcqlVpToken(vpToken: unknown): Record<string, [string | Record<string, any>, ...(string | Record<string, any>)[]]>;
31176
31183
  parseTransactionData(options: ParseTransactionDataOptions): ParsedTransactionDataEntry[];
31177
31184
  verifyTransactionData(options: Omit<VerifyTransactionDataOptions, 'callbacks'>): Promise<VerifiedTransactionDataEntry[]>;
31178
31185
  }
@@ -31216,4 +31223,4 @@ declare const zVerifierAttestations: zod__default.ZodArray<zod__default.ZodObjec
31216
31223
  type VerifierAttestation = zod__default.infer<typeof zVerifierAttestation>;
31217
31224
  type VerifierAttestations = zod__default.infer<typeof zVerifierAttestations>;
31218
31225
 
31219
- 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 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 VpTokenPexEntry, type WalletMetadata, type WalletVerificationOptions, createOpenid4vpAuthorizationRequest, createOpenid4vpAuthorizationResponse, getOpenid4vpClientId, isJarmResponseMode, isOpenid4vpAuthorizationRequestDcApi, parseDcqlVpToken, parseJarmAuthorizationResponse, parseOpenid4VpAuthorizationResponsePayload, parseOpenid4vpAuthorizationRequest, parseOpenid4vpAuthorizationResponse, parsePexVpToken, parseTransactionData, resolveOpenid4vpAuthorizationRequest, submitOpenid4vpAuthorizationResponse, validateOpenid4vpAuthorizationRequestPayload, validateOpenid4vpAuthorizationResponsePayload, verifyJarmAuthorizationResponse, zClientIdPrefix, zClientMetadata, zCredentialFormat, zJarmClientMetadata, zOpenid4vpAuthorizationResponse, zProofFormat, zVerifierAttestations, zWalletMetadata };
31226
+ 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 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, 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
@@ -1101,10 +1101,10 @@ var import_oauth215 = require("@openid4vc/oauth2");
1101
1101
  function parseAuthorizationRequestVersion(request) {
1102
1102
  const requirements = [];
1103
1103
  if (request.verifier_info) {
1104
- requirements.push([">=", 29]);
1104
+ requirements.push([">=", 100]);
1105
1105
  }
1106
1106
  if (request.verifier_attestations) {
1107
- requirements.push(["<", 29]);
1107
+ requirements.push(["<", 100]);
1108
1108
  }
1109
1109
  if (request.client_metadata?.vp_formats_supported?.mso_mdoc?.deviceauth_alg_values || request.client_metadata?.vp_formats_supported?.mso_mdoc?.deviceauth_alg_values) {
1110
1110
  requirements.push([">=", 28]);
@@ -1189,12 +1189,12 @@ function parseAuthorizationRequestVersion(request) {
1189
1189
  }
1190
1190
  const lessThanVersions = requirements.filter(([operator]) => operator === "<").map(([_, version]) => version);
1191
1191
  const greaterThanVersions = requirements.filter(([operator]) => operator === ">=").map(([_, version]) => version);
1192
- const highestPossibleVersion = lessThanVersions.length > 0 ? Math.max(Math.min(...lessThanVersions) - 1, 18) : 29;
1192
+ const highestPossibleVersion = lessThanVersions.length > 0 ? Math.max(Math.min(...lessThanVersions) - 1, 18) : 100;
1193
1193
  const lowestRequiredVersion = greaterThanVersions.length > 0 ? Math.max(...greaterThanVersions) : 18;
1194
1194
  if (lowestRequiredVersion > highestPossibleVersion) {
1195
1195
  throw new import_oauth215.Oauth2ServerErrorResponseError({
1196
1196
  error: import_oauth215.Oauth2ErrorCodes.InvalidRequest,
1197
- error_description: "Could not infer openid4vp version from the openid4vp request payload."
1197
+ error_description: `Could not infer openid4vp version from the openid4vp request payload. Based on specification requirements, lowest required version is ${lowestRequiredVersion} and highest possible version is ${highestPossibleVersion}`
1198
1198
  });
1199
1199
  }
1200
1200
  return highestPossibleVersion;
@@ -1783,18 +1783,24 @@ var import_utils20 = require("@openid4vc/utils");
1783
1783
 
1784
1784
  // src/vp-token/z-vp-token.ts
1785
1785
  var import_zod17 = require("zod");
1786
- var zVpTokenPexEntry = import_zod17.z.union([import_zod17.z.string(), import_zod17.z.record(import_zod17.z.any())], {
1787
- message: "pex vp_token entry must be a string or object"
1786
+ var zVpTokenPresentationEntry = import_zod17.z.union([import_zod17.z.string(), import_zod17.z.record(import_zod17.z.any())], {
1787
+ message: "vp_token presentation entry must be string or object"
1788
1788
  });
1789
1789
  var zVpTokenPex = import_zod17.z.union(
1790
- [zVpTokenPexEntry, import_zod17.z.array(zVpTokenPexEntry).nonempty("Must have at least entry in vp_token array")],
1790
+ [
1791
+ zVpTokenPresentationEntry,
1792
+ import_zod17.z.array(zVpTokenPresentationEntry).nonempty("Must have at least entry in vp_token array")
1793
+ ],
1791
1794
  {
1792
- message: "pex vp_token must be a string, object or array of strings and objects"
1795
+ message: "pex vp_token must be a string, object or non-empty array of strings and objects"
1796
+ }
1797
+ );
1798
+ var zVpTokenDcql = import_zod17.z.record(
1799
+ import_zod17.z.union([import_zod17.z.array(zVpTokenPresentationEntry).nonempty(), zVpTokenPresentationEntry]),
1800
+ {
1801
+ message: "dcql vp_token must be an object with keys referencing the dcql credential query id, and values a non-empty array of strings and objects, or string, or object"
1793
1802
  }
1794
1803
  );
1795
- var zVpTokenDcql = import_zod17.z.record(import_zod17.z.union([import_zod17.z.string(), import_zod17.z.record(import_zod17.z.any())]), {
1796
- message: "dcql vp_token must be an object with keys referencing the dcql credential query id, and values the encoded (string or object) presentation"
1797
- });
1798
1804
  var zVpToken = zVpTokenDcql.or(zVpTokenPex);
1799
1805
 
1800
1806
  // src/vp-token/parse-vp-token.ts
@@ -1807,11 +1813,17 @@ function parsePexVpToken(vpToken) {
1807
1813
  return Array.isArray(parsedVpToken) ? parsedVpToken : [parsedVpToken];
1808
1814
  }
1809
1815
  function parseDcqlVpToken(vpToken) {
1810
- return (0, import_utils20.parseWithErrorHandling)(
1816
+ const parsedVpToken = (0, import_utils20.parseWithErrorHandling)(
1811
1817
  zVpTokenDcql,
1812
1818
  (0, import_utils20.parseIfJson)(vpToken),
1813
1819
  "Could not parse dcql vp_token. Expected an object where the values are encoded presentations"
1814
1820
  );
1821
+ return Object.fromEntries(
1822
+ Object.entries(parsedVpToken).map(([queryId, presentations]) => [
1823
+ queryId,
1824
+ Array.isArray(presentations) ? presentations : [presentations]
1825
+ ])
1826
+ );
1815
1827
  }
1816
1828
 
1817
1829
  // src/authorization-response/validate-authorization-response.ts