import type * as Whop from "../index.mjs"; export type PaymentMethod = /** * A saved payment method with no type-specific details available. */ Whop.PaymentMethod.BasePaymentMethod /** * A saved card payment method, including brand, last four digits, and expiration details. */ | Whop.PaymentMethod.CardPaymentMethod /** * A saved US bank account payment method, including bank name, last four digits, and account type. */ | Whop.PaymentMethod.UsBankAccountPaymentMethod /** * A saved Cash App payment method, including the buyer's cashtag and unique identifier. */ | Whop.PaymentMethod.CashappPaymentMethod /** * A saved iDEAL payment method, including the customer's bank name and BIC code. */ | Whop.PaymentMethod.IdealPaymentMethod /** * A saved SEPA Direct Debit payment method, including the bank code, country, and last four IBAN digits. */ | Whop.PaymentMethod.SepaDebitPaymentMethod; export declare namespace PaymentMethod { interface BasePaymentMethod { typename: "BasePaymentMethod"; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodBasePaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; } namespace PaymentMethodBasePaymentMethod { /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } } interface CardPaymentMethod { typename: "CardPaymentMethod"; /** The card-specific details for this payment method, including brand, last four digits, and expiration. */ card: PaymentMethodCardPaymentMethod.Card; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Whether this card has the payer identity document required by its payment provider. */ has_payer_document: boolean; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodCardPaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; } namespace PaymentMethodCardPaymentMethod { /** * The card-specific details for this payment method, including brand, last four digits, and expiration. */ interface Card { /** The card network (e.g., visa, mastercard, amex). Null if the brand could not be determined. */ brand: Whop.CardBrands | null; /** The two-digit expiration month of the card (1-12). Null if not available. */ exp_month: number | null; /** The two-digit expiration year of the card (e.g., 27 for 2027). Null if not available. */ exp_year: number | null; /** Whether the card is past its expiration month. An expired card cannot take a new charge. */ expired: boolean; /** A stable identifier for the underlying card. Two payment methods with the same fingerprint are the same card. Null if not available. */ fingerprint: string | null; /** How the card is funded by the issuer. Null if the funding type could not be determined. */ funding_type: Whop.CardFundingTypes | null; /** The last four digits of the card number. Null if not available. */ last4: string | null; /** Whether this card was verified with 3D Secure, either when it was saved or on a payment that used it. */ three_ds_verified: boolean; } /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } } interface UsBankAccountPaymentMethod { typename: "UsBankAccountPaymentMethod"; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodUsBankAccountPaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; /** The bank account-specific details for this payment method, including bank name and last four digits. */ us_bank_account: PaymentMethodUsBankAccountPaymentMethod.UsBankAccount; } namespace PaymentMethodUsBankAccountPaymentMethod { /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } /** * The bank account-specific details for this payment method, including bank name and last four digits. */ interface UsBankAccount { /** The type of bank account (e.g., checking, savings). */ account_type: string | null; /** The name of the financial institution holding the account. */ bank_name: string | null; /** The last four digits of the bank account number. */ last4: string | null; } } interface CashappPaymentMethod { typename: "CashappPaymentMethod"; /** The Cash App-specific details for this payment method, including cashtag and buyer ID. */ cashapp: PaymentMethodCashappPaymentMethod.Cashapp; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodCashappPaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; } namespace PaymentMethodCashappPaymentMethod { /** * The Cash App-specific details for this payment method, including cashtag and buyer ID. */ interface Cashapp { /** The unique and immutable identifier assigned by Cash App to the buyer. Null if not available. */ buyer_id: string | null; /** The public cashtag handle of the buyer on Cash App. Null if not available. */ cashtag: string | null; } /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } } interface IdealPaymentMethod { typename: "IdealPaymentMethod"; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodIdealPaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The iDEAL-specific details for this payment method, including bank name and BIC. */ ideal: PaymentMethodIdealPaymentMethod.Ideal; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; } namespace PaymentMethodIdealPaymentMethod { /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } /** * The iDEAL-specific details for this payment method, including bank name and BIC. */ interface Ideal { /** The name of the customer's bank used for the iDEAL transaction. Null if not available. */ bank: string | null; /** The Bank Identifier Code (BIC/SWIFT) of the customer's bank. Null if not available. */ bic: string | null; } } interface SepaDebitPaymentMethod { typename: "SepaDebitPaymentMethod"; /** The time of the event in ISO 8601 UTC format with millisecond precision */ created_at: string; /** Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ icons: PaymentMethodSepaDebitPaymentMethod.Icons; /** Represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`) input value will be accepted as an ID. */ id: string; /** The type of payment instrument stored on file (e.g., card, us_bank_account, cashapp, ideal, sepa_debit). */ payment_method_type: Whop.PaymentMethodTypes; /** The SEPA Direct Debit-specific details for this payment method, including bank code and last four IBAN digits. */ sepa_debit: PaymentMethodSepaDebitPaymentMethod.SepaDebit; } namespace PaymentMethodSepaDebitPaymentMethod { /** * Every rendition of the icon to display this payment method with. A saved card carries its brand's icon (Visa, Mastercard, ...) rather than the generic card art. */ interface Icons { /** The credit-card-proportioned tile (48x30). */ card: Icons.Card; /** The square tile (32x32). */ square: Icons.Square; } namespace Icons { /** * The credit-card-proportioned tile (48x30). */ interface Card { /** The colorway for dark surfaces. */ dark: Card.Dark; /** The colorway for light surfaces. */ light: Card.Light; } namespace Card { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } /** * The square tile (32x32). */ interface Square { /** The colorway for dark surfaces. */ dark: Square.Dark; /** The colorway for light surfaces. */ light: Square.Light; } namespace Square { /** * The colorway for dark surfaces. */ interface Dark { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } /** * The colorway for light surfaces. */ interface Light { /** Raster fallback at the shape's native size. */ png_1x: string; /** Raster fallback at double density. */ png_2x: string; /** Raster fallback at quadruple density. */ png_4x: string; /** The vector file. Prefer this everywhere SVG renders. */ svg: string; } } } /** * The SEPA Direct Debit-specific details for this payment method, including bank code and last four IBAN digits. */ interface SepaDebit { /** The bank code of the financial institution associated with this SEPA account. Null if not available. */ bank_code: string | null; /** The branch code of the financial institution associated with this SEPA account. Null if not available. */ branch_code: string | null; /** The two-letter ISO country code where the bank account is located. Null if not available. */ country: string | null; /** The last four digits of the IBAN associated with this SEPA account. Null if not available. */ last4: string | null; } } }