]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - shared/models/plugins/server/managers/plugin-settings-manager.model.ts
Bumped to version v5.2.1
[github/Chocobozzz/PeerTube.git] / shared / models / plugins / server / managers / plugin-settings-manager.model.ts
index 3c28c05656f2edbc22c7c228597731fd62658e78..b628718dda98515e07829f3b0df5ff5d570462df 100644 (file)
@@ -1,9 +1,17 @@
+export type SettingValue = string | boolean
+
+export interface SettingEntries {
+  [settingName: string]: SettingValue
+}
+
+export type SettingsChangeCallback = (settings: SettingEntries) => Promise<any>
+
 export interface PluginSettingsManager {
-  getSetting: (name: string) => Promise<string | boolean>
+  getSetting: (name: string) => Promise<SettingValue>
 
-  getSettings: (names: string[]) => Promise<{ [settingName: string]: string | boolean }>
+  getSettings: (names: string[]) => Promise<SettingEntries>
 
-  setSetting: (name: string, value: string) => Promise<any>
+  setSetting: (name: string, value: SettingValue) => Promise<any>
 
-  onSettingsChange: (cb: (names: string[]) => Promise<any>) => void
+  onSettingsChange: (cb: SettingsChangeCallback) => void
 }