import * as Schema from "effect/Schema";
import { API } from "../client";
import * as T from "../traits";
// Input Schema
export const PostPaymentMethodDomainsPaymentMethodDomainInput = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    payment_method_domain: Schema.String.pipe(T.PathParam()),
    enabled: Schema.optional(Schema.Boolean),
    expand: Schema.optional(Schema.Array(Schema.String)),
}).pipe(T.Http({
    method: "POST",
    path: "/v1/payment_method_domains/{payment_method_domain}",
    contentType: "form-urlencoded",
}));
// Output Schema
export const PostPaymentMethodDomainsPaymentMethodDomainOutput = 
/*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
    amazon_pay: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
    apple_pay: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
    created: Schema.Number,
    domain_name: Schema.String,
    enabled: Schema.Boolean,
    google_pay: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
    id: Schema.String,
    klarna: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
    link: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
    livemode: Schema.Boolean,
    object: Schema.Literals(["payment_method_domain"]),
    paypal: Schema.Struct({
        status: Schema.Literals(["active", "inactive"]),
        status_details: Schema.optional(Schema.Struct({
            error_message: Schema.String,
        })),
    }),
});
// The operation
/**
 * Update a payment method domain
 *
 * <p>Updates an existing payment method domain.</p>
 */
export const PostPaymentMethodDomainsPaymentMethodDomain = 
/*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
    inputSchema: PostPaymentMethodDomainsPaymentMethodDomainInput,
    outputSchema: PostPaymentMethodDomainsPaymentMethodDomainOutput,
}));
//# sourceMappingURL=PostPaymentMethodDomainsPaymentMethodDomain.js.map