]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/types/plugins/register-server-option.model.ts
Fix lint
[github/Chocobozzz/PeerTube.git] / server / types / plugins / register-server-option.model.ts
index 1b9250ce4682df58d845e36a4fba60028e4c0abc..ff32e8199e43f327f6590d80938bf5355045db3d 100644 (file)
@@ -1,6 +1,6 @@
-import { Router, Response } from 'express'
+import { Response, Router } from 'express'
 import { Logger } from 'winston'
-import { ActorModel } from '@server/models/activitypub/actor'
+import { ActorModel } from '@server/models/actor/actor'
 import {
   PluginPlaylistPrivacyManager,
   PluginSettingsManager,
@@ -13,6 +13,7 @@ import {
   RegisterServerHookOptions,
   RegisterServerSettingOptions,
   ServerConfig,
+  ThumbnailType,
   UserRole,
   VideoBlacklistCreate
 } from '@shared/models'
@@ -35,6 +36,35 @@ export type PeerTubeHelpers = {
     loadByIdOrUUID: (id: number | string) => Promise<MVideoThumbnail>
 
     removeVideo: (videoId: number) => Promise<void>
+
+    ffprobe: (path: string) => Promise<any>
+
+    getFiles: (id: number | string) => Promise<{
+      webtorrent: {
+        videoFiles: {
+          path: string // Could be null if using remote storage
+          url: string
+          resolution: number
+          size: number
+          fps: number
+        }[]
+      }
+
+      hls: {
+        videoFiles: {
+          path: string // Could be null if using remote storage
+          url: string
+          resolution: number
+          size: number
+          fps: number
+        }[]
+      }
+
+      thumbnails: {
+        type: ThumbnailType
+        path: string
+      }[]
+    }>
   }
 
   config: {
@@ -58,21 +88,28 @@ export type PeerTubeHelpers = {
   }
 
   plugin: {
+    // PeerTube >= 3.2
     getBaseStaticRoute: () => string
 
+    // PeerTube >= 3.2
     getBaseRouterRoute: () => string
 
+    // PeerTube >= 3.2
     getDataDirectoryPath: () => string
   }
 
   user: {
-    getAuthUser: (response: Response) => {
+    // PeerTube >= 3.2
+    getAuthUser: (response: Response) => Promise<{
       id?: string
       username: string
       email: string
       blocked: boolean
       role: UserRole
-    } | undefined
+      Account: {
+        name: string
+      }
+    } | undefined>
   }
 }