@commercelayer/react-components
Version:
The Official Commerce Layer React Components
20 lines (19 loc) • 1.68 kB
TypeScript
import type { PaypalConfig } from "../components/payment_source/PaypalPayment";
import { type PaymentMethodConfig, type PaymentResource } from "../reducers/PaymentMethodReducer";
import type { ExternalPayment } from "@commercelayer/sdk";
import { type StringReplace } from "./replace";
import { type SnakeToCamelCase } from "./snakeToCamelCase";
import type { StripeConfig } from "../components/payment_source/StripePayment";
import type { CheckoutComConfig } from "../components/payment_source/CheckoutComPayment";
interface Params<R extends PaymentResource, C extends PaymentMethodConfig> {
resource: R;
config: C;
keys: R[];
}
export type ResourceKeys<K extends PaymentResource> = SnakeToCamelCase<StringReplace<StringReplace<K, "payments", "payment">, "transfers", "transfer">>;
export declare function getPaymentAttributes<R extends PaymentResource = PaymentResource, C extends PaymentMethodConfig = PaymentMethodConfig>(params: Params<R, C>): Pick<C, ResourceKeys<R>> | undefined;
export declare function getPaypalAttributes(paymentResource: PaymentResource, config: PaymentMethodConfig): Pick<PaypalConfig, "return_url" | "cancel_url"> | undefined;
export declare function getExternalPaymentAttributes(paymentResource: PaymentResource, config: PaymentMethodConfig): Pick<ExternalPayment, "payment_source_token"> | undefined;
export declare function getStripeAttributes(paymentResource: PaymentResource, config: PaymentMethodConfig): Pick<StripeConfig, "return_url"> | undefined;
export declare function getCkoAttributes(paymentResource: PaymentResource, config: PaymentMethodConfig): Pick<CheckoutComConfig, "success_url" | "failure_url"> | undefined;
export {};