export const serverFilterHookObject = { 'filter:api.videos.list.params' : true , 'filter:api.videos.list.result' : true , 'filter:api.accounts.videos.list.params' : true , 'filter:api.accounts.videos.list.result' : true , 'filter:api.video-channels.videos.list.params' : true , 'filter:api.video-channels.videos.list.result' : true , 'filter:api.user.me.videos.list.params' : true , 'filter:api.user.me.videos.list.result' : true , 'filter:api.overviews.videos.list.params' : true , 'filter:api.overviews.videos.list.result' : true , 'filter:api.search.videos.local.list.params' : true , 'filter:api.search.videos.local.list.result' : true , 'filter:api.search.videos.index.list.params' : true , 'filter:api.search.videos.index.list.result' : true , 'filter:api.search.video-channels.local.list.params' : true , 'filter:api.search.video-channels.local.list.result' : true , 'filter:api.search.video-channels.index.list.params' : true , 'filter:api.search.video-channels.index.list.result' : true , 'filter:api.search.video-playlists.local.list.params' : true , 'filter:api.search.video-playlists.local.list.result' : true , 'filter:api.search.video-playlists.index.list.params' : true , 'filter:api.search.video-playlists.index.list.result' : true , 'filter:api.video.get.result' : true , 'filter:api.video.upload.accept.result' : true , 'filter:api.live-video.create.accept.result' : true , 'filter:api.video.pre-import-url.accept.result' : true , 'filter:api.video.pre-import-torrent.accept.result' : true , 'filter:api.video.post-import-url.accept.result' : true , 'filter:api.video.post-import-torrent.accept.result' : true , 'filter:api.video-thread.create.accept.result' : true , 'filter:api.video-comment-reply.create.accept.result' : true , 'filter:api.video.upload.video-attribute.result' : true , 'filter:api.video.import-url.video-attribute.result' : true , 'filter:api.video.import-torrent.video-attribute.result' : true , 'filter:api.video.live.video-attribute.result' : true , 'filter:api.video-threads.list.params' : true , 'filter:api.video-threads.list.result' : true , 'filter:api.video-thread-comments.list.params' : true , 'filter:api.video-thread-comments.list.result' : true , 'filter:api.server.stats.get.result' : true , 'filter:video.auto-blacklist.result' : true , 'filter:api.user.signup.allowed.result' : true , 'filter:api.download.video.allowed.result' : true , 'filter:api.download.torrent.allowed.result' : true , 'filter:html.embed.video.allowed.result' : true , 'filter:html.embed.video-playlist.allowed.result' : true } ; export type ServerFilterHookName = keyof typeof serverFilterHookObject ; export const serverActionHookObject = { 'action:application.listening' : true , 'action:api.video.updated' : true , 'action:api.video.deleted' : true , 'action:api.video.uploaded' : true , 'action:api.video.viewed' : true , 'action:api.live-video.created' : true , 'action:api.video-thread.created' : true , 'action:api.video-comment-reply.created' : true , 'action:api.video-comment.deleted' : true , 'action:api.video-caption.created' : true , 'action:api.video-caption.deleted' : true , 'action:api.user.blocked' : true , 'action:api.user.unblocked' : true , 'action:api.user.registered' : true , 'action:api.user.created' : true , 'action:api.user.deleted' : true , 'action:api.user.updated' : true , 'action:api.user.oauth2-got-token' : true , 'action:api.video-playlist-element.created' : true } ; export type ServerActionHookName = keyof typeof serverActionHookObject ; export const serverHookObject = Object . assign ( { } , serverFilterHookObject , serverActionHookObject ) ; export type ServerHookName = keyof typeof serverHookObject ; export interface ServerHook { runHook < T > ( hookName , result ? , params ? ) : Promise < T > ; }