]>
Commit | Line | Data |
---|---|---|
e02643f3 | 1 | import * as Sequelize from 'sequelize' |
6fcd19ba | 2 | import * as Promise from 'bluebird' |
e02643f3 | 3 | |
70c065d6 | 4 | import { PodInstance } from '../pod' |
6fcd19ba | 5 | import { ResultList } from '../../../shared' |
70c065d6 | 6 | |
69818c93 | 7 | // Don't use barrel, import just what we need |
74889a71 | 8 | import { VideoAbuse as FormatedVideoAbuse } from '../../../shared/models/video-abuse.model' |
69818c93 | 9 | |
e02643f3 | 10 | export namespace VideoAbuseMethods { |
154898b0 | 11 | export type ToFormatedJSON = (this: VideoAbuseInstance) => FormatedVideoAbuse |
e02643f3 | 12 | |
6fcd19ba | 13 | export type ListForApi = (start: number, count: number, sort: string) => Promise< ResultList<VideoAbuseInstance> > |
e02643f3 C |
14 | } |
15 | ||
16 | export interface VideoAbuseClass { | |
17 | listForApi: VideoAbuseMethods.ListForApi | |
18 | } | |
19 | ||
20 | export interface VideoAbuseAttributes { | |
21 | reporterUsername: string | |
22 | reason: string | |
70c065d6 | 23 | videoId: string |
e02643f3 C |
24 | } |
25 | ||
69818c93 | 26 | export interface VideoAbuseInstance extends VideoAbuseClass, VideoAbuseAttributes, Sequelize.Instance<VideoAbuseAttributes> { |
e02643f3 C |
27 | id: number |
28 | createdAt: Date | |
29 | updatedAt: Date | |
70c065d6 C |
30 | |
31 | Pod: PodInstance | |
154898b0 C |
32 | |
33 | toFormatedJSON: VideoAbuseMethods.ToFormatedJSON | |
e02643f3 C |
34 | } |
35 | ||
36 | export interface VideoAbuseModel extends VideoAbuseClass, Sequelize.Model<VideoAbuseInstance, VideoAbuseAttributes> {} |