@accounter/server
Version:
The test suite is split into three Vitest projects for efficiency and isolation:
27 lines (26 loc) • 1.65 kB
TypeScript
import DataLoader from 'dataloader';
import { DBProvider } from '../../app-providers/db.provider.js';
import { IDeleteTemplateParams, IGetTemplateParams, IInsertTemplateParams, IUpdateTemplateNameParams, IUpdateTemplateParams } from '../types.js';
export declare class DynamicReportProvider {
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);
getTemplate(params: IGetTemplateParams): Promise<import("../types.js").IGetTemplateResult>;
private batchTemplatesByOwnerIdLoader;
getTemplatesByOwnerIdLoader: DataLoader<string, import("../types.js").IGetTemplatesByOwnerIdsResult[], import("node-cache").Key | import("node-cache").Key[]>;
updateTemplate(params: IUpdateTemplateParams): Promise<import("../types.js").IUpdateTemplateResult[]>;
updateTemplateName(params: IUpdateTemplateNameParams): Promise<import("../types.js").IUpdateTemplateNameResult[]>;
insertTemplate(params: IInsertTemplateParams): Promise<import("../types.js").IInsertTemplateResult[]>;
deleteTemplate(params: IDeleteTemplateParams): Promise<import("../types.js").IDeleteTemplateResult[]>;
invalidateByOwnerId(ownerId: string): Promise<void>;
invalidateByNameAndOwnerId(name: string, ownerId: string): Promise<void>;
clearCache(): void;
}