]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - shared/models/server/server-config.model.ts
Add hardware information in instance config
[github/Chocobozzz/PeerTube.git] / shared / models / server / server-config.model.ts
1 import { NSFWPolicyType } from '../videos/nsfw-policy.type'
2 import { ClientScript } from '../plugins/plugin-package-json.model'
3
4 export interface ServerConfigPlugin {
5 name: string
6 version: string
7 description: string
8 clientScripts: { [name: string]: ClientScript }
9 }
10
11 export interface ServerConfigTheme extends ServerConfigPlugin {
12 css: string[]
13 }
14
15 export interface ServerConfig {
16 serverVersion: string
17 serverCommit?: string
18
19 instance: {
20 name: string
21 shortDescription: string
22 defaultClientRoute: string
23 isNSFW: boolean
24 defaultNSFWPolicy: NSFWPolicyType
25 customizations: {
26 javascript: string
27 css: string
28 }
29 }
30
31 plugin: {
32 registered: ServerConfigPlugin[]
33 }
34
35 theme: {
36 registered: ServerConfigTheme[]
37 default: string
38 }
39
40 email: {
41 enabled: boolean
42 }
43
44 contactForm: {
45 enabled: boolean
46 }
47
48 signup: {
49 allowed: boolean,
50 allowedForCurrentIP: boolean
51 requiresEmailVerification: boolean
52 }
53
54 transcoding: {
55 hls: {
56 enabled: boolean
57 }
58
59 enabledResolutions: number[]
60 }
61
62 import: {
63 videos: {
64 http: {
65 enabled: boolean
66 }
67 torrent: {
68 enabled: boolean
69 }
70 }
71 }
72
73 autoBlacklist: {
74 videos: {
75 ofUsers: {
76 enabled: boolean
77 }
78 }
79 }
80
81 avatar: {
82 file: {
83 size: {
84 max: number
85 }
86 extensions: string[]
87 }
88 }
89
90 video: {
91 image: {
92 size: {
93 max: number
94 }
95 extensions: string[]
96 },
97 file: {
98 extensions: string[]
99 }
100 }
101
102 videoCaption: {
103 file: {
104 size: {
105 max: number
106 },
107 extensions: string[]
108 }
109 }
110
111 user: {
112 videoQuota: number
113 videoQuotaDaily: number
114 }
115
116 trending: {
117 videos: {
118 intervalDays: number
119 }
120 }
121
122 tracker: {
123 enabled: boolean
124 }
125 }