Remove max duration/filesize constraints
[oweals/peertube.git] / server / models / server / server-interface.ts
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> {}