import { type PropType } from 'vue-demi'; import type { Appearance, CssFontSource, CustomFontSource, StripeElementLocale, StripeElements, StripeElementsOptions } from '@stripe/stripe-js'; import type { CaptureMethod, ElementsMode, SetupFutureUsage } from '../types/index.js'; import type { ScopedSlot, StatusSlots, VueStripeComponent } from '../utils/element-types.js'; declare const elementsProps: { /** Client secret of a PaymentIntent or SetupIntent (Intent-based flow). */ clientSecret: { type: PropType; default: undefined; }; /** Deferred Intent flow: 'payment' | 'setup' | 'subscription'. */ mode: { type: PropType; default: undefined; }; /** Currency code (e.g. 'usd') for the deferred Intent flow. */ currency: { type: PropType; default: undefined; }; /** Amount in the smallest currency unit, for 'payment' and 'subscription' modes. */ amount: { type: PropType; default: undefined; }; setupFutureUsage: { type: PropType; default: undefined; }; captureMethod: { type: PropType; default: undefined; }; /** Appearance API options (theme, variables, rules). Applied live via elements.update(). */ appearance: { type: PropType; default: undefined; }; /** Custom fonts (CssFontSource | CustomFontSource); creation time only. */ fonts: { type: PropType | undefined>; default: undefined; }; /** One of Stripe's supported Elements locales (`'auto'`, `'en'`, `'fr'`, ...). */ locale: { type: PropType; default: undefined; }; /** Any other `stripe.elements()` option (e.g. allowedPaymentMethodTypes in mode-based flows). */ options: { type: PropType | undefined>; default: undefined; }; }; /** Slot name -> the slot's props. */ type ElementsSlots = StatusSlots & { default?: ScopedSlot; }; /** Event name -> payload. */ type ElementsEvents = { ready: [elements: StripeElements]; error: [message: string]; 'update-end': []; }; /** * Creates a Stripe Elements group (`stripe.elements()`) and provides it to the * element components inside. Use `clientSecret` (Intent-based) or * `mode` + `currency` + `amount` (deferred Intent). */ declare const _default: VueStripeComponent, ElementsEvents, ElementsSlots>; export default _default;