import { GeneralError, TErrorType } from "../errors/index.js"; import { ApplicationErrorLog } from "./application-error-log.js"; import { ApplicationStatusLog } from "./application-status-log.js"; import { ConsumerErrorLog } from "./consumer-error-log.js"; import { EBindKey, EExchangeNames, TConsumerErrorCallback, TPublishErrorCallback } from "../events/index.js"; import { WorkerJobFailedLog } from "./worker-job-failed-log.js"; import { TErrorLine } from "../utils/index.js"; import { TApplicationStatusLogData } from "../interfaces/index.js"; import { ApplicationInsightsLog } from "./application-insights-log.js"; export type TLoggingFunc = (error: GeneralError | Error) => void; export type TConsumerData = { tenant: string; exchangeName: EExchangeNames; queueName: string; bindKey: EBindKey; }; export type TPublisherData = { tenant: string; exchangeName: EExchangeNames; bindKey: EBindKey; }; export interface IServiceLevelLogger { _applicationErrorLogger: ApplicationErrorLog; _applicationStatusLogger: ApplicationStatusLog; _applicationInsightsLogger: ApplicationInsightsLog; _consumerErrorLogger: ConsumerErrorLog; _jobFailedLogger: WorkerJobFailedLog; logRuntimeError: (error: TErrorType, origin: TErrorLine, tenant: string | null) => Promise; logApplicationStatus: (data: TApplicationStatusLogData) => Promise; logConsumerError: (data: Record, error: TErrorType, origin: TErrorLine, consumerData: TConsumerData) => TConsumerErrorCallback; logPublisherError: (data: Record, origin: TErrorLine, exchangeAsserted: boolean, publisherData: TPublisherData) => TPublishErrorCallback; logWorkerJobFailed: (jobData: Record, tenant: string, queueName: string, error: TErrorType, origin: TErrorLine) => Promise; } //# sourceMappingURL=interfaces.d.ts.map