UNPKG

@visulima/packem

Version:

A fast and modern bundler for Node.js and TypeScript.

48 lines (47 loc) 1.52 kB
import type { BuildConfig, BuildConfigFunction, BuildPreset } from "../types.d.ts"; export type { BuildConfig, BuildConfigFunction, BuildHooks, BuildPreset } from "../types.d.ts"; /** * Defines a build configuration for Packem. * Supports both static configuration objects and dynamic configuration functions. * @param config Static build configuration object or function returning configuration * @returns The provided configuration * @example * ```typescript * // Static configuration * export default defineConfig({ * entries: ['./src/index.ts'], * outDir: './dist' * }); * * // Dynamic configuration * export default defineConfig((env, mode) => ({ * entries: ['./src/index.ts'], * outDir: env === 'production' ? './dist' : './dev' * })); * ``` * @public */ export declare const defineConfig: (config: BuildConfig | BuildConfigFunction) => BuildConfig | BuildConfigFunction; /** * Defines a build preset for Packem. * Build presets provide reusable configuration templates that can be shared across projects. * @param preset Build preset configuration * @returns The provided preset configuration * @example * ```typescript * export default definePreset({ * name: 'my-preset', * defaults: { * entries: ['./src/index.ts'], * outDir: './dist' * }, * hooks: { * 'build:before': (context) => { * // Custom build preparation logic * } * } * }); * ``` * @public */ export declare const definePreset: (preset: BuildPreset) => BuildPreset;