Rocky_Mountain_Vending/.pnpm-store/v10/files/f6/e5fec9253999c816e18836024932f82f6ff6bd8287b8094eff4bbf4e3081b69c39f2e8a3b2b23afb15eab94903f767ab53d3cbfcf9203656936254cd7a9d1a
DMleadgen 46d973904b
Initial commit: Rocky Mountain Vending website
Next.js website for Rocky Mountain Vending company featuring:
- Product catalog with Stripe integration
- Service areas and parts pages
- Admin dashboard with Clerk authentication
- SEO optimized pages with JSON-LD structured data

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 16:22:15 -07:00

135 lines
3.2 KiB
Text

import {
StripeElementBase,
StripeElementStyle,
StripeElementClasses,
StripeElementChangeEvent,
} from './base';
export type StripeIbanElement = StripeElementBase & {
/**
* The change event is triggered when the `Element`'s value changes.
*/
on(
eventType: 'change',
handler: (event: StripeIbanElementChangeEvent) => any
): StripeIbanElement;
once(
eventType: 'change',
handler: (event: StripeIbanElementChangeEvent) => any
): StripeIbanElement;
off(
eventType: 'change',
handler?: (event: StripeIbanElementChangeEvent) => any
): StripeIbanElement;
/**
* Triggered when the element is fully rendered and can accept `element.focus` calls.
*/
on(
eventType: 'ready',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
once(
eventType: 'ready',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
off(
eventType: 'ready',
handler?: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
/**
* Triggered when the element gains focus.
*/
on(
eventType: 'focus',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
once(
eventType: 'focus',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
off(
eventType: 'focus',
handler?: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
/**
* Triggered when the element loses focus.
*/
on(
eventType: 'blur',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
once(
eventType: 'blur',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
off(
eventType: 'blur',
handler?: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
/**
* Triggered when the escape key is pressed within the element.
*/
on(
eventType: 'escape',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
once(
eventType: 'escape',
handler: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
off(
eventType: 'escape',
handler?: (event: {elementType: 'iban'}) => any
): StripeIbanElement;
/**
* Updates the options the `IbanElement` was initialized with.
* Updates are merged into the existing configuration.
*
* The styles of an `IbanElement` can be dynamically changed using `element.update`.
* This method can be used to simulate CSS media queries that automatically adjust the size of elements when viewed on different devices.
*/
update(options: Partial<StripeIbanElementOptions>): void;
};
export interface StripeIbanElementOptions {
classes?: StripeElementClasses;
style?: StripeElementStyle;
supportedCountries?: string[];
placeholderCountry?: string;
/**
* Appearance of the icon in the Element.
*/
iconStyle?: 'default' | 'solid';
/**
* Hides the icon in the Element.
* Default is `false`.
*/
hideIcon?: boolean;
/**
* Applies a disabled state to the Element such that user input is not accepted.
* Default is false.
*/
disabled?: boolean;
}
export interface StripeIbanElementChangeEvent extends StripeElementChangeEvent {
/**
* The type of element that emitted this event.
*/
elementType: 'iban';
country: string;
bankName: string;
}