// TODO: import @types/peertube when available interface RegisterClientHookOptions { target: string // FIXME handler: Function priority?: number } interface RegisterClientHelpers { getBaseStaticRoute: () => string isLoggedIn: () => boolean getSettings: () => Promise<{ [ name: string ]: string }> notifier: { info: (text: string, title?: string, timeout?: number) => void error: (text: string, title?: string, timeout?: number) => void success: (text: string, title?: string, timeout?: number) => void } showModal: (input: { title: string content: string close?: boolean cancel?: { value: string, action?: () => void } confirm?: { value: string, action?: () => void } }) => void markdownRenderer: { textMarkdownToHTML: (textMarkdown: string) => Promise enhancedMarkdownToHTML: (enhancedMarkdown: string) => Promise } translate: (toTranslate: string) => Promise } interface RegisterOptions { registerHook: (options: RegisterClientHookOptions) => void peertubeHelpers: RegisterClientHelpers } interface Video { isLive: boolean isLocal: boolean originInstanceUrl: string uuid: string }