import { ClsService } from "nestjs-cls"; import { AppLoggingService } from "../../../core/logging/services/logging.service"; import { CommunityRepository } from "../../../foundations/community/repositories/community.repository"; import { CompanyRepository } from "../../../foundations/company/repositories/company.repository"; import { CommunityDetectorService } from "../../community.detector/services/community.detector.service"; export interface MigrationResult { totalCompanies: number; processedCompanies: number; failedCompanies: string[]; communitiesCreated: number; } export declare class DriftMigrationService { private readonly logger; private readonly clsService; private readonly companyRepository; private readonly communityRepository; private readonly communityDetectorService; constructor(logger: AppLoggingService, clsService: ClsService, companyRepository: CompanyRepository, communityRepository: CommunityRepository, communityDetectorService: CommunityDetectorService); /** * Run DRIFT migration for all companies * This detects communities for all existing KeyConcepts * The community summariser cron job will then generate summaries */ migrateAll(): Promise; /** * Run DRIFT migration for a specific company * Sets up CLS context and runs community detection */ migrateCompany(companyId: string): Promise; /** * Get migration status - count stale vs processed communities per company */ getMigrationStatus(): Promise<{ companies: { companyId: string; companyName: string; totalCommunities: number; staleCommunities: number; processedCommunities: number; }[]; }>; /** * Get community counts for a specific company */ private getCommunityCountsForCompany; } //# sourceMappingURL=drift.migration.service.d.ts.map