import { EventEmitter } from '../../../stencil-public-runtime';
import { Invoice, Order } from '../../../types';
export declare class ScStripePaymentElement {
  el: HTMLScStripePaymentElementElement;
  /** Holds the element container. */
  private container;
  private elements;
  private element;
  private stripe;
  /** The client secret to render the payment element */
  clientSecret: string;
  /** The stripe publishable key. */
  publishableKey: string;
  /** The account id. */
  accountId: string;
  /** Order to watch */
  order: Order | Invoice;
  /** Should we collect an address? */
  address: boolean;
  /** Success url to redirect. */
  successUrl: string;
  /** The error. */
  error: string;
  /** Is this yet loaded. */
  loaded: boolean;
  /** Are we confirming the order? */
  confirming: boolean;
  /** The order/invoice was paid for. */
  scPaid: EventEmitter<void>;
  /** There was a payment error. */
  scPayError: EventEmitter<any>;
  /** Maybe load the stripe element on load. */
  componentDidLoad(): Promise<void>;
  /** Reload element if client secret changes. */
  handleClientSecretChange(val: any, prev: any): void;
  /**
   * Watch order status and maybe confirm the order.
   */
  maybeConfirmOrder(val: any): Promise<void>;
  confirm(type: any, args?: {}): Promise<void>;
  loadElement(): void;
  render(): any;
}
