-import { VideoRateType } from '../../../shared'
-import { CONSTRAINTS_FIELDS, VIDEO_CATEGORIES, VIDEO_LANGUAGES, VIDEO_LICENCES, VIDEO_RATE_TYPES } from '../../initializers'
-import { VIDEO_PRIVACIES } from '../../initializers/constants'
-import { database as db } from '../../initializers/database'
-import { VideoInstance } from '../../models/video/video-interface'
-import { exists, isArray } from './misc'
+import { UserRight, VideoFilter, VideoPrivacy, VideoRateType } from '../../../shared'
+import {
+ CONSTRAINTS_FIELDS, MIMETYPES,
+ VIDEO_CATEGORIES,
+ VIDEO_LICENCES,
+ VIDEO_PRIVACIES,
+ VIDEO_RATE_TYPES,
+ VIDEO_STATES
+} from '../../initializers'
+import { VideoModel } from '../../models/video/video'
+import { exists, isArray, isDateValid, isFileValid } from './misc'
+import { VideoChannelModel } from '../../models/video/video-channel'
+import { UserModel } from '../../models/account/user'
+import * as magnetUtil from 'magnet-uri'
+import { fetchVideo, VideoFetchType } from '../video'