]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/models/job/job-interface.ts
Reorganize model files
[github/Chocobozzz/PeerTube.git] / server / models / job / job-interface.ts
1 import * as Sequelize from 'sequelize'
2
3 export namespace JobMethods {
4 export type ListWithLimitCallback = (err: Error, jobInstances: JobInstance[]) => void
5 export type ListWithLimit = (limit: number, state: string, callback: ListWithLimitCallback) => void
6 }
7
8 export interface JobClass {
9 listWithLimit: JobMethods.ListWithLimit
10 }
11
12 export interface JobAttributes {
13 state: string
14 handlerName: string
15 handlerInputData: object
16 }
17
18 export interface JobInstance extends JobClass, JobAttributes, Sequelize.Instance<JobAttributes> {
19 id: number
20 createdAt: Date
21 updatedAt: Date
22 }
23
24 export interface JobModel extends JobClass, Sequelize.Model<JobInstance, JobAttributes> {}