2017-11-09 10:51:58 -06:00
|
|
|
import * as Sequelize from 'sequelize'
|
2017-11-13 10:39:41 -06:00
|
|
|
import * as Bluebird from 'bluebird'
|
|
|
|
import { FollowState } from '../../../shared/models/accounts/follow.model'
|
2017-11-09 10:51:58 -06:00
|
|
|
|
|
|
|
export namespace AccountFollowMethods {
|
2017-11-13 10:39:41 -06:00
|
|
|
export type LoadByAccountAndTarget = (accountId: number, targetAccountId: number) => Bluebird<AccountFollowInstance>
|
2017-11-09 10:51:58 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface AccountFollowClass {
|
2017-11-13 10:39:41 -06:00
|
|
|
loadByAccountAndTarget: AccountFollowMethods.LoadByAccountAndTarget
|
2017-11-09 10:51:58 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface AccountFollowAttributes {
|
|
|
|
accountId: number
|
|
|
|
targetAccountId: number
|
2017-11-13 10:39:41 -06:00
|
|
|
state: FollowState
|
2017-11-09 10:51:58 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface AccountFollowInstance extends AccountFollowClass, AccountFollowAttributes, Sequelize.Instance<AccountFollowAttributes> {
|
|
|
|
id: number
|
|
|
|
createdAt: Date
|
|
|
|
updatedAt: Date
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface AccountFollowModel extends AccountFollowClass, Sequelize.Model<AccountFollowInstance, AccountFollowAttributes> {}
|