import Bluebird from 'bluebird';
declare type PromiseFunction<U, T> = (params: U) => Promise<T> | Bluebird<T>;
declare type RawFunction<U, T> = (params: U) => T;
declare const Hooks: {
    wrapObject: <T, U extends "filter:api.videos.list.params" | "filter:api.videos.list.result" | "filter:api.video-playlist.videos.list.params" | "filter:api.video-playlist.videos.list.result" | "filter:api.accounts.videos.list.params" | "filter:api.accounts.videos.list.result" | "filter:api.video-channels.videos.list.params" | "filter:api.video-channels.videos.list.result" | "filter:api.user.me.videos.list.params" | "filter:api.user.me.videos.list.result" | "filter:api.overviews.videos.list.params" | "filter:api.overviews.videos.list.result" | "filter:api.search.videos.local.list.params" | "filter:api.search.videos.local.list.result" | "filter:api.search.videos.index.list.params" | "filter:api.search.videos.index.list.result" | "filter:api.search.video-channels.local.list.params" | "filter:api.search.video-channels.local.list.result" | "filter:api.search.video-channels.index.list.params" | "filter:api.search.video-channels.index.list.result" | "filter:api.search.video-playlists.local.list.params" | "filter:api.search.video-playlists.local.list.result" | "filter:api.search.video-playlists.index.list.params" | "filter:api.search.video-playlists.index.list.result" | "filter:api.video.get.result" | "filter:api.video-channels.list.params" | "filter:api.video-channels.list.result" | "filter:api.video-channel.get.result" | "filter:api.video.upload.accept.result" | "filter:api.live-video.create.accept.result" | "filter:api.video.pre-import-url.accept.result" | "filter:api.video.pre-import-torrent.accept.result" | "filter:api.video.post-import-url.accept.result" | "filter:api.video.post-import-torrent.accept.result" | "filter:api.video-thread.create.accept.result" | "filter:api.video-comment-reply.create.accept.result" | "filter:api.video.upload.video-attribute.result" | "filter:api.video.import-url.video-attribute.result" | "filter:api.video.import-torrent.video-attribute.result" | "filter:api.video.live.video-attribute.result" | "filter:api.video-threads.list.params" | "filter:api.video-threads.list.result" | "filter:api.video-thread-comments.list.params" | "filter:api.video-thread-comments.list.result" | "filter:api.server.stats.get.result" | "filter:video.auto-blacklist.result" | "filter:api.user.signup.allowed.result" | "filter:api.download.video.allowed.result" | "filter:api.download.torrent.allowed.result" | "filter:html.embed.video.allowed.result" | "filter:html.embed.video-playlist.allowed.result" | "filter:job-queue.process.params" | "filter:job-queue.process.result" | "filter:transcoding.manual.resolutions-to-transcode.result" | "filter:transcoding.auto.resolutions-to-transcode.result" | "filter:activity-pub.remote-video-comment.create.accept.result">(result: T, hookName: U, context?: any) => Promise<T>;
    wrapPromiseFun: <U_1, T_1, V extends "filter:api.videos.list.params" | "filter:api.videos.list.result" | "filter:api.video-playlist.videos.list.params" | "filter:api.video-playlist.videos.list.result" | "filter:api.accounts.videos.list.params" | "filter:api.accounts.videos.list.result" | "filter:api.video-channels.videos.list.params" | "filter:api.video-channels.videos.list.result" | "filter:api.user.me.videos.list.params" | "filter:api.user.me.videos.list.result" | "filter:api.overviews.videos.list.params" | "filter:api.overviews.videos.list.result" | "filter:api.search.videos.local.list.params" | "filter:api.search.videos.local.list.result" | "filter:api.search.videos.index.list.params" | "filter:api.search.videos.index.list.result" | "filter:api.search.video-channels.local.list.params" | "filter:api.search.video-channels.local.list.result" | "filter:api.search.video-channels.index.list.params" | "filter:api.search.video-channels.index.list.result" | "filter:api.search.video-playlists.local.list.params" | "filter:api.search.video-playlists.local.list.result" | "filter:api.search.video-playlists.index.list.params" | "filter:api.search.video-playlists.index.list.result" | "filter:api.video.get.result" | "filter:api.video-channels.list.params" | "filter:api.video-channels.list.result" | "filter:api.video-channel.get.result" | "filter:api.video.upload.accept.result" | "filter:api.live-video.create.accept.result" | "filter:api.video.pre-import-url.accept.result" | "filter:api.video.pre-import-torrent.accept.result" | "filter:api.video.post-import-url.accept.result" | "filter:api.video.post-import-torrent.accept.result" | "filter:api.video-thread.create.accept.result" | "filter:api.video-comment-reply.create.accept.result" | "filter:api.video.upload.video-attribute.result" | "filter:api.video.import-url.video-attribute.result" | "filter:api.video.import-torrent.video-attribute.result" | "filter:api.video.live.video-attribute.result" | "filter:api.video-threads.list.params" | "filter:api.video-threads.list.result" | "filter:api.video-thread-comments.list.params" | "filter:api.video-thread-comments.list.result" | "filter:api.server.stats.get.result" | "filter:video.auto-blacklist.result" | "filter:api.user.signup.allowed.result" | "filter:api.download.video.allowed.result" | "filter:api.download.torrent.allowed.result" | "filter:html.embed.video.allowed.result" | "filter:html.embed.video-playlist.allowed.result" | "filter:job-queue.process.params" | "filter:job-queue.process.result" | "filter:transcoding.manual.resolutions-to-transcode.result" | "filter:transcoding.auto.resolutions-to-transcode.result" | "filter:activity-pub.remote-video-comment.create.accept.result">(fun: PromiseFunction<U_1, T_1>, params: U_1, hookName: V) => Promise<T_1>;
    wrapFun: <U_2, T_2, V_1 extends "filter:api.videos.list.params" | "filter:api.videos.list.result" | "filter:api.video-playlist.videos.list.params" | "filter:api.video-playlist.videos.list.result" | "filter:api.accounts.videos.list.params" | "filter:api.accounts.videos.list.result" | "filter:api.video-channels.videos.list.params" | "filter:api.video-channels.videos.list.result" | "filter:api.user.me.videos.list.params" | "filter:api.user.me.videos.list.result" | "filter:api.overviews.videos.list.params" | "filter:api.overviews.videos.list.result" | "filter:api.search.videos.local.list.params" | "filter:api.search.videos.local.list.result" | "filter:api.search.videos.index.list.params" | "filter:api.search.videos.index.list.result" | "filter:api.search.video-channels.local.list.params" | "filter:api.search.video-channels.local.list.result" | "filter:api.search.video-channels.index.list.params" | "filter:api.search.video-channels.index.list.result" | "filter:api.search.video-playlists.local.list.params" | "filter:api.search.video-playlists.local.list.result" | "filter:api.search.video-playlists.index.list.params" | "filter:api.search.video-playlists.index.list.result" | "filter:api.video.get.result" | "filter:api.video-channels.list.params" | "filter:api.video-channels.list.result" | "filter:api.video-channel.get.result" | "filter:api.video.upload.accept.result" | "filter:api.live-video.create.accept.result" | "filter:api.video.pre-import-url.accept.result" | "filter:api.video.pre-import-torrent.accept.result" | "filter:api.video.post-import-url.accept.result" | "filter:api.video.post-import-torrent.accept.result" | "filter:api.video-thread.create.accept.result" | "filter:api.video-comment-reply.create.accept.result" | "filter:api.video.upload.video-attribute.result" | "filter:api.video.import-url.video-attribute.result" | "filter:api.video.import-torrent.video-attribute.result" | "filter:api.video.live.video-attribute.result" | "filter:api.video-threads.list.params" | "filter:api.video-threads.list.result" | "filter:api.video-thread-comments.list.params" | "filter:api.video-thread-comments.list.result" | "filter:api.server.stats.get.result" | "filter:video.auto-blacklist.result" | "filter:api.user.signup.allowed.result" | "filter:api.download.video.allowed.result" | "filter:api.download.torrent.allowed.result" | "filter:html.embed.video.allowed.result" | "filter:html.embed.video-playlist.allowed.result" | "filter:job-queue.process.params" | "filter:job-queue.process.result" | "filter:transcoding.manual.resolutions-to-transcode.result" | "filter:transcoding.auto.resolutions-to-transcode.result" | "filter:activity-pub.remote-video-comment.create.accept.result">(fun: RawFunction<U_2, T_2>, params: U_2, hookName: V_1) => Promise<T_2>;
    runAction: <T_3, U_3 extends "action:application.listening" | "action:notifier.notification.created" | "action:api.video.updated" | "action:api.video.deleted" | "action:api.video.uploaded" | "action:api.video.viewed" | "action:api.video-channel.created" | "action:api.video-channel.updated" | "action:api.video-channel.deleted" | "action:api.live-video.created" | "action:api.video-thread.created" | "action:api.video-comment-reply.created" | "action:api.video-comment.deleted" | "action:api.video-caption.created" | "action:api.video-caption.deleted" | "action:api.user.blocked" | "action:api.user.unblocked" | "action:api.user.registered" | "action:api.user.created" | "action:api.user.deleted" | "action:api.user.updated" | "action:api.user.oauth2-got-token" | "action:api.video-playlist-element.created">(hookName: U_3, params?: T_3) => void;
};
export { Hooks };
//# sourceMappingURL=hooks.d.ts.map