import { TransformOptions, transform } from 'esbuild'; type Filter = string | RegExp; type Implementation = { transform: typeof transform; }; type Except = { [Key in keyof ObjectType as (Key extends Properties ? never : Key)]: ObjectType[Key]; }; type LoaderOptions = Except & { /** Pass a custom esbuild implementation */ implementation?: Implementation; /** * Path to tsconfig.json file */ tsconfig?: string; }; type EsbuildPluginOptions = Except & { include?: Filter | Filter[]; exclude?: Filter | Filter[]; css?: boolean; /** Pass a custom esbuild implementation */ implementation?: Implementation; }; declare class EsbuildPlugin { constructor(options?: EsbuildPluginOptions); apply(compiler: any): void; } export { EsbuildPlugin, EsbuildPluginOptions, LoaderOptions };