import type { Bud } from '@roots/bud-framework'; import type { Compiler as BudCompiler } from '@roots/bud-framework'; import type { MultiCompiler, MultiStats, Webpack } from '@roots/bud-framework/config'; import { Service } from '@roots/bud-framework/service'; /** * {@link BudCompiler} implementation */ declare class Compiler extends Service implements BudCompiler { /** * {@link BudCompiler.config} */ config: BudCompiler[`config`]; /** * {@link BudCompiler.implementation} */ implementation: BudCompiler[`implementation`] & typeof Webpack; /** * {@link BudCompiler.instance} */ instance: BudCompiler[`instance`]; /** * {@link BudCompiler.stats} */ stats: BudCompiler[`stats`]; /** * {@link BudCompiler.onStats} */ onStats(stats: MultiStats): void; /** * {@link BudCompiler.compile} */ compile(bud: Bud): Promise; /** * {@link Service.register} */ register?(bud: Bud): Promise; } export { Compiler as default };