UNPKG

@accounter/server

Version:
17 lines (16 loc) 1.28 kB
import { Injector } from 'graphql-modules'; import { Currency } from '../../../shared/enums.js'; import { NoOptionalField, TimelessDateString } from '../../../shared/types/index.js'; import type { IGetTransactionsByIdsResult } from '../../transactions/types.js'; import type { IGetExchangeRatesByDatesResult } from '../types.js'; type ValidatedTransaction = NoOptionalField<IGetTransactionsByIdsResult, 'debit_date'>; export declare function defineConversionBaseAndQuote(transactions: Array<IGetTransactionsByIdsResult>): { baseTransaction: ValidatedTransaction; quoteTransaction: ValidatedTransaction; miscTransactions: ValidatedTransaction[]; }; export declare function getRateForCurrency(currencyCode: Currency, exchangeRates: IGetExchangeRatesByDatesResult, defaultLocalCurrency: Currency): number; export declare function getClosestRateForDate(date: string | Date, rates: Array<IGetExchangeRatesByDatesResult>): IGetExchangeRatesByDatesResult; export declare function isCryptoCurrency(currency: Currency): currency is Currency.Eth | Currency.Grt | Currency.Usdc; export declare function getFiatExchangeRate(injector: Injector, timelessDate: TimelessDateString, currency: keyof Omit<IGetExchangeRatesByDatesResult, 'exchange_date'>): Promise<number | null>; export {};