UNPKG

a2r

Version:
93 lines (92 loc) 1.81 kB
import ts from 'typescript'; import chokidar from 'chokidar'; /** * Process info resulting from watcher event */ export interface ProcessInfo { /** * Event type */ type: 'add' | 'addDir' | 'change' | 'unlink' | 'unlinkDir'; /** * Target path */ targetPath: string; } /** * Watcher error handler */ export declare type OnError = ( /** * Watcher error */ error: Error, /** * Chokidar watcher instance */ watcher?: chokidar.FSWatcher, /** * Target path used to initialize watcher */ targetPath?: string) => void; /** * Watcher ready event handler */ export declare type OnReady = ( /** * Chokidar watcher instance */ watcher: chokidar.FSWatcher, /** * Target path used to initialize watcher */ targetPath: string) => void | Promise<void>; /** * On Validation method */ export declare type OnValidation = ( /** * Server path */ serverPath: string, /** * Target path */ targetPath: string) => Promise<void> | void; /** * Watcher options */ export interface WatcherOptions { /** * Path that should be watched for changes * @memberof WatcherOptions */ targetPath: string; /** * Errors handler * @memberof WatcherOptions */ onError: OnError; /** * Method called once internal watcher (chokidar) is ready * @memberof WatcherOptions */ onReady?: OnReady; /** * Internal watcher options: * WatchOptions from [chokidar](https://github.com/paulmillr/chokidar#api) * @memberof WatcherOptions */ options?: chokidar.WatchOptions; } /** * For typescript nodes casting as docs container purposes */ export interface JSDocContainer { /** * Optional JSDoc array * @type {ts.JSDoc[]} * @memberof JSDocContainer */ jsDoc?: ts.JSDoc[]; }