+import { RegisterServerAuthExternalOptions } from '@server/types'
+import {
+ MAbuseMessage,
+ MAbuseReporter,
+ MAccountBlocklist,
+ MActorFollowActorsDefault,
+ MActorUrl,
+ MChannelBannerAccountDefault,
+ MStreamingPlaylist,
+ MVideoChangeOwnershipFull,
+ MVideoFile,
+ MVideoImmutable,
+ MVideoLive,
+ MVideoPlaylistFull,
+ MVideoPlaylistFullSummary
+} from '@server/types/models'
+import { MOAuthTokenUser } from '@server/types/models/oauth/oauth-token'
+import { MPlugin, MServer, MServerBlocklist } from '@server/types/models/server'
+import { MVideoImportDefault } from '@server/types/models/video/video-import'
+import { MVideoPlaylistElement, MVideoPlaylistElementVideoUrlPlaylistPrivacy } from '@server/types/models/video/video-playlist-element'
+import { MAccountVideoRateAccountVideo } from '@server/types/models/video/video-rate'
import { RegisteredPlugin } from '../../lib/plugins/plugin-manager'
import {
MAccountDefault,
MActorAccountChannelId,
- MActorFollowActorsDefault,
MActorFollowActorsDefaultSubscription,
MActorFull,
- MChannelAccountDefault,
MComment,
MCommentOwnerVideoReply,
MUserDefault,
- MVideoAbuse,
MVideoBlacklist,
MVideoCaptionVideo,
MVideoFullLight,
MVideoThumbnail,
MVideoWithRights
} from '../../types/models'
-import { MVideoPlaylistFull, MVideoPlaylistFullSummary } from '../../types/models/video/video-playlist'
-import { MVideoImportDefault } from '@server/types/models/video/video-import'
-import { MAccountBlocklist, MActorUrl, MStreamingPlaylist, MVideoFile, MVideoImmutable } from '@server/types/models'
-import { MVideoPlaylistElement, MVideoPlaylistElementVideoUrlPlaylistPrivacy } from '@server/types/models/video/video-playlist-element'
-import { MAccountVideoRateAccountVideo } from '@server/types/models/video/video-rate'
-import { MVideoChangeOwnershipFull } from '../../types/models/video/video-change-ownership'
-import { MPlugin, MServer } from '@server/types/models/server'
-import { MServerBlocklist } from '../../types/models/server/server-blocklist'
-import { MOAuthTokenUser } from '@server/types/models/oauth/oauth-token'
-import { UserRole } from '@shared/models'
-import { RegisterServerAuthExternalOptions } from '@shared/models/plugins/register-server-auth.model'
declare module 'express' {
export interface Request {
query: any
}
-
interface Response {
+ locals: PeerTubeLocals
+ }
+}
- locals: {
- bypassLogin?: {
- bypass: boolean
- pluginName: string
- authName?: string
- user: {
- username: string
- email: string
- displayName: string
- role: UserRole
- }
- }
-
- refreshTokenAuthName?: string
-
- explicitLogout: boolean
+interface PeerTubeLocals {
+ videoAll?: MVideoFullLight
+ onlyImmutableVideo?: MVideoImmutable
+ onlyVideo?: MVideoThumbnail
+ onlyVideoWithRights?: MVideoWithRights
+ videoId?: MVideoIdThumbnail
- videoAll?: MVideoFullLight
- onlyImmutableVideo?: MVideoImmutable
- onlyVideo?: MVideoThumbnail
- onlyVideoWithRights?: MVideoWithRights
- videoId?: MVideoIdThumbnail
+ videoLive?: MVideoLive
- videoShare?: MVideoShareActor
+ videoShare?: MVideoShareActor
- videoFile?: MVideoFile
+ videoFile?: MVideoFile
- videoImport?: MVideoImportDefault
+ videoImport?: MVideoImportDefault
- videoBlacklist?: MVideoBlacklist
+ videoBlacklist?: MVideoBlacklist
- videoCaption?: MVideoCaptionVideo
+ videoCaption?: MVideoCaptionVideo
- videoAbuse?: MVideoAbuse
+ abuse?: MAbuseReporter
+ abuseMessage?: MAbuseMessage
- videoStreamingPlaylist?: MStreamingPlaylist
+ videoStreamingPlaylist?: MStreamingPlaylist
- videoChannel?: MChannelAccountDefault
+ videoChannel?: MChannelBannerAccountDefault
- videoPlaylistFull?: MVideoPlaylistFull
- videoPlaylistSummary?: MVideoPlaylistFullSummary
+ videoPlaylistFull?: MVideoPlaylistFull
+ videoPlaylistSummary?: MVideoPlaylistFullSummary
- videoPlaylistElement?: MVideoPlaylistElement
- videoPlaylistElementAP?: MVideoPlaylistElementVideoUrlPlaylistPrivacy
+ videoPlaylistElement?: MVideoPlaylistElement
+ videoPlaylistElementAP?: MVideoPlaylistElementVideoUrlPlaylistPrivacy
- accountVideoRate?: MAccountVideoRateAccountVideo
+ accountVideoRate?: MAccountVideoRateAccountVideo
- videoCommentFull?: MCommentOwnerVideoReply
- videoCommentThread?: MComment
+ videoCommentFull?: MCommentOwnerVideoReply
+ videoCommentThread?: MComment
- follow?: MActorFollowActorsDefault
- subscription?: MActorFollowActorsDefaultSubscription
+ follow?: MActorFollowActorsDefault
+ subscription?: MActorFollowActorsDefaultSubscription
- nextOwner?: MAccountDefault
- videoChangeOwnership?: MVideoChangeOwnershipFull
+ nextOwner?: MAccountDefault
+ videoChangeOwnership?: MVideoChangeOwnershipFull
- account?: MAccountDefault
+ account?: MAccountDefault
- actorUrl?: MActorUrl
- actorFull?: MActorFull
+ actorUrl?: MActorUrl
+ actorFull?: MActorFull
- user?: MUserDefault
+ user?: MUserDefault
- server?: MServer
+ server?: MServer
- videoRedundancy?: MVideoRedundancyVideo
+ videoRedundancy?: MVideoRedundancyVideo
- accountBlock?: MAccountBlocklist
- serverBlock?: MServerBlocklist
+ accountBlock?: MAccountBlocklist
+ serverBlock?: MServerBlocklist
- oauth?: {
- token: MOAuthTokenUser
- }
+ oauth?: {
+ token: MOAuthTokenUser
+ }
- signature?: {
- actor: MActorAccountChannelId
- }
+ signature?: {
+ actor: MActorAccountChannelId
+ }
- authenticated?: boolean
+ authenticated?: boolean
- registeredPlugin?: RegisteredPlugin
+ registeredPlugin?: RegisteredPlugin
- externalAuth?: RegisterServerAuthExternalOptions
+ externalAuth?: RegisterServerAuthExternalOptions
- plugin?: MPlugin
- }
- }
+ plugin?: MPlugin
}