UNPKG

react-native-unit-components

Version:

Unit React Native components

76 lines (65 loc) 2.5 kB
import type { UNAccountData, UNCounterpartyAccountData, UNCardData, UNError, UNOnLoadResponseData, UNPayeeCounterparty } from '../../types/shared'; import type { UNAuthorizationData } from '../../types/shared/authorization.types'; import type { UNTransactionData } from '../../types/shared/transactions.types'; import type { UNAstraExternalCardData } from '../../types/shared/payments.types'; export enum RESPONSE_KEYS { errors = 'errors', card = 'cardResult', cards = 'cardsResult', account = 'accountResult', counterpartyAccount = 'counterpartyResult', transactions = 'transactionsResult', authorizations = 'authorizationsResult', repayment = 'repaymentResult', astraExternalCard = 'astraCardsResult', accountCards = 'accountCardsResult', counterpartiesResult = 'counterpartiesResult' } export type CardsOnLoadResponse = { [RESPONSE_KEYS.cards]: UNOnLoadResponseData<[UNCardData]> } export type CardOnLoadResponse = { [RESPONSE_KEYS.card]: UNOnLoadResponseData<UNCardData> } export type AccountOnLoadResponse = { [RESPONSE_KEYS.account]: UNOnLoadResponseData<UNAccountData> } export type AccountsOnLoadResponse = { [RESPONSE_KEYS.account]: UNOnLoadResponseData<[UNAccountData]> } export type ACHOnLoadResponse = { [RESPONSE_KEYS.account]: UNOnLoadResponseData<UNAccountData> | UNOnLoadResponseData<[UNAccountData]>, [RESPONSE_KEYS.counterpartyAccount]: UNOnLoadResponseData<[UNCounterpartyAccountData]> } export type ActivityOnLoadResponse = { [RESPONSE_KEYS.authorizations]: UNOnLoadResponseData<[UNAuthorizationData]>, [RESPONSE_KEYS.transactions]: UNOnLoadResponseData<[UNTransactionData]> } export type FundAccountPaymentOnLoadResponse = { // Currently, FundAccountPaymentComponent get 2 on load events: 1- for the external cards, 2- for the internal cards; // we may consider unite them. [RESPONSE_KEYS.astraExternalCard]?: UNOnLoadResponseData<[UNAstraExternalCardData]>, [RESPONSE_KEYS.accountCards]?: UNOnLoadResponseData<[UNCardData]> } export type PayeeManagementOnLoadResponse = { [RESPONSE_KEYS.counterpartiesResult]: UNOnLoadResponseData<[UNPayeeCounterparty]> } export type UnitOnLoadResponseSuccessData = | CardOnLoadResponse | CardsOnLoadResponse | ACHOnLoadResponse | AccountsOnLoadResponse | AccountOnLoadResponse | ActivityOnLoadResponse | FundAccountPaymentOnLoadResponse | PayeeManagementOnLoadResponse export type UnitOnLoadResponseEvent = | UNError | UnitOnLoadResponseSuccessData