add quarantine videos feature (#1637)
[oweals/peertube.git] / shared / models / server / server-config.model.ts
1 import { NSFWPolicyType } from '../videos/nsfw-policy.type'
2
3 export interface ServerConfig {
4   serverVersion: string
5   serverCommit?: string
6
7   instance: {
8     name: string
9     shortDescription: string
10     defaultClientRoute: string
11     isNSFW: boolean
12     defaultNSFWPolicy: NSFWPolicyType
13     customizations: {
14       javascript: string
15       css: string
16     }
17   }
18
19   email: {
20     enabled: boolean
21   }
22
23   contactForm: {
24     enabled: boolean
25   }
26
27   signup: {
28     allowed: boolean,
29     allowedForCurrentIP: boolean
30     requiresEmailVerification: boolean
31   }
32
33   transcoding: {
34     hls: {
35       enabled: boolean
36     }
37
38     enabledResolutions: number[]
39   }
40
41   import: {
42     videos: {
43       http: {
44         enabled: boolean
45       }
46       torrent: {
47         enabled: boolean
48       }
49     }
50   }
51
52   autoBlacklist: {
53     videos: {
54       ofUsers: {
55         enabled: boolean
56       }
57     }
58   }
59
60   avatar: {
61     file: {
62       size: {
63         max: number
64       }
65       extensions: string[]
66     }
67   }
68
69   video: {
70     image: {
71       size: {
72         max: number
73       }
74       extensions: string[]
75     },
76     file: {
77       extensions: string[]
78     }
79   }
80
81   videoCaption: {
82     file: {
83       size: {
84         max: number
85       },
86       extensions: string[]
87     }
88   }
89
90   user: {
91     videoQuota: number
92     videoQuotaDaily: number
93   }
94
95   trending: {
96     videos: {
97       intervalDays: number
98     }
99   }
100 }