1import { GetShippingRate } from "@distilled.cloud/stripe/stripe";
2import * as Layer from "effect/Layer";
3import { RetrieveShippingRate } from "./RetrieveShippingRate.ts";
4import { makeHttpStripeIdBinding } from "./StripeHttp.ts";
5
6/**
7 * HTTP implementation of {@link RetrieveShippingRate}. Provide it on the
8 * Function or Worker Effect.
9 *
10 * @layer
11 * @product Product
12 * @provides Stripe.RetrieveShippingRate
13 */
14export const RetrieveShippingRateHttp = Layer.effect(
15 RetrieveShippingRate,
16 makeHttpStripeIdBinding({
17 tag: "Stripe.RetrieveShippingRate",
18 operation: GetShippingRate,
19 idField: "shipping_rate_token",
20 permissions: ["shipping_rates_read"],
21 }),
22);