## The Elements object

Use an `Elements` instance to create and manage a group of individual `Element` instances.

## Create an Elements instance

`stripe.elements(options?: object)`

This method creates an `Elements` instance, which manages a group of elements. For the [Payment Element created without an Intent](https://docs.stripe.com/payments/accept-a-payment-deferred.md) and the [Express Checkout Element](https://docs.stripe.com/elements/express-checkout-element.md), see the [Elements object without an Intent](https://docs.stripe.com/js/elements_object/create_without_intent.md) reference instead.

- `options`
  A set of options to create this `Elements` instance with.
- `fonts`
  An array of custom fonts, which elements created from the `Elements` object can use. Fonts can be specified as [CssFontSource](#css_font_source_object) or [CustomFontSource](#custom_font_source_object) objects.
- `locale`
  A [locale](#supported_locales) to display placeholders and error strings in. Default is `auto` (Stripe detects the locale of the browser). Setting the locale does not affect the behavior of postal code validation—a valid postal code for the billing country of the card is still required. To indicate the direction of text for *right to left* languages such as Arabic and Hebrew, mount Elements underneath an HTML element that includes the `dir="rtl"` attribute.
- `clientSecret`
  Required to use with the [Payment Element](https://docs.stripe.com/payments/payment-element.md) and the [Link Authentication Element](https://docs.stripe.com/payments/link.md). The [client secret](https://docs.stripe.com/api/payment_intents/object.md#payment_intent_object-client_secret) for a PaymentIntent or SetupIntent.
- `appearance`
  Supported for the [Payment Element](https://docs.stripe.com/payments/payment-element.md), the [Link Authentication Element](https://docs.stripe.com/payments/link.md), and the [Address Element](https://docs.stripe.com/elements/address-element/.md). Match the design of your site with the [appearance option](https://docs.stripe.com/elements/appearance-api.md). The layout of each Element stays consistent, but you can modify colors, fonts, borders, padding, and more.
- `loader`
  Supported for the [Payment Element](https://docs.stripe.com/payments/payment-element.md), the [Link Authentication Element](https://docs.stripe.com/payments/link.md), and the [Address Element](https://docs.stripe.com/elements/address-element/.md). Display skeleton loader UI while waiting for Elements to be fully loaded, after they are mounted. Default is `'auto'` (Stripe determines if a loader UI should be shown).
- `currency`
  Used with the [Payment Element](https://docs.stripe.com/payments/payment-element.md). Influences available