iOS Features Calls

CRPTWalletsManager

Provides in-app functions for getting a list of users' accounts. Available methods:

CRPTWalletsManager.shared.observe((WalletsView) -> Void) - observe of wallet state 

CRPTWalletsManager.shared.currentState() -> WalletsView? - current wallet state if available

CRPTWalletsManager.shared.update((WalletsView?) -> Void) - update request of wallet state

public struct WalletsView: Codable {
    public var fiat: WalletFiatView?
    public var wallets: FoundationArray<WalletModel>
}

public struct WalletFiatView: Codable {
    public var amount: Decimal? // Equivalent amount of money in fiat
    public var change: Decimal? // Changes in last day
    public var changePercent: Decimal? // Changes in last day in percent
    public var customerCurrency: String? // Fiat currency
}

public struct WalletModel: Codable {
    public var address: String? // Wallet address
    public var allowOperations: [String]? // Available operations
    public var balance: Decimal? // Amount of wallet
    public var currency: String // Currency
    public var fiat: WalletFiatView?
    public var _id: Int64? // Wallet identifier
}

public final class FoundationArray<Element> {
    public let list: [Element]
}

CRPTIdentityVerificationRouter

Identity KYC Router

let identityRouter = CRPTIdentityVerificationRouter(with: navigationController) - construct router
identityRouter.show(with: () -> Void) - start kyc router flow with success callback

CRPTReceiveRouter

Receive router

let router = CRPTReceiveRouter(with: navigationController) - construct router
router.show() - start flow

CRPTSendToWalletRouter

Router for send money by address

let router = CRPTSendToWalletRouter(with: navigationController) - construct router
router.show() - start flow

CRPTExchangeRouter

Exchange router

let router = CRPTExchangeRouter(with: navigationController) - construct router
router.show() - start flow

CRPTPayInRouter

Buy crypto by card router

let router = CRPTPayInRouter(with: navigationController) - construct router
router.show() - start flow

CRPTPayOutRouter

Send money to card router

let router = CRPTPayOutRouter(with: navigationController) - construct router
router.show() - start flow

CRPTCardsRouter

Set tab bar item with card or present flow in a modal window

let router = CRPTCardsRouter() - construct router
router.start() -> UINavigationController - get navigation with cards
router.present(navigationController: UINavigationController) - present flow in modal window

CRPTHistoryRouter

Push history screen to the navigation controller

let router = CRPTHistoryRouter(with: navigationController) - construct router
router.show() - start flow