UNPKG

coc-webview

Version:

Vscode webview ported to coc.nvim

51 lines (50 loc) 1.66 kB
/// <reference types="node" /> import { Emitter } from 'coc.nvim'; export declare type Arguments<F extends (arg: any) => any> = F extends (...args: infer Args) => any ? Args : never; export declare type EmitterArg<E> = E extends Emitter<infer A> ? A : never; export declare type ReadyContext = { tmpdir: string; }; export interface SocketServerEvents { register: (pathname: string) => void; dispose: () => void; postMessage: (message: any) => void; setState: (state: any) => void; visible: (visible: boolean) => void; tmpFile: (filename: string, blob: Buffer) => void; } export interface SocketClientEvents { ready: (context: ReadyContext) => void; title: (content: string) => void; iconPath: (paths: IconPaths) => void; html: (content: string) => void; postMessage: (message: any) => void; reveal: () => void; dispose: () => void; } export interface ServerConnectorEvents { register: (socketsCount: number) => void; unregister: (socketsCount: number) => void; dispose: () => void; postMessage: (message: any) => void; setState: (state: any) => void; visible: (visible: boolean) => void; } export declare type StartupOptions = { debug: boolean; primaryColors: { dark: string; light: string; }; url: string; routeName: string; state: any; lightOrDarkMode: LightOrDarkMode; }; export declare type IconPaths = { light: string; dark: string; }; export declare type ColorMode = 'dark' | 'light'; export declare type LightOrDarkMode = ColorMode | 'system'; export declare type ColorStrategy = 'vim-background' | 'system' | ColorMode;