react-native-unit-components
Version:
Unit React Native components
76 lines (65 loc) • 2.5 kB
text/typescript
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