UNPKG

@accounter/server

Version:
27 lines (26 loc) 1.64 kB
import DataLoader from 'dataloader'; import { TenantAwareDBClient } from '../../app-providers/tenant-db-client.js'; import { AuthContextProvider } from '../../auth/providers/auth-context.provider.js'; import { BusinessesProvider } from '../../financial-entities/providers/businesses.provider.js'; import type { IGetAllOpenContractsResult, IInsertContractParams, IUpdateContractParams } from '../types.js'; export declare class ContractsProvider { private db; private businessesProvider; private authContextProvider; private businessIdCache; constructor(db: TenantAwareDBClient, businessesProvider: BusinessesProvider, authContextProvider: AuthContextProvider); private getBusinessId; private allOpenContractsCache; getAllOpenContracts(): Promise<IGetAllOpenContractsResult[]>; private contractsByIds; getContractsByIdLoader: DataLoader<string, import("../types.js").IGetContractsByIdsResult | undefined, string>; private contractsByAdminBusinessIds; getContractsByAdminBusinessIdLoader: DataLoader<string, import("../types.js").IGetContractsByAdminBusinessIdsResult[], string>; private contractsByClients; getContractsByClientIdLoader: DataLoader<string, import("../types.js").IGetContractsByClientIdsResult[], string>; createContract(params: IInsertContractParams): Promise<import("../types.js").IInsertContractResult>; updateContract(params: IUpdateContractParams): Promise<import("../types.js").IUpdateContractResult>; deleteContract(contractId: string): Promise<boolean>; invalidateCacheForContract(contractId: string): Promise<void>; clearCache(): void; }