tapable
Advanced tools
Comparing version 2.1.0 to 2.1.1
{ | ||
"name": "tapable", | ||
"version": "2.1.0", | ||
"version": "2.1.1", | ||
"author": "Tobias Koppers @sokra", | ||
@@ -5,0 +5,0 @@ "description": "Just a little module for plugins.", |
@@ -23,2 +23,7 @@ type FixedSizeArray<T extends number, U> = T extends 0 | ||
declare class UnsetAdditionalOptions { | ||
_UnsetAdditionalOptions: true | ||
} | ||
type IfSet<X> = X extends UnsetAdditionalOptions ? {} : X; | ||
type Callback<E, T> = (error: E | null, result?: T) => void; | ||
@@ -41,5 +46,5 @@ type InnerCallback<E, T> = (error?: E | null | false, result?: T) => void; | ||
interface HookInterceptor<T, R, AdditionalOptions = {}> { | ||
interface HookInterceptor<T, R, AdditionalOptions = UnsetAdditionalOptions> { | ||
name?: string; | ||
tap?: (tap: FullTap & AdditionalOptions) => void; | ||
tap?: (tap: FullTap & IfSet<AdditionalOptions>) => void; | ||
call?: (...args: any[]) => void; | ||
@@ -50,3 +55,3 @@ loop?: (...args: any[]) => void; | ||
done?: () => void; | ||
register?: (tap: FullTap & AdditionalOptions) => FullTap & AdditionalOptions; | ||
register?: (tap: FullTap & IfSet<AdditionalOptions>) => FullTap & IfSet<AdditionalOptions>; | ||
} | ||
@@ -56,3 +61,3 @@ | ||
declare class Hook<T, R, AdditionalOptions = {}> { | ||
declare class Hook<T, R, AdditionalOptions = UnsetAdditionalOptions> { | ||
constructor(args?: ArgumentNames<AsArray<T>>, name?: string); | ||
@@ -64,21 +69,21 @@ name: string | undefined; | ||
promise(...args: AsArray<T>): Promise<R>; | ||
tap(options: string | Tap & AdditionalOptions, fn: (...args: AsArray<T>) => R): void; | ||
withOptions(options: TapOptions & AdditionalOptions): Hook<T, R>; | ||
tap(options: string | Tap & IfSet<AdditionalOptions>, fn: (...args: AsArray<T>) => R): void; | ||
withOptions(options: TapOptions & IfSet<AdditionalOptions>): Hook<T, R>; | ||
} | ||
export class SyncHook<T, R = void, AdditionalOptions = {}> extends Hook<T, R, AdditionalOptions> { | ||
export class SyncHook<T, R = void, AdditionalOptions = UnsetAdditionalOptions> extends Hook<T, R, AdditionalOptions> { | ||
call(...args: AsArray<T>): R; | ||
} | ||
export class SyncBailHook<T, R, AdditionalOptions = {}> extends SyncHook<T, R, AdditionalOptions> {} | ||
export class SyncLoopHook<T, AdditionalOptions = {}> extends SyncHook<T, void, AdditionalOptions> {} | ||
export class SyncWaterfallHook<T, AdditionalOptions = {}> extends SyncHook<T, AsArray<T>[0], AdditionalOptions> {} | ||
export class SyncBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<T, R, AdditionalOptions> {} | ||
export class SyncLoopHook<T, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<T, void, AdditionalOptions> {} | ||
export class SyncWaterfallHook<T, AdditionalOptions = UnsetAdditionalOptions> extends SyncHook<T, AsArray<T>[0], AdditionalOptions> {} | ||
declare class AsyncHook<T, R, AdditionalOptions = {}> extends Hook<T, R, AdditionalOptions> { | ||
declare class AsyncHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends Hook<T, R, AdditionalOptions> { | ||
tapAsync( | ||
options: string | Tap & AdditionalOptions, | ||
options: string | Tap & IfSet<AdditionalOptions>, | ||
fn: (...args: Append<AsArray<T>, InnerCallback<Error, R>>) => void | ||
): void; | ||
tapPromise( | ||
options: string | Tap & AdditionalOptions, | ||
options: string | Tap & IfSet<AdditionalOptions>, | ||
fn: (...args: AsArray<T>) => Promise<R> | ||
@@ -88,8 +93,8 @@ ): void; | ||
export class AsyncParallelHook<T, AdditionalOptions = {}> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncParallelBailHook<T, R, AdditionalOptions = {}> extends AsyncHook<T, R, AdditionalOptions> {} | ||
export class AsyncSeriesHook<T, AdditionalOptions = {}> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncSeriesBailHook<T, R, AdditionalOptions = {}> extends AsyncHook<T, R, AdditionalOptions> {} | ||
export class AsyncSeriesLoopHook<T, AdditionalOptions = {}> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncSeriesWaterfallHook<T, AdditionalOptions = {}> extends AsyncHook<T, AsArray<T>[0], AdditionalOptions> {} | ||
export class AsyncParallelHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncParallelBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, R, AdditionalOptions> {} | ||
export class AsyncSeriesHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncSeriesBailHook<T, R, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, R, AdditionalOptions> {} | ||
export class AsyncSeriesLoopHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, void, AdditionalOptions> {} | ||
export class AsyncSeriesWaterfallHook<T, AdditionalOptions = UnsetAdditionalOptions> extends AsyncHook<T, AsArray<T>[0], AdditionalOptions> {} | ||
@@ -96,0 +101,0 @@ type HookFactory<H> = (key: any, hook?: H) => H; |
46387
1222