UNPKG

n8n

Version:

n8n Workflow Automation Tool

73 lines (72 loc) 2.7 kB
import { type InsightsSummary } from '@n8n/api-types'; import { LicenseState, Logger } from '@n8n/backend-common'; import { InstanceSettings } from 'n8n-core'; import type { TypeUnit } from './database/entities/insights-shared'; import { InsightsByPeriodRepository } from './database/repositories/insights-by-period.repository'; import { InsightsCompactionService } from './insights-compaction.service'; import { InsightsPruningService } from './insights-pruning.service'; export declare class InsightsService { private readonly insightsByPeriodRepository; private readonly compactionService; private readonly pruningService; private readonly licenseState; private readonly instanceSettings; private readonly logger; constructor(insightsByPeriodRepository: InsightsByPeriodRepository, compactionService: InsightsCompactionService, pruningService: InsightsPruningService, licenseState: LicenseState, instanceSettings: InstanceSettings, logger: Logger); private toggleCollectionService; init(): Promise<void>; startCompactionAndPruningTimers(): void; stopCompactionAndPruningTimers(): void; shutdown(): Promise<void>; getInsightsSummary({ startDate, endDate, projectId, }: { projectId?: string; startDate: Date; endDate: Date; }): Promise<InsightsSummary>; getInsightsByWorkflow({ skip, take, sortBy, projectId, startDate, endDate, }: { skip?: number; take?: number; sortBy?: string; projectId?: string; startDate: Date; endDate: Date; }): Promise<{ count: number; data: { workflowId: string | null; projectId: string | null; workflowName: string; projectName: string; failed: number; total: number; succeeded: number; timeSaved: number; runTime: number; failureRate: number; averageRunTime: number; }[]; }>; getInsightsByTime({ insightTypes, projectId, startDate, endDate, }: { insightTypes?: TypeUnit[]; projectId?: string; startDate: Date; endDate: Date; }): Promise<{ date: string; values: { failed?: number | undefined; succeeded?: number | undefined; timeSaved?: number | undefined; } & { total?: number; successRate?: number; failureRate?: number; averageRunTime?: number; }; }[]>; validateDateFiltersLicense({ startDate, endDate }: { startDate: Date; endDate: Date; }): void; private getDateFiltersGranularity; }