import * as v from 'valibot'; import type { JoseContext } from '@protokoll/jose'; import type { MaybePromise, PickDeep } from '@protokoll/core'; import type { JarmAuthResponse, JarmAuthResponseEncrypted } from '../index.js'; import type { OAuthAuthRequestGetParamsOut } from '../v-auth-request.js'; export declare namespace JarmAuthResponseEncryptedHandle { const vInput: v.ObjectSchema<{ /** * The JARM response parameter conveyed either as url query param, fragment param, or application/x-www-form-urlencoded in the body of a post request */ readonly response: v.StringSchema; }, undefined>; type Input = v.InferOutput; const vOut: v.ObjectSchema<{ readonly authRequest: v.LooseObjectSchema<{ readonly state: v.OptionalSchema, never>; readonly response_mode: v.OptionalSchema, v.PicklistSchema<["direct_post.jwt"], undefined>], undefined>, never>; readonly client_id: v.StringSchema; readonly response_type: v.SchemaWithPipe<[v.StringSchema, v.TransformAction, v.PicklistSchema<["vp_token", "id_token vp_token", "code", "token", "none", "id_token", "code token", "code id_token", "id_token token", "code id_token token"], undefined>]>; readonly client_metadata: v.OptionalSchema, never>; readonly kty: v.StringSchema; }, undefined>, undefined>; }, undefined>, never>; readonly jwks_uri: v.OptionalSchema, never>; }, undefined>, never>; }, undefined>; readonly authResponse: v.LooseObjectSchema<{ readonly vp_token: v.UnionSchema<[v.StringSchema, v.ArraySchema, undefined>], undefined>; readonly presentation_submission: v.UnknownSchema; readonly nonce: v.OptionalSchema, never>; readonly iss: v.OptionalSchema, never>, v.DescriptionAction]>, undefined>, never>; readonly aud: v.OptionalSchema, v.ArraySchema, undefined>], undefined>, never>, v.DescriptionAction]>, undefined>, never>; readonly exp: v.OptionalSchema, never>, v.DescriptionAction]>, undefined>, never>; readonly state: v.OptionalSchema, never>; readonly sub: v.SchemaWithPipe<[v.OptionalSchema, never>, v.DescriptionAction]>; readonly jti: v.SchemaWithPipe<[v.OptionalSchema, never>, v.DescriptionAction]>; readonly nbf: v.SchemaWithPipe<[v.OptionalSchema, never>, v.DescriptionAction]>; readonly iat: v.SchemaWithPipe<[v.OptionalSchema, never>, v.DescriptionAction]>; }, undefined>; readonly type: v.PicklistSchema<["signed encrypted", "encrypted", "signed"], undefined>; }, undefined>; type Out = v.InferOutput; interface Context extends PickDeep { openid4vp: { authRequest: { get: (input: JarmAuthResponse | JarmAuthResponseEncrypted) => MaybePromise; }; }; } } /** * Validate a JARM direct_post.jwt compliant authentication response * * The decryption key should be resolvable using the the protected header's 'kid' field * * The signature verification jwk should be resolvable using the jws protected header's 'kid' field and the payload's 'iss' field. */ export declare const jarmAuthResponseEncryptedHandle: (input: JarmAuthResponseEncryptedHandle.Input, ctx: JarmAuthResponseEncryptedHandle.Context) => Promise; //# sourceMappingURL=jarm-auth-response-encrypted.d.ts.map