1import * as paymentcryptographydata from "@distilled.cloud/aws/payment-cryptography-data";
2import * as Layer from "effect/Layer";
3import { makePaymentCryptographyKeyHttpBinding } from "./BindingHttp.ts";
4import { VerifyAuthRequestCryptogram } from "./VerifyAuthRequestCryptogram.ts";
5
6/**
7 * HTTP implementation of {@link VerifyAuthRequestCryptogram} — grants the
8 * host Function `payment-cryptography:VerifyAuthRequestCryptogram` on the
9 * issuer master key and calls the Payment Cryptography Data API at runtime.
10 * A cryptogram mismatch fails with the typed `VerificationFailedException`.
11 */
12export const VerifyAuthRequestCryptogramHttp = Layer.effect(
13 VerifyAuthRequestCryptogram,
14 makePaymentCryptographyKeyHttpBinding({
15 tag: "AWS.PaymentCryptography.VerifyAuthRequestCryptogram",
16 operation: paymentcryptographydata.verifyAuthRequestCryptogram,
17 actions: ["payment-cryptography:VerifyAuthRequestCryptogram"],
18 }),
19);