]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/typings/plugins/register-server-option.model.ts
Add ability for plugins to add custom routes
[github/Chocobozzz/PeerTube.git] / server / typings / plugins / register-server-option.model.ts
CommitLineData
32fe0013
C
1import { PluginSettingsManager } from '../../../shared/models/plugins/plugin-settings-manager.model'
2import { PluginStorageManager } from '../../../shared/models/plugins/plugin-storage-manager.model'
9ae88819
C
3import { RegisterServerHookOptions } from '../../../shared/models/plugins/register-server-hook.model'
4import { RegisterServerSettingOptions } from '../../../shared/models/plugins/register-server-setting.model'
ee286591
C
5import { PluginVideoCategoryManager } from '../../../shared/models/plugins/plugin-video-category-manager.model'
6import { PluginVideoLanguageManager } from '../../../shared/models/plugins/plugin-video-language-manager.model'
7import { PluginVideoLicenceManager } from '../../../shared/models/plugins/plugin-video-licence-manager.model'
bc0d801b 8import { Logger } from 'winston'
5e2b2e27 9import { Router } from 'express'
bc0d801b
C
10
11export type PeerTubeHelpers = {
12 logger: Logger
1b05d82d
C
13
14 database: {
15 query: Function
16 }
ab3ead3a
C
17
18 videos: {
19 removeVideo: (videoId: number) => Promise<void>
20 }
bc0d801b 21}
32fe0013 22
9ae88819
C
23export type RegisterServerOptions = {
24 registerHook: (options: RegisterServerHookOptions) => void
32fe0013 25
9ae88819 26 registerSetting: (options: RegisterServerSettingOptions) => void
32fe0013
C
27
28 settingsManager: PluginSettingsManager
29
30 storageManager: PluginStorageManager
31
ee286591
C
32 videoCategoryManager: PluginVideoCategoryManager
33 videoLanguageManager: PluginVideoLanguageManager
34 videoLicenceManager: PluginVideoLicenceManager
35
5e2b2e27
C
36 // Get plugin router to create custom routes
37 // Base routes of this router are
38 // * /plugins/:pluginName/:pluginVersion/router/...
39 // * /plugins/:pluginName/router/...
40 getRouter(): Router
41
bc0d801b 42 peertubeHelpers: PeerTubeHelpers
32fe0013 43}