UNPKG

@overture-stack/lyric

Version:
34 lines (33 loc) 1.75 kB
import type { BaseDependencies } from '../config/config.js'; import { type MigrationRecordWithRelations } from '../repository/dictionaryMigrationRepository.js'; import { type MigrationSummary } from '../utils/migrationResponseFormatter.js'; import { type AsyncResult, type PaginatedResult } from '../utils/result.js'; import type { MigrationAuditRecord, MigrationStatus, PaginationOptions } from '../utils/types.js'; declare const migrationService: (dependencies: BaseDependencies) => { finalizeMigration: ({ migrationId, status, userName, }: { migrationId: number; status: Extract<MigrationStatus, "COMPLETED" | "FAILED">; userName: string; }) => AsyncResult<null, string>; getActiveMigrationByCategoryId: (categoryId: number) => Promise<MigrationRecordWithRelations | null>; getMigrationsByCategoryId: (categoryId: number, paginationOptions: PaginationOptions) => Promise<PaginatedResult<MigrationSummary>>; getMigrationById: (migrationId: number) => Promise<MigrationSummary | null>; getMigrationRecords: (migrationId: number, options: { page: number; pageSize: number; entityNames?: string | string[]; organizations?: string | string[]; isInvalid?: boolean; }) => Promise<PaginatedResult<MigrationAuditRecord>>; initiateMigration: ({ categoryId, fromDictionaryId, toDictionaryId, userName, }: { categoryId: number; fromDictionaryId: number; toDictionaryId: number; userName: string; }) => AsyncResult<number, string>; performMigrationValidation: ({ migrationId, userName, }: { migrationId: number; userName: string; }) => AsyncResult<null, string>; }; export default migrationService;