1import { GetBillingPortalConfiguration } from "@distilled.cloud/stripe/stripe";
2import * as Layer from "effect/Layer";
3import { RetrieveBillingPortalConfiguration } from "./RetrieveBillingPortalConfiguration.ts";
4import { makeHttpStripeIdBinding } from "./StripeHttp.ts";
5
6/**
7 * HTTP implementation of {@link RetrieveBillingPortalConfiguration}.
8 *
9 * @layer
10 * @product Billing
11 * @provides Stripe.RetrieveBillingPortalConfiguration
12 */
13export const RetrieveBillingPortalConfigurationHttp = Layer.effect(
14 RetrieveBillingPortalConfiguration,
15 makeHttpStripeIdBinding({
16 tag: "Stripe.RetrieveBillingPortalConfiguration",
17 operation: GetBillingPortalConfiguration,
18 idField: "configuration",
19 permissions: ["billing_portal_read"],
20 }),
21);