import { Account } from '../actors'
import { VideoChannel } from '../videos/channel/video-channel.model'
-import { VideoPlaylist } from '../videos/playlist/video-playlist.model'
import { UserRole } from './user-role'
import { NSFWPolicyType } from '../videos/nsfw-policy.type'
import { UserNotificationSetting } from './user-notification-setting.model'
import { UserAdminFlag } from './user-flag.model'
+import { VideoPlaylistType } from '../videos/playlist/video-playlist-type.model'
export interface User {
id: number
autoPlayVideo: boolean
autoPlayNextVideo: boolean
autoPlayNextVideoPlaylist: boolean
+
+ // @deprecated in favour of p2pEnabled
webTorrentEnabled: boolean
+ p2pEnabled: boolean
+
videosHistoryEnabled: boolean
videoLanguages: string[]
videoQuotaUsed?: number
videoQuotaUsedDaily?: number
+ videosCount?: number
+
+ abusesCount?: number
+ abusesAcceptedCount?: number
+ abusesCreatedCount?: number
+
+ videoCommentsCount?: number
+
theme: string
account: Account
noInstanceConfigWarningModal: boolean
noWelcomeModal: boolean
+ noAccountSetupWarningModal: boolean
createdAt: Date
+
+ pluginAuth: string | null
+
+ lastLoginDate: Date | null
+}
+
+export interface MyUserSpecialPlaylist {
+ id: number
+ name: string
+ type: VideoPlaylistType
}
export interface MyUser extends User {
- specialPlaylists: Partial<VideoPlaylist>[]
+ specialPlaylists: MyUserSpecialPlaylist[]
}