diff options
Diffstat (limited to 'node_modules/@11ty/recursive-copy/index.d.ts')
| -rw-r--r-- | node_modules/@11ty/recursive-copy/index.d.ts | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/node_modules/@11ty/recursive-copy/index.d.ts b/node_modules/@11ty/recursive-copy/index.d.ts new file mode 100644 index 0000000..9a8770e --- /dev/null +++ b/node_modules/@11ty/recursive-copy/index.d.ts @@ -0,0 +1,117 @@ +import { Stats } from 'fs'; +import { Stream } from 'stream'; + +interface Options { + /** + * Whether to overwrite destination files. + */ + overwrite?: boolean; + /** + * Whether to expand symbolic links. + */ + expand?: boolean; + /** + * Whether to copy files beginning with a `.` + */ + dot?: boolean; + /** + * Whether to copy OS junk files (e.g. `.DS_Store`, `Thumbs.db`). + */ + junk?: boolean; + /** + * Filter function / regular expression / glob that determines which files to copy (uses maximatch). + */ + filter?: string | string[] | RegExp | ((path: string) => boolean); + /** + * Function that maps source paths to destination paths. + */ + rename?: (path: string) => string; + /** + * Function that returns a transform stream used to modify file contents. + */ + transform?: (src: string, dest: string, stats: Stats) => Stream | null | undefined; + /** + * Whether to return an array of copy results. + * + * Defaults to true. + */ + results?: boolean; + /** + * Maximum number of simultaneous copy operations. + * + * Defaults to 255. + */ + concurrency?: number; + /** + * Whether to log debug information. + */ + debug?: boolean; +} + +interface CopyFn { + ( + source: string, + dest: string, + options?: Options, + ): WithCopyEvents<Promise<Array<CopyOperation>>>; + ( + source: string, + dest: string, + callback: (error: Error | null, results?: Array<CopyOperation>) => void, + ): WithCopyEvents<{}>; + events: { + ERROR: CopyEventType.ERROR; + COMPLETE: CopyEventType.COMPLETE; + CREATE_DIRECTORY_START: CopyEventType.CREATE_DIRECTORY_START; + CREATE_DIRECTORY_ERROR: CopyEventType.CREATE_DIRECTORY_ERROR; + CREATE_DIRECTORY_COMPLETE: CopyEventType.CREATE_DIRECTORY_COMPLETE; + CREATE_SYMLINK_START: CopyEventType.CREATE_SYMLINK_START; + CREATE_SYMLINK_ERROR: CopyEventType.CREATE_SYMLINK_ERROR; + CREATE_SYMLINK_COMPLETE: CopyEventType.CREATE_SYMLINK_COMPLETE; + COPY_FILE_START: CopyEventType.COPY_FILE_START; + COPY_FILE_ERROR: CopyEventType.COPY_FILE_ERROR; + COPY_FILE_COMPLETE: CopyEventType.COPY_FILE_COMPLETE; + }; +} + +declare const copy: CopyFn; +export default copy; + +export interface CopyErrorInfo { + src: string; + dest: string; +} + +export interface CopyOperation { + src: string; + dest: string; + stats: Stats; +} + +type WithCopyEvents<T> = T & { + on(event: CopyEventType.ERROR, callback: (error: Error, info: CopyErrorInfo) => void): WithCopyEvents<T>; + on(event: CopyEventType.COMPLETE, callback: (info: Array<CopyOperation>) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_DIRECTORY_START, callback: (info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_DIRECTORY_ERROR, callback: (error: Error, info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_DIRECTORY_COMPLETE, callback: (info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_SYMLINK_START, callback: (info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_SYMLINK_ERROR, callback: (error: Error, info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.CREATE_SYMLINK_COMPLETE, callback: (info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.COPY_FILE_START, callback: (info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.COPY_FILE_ERROR, callback: (error: Error, info: CopyOperation) => void): WithCopyEvents<T>; + on(event: CopyEventType.COPY_FILE_COMPLETE, callback: (info: CopyOperation) => void): WithCopyEvents<T>; +} + +export enum CopyEventType { + ERROR = 'error', + COMPLETE = 'complete', + CREATE_DIRECTORY_START = 'createDirectoryStart', + CREATE_DIRECTORY_ERROR = 'createDirectoryError', + CREATE_DIRECTORY_COMPLETE = 'createDirectoryComplete', + CREATE_SYMLINK_START = 'createSymlinkStart', + CREATE_SYMLINK_ERROR = 'createSymlinkError', + CREATE_SYMLINK_COMPLETE = 'createSymlinkComplete', + COPY_FILE_START = 'copyFileStart', + COPY_FILE_ERROR = 'copyFileError', + COPY_FILE_COMPLETE = 'copyFileComplete', +} |
