+ buildRegisterHelpers (): RegisterServerOptions {
+ const registerHook = this.buildRegisterHook()
+ const registerSetting = this.buildRegisterSetting()
+
+ const getRouter = this.buildGetRouter()
+
+ const settingsManager = this.buildSettingsManager()
+ const storageManager = this.buildStorageManager()
+
+ const videoLanguageManager = this.videoConstantManagerFactory.createVideoConstantManager<string>('language')
+
+ const videoLicenceManager = this.videoConstantManagerFactory.createVideoConstantManager<number>('licence')
+ const videoCategoryManager = this.videoConstantManagerFactory.createVideoConstantManager<number>('category')
+
+ const videoPrivacyManager = this.videoConstantManagerFactory.createVideoConstantManager<VideoPrivacy>('privacy')
+ const playlistPrivacyManager = this.videoConstantManagerFactory.createVideoConstantManager<VideoPlaylistPrivacy>('playlistPrivacy')
+
+ const transcodingManager = this.buildTranscodingManager()
+
+ const registerIdAndPassAuth = this.buildRegisterIdAndPassAuth()
+ const registerExternalAuth = this.buildRegisterExternalAuth()
+ const unregisterIdAndPassAuth = this.buildUnregisterIdAndPassAuth()
+ const unregisterExternalAuth = this.buildUnregisterExternalAuth()
+
+ const peertubeHelpers = buildPluginHelpers(this.plugin, this.npmName)
+
+ return {
+ registerHook,
+ registerSetting,
+
+ getRouter,
+
+ settingsManager,
+ storageManager,
+
+ videoLanguageManager: {
+ ...videoLanguageManager,
+ /** @deprecated use `addConstant` instead **/
+ addLanguage: videoLanguageManager.addConstant,
+ /** @deprecated use `deleteConstant` instead **/
+ deleteLanguage: videoLanguageManager.deleteConstant
+ },
+ videoCategoryManager: {
+ ...videoCategoryManager,
+ /** @deprecated use `addConstant` instead **/
+ addCategory: videoCategoryManager.addConstant,
+ /** @deprecated use `deleteConstant` instead **/
+ deleteCategory: videoCategoryManager.deleteConstant
+ },
+ videoLicenceManager: {
+ ...videoLicenceManager,
+ /** @deprecated use `addConstant` instead **/
+ addLicence: videoLicenceManager.addConstant,
+ /** @deprecated use `deleteConstant` instead **/
+ deleteLicence: videoLicenceManager.deleteConstant
+ },
+
+ videoPrivacyManager: {
+ ...videoPrivacyManager,
+ /** @deprecated use `deleteConstant` instead **/
+ deletePrivacy: videoPrivacyManager.deleteConstant
+ },
+ playlistPrivacyManager: {
+ ...playlistPrivacyManager,
+ /** @deprecated use `deleteConstant` instead **/
+ deletePlaylistPrivacy: playlistPrivacyManager.deleteConstant
+ },
+
+ transcodingManager,
+
+ registerIdAndPassAuth,
+ registerExternalAuth,
+ unregisterIdAndPassAuth,
+ unregisterExternalAuth,
+
+ peertubeHelpers