import { HalResource } from '../hal/models/HalResource'; import { Page } from './Page'; export type JobStatus = 'CREATED' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED'; export type JobEntityType = 'HUB' | 'REPOSITORY' | 'EVENT' | 'EDITION' | 'CONTENT_ITEM'; export type JobType = 'DEEP_SYNC_JOB'; export type JobError = { entity: { entityId: string; entityType: JobEntityType; }; errorResponse: { Level: string; Code: 'FORBIDDEN' | 'MAXIMUM_ITEM_ID_COUNT_EXCEEDED' | 'DESTINATION_HUB_INVALID' | 'CONTENT_ITEM_ID_INVALID' | 'DIFFERING_DAM_MEDIA_HUBS' | 'NO_MAPPED_REPOSITORIES'; Message: string; }; }; interface iCreateDeepSyncJobRequest { label: string; ignoreSchemaValidation: boolean; forceSync?: boolean; destinationHubId: string; input: { rootContentItemIds: string[]; }; } export declare class CreateDeepSyncJobRequest implements iCreateDeepSyncJobRequest { /** * Job label */ label: string; /** * Should schema validation be ignored if allowed at the hub level? */ ignoreSchemaValidation: boolean; /** * Should unmodified content items be force synced to the destination hub? */ forceSync?: boolean; /** * Destination hub ID */ destinationHubId: string; /** * Content items to sync */ input: { rootContentItemIds: string[]; }; constructor(params: iCreateDeepSyncJobRequest); } export declare class CreateDeepSyncJobResponse extends HalResource { /** * Job ID */ jobId: string; } export declare class Job extends HalResource { /** * Job ID */ id: string; /** * Job label */ label: string; /** * Job status */ status: JobStatus; /** * Timestamps of status changes */ stateChanges: { status: JobStatus; timestamp: string; }[]; /** * Type of job */ jobType: JobType; /** * Origin hub ID */ originHubId: string; /** * Destination hub ID */ destinationHubId: string; /** * Root content item IDs that the job is syncing */ rootContentItemIDs: string[]; /** * IDs of the hubs associated with this job (origin & destination) */ associatedHubIds: string[]; /** * User that created the job */ createdBy: string; /** * Date the job was created */ createdDate: string; /** * Date the job was last modified */ errors: JobError[]; } export declare class JobsPage extends Page { constructor(data?: any); } export {};