]>
Commit | Line | Data |
---|---|---|
1 | import * as Sequelize from 'sequelize' | |
2 | import { AccountInstance } from '../account/account-interface' | |
3 | import { VideoInstance } from './video-interface' | |
4 | import * as Bluebird from 'bluebird' | |
5 | ||
6 | export namespace VideoShareMethods { | |
7 | export type LoadAccountsByShare = (videoChannelId: number) => Bluebird<AccountInstance[]> | |
8 | } | |
9 | ||
10 | export interface VideoShareClass { | |
11 | loadAccountsByShare: VideoShareMethods.LoadAccountsByShare | |
12 | } | |
13 | ||
14 | export interface VideoShareAttributes { | |
15 | accountId: number | |
16 | videoId: number | |
17 | } | |
18 | ||
19 | export interface VideoShareInstance extends VideoShareClass, VideoShareAttributes, Sequelize.Instance<VideoShareAttributes> { | |
20 | id: number | |
21 | createdAt: Date | |
22 | updatedAt: Date | |
23 | ||
24 | Account?: AccountInstance | |
25 | Video?: VideoInstance | |
26 | } | |
27 | ||
28 | export interface VideoShareModel extends VideoShareClass, Sequelize.Model<VideoShareInstance, VideoShareAttributes> {} |