@accounter/server
Version:
Accounter GraphQL server
28 lines (27 loc) • 2.15 kB
TypeScript
import DataLoader from 'dataloader';
import { TimelessDateString } from '../../../shared/types/index.js';
import { AdminContextProvider } from '../../admin-context/providers/admin-context.provider.js';
import { TenantAwareDBClient } from '../../app-providers/tenant-db-client.js';
import type { IGetLedgerRecordsByDatesParams, IInsertLedgerRecordsParams, IReplaceLedgerRecordsChargeIdParams, IUpdateLedgerRecordParams } from '../types.js';
export declare class LedgerProvider {
private db;
private adminContextProvider;
constructor(db: TenantAwareDBClient, adminContextProvider: AdminContextProvider);
private batchLedgerRecordsByIds;
getLedgerRecordsByIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByIdsResult | undefined, string>;
private batchLedgerRecordsByChargesIds;
getLedgerRecordsByChargesIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByChargesIdsResult[], string>;
private batchLedgerRecordsByFinancialEntityIds;
getLedgerRecordsByFinancialEntityIdLoader: DataLoader<string, import("../types.js").IGetLedgerRecordsByFinancialEntityIdsResult[], string>;
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;
}