@accounter/server
Version:
The test suite is split into three Vitest projects for efficiency and isolation:
39 lines (38 loc) • 2.67 kB
TypeScript
import DataLoader from 'dataloader';
import type { Currency } from '../../../shared/enums.js';
import { TimelessDateString } from '../../../shared/types/index.js';
import { DBProvider } from '../../app-providers/db.provider.js';
import type { IGetLedgerRecordsByDatesParams, IInsertLedgerRecordsParams, IReplaceLedgerRecordsChargeIdParams, IUpdateLedgerRecordParams } from '../types.js';
export declare class LedgerProvider {
private context;
private dbProvider;
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;
};
adminBusinessId: string;
localCurrency: Currency;
constructor(context: GraphQLModules.Context, dbProvider: DBProvider);
private batchLedgerRecordsByIds;
getLedgerRecordsByIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByIdsResult | undefined, import("node-cache").Key | import("node-cache").Key[]>;
private batchLedgerRecordsByChargesIds;
getLedgerRecordsByChargesIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByChargesIdsResult[], import("node-cache").Key | import("node-cache").Key[]>;
private batchLedgerRecordsByFinancialEntityIds;
getLedgerRecordsByFinancialEntityIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByFinancialEntityIdsResult[], import("node-cache").Key | import("node-cache").Key[]>;
getLedgerRecordsByDates(params: IGetLedgerRecordsByDatesParams): Promise<import("../types.js").IGetLedgerRecordsByDatesResult[]>;
getLedgerBalanceToDate(date: TimelessDateString): Promise<import("../types.js").IGetLedgerBalanceToDateResult[]>;
updateLedgerRecord(params: IUpdateLedgerRecordParams): Promise<import("../types.js").IUpdateLedgerRecordResult[]>;
insertLedgerRecords(params: IInsertLedgerRecordsParams): Promise<import("../types.js").IInsertLedgerRecordsResult[]>;
private deleteLedgerRecordsByIds;
deleteLedgerRecordsByIdLoader: DataLoader<string, undefined, string>;
private deleteLedgerRecordsByChargeIds;
deleteLedgerRecordsByChargeIdLoader: DataLoader<string, undefined, string>;
replaceLedgerRecordsChargeId(params: IReplaceLedgerRecordsChargeIdParams): Promise<import("../types.js").IReplaceLedgerRecordsChargeIdResult[]>;
lockLedgerRecords(date: TimelessDateString): Promise<import("../types.js").ILockLedgerRecordsResult[]>;
clearCache(): void;
}