2019-07-18 16:43:41 +02:00
|
|
|
import { PluginSettingsManager } from '../../../shared/models/plugins/plugin-settings-manager.model'
|
|
|
|
import { PluginStorageManager } from '../../../shared/models/plugins/plugin-storage-manager.model'
|
2019-07-24 11:17:42 +02:00
|
|
|
import { RegisterServerHookOptions } from '../../../shared/models/plugins/register-server-hook.model'
|
|
|
|
import { RegisterServerSettingOptions } from '../../../shared/models/plugins/register-server-setting.model'
|
2019-07-26 13:13:39 +02:00
|
|
|
import { PluginVideoCategoryManager } from '../../../shared/models/plugins/plugin-video-category-manager.model'
|
|
|
|
import { PluginVideoLanguageManager } from '../../../shared/models/plugins/plugin-video-language-manager.model'
|
|
|
|
import { PluginVideoLicenceManager } from '../../../shared/models/plugins/plugin-video-licence-manager.model'
|
2020-04-09 09:57:32 +02:00
|
|
|
import { Logger } from 'winston'
|
2020-04-10 15:07:54 +02:00
|
|
|
import { Router } from 'express'
|
2020-04-20 15:32:11 +02:00
|
|
|
import { PluginVideoPrivacyManager } from '@shared/models/plugins/plugin-video-privacy-manager.model'
|
|
|
|
import { PluginPlaylistPrivacyManager } from '@shared/models/plugins/plugin-playlist-privacy-manager.model'
|
2020-04-23 11:36:50 +02:00
|
|
|
import {
|
|
|
|
RegisterServerAuthExternalOptions,
|
|
|
|
RegisterServerAuthExternalResult,
|
|
|
|
RegisterServerAuthPassOptions
|
|
|
|
} from '@shared/models/plugins/register-server-auth.model'
|
2020-04-09 09:57:32 +02:00
|
|
|
|
|
|
|
export type PeerTubeHelpers = {
|
|
|
|
logger: Logger
|
2020-04-09 11:00:30 +02:00
|
|
|
|
|
|
|
database: {
|
|
|
|
query: Function
|
|
|
|
}
|
2020-04-09 11:35:29 +02:00
|
|
|
|
|
|
|
videos: {
|
|
|
|
removeVideo: (videoId: number) => Promise<void>
|
|
|
|
}
|
2020-04-30 08:46:40 +02:00
|
|
|
|
|
|
|
config: {
|
|
|
|
getWebserverUrl: () => string
|
|
|
|
}
|
2020-04-09 09:57:32 +02:00
|
|
|
}
|
2019-07-18 16:43:41 +02:00
|
|
|
|
2019-07-24 11:17:42 +02:00
|
|
|
export type RegisterServerOptions = {
|
|
|
|
registerHook: (options: RegisterServerHookOptions) => void
|
2019-07-18 16:43:41 +02:00
|
|
|
|
2019-07-24 11:17:42 +02:00
|
|
|
registerSetting: (options: RegisterServerSettingOptions) => void
|
2019-07-18 16:43:41 +02:00
|
|
|
|
|
|
|
settingsManager: PluginSettingsManager
|
|
|
|
|
|
|
|
storageManager: PluginStorageManager
|
|
|
|
|
2019-07-26 13:13:39 +02:00
|
|
|
videoCategoryManager: PluginVideoCategoryManager
|
|
|
|
videoLanguageManager: PluginVideoLanguageManager
|
|
|
|
videoLicenceManager: PluginVideoLicenceManager
|
|
|
|
|
2020-04-20 15:32:11 +02:00
|
|
|
videoPrivacyManager: PluginVideoPrivacyManager
|
|
|
|
playlistPrivacyManager: PluginPlaylistPrivacyManager
|
|
|
|
|
2020-04-22 16:07:04 +02:00
|
|
|
registerIdAndPassAuth: (options: RegisterServerAuthPassOptions) => void
|
|
|
|
registerExternalAuth: (options: RegisterServerAuthExternalOptions) => RegisterServerAuthExternalResult
|
2020-04-30 10:03:09 +02:00
|
|
|
unregisterIdAndPassAuth: (authName: string) => void
|
|
|
|
unregisterExternalAuth: (authName: string) => void
|
2020-04-22 16:07:04 +02:00
|
|
|
|
2020-04-10 15:07:54 +02:00
|
|
|
// Get plugin router to create custom routes
|
|
|
|
// Base routes of this router are
|
|
|
|
// * /plugins/:pluginName/:pluginVersion/router/...
|
|
|
|
// * /plugins/:pluginName/router/...
|
|
|
|
getRouter(): Router
|
|
|
|
|
2020-04-09 09:57:32 +02:00
|
|
|
peertubeHelpers: PeerTubeHelpers
|
2019-07-18 16:43:41 +02:00
|
|
|
}
|