import { CreateSubscriptionRequest } from './CreateSubscriptionRequest' import { APIResponse } from './APIResponse' import { Subscription } from './Subscription' import { GetSubscriptionsRequest } from './GetSubscriptionsRequest' import { SubscriptionsList } from './SubscriptionsList' import { Transfer } from './Transfer' import { TransferRequest } from './TransferRequest' import { WyreAccount } from './WyreAccount' import { CreateAccountRequest } from './CreateAccountRequest' import { UploadDocumentParams } from './UploadDocumentParams' import { CreateWyreWalletParams } from './CreateWyreWalletParams' import { WyreWallet } from './WyreWallet' import { CreateMultipleWalletsParams } from './CreateMultipleWalletsParams' import { EditWalletParams } from './EditWalletParams' import { PaymentMethodParams } from './PaymentMethodParams' import { PaymentMethod } from './PaymentMethod' import { UploadPaymentMethodDocumentParams } from './UploadPaymentMethodDocumentParams' import { UpdateAccountRequest } from './UpdateAccountRequest' import { WyreUser } from './WyreUser' import { CreateUserRequest } from './CreateUserRequest' import { WyreUserKYCData } from './WyreUserKYCData' import { MigrateAccountResponse } from './MigrateAccountResponse' export interface WyreAPIInterface { initialize() createUser(params: CreateUserRequest): Promise> getUser(userID): Promise> uploadUserKYCData( userID: string, kycData: WyreUserKYCData, ): Promise> createAccount(params: CreateAccountRequest): Promise> updateAccount( accountID, updates: UpdateAccountRequest, ): Promise> migrateAccount( accountID: string, ): Promise> uploadDocument(params: UploadDocumentParams, buff: Buffer): Promise> uploadPaymentMethodDocument( params: UploadPaymentMethodDocumentParams, buff: Buffer, ): Promise> getAccountInfoV2(): Promise> getAccountInfoV3(accountID: string): Promise> addPaymentMethod( params: PaymentMethodParams, ): Promise> getPaymentMethod( paymentMethodID: string, ): Promise> listPaymentMethods(): Promise> deletePaymentMethod( paymentMethodID: string, ): Promise> getTransfers(transferID: string): Promise> createTransfer(transferRequest: TransferRequest): Promise> confirmTransfer(transferID): Promise> createSubscription(subscribeRequest: CreateSubscriptionRequest): Promise> deleteSubscription(subscriptionID): Promise> getSubscriptions(subscriptionsReq: GetSubscriptionsRequest): Promise> createWallet(walletParams: CreateWyreWalletParams): Promise> createMultipleWallets(params: CreateMultipleWalletsParams): Promise> lookupWallet(walletID: string): Promise> editWallet(walletID: string, params: EditWalletParams): Promise> deleteWallet(walletID: string): Promise> listWallets(limit: number, offset: number): Promise> getMasqueraded(accountToken: string): WyreAPIInterface }