UNPKG

@roots/bud-build

Version:

bud.js core module

59 lines (58 loc) 1.52 kB
import type { Bud, Loaders } from '@roots/bud-framework'; import type * as Build from '@roots/bud-framework/services/build'; import Registrable from '@roots/bud-build/helpers/registrable'; import Loader from '@roots/bud-build/loader'; export type ConstructorOptions = Build.Item.ConstructorOptions; /** * Item class */ declare class Item extends Registrable implements Build.Item { _app: () => Bud; /** * Identifier */ ident: string; /** * Loader */ loader: `${keyof Loaders & string}` | Loader; /** * Loader options */ options: Build.Item['options']; /** * Class constructor */ constructor(_app: () => Bud, constructorParams?: { ident?: string; loader?: `${keyof Loaders & string}` | Loader; options?: Item['options']; }); getIdent(): Build.Item['ident']; /** * Get rule set item loader */ getLoader(): Loader; /** * Get rule set item options */ getOptions(): Item['options']; /** * Merge rule set item options */ mergeOptions(options: Build.Item.Options): this; setIdent(ident: Build.Item['ident']): this; /** * Set rule set item loader */ setLoader(loader: `${keyof Loaders & string}` | Loader): this; /** * Set rule set item options */ setOptions(options: Item['options']): this; /** * Produce rule set item object for Webpack */ toWebpack(): Build.Item.Output; } export { Item as default };