@turnbuckle/aprs-calculator-services
Version:
Anchorpoint Risk Calculator Service.
19 lines (18 loc) • 1.54 kB
TypeScript
import { MergeFinancialTransactionsOutputModelInterface } from '../../../interfaces/output-models/merge-financial-transactions-output-model.interface';
import { FinancialTransactionItemInterface } from '../../../interfaces/array-item-models/financial-transaction-item.interface';
import { MergeFinancialTransactionsInputModelInterface } from '../../../interfaces/input-models/merge-financial-transactions-input-model.interface';
/**
* @MergeFinancialTransactionsInputModelInterface input
* - invoices: array of invoices
* - creditNotes: optional array of credit notes
* - receipts: optional array of receipts
* > - invoices, creditNotes and receipts will be merged into a single array and returned in transactions
* > - creditNotes & receipts which do not have a matching invoice will be ignored
* > - creditNotes & receipts falling on the same day, with their sum total == 0, will be added to excluded;
* > - transactions with balance < 0 (sum of inv, crn & rct) will be added to excluded;
* @MergeFinancialTransactionsOutputModelInterface output
* - transactions: array of merged invoices, credit notes & receipts
* - excluded: array of credit notes and receipts that sum to 0 on a specific day
* - executeDuration: the length of time it took for this call to complete
*/
export declare function mergeFinancialTransactions<T extends FinancialTransactionItemInterface, U extends T = T>(input: MergeFinancialTransactionsInputModelInterface<T, U>): Promise<MergeFinancialTransactionsOutputModelInterface<T>>;