]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/typings/plugins/register-server-option.model.ts
Add config helper for plugins
[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'
b3af2601
C
10import { PluginVideoPrivacyManager } from '@shared/models/plugins/plugin-video-privacy-manager.model'
11import { PluginPlaylistPrivacyManager } from '@shared/models/plugins/plugin-playlist-privacy-manager.model'
e1c55031
C
12import {
13 RegisterServerAuthExternalOptions,
14 RegisterServerAuthExternalResult,
15 RegisterServerAuthPassOptions
16} from '@shared/models/plugins/register-server-auth.model'
bc0d801b
C
17
18export type PeerTubeHelpers = {
19 logger: Logger
1b05d82d
C
20
21 database: {
22 query: Function
23 }
ab3ead3a
C
24
25 videos: {
26 removeVideo: (videoId: number) => Promise<void>
27 }
5a7eecdd
C
28
29 config: {
30 getWebserverUrl: () => string
31 }
bc0d801b 32}
32fe0013 33
9ae88819
C
34export type RegisterServerOptions = {
35 registerHook: (options: RegisterServerHookOptions) => void
32fe0013 36
9ae88819 37 registerSetting: (options: RegisterServerSettingOptions) => void
32fe0013
C
38
39 settingsManager: PluginSettingsManager
40
41 storageManager: PluginStorageManager
42
ee286591
C
43 videoCategoryManager: PluginVideoCategoryManager
44 videoLanguageManager: PluginVideoLanguageManager
45 videoLicenceManager: PluginVideoLicenceManager
46
b3af2601
C
47 videoPrivacyManager: PluginVideoPrivacyManager
48 playlistPrivacyManager: PluginPlaylistPrivacyManager
49
7fed6375
C
50 registerIdAndPassAuth: (options: RegisterServerAuthPassOptions) => void
51 registerExternalAuth: (options: RegisterServerAuthExternalOptions) => RegisterServerAuthExternalResult
52
5e2b2e27
C
53 // Get plugin router to create custom routes
54 // Base routes of this router are
55 // * /plugins/:pluginName/:pluginVersion/router/...
56 // * /plugins/:pluginName/router/...
57 getRouter(): Router
58
bc0d801b 59 peertubeHelpers: PeerTubeHelpers
32fe0013 60}