import * as z from "zod/v3"; import { Result as SafeParseResult } from "../../types/fp.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; import { CardAccountUpdater, CardAccountUpdater$Outbound } from "./cardaccountupdater.js"; import { CardAddress, CardAddress$Outbound } from "./cardaddress.js"; import { CardBrand } from "./cardbrand.js"; import { CardExpiration, CardExpiration$Outbound } from "./cardexpiration.js"; import { CardType } from "./cardtype.js"; import { CardVerification, CardVerification$Outbound } from "./cardverification.js"; import { DomesticPullFromCard } from "./domesticpullfromcard.js"; import { DomesticPushToCard } from "./domesticpushtocard.js"; /** * A card as contained within a payment method. */ export type PaymentMethodsCard = { /** * ID of the card. */ cardID: string; /** * Uniquely identifies a linked payment card or token. * * @remarks * For Apple Pay, the fingerprint is based on the tokenized card number and may vary based on the user's device. * This field can be used to identify specific payment methods across multiple accounts on your platform. */ fingerprint: string; /** * The card brand. */ brand: CardBrand; /** * The type of the card. */ cardType: CardType; /** * Last four digits of the card number */ lastFourCardNumber: string; /** * The first six to eight digits of the card number, which identifies the financial institution that issued the card. */ bin: string; /** * The expiration date of the card or token. */ expiration: CardExpiration; /** * The name of the cardholder as it appears on the card. */ holderName?: string | undefined; billingAddress: CardAddress; /** * The results of submitting cardholder data to a card network for verification. */ cardVerification: CardVerification; /** * Financial institution that issued the card. */ issuer?: string | undefined; /** * Country where the card was issued. */ issuerCountry?: string | undefined; /** * Indicates cardholder has authorized card to be stored for future payments. */ cardOnFile?: boolean | undefined; merchantAccountID?: string | undefined; /** * The results of the most recent card update request. */ cardAccountUpdater?: CardAccountUpdater | undefined; /** * Indicates which level of domestic push-to-card transfer is supported by the card, if any. */ domesticPushToCard?: DomesticPushToCard | undefined; /** * Indicates if the card supports domestic pull-from-card transfer. */ domesticPullFromCard?: DomesticPullFromCard | undefined; }; /** @internal */ export declare const PaymentMethodsCard$inboundSchema: z.ZodType; /** @internal */ export type PaymentMethodsCard$Outbound = { cardID: string; fingerprint: string; brand: string; cardType: string; lastFourCardNumber: string; bin: string; expiration: CardExpiration$Outbound; holderName?: string | undefined; billingAddress: CardAddress$Outbound; cardVerification: CardVerification$Outbound; issuer?: string | undefined; issuerCountry?: string | undefined; cardOnFile?: boolean | undefined; merchantAccountID?: string | undefined; cardAccountUpdater?: CardAccountUpdater$Outbound | undefined; domesticPushToCard?: string | undefined; domesticPullFromCard?: string | undefined; }; /** @internal */ export declare const PaymentMethodsCard$outboundSchema: z.ZodType; export declare function paymentMethodsCardToJSON(paymentMethodsCard: PaymentMethodsCard): string; export declare function paymentMethodsCardFromJSON(jsonString: string): SafeParseResult; //# sourceMappingURL=paymentmethodscard.d.ts.map