UNPKG

@bebapps/rapyd-sdk

Version:

An un-official [Rapyd](https://rapyd.net) SDK for Node.js.

64 lines (56 loc) 2.62 kB
import { RapydClient } from '../../../core/RapydClient'; import { Wallet } from '../types/Wallet'; import { WalletError } from '../enums/WalletError'; import { CreateWalletRequest } from '../requests/CreateWalletRequest'; import { UpdateWalletRequest } from '../requests/UpdateWalletRequest'; import { DisableWalletRequest } from '../requests/DisableWalletRequest'; import { EnableWalletRequest } from '../requests/EnableWalletRequest'; import { RetrieveWalletRequest } from '../requests/RetrieveWalletRequest'; import { DeleteWalletRequest } from '../requests/DeleteWalletRequest'; export async function createWallet<R = Wallet>(client: RapydClient, request: CreateWalletRequest): Promise<R> { const response = await client.post('/v1/user', { contact: request.contact, email: request.email, ewallet_reference_id: request.ewallet_reference_id, first_name: request.first_name, last_name: request.last_name, metadata: request.metadata, phone_number: request.phone_number, type: request.type, }); return await response.data<R, WalletError>(); } export async function updateWallet<R = Wallet>(client: RapydClient, request: UpdateWalletRequest): Promise<R> { const response = await client.put('/v1/user', { email: request.email, ewallet: request.ewallet, ewallet_reference_id: request.ewallet_reference_id, first_name: request.first_name, last_name: request.last_name, metadata: request.metadata, phone_number: request.phone_number, }); return await response.data<R, WalletError>(); } export async function disableWallet<R = Wallet>(client: RapydClient, request: DisableWalletRequest): Promise<R> { const response = await client.put('/v1/user/disable', { ewallet: request.ewallet, phone_number: request.phone_number, }); return await response.data<R, WalletError>(); } export async function enableWallet<R = Wallet>(client: RapydClient, request: EnableWalletRequest): Promise<R> { const response = await client.put('/v1/user/enable', { ewallet: request.ewallet, phone_number: request.phone_number, }); return await response.data<R, WalletError>(); } export async function retrieveWallet<R = Wallet>(client: RapydClient, request: RetrieveWalletRequest): Promise<R> { const response = await client.get('/v1/user/{}', request.wallet); return await response.data<R, WalletError>(); } export async function deleteWallet<R = Wallet>(client: RapydClient, request: DeleteWalletRequest): Promise<R> { const response = await client.delete('/v1/user/{}', request.wallet); return await response.data<R, WalletError>(); }