]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - shared/models/server/server-config.model.ts
Add client hooks
[github/Chocobozzz/PeerTube.git] / shared / models / server / server-config.model.ts
index dcc45be8ae1e089cfa10c15b5cc5ca317670b971..49bb01708cbae88876d9a7d7d5e549741044869c 100644 (file)
@@ -1,4 +1,17 @@
 import { NSFWPolicyType } from '../videos/nsfw-policy.type'
+import { ClientScript } from '../plugins/plugin-package-json.model'
+import { PluginClientScope } from '../plugins/plugin-scope.type'
+
+export interface ServerConfigPlugin {
+  name: string
+  version: string
+  description: string
+  clientScripts: { [name in PluginClientScope]: ClientScript }
+}
+
+export interface ServerConfigTheme extends ServerConfigPlugin {
+  css: string[]
+}
 
 export interface ServerConfig {
   serverVersion: string
@@ -16,6 +29,15 @@ export interface ServerConfig {
     }
   }
 
+  plugin: {
+    registered: ServerConfigPlugin[]
+  }
+
+  theme: {
+    registered: ServerConfigTheme[]
+    default: string
+  }
+
   email: {
     enabled: boolean
   }
@@ -97,4 +119,8 @@ export interface ServerConfig {
       intervalDays: number
     }
   }
+
+  tracker: {
+    enabled: boolean
+  }
 }