-import { processViewActivity } from './process-view'
-import { processDislikeActivity } from './process-dislike'
-import { processFlagActivity } from './process-flag'
-import { PlaylistObject } from '../../../../shared/models/activitypub/objects/playlist-object'
-import { createOrUpdateVideoPlaylist } from '../playlist'
-import { VideoModel } from '../../../models/video/video'
-
-async function processCreateActivity (activity: ActivityCreate, byActor: ActorModel) {
+import { createOrUpdateCacheFile } from '../cache-file'
+import { createOrUpdateLocalVideoViewer } from '../local-video-viewer'
+import { createOrUpdateVideoPlaylist } from '../playlists'
+import { forwardVideoRelatedActivity } from '../send/shared/send-utils'
+import { resolveThread } from '../video-comments'
+import { getOrCreateAPVideo } from '../videos'
+
+async function processCreateActivity (options: APProcessorOptions<ActivityCreate>) {
+ const { activity, byActor } = options
+
+ // Only notify if it is not from a fetcher job
+ const notify = options.fromFetch !== true