expo-finance-kit
Version:
Native Expo module for Apple FinanceKit - Access financial data from Apple Card and other accounts
83 lines • 3.66 kB
TypeScript
/**
* Transaction management module for Expo Finance Kit
* Handles fetching and managing financial transaction data
*/
import { Transaction, TransactionQueryOptions } from '../ExpoFinanceKit.types';
/**
* Fetches transactions based on query options
* @param options - Query options for filtering transactions
* @returns Promise resolving to array of transactions
*/
export declare function getTransactions(options?: TransactionQueryOptions): Promise<Transaction[]>;
/**
* Fetches transactions for a specific account
* @param accountId - The account ID to fetch transactions for
* @param options - Additional query options
* @returns Promise resolving to array of transactions
*/
export declare function getTransactionsByAccount(accountId: string, options?: Omit<TransactionQueryOptions, 'accountId'>): Promise<Transaction[]>;
/**
* Fetches recent transactions (last 30 days)
* @param limit - Maximum number of transactions to return
* @returns Promise resolving to array of recent transactions
*/
export declare function getRecentTransactions(limit?: number): Promise<Transaction[]>;
/**
* Fetches transactions for a specific date range
* @param startDate - Start date for the range
* @param endDate - End date for the range
* @returns Promise resolving to array of transactions
*/
export declare function getTransactionsByDateRange(startDate: Date, endDate: Date): Promise<Transaction[]>;
/**
* Fetches all income transactions (credits)
* @param options - Additional query options
* @returns Promise resolving to array of income transactions
*/
export declare function getIncomeTransactions(options?: Omit<TransactionQueryOptions, 'creditDebitIndicator'>): Promise<Transaction[]>;
/**
* Fetches all expense transactions (debits)
* @param options - Additional query options
* @returns Promise resolving to array of expense transactions
*/
export declare function getExpenseTransactions(options?: Omit<TransactionQueryOptions, 'creditDebitIndicator'>): Promise<Transaction[]>;
/**
* Fetches pending transactions
* @param options - Additional query options
* @returns Promise resolving to array of pending transactions
*/
export declare function getPendingTransactions(options?: Omit<TransactionQueryOptions, 'statuses'>): Promise<Transaction[]>;
/**
* Searches transactions by merchant name or description
* @param searchTerm - The search term
* @param options - Additional query options
* @returns Promise resolving to array of matching transactions
*/
export declare function searchTransactions(searchTerm: string, options?: Omit<TransactionQueryOptions, 'merchantName'>): Promise<Transaction[]>;
/**
* Groups transactions by date
* @param transactions - Array of transactions to group
* @returns Map of date strings to transaction arrays
*/
export declare function groupTransactionsByDate(transactions: Transaction[]): Map<string, Transaction[]>;
/**
* Normalizes transaction amounts based on their account types
* @param transactions - Array of transactions to normalize
* @returns Promise resolving to transactions with normalized amounts
*/
export declare function normalizeTransactionAmounts(transactions: Transaction[]): Promise<Transaction[]>;
/**
* Calculates transaction statistics
* @param transactions - Array of transactions to analyze
* @returns Object containing transaction statistics
*/
export declare function calculateTransactionStats(transactions: Transaction[]): {
total: number;
totalAmount: number;
totalIncome: number;
totalExpenses: number;
averageTransaction: number;
largestExpense: number;
largestIncome: number;
};
//# sourceMappingURL=transactions.d.ts.map