-import 'multer'
-import * as validator from 'validator'
-import { VideoRateType } from '../../../shared'
-import { CONSTRAINTS_FIELDS, VIDEO_CATEGORIES, VIDEO_LANGUAGES, VIDEO_LICENCES, VIDEO_RATE_TYPES } from '../../initializers'
-import { database as db } from '../../initializers/database'
-import { VideoInstance } from '../../models/video/video-interface'
-import { logger } from '../logger'
-import { isActivityPubUrlValid } from './activitypub/misc'
-import { exists, isArray } from './misc'
-import { VIDEO_PRIVACIES } from '../../initializers/constants'
+import validator from 'validator'
+import { VideoFilter, VideoPrivacy, VideoRateType } from '../../../shared'
+import {
+ CONSTRAINTS_FIELDS,
+ MIMETYPES,
+ VIDEO_CATEGORIES,
+ VIDEO_LICENCES,
+ VIDEO_PRIVACIES,
+ VIDEO_RATE_TYPES,
+ VIDEO_STATES
+} from '../../initializers/constants'
+import { exists, isArray, isDateValid, isFileValid } from './misc'
+import * as magnetUtil from 'magnet-uri'