IO Wallet SDK
    Preparing search index...

    Interface CreateOpenid4vpAuthorizationResponseOptions

    interface CreateOpenid4vpAuthorizationResponseOptions {
        authorizationRequestPayload:
            | {
                client_id: string;
                client_id_scheme?: | "x509_hash"
                | "did"
                | "redirect_uri"
                | "pre-registered"
                | "entity_id"
                | "verifier_attestation"
                | "x509_san_dns"
                | "x509_san_uri";
                client_metadata?: {
                    authorization_encrypted_response_alg?: string;
                    authorization_encrypted_response_enc?: string;
                    authorization_signed_response_alg?: string;
                    client_name?: string;
                    encrypted_response_enc_values_supported?: string[];
                    jwks?: {
                        keys: {
                            alg?: string;
                            crv?: string;
                            d?: string;
                            dp?: string;
                            dq?: string;
                            e?: string;
                            ext?: boolean;
                            k?: string;
                            key_ops?: string[];
                            kid?: string;
                            kty: string;
                            n?: string;
                            oth?: { d?: ...; r?: ...; t?: ...; [key: ...]: ... }[];
                            p?: string;
                            q?: string;
                            qi?: string;
                            use?: string;
                            x?: string;
                            x5c?: string[];
                            x5t?: string;
                            "x5t#S256"?: string;
                            x5u?: string;
                            y?: string;
                            [key: string]: unknown;
                        }[];
                        [key: string]: unknown;
                    };
                    jwks_uri?: string;
                    logo_uri?: string;
                    vp_formats?: Record<
                        string,
                        { alg_values_supported?: string[]; [key: string]: unknown },
                    >;
                    vp_formats_supported?: {
                        "dc+sd-jwt"?: {
                            "kb-jwt_alg_values"?: [string, ...string[]];
                            "sd-jwt_alg_values"?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        jwt_vc_json?: {
                            alg_values?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        ldp_vc?: {
                            cryptosuite_values?: [string, ...string[]];
                            proof_type_values?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        mso_mdoc?: {
                            device_signed_alg_values?: [number, ...number[]];
                            deviceauth_alg_values?: [number, ...number[]];
                            issuer_signed_alg_values?: [number, ...number[]];
                            issuerauth_alg_values?: [number, ...number[]];
                            [key: string]: unknown;
                        };
                        [key: string]: { [key: string]: unknown };
                    };
                    [key: string]: unknown;
                };
                client_metadata_uri?: string;
                dcql_query?: any;
                nonce: string;
                presentation_definition?: any;
                presentation_definition_uri?: string;
                redirect_uri?: string;
                request_uri?: string;
                request_uri_method?: string;
                response_mode?: "direct_post.jwt"
                | "direct_post";
                response_type: "vp_token";
                response_uri?: string;
                scope?: string;
                state?: string;
                transaction_data?: string[];
                trust_chain?: [string, ...string[]];
                verifier_attestations?: {
                    credential_ids?: string[];
                    data: string | Record<string, unknown>;
                    format: string;
                }[];
                verifier_info?: {
                    credential_ids?: string[];
                    data: string
                    | Record<string, unknown>;
                    format: string;
                }[];
                wallet_nonce?: string;
                [key: string]: unknown;
            }
            | {
                client_id?: string;
                client_id_scheme?: undefined;
                client_metadata?: {
                    authorization_encrypted_response_alg?: string;
                    authorization_encrypted_response_enc?: string;
                    authorization_signed_response_alg?: string;
                    client_name?: string;
                    encrypted_response_enc_values_supported?: string[];
                    jwks?: {
                        keys: {
                            alg?: string;
                            crv?: string;
                            d?: string;
                            dp?: string;
                            dq?: string;
                            e?: string;
                            ext?: boolean;
                            k?: string;
                            key_ops?: string[];
                            kid?: string;
                            kty: string;
                            n?: string;
                            oth?: { d?: ...; r?: ...; t?: ...; [key: ...]: ... }[];
                            p?: string;
                            q?: string;
                            qi?: string;
                            use?: string;
                            x?: string;
                            x5c?: string[];
                            x5t?: string;
                            "x5t#S256"?: string;
                            x5u?: string;
                            y?: string;
                            [key: string]: unknown;
                        }[];
                        [key: string]: unknown;
                    };
                    jwks_uri?: string;
                    logo_uri?: string;
                    vp_formats?: Record<
                        string,
                        { alg_values_supported?: string[]; [key: string]: unknown },
                    >;
                    vp_formats_supported?: {
                        "dc+sd-jwt"?: {
                            "kb-jwt_alg_values"?: [string, ...string[]];
                            "sd-jwt_alg_values"?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        jwt_vc_json?: {
                            alg_values?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        ldp_vc?: {
                            cryptosuite_values?: [string, ...string[]];
                            proof_type_values?: [string, ...string[]];
                            [key: string]: unknown;
                        };
                        mso_mdoc?: {
                            device_signed_alg_values?: [number, ...number[]];
                            deviceauth_alg_values?: [number, ...number[]];
                            issuer_signed_alg_values?: [number, ...number[]];
                            issuerauth_alg_values?: [number, ...number[]];
                            [key: string]: unknown;
                        };
                        [key: string]: { [key: string]: unknown };
                    };
                    [key: string]: unknown;
                };
                dcql_query?: any;
                expected_origins?: string[];
                nonce: string;
                presentation_definition?: any;
                response_mode: "dc_api"
                | "dc_api.jwt"
                | "w3c_dc_api.jwt"
                | "w3c_dc_api";
                response_type: "vp_token";
                scope?: undefined;
                state?: string;
                transaction_data?: string[];
                trust_chain?: [string, ...string[]];
                verifier_attestations?: {
                    credential_ids?: string[];
                    data: string | Record<string, unknown>;
                    format: string;
                }[];
                verifier_info?: {
                    credential_ids?: string[];
                    data: string
                    | Record<string, unknown>;
                    format: string;
                }[];
                [key: string]: unknown;
            };
        authorizationResponsePayload: {
            access_token?: string;
            expires_in?: number;
            id_token?: string;
            presentation_submission?: any;
            refresh_token?: string;
            state?: string;
            token_type?: string;
            vp_token: | string
            | Record<string, any>
            | [string | Record<string, any>, ...(string | Record<string, any>)[]]
            | Record<
                string,
                | string
                | Record<string, any>
                | [string | Record<string, any>, ...(string | Record<string, any>)[]],
            >;
            [key: string]: unknown;
        } & { state?: undefined };
        callbacks: Pick<CallbackContext, "signJwt" | "encryptJwe" | "fetch">;
        clientMetadata?: {
            authorization_encrypted_response_alg?: string;
            authorization_encrypted_response_enc?: string;
            authorization_signed_response_alg?: string;
            client_name?: string;
            encrypted_response_enc_values_supported?: string[];
            jwks?: {
                keys: {
                    alg?: string;
                    crv?: string;
                    d?: string;
                    dp?: string;
                    dq?: string;
                    e?: string;
                    ext?: boolean;
                    k?: string;
                    key_ops?: string[];
                    kid?: string;
                    kty: string;
                    n?: string;
                    oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                    p?: string;
                    q?: string;
                    qi?: string;
                    use?: string;
                    x?: string;
                    x5c?: string[];
                    x5t?: string;
                    "x5t#S256"?: string;
                    x5u?: string;
                    y?: string;
                    [key: string]: unknown;
                }[];
                [key: string]: unknown;
            };
            jwks_uri?: string;
            logo_uri?: string;
            vp_formats?: Record<
                string,
                { alg_values_supported?: string[]; [key: string]: unknown },
            >;
            vp_formats_supported?: {
                "dc+sd-jwt"?: {
                    "kb-jwt_alg_values"?: [string, ...string[]];
                    "sd-jwt_alg_values"?: [string, ...string[]];
                    [key: string]: unknown;
                };
                jwt_vc_json?: {
                    alg_values?: [string, ...string[]];
                    [key: string]: unknown;
                };
                ldp_vc?: {
                    cryptosuite_values?: [string, ...string[]];
                    proof_type_values?: [string, ...string[]];
                    [key: string]: unknown;
                };
                mso_mdoc?: {
                    device_signed_alg_values?: [number, ...number[]];
                    deviceauth_alg_values?: [number, ...number[]];
                    issuer_signed_alg_values?: [number, ...number[]];
                    issuerauth_alg_values?: [number, ...number[]];
                    [key: string]: unknown;
                };
                [key: string]: { [key: string]: unknown };
            };
            [key: string]: unknown;
        };
        jarm?: {
            audience?: string;
            authorizationServer?: string;
            encryption?: {
                jwk?: {
                    alg?: string;
                    crv?: string;
                    d?: string;
                    dp?: string;
                    dq?: string;
                    e?: string;
                    ext?: boolean;
                    k?: string;
                    key_ops?: string[];
                    kid?: string;
                    kty: string;
                    n?: string;
                    oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                    p?: string;
                    q?: string;
                    qi?: string;
                    use?: string;
                    x?: string;
                    x5c?: string[];
                    x5t?: string;
                    "x5t#S256"?: string;
                    x5u?: string;
                    y?: string;
                    [key: string]: unknown;
                };
                nonce: string;
            };
            expiresInSeconds?: number;
            jwtSigner?: JwtSigner;
            serverMetadata: {
                authorization_encryption_alg_values_supported: string[];
                authorization_encryption_enc_values_supported: string[];
                authorization_signing_alg_values_supported: string[];
            };
        };
        origin?: string;
    }
    Index

    Properties

    authorizationRequestPayload:
        | {
            client_id: string;
            client_id_scheme?: | "x509_hash"
            | "did"
            | "redirect_uri"
            | "pre-registered"
            | "entity_id"
            | "verifier_attestation"
            | "x509_san_dns"
            | "x509_san_uri";
            client_metadata?: {
                authorization_encrypted_response_alg?: string;
                authorization_encrypted_response_enc?: string;
                authorization_signed_response_alg?: string;
                client_name?: string;
                encrypted_response_enc_values_supported?: string[];
                jwks?: {
                    keys: {
                        alg?: string;
                        crv?: string;
                        d?: string;
                        dp?: string;
                        dq?: string;
                        e?: string;
                        ext?: boolean;
                        k?: string;
                        key_ops?: string[];
                        kid?: string;
                        kty: string;
                        n?: string;
                        oth?: { d?: ...; r?: ...; t?: ...; [key: ...]: ... }[];
                        p?: string;
                        q?: string;
                        qi?: string;
                        use?: string;
                        x?: string;
                        x5c?: string[];
                        x5t?: string;
                        "x5t#S256"?: string;
                        x5u?: string;
                        y?: string;
                        [key: string]: unknown;
                    }[];
                    [key: string]: unknown;
                };
                jwks_uri?: string;
                logo_uri?: string;
                vp_formats?: Record<
                    string,
                    { alg_values_supported?: string[]; [key: string]: unknown },
                >;
                vp_formats_supported?: {
                    "dc+sd-jwt"?: {
                        "kb-jwt_alg_values"?: [string, ...string[]];
                        "sd-jwt_alg_values"?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    jwt_vc_json?: {
                        alg_values?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    ldp_vc?: {
                        cryptosuite_values?: [string, ...string[]];
                        proof_type_values?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    mso_mdoc?: {
                        device_signed_alg_values?: [number, ...number[]];
                        deviceauth_alg_values?: [number, ...number[]];
                        issuer_signed_alg_values?: [number, ...number[]];
                        issuerauth_alg_values?: [number, ...number[]];
                        [key: string]: unknown;
                    };
                    [key: string]: { [key: string]: unknown };
                };
                [key: string]: unknown;
            };
            client_metadata_uri?: string;
            dcql_query?: any;
            nonce: string;
            presentation_definition?: any;
            presentation_definition_uri?: string;
            redirect_uri?: string;
            request_uri?: string;
            request_uri_method?: string;
            response_mode?: "direct_post.jwt"
            | "direct_post";
            response_type: "vp_token";
            response_uri?: string;
            scope?: string;
            state?: string;
            transaction_data?: string[];
            trust_chain?: [string, ...string[]];
            verifier_attestations?: {
                credential_ids?: string[];
                data: string | Record<string, unknown>;
                format: string;
            }[];
            verifier_info?: {
                credential_ids?: string[];
                data: string
                | Record<string, unknown>;
                format: string;
            }[];
            wallet_nonce?: string;
            [key: string]: unknown;
        }
        | {
            client_id?: string;
            client_id_scheme?: undefined;
            client_metadata?: {
                authorization_encrypted_response_alg?: string;
                authorization_encrypted_response_enc?: string;
                authorization_signed_response_alg?: string;
                client_name?: string;
                encrypted_response_enc_values_supported?: string[];
                jwks?: {
                    keys: {
                        alg?: string;
                        crv?: string;
                        d?: string;
                        dp?: string;
                        dq?: string;
                        e?: string;
                        ext?: boolean;
                        k?: string;
                        key_ops?: string[];
                        kid?: string;
                        kty: string;
                        n?: string;
                        oth?: { d?: ...; r?: ...; t?: ...; [key: ...]: ... }[];
                        p?: string;
                        q?: string;
                        qi?: string;
                        use?: string;
                        x?: string;
                        x5c?: string[];
                        x5t?: string;
                        "x5t#S256"?: string;
                        x5u?: string;
                        y?: string;
                        [key: string]: unknown;
                    }[];
                    [key: string]: unknown;
                };
                jwks_uri?: string;
                logo_uri?: string;
                vp_formats?: Record<
                    string,
                    { alg_values_supported?: string[]; [key: string]: unknown },
                >;
                vp_formats_supported?: {
                    "dc+sd-jwt"?: {
                        "kb-jwt_alg_values"?: [string, ...string[]];
                        "sd-jwt_alg_values"?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    jwt_vc_json?: {
                        alg_values?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    ldp_vc?: {
                        cryptosuite_values?: [string, ...string[]];
                        proof_type_values?: [string, ...string[]];
                        [key: string]: unknown;
                    };
                    mso_mdoc?: {
                        device_signed_alg_values?: [number, ...number[]];
                        deviceauth_alg_values?: [number, ...number[]];
                        issuer_signed_alg_values?: [number, ...number[]];
                        issuerauth_alg_values?: [number, ...number[]];
                        [key: string]: unknown;
                    };
                    [key: string]: { [key: string]: unknown };
                };
                [key: string]: unknown;
            };
            dcql_query?: any;
            expected_origins?: string[];
            nonce: string;
            presentation_definition?: any;
            response_mode: "dc_api"
            | "dc_api.jwt"
            | "w3c_dc_api.jwt"
            | "w3c_dc_api";
            response_type: "vp_token";
            scope?: undefined;
            state?: string;
            transaction_data?: string[];
            trust_chain?: [string, ...string[]];
            verifier_attestations?: {
                credential_ids?: string[];
                data: string | Record<string, unknown>;
                format: string;
            }[];
            verifier_info?: {
                credential_ids?: string[];
                data: string
                | Record<string, unknown>;
                format: string;
            }[];
            [key: string]: unknown;
        }
    authorizationResponsePayload: {
        access_token?: string;
        expires_in?: number;
        id_token?: string;
        presentation_submission?: any;
        refresh_token?: string;
        state?: string;
        token_type?: string;
        vp_token:
            | string
            | Record<string, any>
            | [string | Record<string, any>, ...(string | Record<string, any>)[]]
            | Record<
                string,
                | string
                | Record<string, any>
                | [string | Record<string, any>, ...(string | Record<string, any>)[]],
            >;
        [key: string]: unknown;
    } & { state?: undefined }
    callbacks: Pick<CallbackContext, "signJwt" | "encryptJwe" | "fetch">
    clientMetadata?: {
        authorization_encrypted_response_alg?: string;
        authorization_encrypted_response_enc?: string;
        authorization_signed_response_alg?: string;
        client_name?: string;
        encrypted_response_enc_values_supported?: string[];
        jwks?: {
            keys: {
                alg?: string;
                crv?: string;
                d?: string;
                dp?: string;
                dq?: string;
                e?: string;
                ext?: boolean;
                k?: string;
                key_ops?: string[];
                kid?: string;
                kty: string;
                n?: string;
                oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                p?: string;
                q?: string;
                qi?: string;
                use?: string;
                x?: string;
                x5c?: string[];
                x5t?: string;
                "x5t#S256"?: string;
                x5u?: string;
                y?: string;
                [key: string]: unknown;
            }[];
            [key: string]: unknown;
        };
        jwks_uri?: string;
        logo_uri?: string;
        vp_formats?: Record<
            string,
            { alg_values_supported?: string[]; [key: string]: unknown },
        >;
        vp_formats_supported?: {
            "dc+sd-jwt"?: {
                "kb-jwt_alg_values"?: [string, ...string[]];
                "sd-jwt_alg_values"?: [string, ...string[]];
                [key: string]: unknown;
            };
            jwt_vc_json?: {
                alg_values?: [string, ...string[]];
                [key: string]: unknown;
            };
            ldp_vc?: {
                cryptosuite_values?: [string, ...string[]];
                proof_type_values?: [string, ...string[]];
                [key: string]: unknown;
            };
            mso_mdoc?: {
                device_signed_alg_values?: [number, ...number[]];
                deviceauth_alg_values?: [number, ...number[]];
                issuer_signed_alg_values?: [number, ...number[]];
                issuerauth_alg_values?: [number, ...number[]];
                [key: string]: unknown;
            };
            [key: string]: { [key: string]: unknown };
        };
        [key: string]: unknown;
    }

    Optional client metadata to use for sending the authorization response. In case of e.g. OpenID Federation the client metadata needs to be resolved and verified externally.

    jarm?: {
        audience?: string;
        authorizationServer?: string;
        encryption?: {
            jwk?: {
                alg?: string;
                crv?: string;
                d?: string;
                dp?: string;
                dq?: string;
                e?: string;
                ext?: boolean;
                k?: string;
                key_ops?: string[];
                kid?: string;
                kty: string;
                n?: string;
                oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                p?: string;
                q?: string;
                qi?: string;
                use?: string;
                x?: string;
                x5c?: string[];
                x5t?: string;
                "x5t#S256"?: string;
                x5u?: string;
                y?: string;
                [key: string]: unknown;
            };
            nonce: string;
        };
        expiresInSeconds?: number;
        jwtSigner?: JwtSigner;
        serverMetadata: {
            authorization_encryption_alg_values_supported: string[];
            authorization_encryption_enc_values_supported: string[];
            authorization_signing_alg_values_supported: string[];
        };
    }
    origin?: string

    The origin of the reuqest, required when creating a response for the Digital Credentials API.