UNPKG

webpack-userscript

Version:
37 lines (36 loc) 2.28 kB
import { AsyncParallelHook, AsyncSeriesBailHook, AsyncSeriesWaterfallHook } from 'tapable'; import { Compilation, Compiler, WebpackPluginInstance } from 'webpack'; import { Feature, LoadHeadersOptions, ProxyScriptOptions, RenderHeadersOptions, ResolveBaseURLsOptions, SSRIOptions, ValidateHeadersOptions } from './features'; import { CompilationContext, FileInfo, HeadersProps, UserscriptPluginInstance, WaterfallContext } from './types'; export interface UserscriptPluginOptions { metajs?: boolean; skip?: (fileInfo: FileInfo) => boolean; proxyScript?: unknown; i18n?: Record<string, unknown>; } export type UserscriptOptions = LoadHeadersOptions & ResolveBaseURLsOptions & SSRIOptions & ProxyScriptOptions & RenderHeadersOptions & ValidateHeadersOptions & UserscriptPluginOptions; export declare class UserscriptPlugin implements WebpackPluginInstance, UserscriptPluginInstance { readonly name = "UserscriptPlugin"; readonly features: Feature[]; readonly hooks: { init: AsyncParallelHook<[Compiler], import("tapable").UnsetAdditionalOptions>; close: AsyncParallelHook<[Compiler], import("tapable").UnsetAdditionalOptions>; preprocess: AsyncParallelHook<[Compilation, CompilationContext], import("tapable").UnsetAdditionalOptions>; process: AsyncParallelHook<[Compilation, CompilationContext], import("tapable").UnsetAdditionalOptions>; headers: AsyncSeriesWaterfallHook<[HeadersProps, WaterfallContext], import("tapable").UnsetAdditionalOptions>; proxyHeaders: AsyncSeriesWaterfallHook<[HeadersProps, WaterfallContext], import("tapable").UnsetAdditionalOptions>; proxyScriptFile: AsyncSeriesWaterfallHook<[string, WaterfallContext], import("tapable").UnsetAdditionalOptions>; renderHeaders: AsyncSeriesBailHook<Map<string, HeadersProps>, string, import("tapable").UnsetAdditionalOptions>; renderProxyHeaders: AsyncSeriesBailHook<HeadersProps, string, import("tapable").UnsetAdditionalOptions>; }; private readonly contexts; private options; constructor(options?: UserscriptOptions); apply(compiler: Compiler): void; private init; private close; private preprocess; private process; private collectFileInfo; private emitUserscript; }