import { TransactionStatus, TransactionType, Account, Category, Tag, Tagging, Transaction } from '../types'; import { TransactionFilter } from '../stores/TransactionStore'; export declare const buildDetailedTransactions: (transactions: Transaction[], accounts: Account[], categories: Category[], taggings?: Tagging[]) => { account: string; accountIsClosed: boolean; accountIsHidden: boolean; category: string; isIncome: boolean; isPending: boolean; number: string; payee: string; tags: string[]; guid: string; account_guid: string; amount: number; attachment_guid?: string | null; category_guid?: string; check_number?: string | null; currency_code: string | null; date: number; description: string; duplicate: boolean; external_guid?: string | null; feed_attachment_guid?: string | null; feed_description: string; feed_localized_description?: string | null; feed_posted_date?: number | null; feed_status: TransactionStatus | null; feed_transaction_date: number | null; flags?: number | null; has_been_split: boolean; has_been_viewed: boolean; is_cleared: boolean; is_flagged: boolean; is_hidden: boolean; is_international?: boolean | null; is_manual: boolean; is_personal: boolean; is_reimbursable: boolean; is_subscription: boolean; is_void: boolean; localized_description?: string | null; localized_memo?: string | null; main_class_guid?: string | null; memo?: string | null; metadata?: string | null; merchant_guid?: string | null; parent_guid?: string | null; posted_date?: number | null; reference?: string | null; revision: number; repeating_transaction_guid?: string | null; scheduled_payment_guid?: string | null; top_level_category_guid?: string; transaction_type: TransactionType; user_date?: number | null; user_guid: string; user_transaction_rule_guid?: string | null; is_duplicate: boolean; feed_transacted_at: number | null; }[]; export declare const sortAndFilterTransactions: (filter: TransactionFilter, expandedSplits: string[], sortColumn: string, sortDirection: string, tags: Tag[], transactions: Transaction[]) => Transaction[]; /** * Produces a list of transactions based on the given sorted transactions, * where parent transactions that have split children are replaced by those * children sorted by descending absolute amount. All other transactions * are included as-is, with duplicates removed. */ export declare function flattenTransactionsWithSplits(sortedTransactions: Transaction[], allTransactions: Transaction[]): Transaction[]; export declare const exportTransactionsToCSV: (transactions: Transaction[], tags: Tag[]) => void;