123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- import { FollowState } from '../actors'
- export enum UserNotificationType {
- NEW_VIDEO_FROM_SUBSCRIPTION = 1,
- NEW_COMMENT_ON_MY_VIDEO = 2,
- NEW_VIDEO_ABUSE_FOR_MODERATORS = 3,
- BLACKLIST_ON_MY_VIDEO = 4,
- UNBLACKLIST_ON_MY_VIDEO = 5,
- MY_VIDEO_PUBLISHED = 6,
- MY_VIDEO_IMPORT_SUCCESS = 7,
- MY_VIDEO_IMPORT_ERROR = 8,
- NEW_USER_REGISTRATION = 9,
- NEW_FOLLOW = 10,
- COMMENT_MENTION = 11,
- VIDEO_AUTO_BLACKLIST_FOR_MODERATORS = 12,
- NEW_INSTANCE_FOLLOWER = 13
- }
- export interface VideoInfo {
- id: number
- uuid: string
- name: string
- }
- export interface ActorInfo {
- id: number
- displayName: string
- name: string
- host: string
- avatar?: {
- path: string
- }
- }
- export interface UserNotification {
- id: number
- type: UserNotificationType
- read: boolean
- video?: VideoInfo & {
- channel: ActorInfo
- }
- videoImport?: {
- id: number
- video?: VideoInfo
- torrentName?: string
- magnetUri?: string
- targetUrl?: string
- }
- comment?: {
- id: number
- threadId: number
- account: ActorInfo
- video: VideoInfo
- }
- videoAbuse?: {
- id: number
- video: VideoInfo
- }
- videoBlacklist?: {
- id: number
- video: VideoInfo
- }
- account?: ActorInfo
- actorFollow?: {
- id: number
- follower: ActorInfo
- state: FollowState
- following: {
- type: 'account' | 'channel'
- name: string
- displayName: string
- }
- }
- createdAt: string
- updatedAt: string
- }
|