UNPKG

expo-finance-kit

Version:

Native Expo module for Apple FinanceKit - Access financial data from Apple Card and other accounts

87 lines 3.16 kB
/** * Transaction monitoring module for Expo Finance Kit * Handles real-time transaction change streams from FinanceKit */ import { TransactionsChangedPayload } from '../ExpoFinanceKit.types'; /** * Callback type for transaction change events */ export type TransactionChangeCallback = (payload: TransactionsChangedPayload) => void; /** * Transaction monitoring manager * Provides real-time updates when transactions are inserted, updated, or deleted */ declare class TransactionMonitor { private eventEmitter; private listeners; private isMonitoring; constructor(); /** * Start monitoring transactions for specified accounts * If no account IDs are provided, monitors all accounts * @param accountIds - Optional array of account IDs to monitor * @returns Promise that resolves when monitoring starts */ startMonitoring(accountIds?: string[]): Promise<void>; /** * Stop monitoring transactions * @returns Promise that resolves when monitoring stops */ stopMonitoring(): Promise<void>; /** * Add a listener for transaction changes * @param callback - Callback function to invoke when transactions change * @returns Unsubscribe function */ addListener(callback: TransactionChangeCallback): () => void; /** * Remove all listeners */ removeAllListeners(): void; /** * Check if monitoring is currently active */ get monitoring(): boolean; } export declare const transactionMonitor: TransactionMonitor; /** * Start monitoring transactions for specified accounts * @param accountIds - Optional array of account IDs to monitor */ export declare function startMonitoringTransactions(accountIds?: string[]): Promise<void>; /** * Stop monitoring transactions */ export declare function stopMonitoringTransactions(): Promise<void>; /** * Add a listener for transaction changes * @param callback - Callback function to invoke when transactions change * @returns Unsubscribe function */ export declare function addTransactionChangeListener(callback: TransactionChangeCallback): () => void; /** * Remove all transaction change listeners */ export declare function removeAllTransactionChangeListeners(): void; /** * Check if transaction monitoring is currently active */ export declare function isMonitoringTransactions(): boolean; /** * Clear history token for an account (resets monitoring state) * @param accountId - Account ID to clear history token for */ export declare function clearHistoryToken(accountId: string): Promise<void>; /** * Set the app group identifier for background delivery * This should match the identifier used in your Expo config plugin * @param identifier - App group identifier (e.g., "group.com.yourapp.financekit") */ export declare function setAppGroupIdentifier(identifier: string): Promise<void>; /** * Process pending changes that were stored during background sync * This is automatically called when the app becomes active, but can be called manually */ export declare function processPendingChanges(): Promise<void>; export {}; //# sourceMappingURL=monitoring.d.ts.map