X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Ftypes%2Fplugins%2Fregister-server-option.model.ts;h=2432b7ac4eab7a4727579b041bbea33cf275529a;hb=ceb8f322118b24508abc6dd0bc6813a43610eff3;hp=2e52d1efdc77a6fe5de192cd0be91acbe60a6f98;hpb=b49f22d8f9a52ab75fd38db2d377249eb58fa678;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/types/plugins/register-server-option.model.ts b/server/types/plugins/register-server-option.model.ts index 2e52d1efd..2432b7ac4 100644 --- a/server/types/plugins/register-server-option.model.ts +++ b/server/types/plugins/register-server-option.model.ts @@ -1,16 +1,19 @@ -import { Router } from 'express' +import { Router, Response } from 'express' import { Logger } from 'winston' import { ActorModel } from '@server/models/activitypub/actor' import { PluginPlaylistPrivacyManager, PluginSettingsManager, PluginStorageManager, + PluginTranscodingManager, PluginVideoCategoryManager, PluginVideoLanguageManager, PluginVideoLicenceManager, PluginVideoPrivacyManager, RegisterServerHookOptions, RegisterServerSettingOptions, + ServerConfig, + UserRole, VideoBlacklistCreate } from '@shared/models' import { MVideoThumbnail } from '../models' @@ -29,12 +32,15 @@ export type PeerTubeHelpers = { videos: { loadByUrl: (url: string) => Promise + loadByIdOrUUID: (id: number | string) => Promise removeVideo: (videoId: number) => Promise } config: { getWebserverUrl: () => string + + getServerConfig: () => Promise } moderation: { @@ -50,6 +56,28 @@ export type PeerTubeHelpers = { server: { getServerActor: () => Promise } + + plugin: { + // PeerTube >= 3.2 + getBaseStaticRoute: () => string + + // PeerTube >= 3.2 + getBaseRouterRoute: () => string + + // PeerTube >= 3.2 + getDataDirectoryPath: () => string + } + + user: { + // PeerTube >= 3.2 + getAuthUser: (response: Response) => Promise<{ + id?: string + username: string + email: string + blocked: boolean + role: UserRole + } | undefined> + } } export type RegisterServerOptions = { @@ -68,6 +96,8 @@ export type RegisterServerOptions = { videoPrivacyManager: PluginVideoPrivacyManager playlistPrivacyManager: PluginPlaylistPrivacyManager + transcodingManager: PluginTranscodingManager + registerIdAndPassAuth: (options: RegisterServerAuthPassOptions) => void registerExternalAuth: (options: RegisterServerAuthExternalOptions) => RegisterServerAuthExternalResult unregisterIdAndPassAuth: (authName: string) => void