import { Step } from "@fireenjin/components/dist/types/typings";
import { Invoice, User } from "../../sdk";
export declare class PaymentFlow {
  flowEl: HTMLFireenjinFlowElement;
  user: Partial<User>;
  jobId: string;
  currentPath: string;
  currentStep: string;
  amount: number;
  email: string;
  method: string;
  checkFront: string;
  checkBack: string;
  checkAmount: number;
  last4: string;
  expirationMonth: number;
  expirationYear: number;
  invoice: Invoice;
  disableNext: boolean;
  disablePrev: boolean;
  disableSave: boolean;
  steps: Step[];
  currentSlideIndex: number;
  loading: boolean;
  hasEnteredCard: boolean;
  token: string;
  brand: string;
  paths: {
    [pathName: string]: () => Step[];
  };
  /**
   * Set the path of the flow
   * @param path The path name to change to
   * @returns A list of steps for the current path
   */
  setPath(path?: string): Promise<Step[]>;
  onCheckScan(event: any): Promise<void>;
  onChange(event: any): Promise<void>;
  onSlideChange(event: any): Promise<void>;
  hasCheckScanned(): boolean;
  confirmCheckScan(): Promise<void>;
  componentWillLoad(): Promise<void>;
  render(): any;
}
