import { FetchStateAndError, ID } from '../../../../commonStateTypes/common'; import { SelectorView } from '../../../../commonStateTypes/viewAndReport/viewAndReport'; import { ChargeCard } from '../../../../entity/chargeCard/chargeCard'; import { ChargeCardTransaction } from '../../../../entity/chargeCardTransaction/chargeCardTransaction'; import { ConnectedAccount } from '../../../../entity/connectedAccount/connectedAccount'; import { DepositAccountWithLimit } from '../../../../entity/depositAccount/depositAccount'; import { Attachment } from '../../../../entity/transaction/stateTypes/attachment'; import { RootState } from '../../../../rootStateTypes'; import { TwoFactorAuthenticationView } from '../../../twoFactorAuthentication/twoFactorAuthenticationSelector'; import { ChargeCardConfigState } from '../chargeCardConfig/chargeCardConfigState'; import { CreditAccount, CreditAccountRepayment } from '../chargeCardList/chargeCardList'; import { ChargeCardWithUser } from '../chargeCardList/chargeCardList'; import { ChargeCardDetailUiState, RecurringExpense, TransactionStatistics } from './chargeCardDetail'; export interface ChargeCardDetailSelectorView extends SelectorView { chargeCardConfig: ChargeCardConfigState; closeChargeCardsFetchState: FetchStateAndError; creditAccount: CreditAccount; creditAccountRepayment: CreditAccountRepayment; depositAccountLimitFetchState: FetchStateAndError; isRefreshingViewInBackground: boolean; isViewReceiptClickedImmediatelyAfterUploadTransactionId: Record; lockChargeCardsFetchState: FetchStateAndError; loggedInUserPhone: string; transactionListFetchState: FetchStateAndError; transactions: ChargeCardTransaction[]; transactionStatistics: TransactionStatistics; twoFAView: TwoFactorAuthenticationView; uiState: ChargeCardDetailUiState; unlockChargeCardsFetchState: FetchStateAndError; updateChargeCardLimitFetchState: FetchStateAndError; updateChargeCardNameFetchState: FetchStateAndError; updateFetchState: FetchStateAndError; updatePhysicalChargeCardAttemptFetchState: FetchStateAndError; uploadReceiptsFetchStateByTransactionId: Record; uploadReceiptsShowTickByTransactionId: Record; chargeCard?: ChargeCardWithUser; connectedAccount?: ConnectedAccount; depositAccountLimit?: DepositAccountWithLimit; } export declare const getChargeCardDetailView: (state: RootState, chargeCardId: ID, includeCreditAccountInfo: boolean, isCreditCardEnabled: boolean) => ChargeCardDetailSelectorView; export declare const getDepositAccountLimitFetchStateByDepositAccountId: (state: RootState, depositAccountId: ID) => FetchStateAndError; export interface ChargeCardControlDetailView { closeChargeCardsFetchState: FetchStateAndError; lockChargeCardsFetchState: FetchStateAndError; revokeChargeCardFetchState: FetchStateAndError; unlockChargeCardsFetchState: FetchStateAndError; updateChargeCardLimitFetchState: FetchStateAndError; updateChargeCardNameFetchState: FetchStateAndError; } export declare const getChargeCardControlDetailView: (state: RootState, chargeCardId: ID) => ChargeCardControlDetailView; export interface DebitCardPinSetSelectorView extends SelectorView { isRefreshingViewInBackground: boolean; updateDebitCardPinAttemptFetchState: FetchStateAndError; updateStatus: FetchStateAndError; chargeCard?: ChargeCard; } export declare const getDebitCardSetPinView: (state: RootState, chargeCardId: ID) => DebitCardPinSetSelectorView; export interface ChargeCardCVVActivateSelectorView extends SelectorView { isRefreshingViewInBackground: boolean; updatePhysicalChargeCardAttemptFetchState: FetchStateAndError; updateStatus: FetchStateAndError; chargeCard?: ChargeCardWithUser; } export declare const getChargeCardCVVActivateView: (state: RootState, chargeCardId: ID) => ChargeCardCVVActivateSelectorView; export interface ChargeCardTransactionAttachmentView { attachmentFetchStatus: FetchStateAndError; transactionAttachments: Attachment[]; } export declare const getChargeCardTransactionAttachmentView: (state: RootState, cardId: ID, transactionId: ID) => ChargeCardTransactionAttachmentView | undefined; export interface ChargeCardRecurringExpenses extends FetchStateAndError { recurringExpenses: RecurringExpense[]; } export declare const getChargeCardRecurringExpensesView: (state: RootState, chargeCardId: ID) => ChargeCardRecurringExpenses;