UNPKG

@paykit-sdk/core

Version:

The Payment Toolkit for Typescript

52 lines (49 loc) 1.18 kB
import { z } from 'zod'; // src/provider-schema.ts var PAYKIT_PROVIDER_METHODS = [ "createCheckout", "retrieveCheckout", "updateCheckout", "deleteCheckout", "createCustomer", "updateCustomer", "retrieveCustomer", "deleteCustomer", "createSubscription", "updateSubscription", "cancelSubscription", "deleteSubscription", "retrieveSubscription", "createPayment", "updatePayment", "retrievePayment", "deletePayment", "capturePayment", "cancelPayment", "createRefund", "handleWebhook" ]; var providerSchema = z.custom( (val) => { if (!val || typeof val !== "object") return false; const provider = val; if (typeof provider.providerName !== "string") return false; return PAYKIT_PROVIDER_METHODS.every( (method) => typeof provider[method] === "function" ); }, { message: "Invalid PayKit provider: Missing implementation for required methods." } ); var payKitAdapterMetadataSchema = z.object({ /** * The name of the adapter */ name: z.string(), /** * The version of the adapter */ version: z.string() }); export { PAYKIT_PROVIDER_METHODS, payKitAdapterMetadataSchema, providerSchema };