UNPKG

@accounter/server

Version:

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

44 lines (43 loc) 3.29 kB
import DataLoader from 'dataloader'; import type { Optional, TimelessDateString } from '../../../shared/types/index.js'; import { DBProvider } from '../../app-providers/db.provider.js'; import type { IDeleteDocumentParams, IGetAllDocumentsParams, IGetAllDocumentsResult, IGetDocumentsByExtendedFiltersParams, IGetDocumentsByFiltersParams, IInsertDocumentsParams, IReplaceDocumentsChargeIdParams, IUpdateDocumentParams } from '../types.js'; type IGetAdjustedDocumentsByFiltersParams = Optional<Omit<IGetDocumentsByFiltersParams, 'isIDs'>, 'IDs' | 'businessIDs'>; type IGetAdjustedDocumentsByExtendedFiltersParams = Optional<Omit<IGetDocumentsByExtendedFiltersParams, 'isIDs' | 'fromDate' | 'toDate' | 'isUnmatched'>, 'IDs' | 'businessIDs' | 'ownerIDs'> & { fromDate?: TimelessDateString | null; toDate?: TimelessDateString | null; unmatched?: boolean | null; }; export declare class DocumentsProvider { 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; }; constructor(dbProvider: DBProvider); getAllDocuments(params: IGetAllDocumentsParams): Promise<IGetAllDocumentsResult[]>; private batchDocumentsByChargeIds; getDocumentsByChargeIdLoader: DataLoader<string, import("../types.js").IGetDocumentsByChargeIdResult[], import("node-cache").Key | import("node-cache").Key[]>; getDocumentsByFilters(params: IGetAdjustedDocumentsByFiltersParams): Promise<import("../types.js").IGetDocumentsByFiltersResult[]>; getDocumentsByExtendedFilters(params: IGetAdjustedDocumentsByExtendedFiltersParams): Promise<import("../types.js").IGetDocumentsByExtendedFiltersResult[]>; private batchDocumentsByIds; getDocumentsByIdLoader: DataLoader<string, import("../types.js").IGetDocumentsByIdsResult | null | undefined, import("node-cache").Key | import("node-cache").Key[]>; private batchDocumentsByBusinessIds; getDocumentsByBusinessIdLoader: DataLoader<string, import("../types.js").IGetDocumentsByBusinessIdsResult[] | null, import("node-cache").Key | import("node-cache").Key[]>; private batchDocumentsByHash; getDocumentByHash: DataLoader<number, import("../types.js").IGetDocumentsByHashesResult | null | undefined, import("node-cache").Key | import("node-cache").Key[]>; getDocumentsByMissingRequiredInfo(): Promise<import("../types.js").IGetDocumentsByMissingRequiredInfoResult[]>; updateDocument(params: IUpdateDocumentParams): Promise<import("../types.js").IUpdateDocumentResult[]>; deleteDocument(params: IDeleteDocumentParams): Promise<import("../types.js").IDeleteDocumentResult[]>; insertDocuments(params: IInsertDocumentsParams): Promise<import("../types.js").IInsertDocumentsResult[]>; replaceDocumentsChargeId(params: IReplaceDocumentsChargeIdParams): Promise<import("../types.js").IReplaceDocumentsChargeIdResult[]>; invalidateById(id: string): Promise<void>; invalidateByChargeId(chargeId: string): Promise<void>; clearCache(): void; } export {};