import { requireNativeModule } from "expo"; import { PaymentParameters, PaymentResult, QueryTransactionsResult, RefundResult, StaffMember, } from "./ReactNativeYoco.types"; import { PaymentType, ResultCodes, SupportedCurrency, } from "./ReactNativeYocoEnums"; declare class ReactNativeYocoModule { initialise(): void; configure(secret: string): void; getDeviceType(): string; pairTerminal(): Promise; charge( amountInCents: number, paymentType: PaymentType, currency: SupportedCurrency, tipInCents: number | null | undefined, paymentParameters: PaymentParameters | undefined ): Promise; getPaymentResult: ( transactionId: string, showResult: boolean ) => Promise; refund: ( transactionId: string, amountInCents: number, userInfo: Record | undefined, staffMember: StaffMember | undefined ) => Promise; queryTransactions: ( receiptNumber: string ) => Promise; } // This call loads the native module object from the JSI. export default requireNativeModule("ReactNativeYoco");