import { type requireResolve } from '@flatjs/common'; import type { DeepPartial } from '@hyperse/config-loader'; import { type ConfigEnvBase, type UserConfigExport } from '@hyperse/config-loader'; import { type FlatForgeOptions } from '../types/types-options.js'; export interface ForgeConfigBase extends ConfigEnvBase { /** * The current project directory. */ projectCwd: string; /** * The command of the current process. */ command: 'build' | 'serve'; /** * Expose `env`.`resolve` to allow dynamic resolve `esm` node modules from `flatjs-evolve.config.ts` * @example * ```ts * export default defineConfig((env) => { * console.log(env.resolve(import.meta.url, 'tailwindcss')); * ... * } * // Note may you need to change `module` to `ESNext` at your `tsconfig.json` * `tsconfig.json` * { * "module": "ESNext" * } * ``` */ resolve: typeof requireResolve; } type DefineConfigFn = (userConfig: UserConfigExport, ForgeConfigBase>) => UserConfigExport, ForgeConfigBase>; export declare const defineConfig: DefineConfigFn; export {};