import { Tag, TagGetByLabelOptions } from 'contensis-management-api'; import TagGroupsMigrationService from './TagGroupsMigrationService'; import { MigrateRequest, TagsResult } from '../models/Operations'; import ContensisRepository from '../repositories/ContensisRepository'; import { TagBuilder } from '../transformations/TagBuilder'; export type GetTagsArgs = Partial & { id?: string; ids?: string[]; }; declare class TagsMigrationService extends TagGroupsMigrationService { /** Keep a note of the tags we have migrated in this job */ tagsMigration: { created: string[]; updated: string[]; deleted: string[]; }; constructor(payload: MigrateRequest, preview: boolean); GetTags: (getBy?: GetTagsArgs, { withDependents }?: { withDependents: boolean; }) => Promise<[ApiErrorResponse, undefined] | [null, Tag[]]>; MigrateTags: (getBy?: GetTagsArgs) => Promise; GetTagsToMigrate: ({ groupId, id, ids, label, language, }?: GetTagsArgs) => Promise; BuildTagsToMigrate: () => Promise; CommitTags: () => Promise; QueueTags: (target: ContensisRepository) => Promise; CommitTag: (migrateTag: TagBuilder) => Promise<[AppError | null, Tag | undefined]>; mapTagsMigrateResult: () => TagsResult; DeleteTags: (getBy: GetTagsArgs, targets?: { [projectId: string]: ContensisRepository; }) => Promise; GetTagsToDelete: (getBy: GetTagsArgs, targets?: { [projectId: string]: ContensisRepository; }) => Promise; } export default TagsMigrationService;