]>
Commit | Line | Data |
---|---|---|
1 | import * as Promise from 'bluebird' | |
2 | import * as Sequelize from 'sequelize' | |
3 | ||
4 | export namespace ServerMethods { | |
5 | export type ListBadServers = () => Promise<ServerInstance[]> | |
6 | export type UpdateServersScoreAndRemoveBadOnes = (goodServers: number[], badServers: number[]) => void | |
7 | } | |
8 | ||
9 | export interface ServerClass { | |
10 | updateServersScoreAndRemoveBadOnes: ServerMethods.UpdateServersScoreAndRemoveBadOnes | |
11 | } | |
12 | ||
13 | export interface ServerAttributes { | |
14 | id?: number | |
15 | host?: string | |
16 | score?: number | Sequelize.literal // Sequelize literal for 'score +' + value | |
17 | } | |
18 | ||
19 | export interface ServerInstance extends ServerClass, ServerAttributes, Sequelize.Instance<ServerAttributes> { | |
20 | createdAt: Date | |
21 | updatedAt: Date | |
22 | } | |
23 | ||
24 | export interface ServerModel extends ServerClass, Sequelize.Model<ServerInstance, ServerAttributes> {} |