UNPKG

@accounter/server

Version:

The test suite is split into three Vitest projects for efficiency and isolation:

60 lines (59 loc) 4.94 kB
import DataLoader from 'dataloader'; import { DBProvider } from '../../app-providers/db.provider.js'; import { TransactionsProvider } from '../../transactions/providers/transactions.provider.js'; import type { IGetTransactionsByChargeIdsResult } from '../../transactions/types.js'; import type { IDeleteBusinessTripExpenseParams, IInsertBusinessTripExpenseParams, IUpdateBusinessTripExpenseParams } from '../types.js'; import { BusinessTripAccommodationsExpensesProvider } from './business-trips-expenses-accommodations.provider.js'; import { BusinessTripCarRentalExpensesProvider } from './business-trips-expenses-car-rental.provider.js'; import { BusinessTripFlightsExpensesProvider } from './business-trips-expenses-flights.provider.js'; import { BusinessTripOtherExpensesProvider } from './business-trips-expenses-other.provider.js'; import { BusinessTripTravelAndSubsistenceExpensesProvider } from './business-trips-expenses-travel-and-subsistence.provider.js'; import { BusinessTripsProvider } from './business-trips.provider.js'; export declare class BusinessTripExpensesProvider { private dbProvider; private businessTripsProvider; private flightExpensesProvider; private accommodationsExpensesProvider; private travelAndSubsistenceExpensesProvider; private otherExpensesProvider; private carRentalExpensesProvider; private transactionsProvider; cache: { get: <T>(key: import("node-cache").Key) => T | undefined; set: { <T>(key: import("node-cache").Key, value: T, ttl: number | string): boolean; <T>(key: import("node-cache").Key, value: T): boolean; }; delete: (keys: import("node-cache").Key | import("node-cache").Key[]) => number; clear: () => void; }; constructor(dbProvider: DBProvider, businessTripsProvider: BusinessTripsProvider, flightExpensesProvider: BusinessTripFlightsExpensesProvider, accommodationsExpensesProvider: BusinessTripAccommodationsExpensesProvider, travelAndSubsistenceExpensesProvider: BusinessTripTravelAndSubsistenceExpensesProvider, otherExpensesProvider: BusinessTripOtherExpensesProvider, carRentalExpensesProvider: BusinessTripCarRentalExpensesProvider, transactionsProvider: TransactionsProvider); private batchBusinessTripsExpensesByBusinessTripIds; getBusinessTripsExpensesByBusinessTripIdLoader: DataLoader<string, import("../types.js").IGetBusinessTripsExpensesByBusinessTripIdsResult[], import("node-cache").Key | import("node-cache").Key[]>; private batchBusinessTripsExpenseMatchesByIds; getBusinessTripsExpensesByIdLoader: DataLoader<string, import("../types.js").IGetBusinessTripsExpensesByIdsResult | undefined, import("node-cache").Key | import("node-cache").Key[]>; updateBusinessTripExpense(params: IUpdateBusinessTripExpenseParams): Promise<import("../types.js").IUpdateBusinessTripExpenseResult[]>; insertBusinessTripExpense(params: IInsertBusinessTripExpenseParams): Promise<import("../types.js").IInsertBusinessTripExpenseResult[]>; getBusinessTripExtendedExpensesByChargeId(chargeId: string): Promise<{ nonExtendedExpenses: import("../types.js").IGetBusinessTripsExpensesByBusinessTripIdsResult[]; flightExpenses: import("../types.js").IGetBusinessTripsFlightsExpensesByBusinessTripIdsResult[]; accommodationsExpenses: import("../types.js").IGetBusinessTripsAccommodationsExpensesByBusinessTripIdsResult[]; travelAndSubsistenceExpenses: import("../types.js").IGetBusinessTripsTravelAndSubsistenceExpensesByBusinessTripIdsResult[]; otherExpenses: import("../types.js").IGetBusinessTripsOtherExpensesByBusinessTripIdsResult[]; }>; getBusinessTripExtendedExpensesByBusinessTripId(businessTripId: string): Promise<{ nonExtendedExpenses: import("../types.js").IGetBusinessTripsExpensesByBusinessTripIdsResult[]; flightExpenses: import("../types.js").IGetBusinessTripsFlightsExpensesByBusinessTripIdsResult[]; accommodationsExpenses: import("../types.js").IGetBusinessTripsAccommodationsExpensesByBusinessTripIdsResult[]; travelAndSubsistenceExpenses: import("../types.js").IGetBusinessTripsTravelAndSubsistenceExpensesByBusinessTripIdsResult[]; otherExpenses: import("../types.js").IGetBusinessTripsOtherExpensesByBusinessTripIdsResult[]; carRentalExpenses: import("../types.js").IGetBusinessTripsCarRentalExpensesByBusinessTripIdsResult[]; }>; getTransactionsByBusinessTripId(businessTripId: string): Promise<IGetTransactionsByChargeIdsResult[]>; deleteBusinessTripExpense(params: IDeleteBusinessTripExpenseParams): Promise<import("../types.js").IDeleteBusinessTripExpenseResult[]>; private invalidateExpenseExtensionsById; private invalidateExpenseExtensionsByBusinessTripId; invalidateById(expenseId: string): Promise<void>; invalidateByBusinessTripId(businessTripId: string): Promise<void>; clearCache(): void; }