forked from RiseUP/riseup-squad18
52 lines
1.2 KiB
TypeScript
52 lines
1.2 KiB
TypeScript
import { Options } from "@swc/types";
|
|
export type BundleInput = BundleOptions | BundleOptions[];
|
|
export declare const isLocalFile: RegExp;
|
|
export declare function compileBundleOptions(config: BundleInput | string | undefined): Promise<BundleInput>;
|
|
/**
|
|
* Usage: In `spack.config.js` / `spack.config.ts`, you can utilize type annotations (to get autocompletions) like
|
|
*
|
|
* ```ts
|
|
* import { config } from '@swc/core/spack';
|
|
*
|
|
* export default config({
|
|
* name: 'web',
|
|
* });
|
|
* ```
|
|
*
|
|
*
|
|
*
|
|
*/
|
|
export declare function config(c: BundleInput): BundleInput;
|
|
export interface BundleOptions extends SpackConfig {
|
|
workingDir?: string;
|
|
}
|
|
/**
|
|
* `spack.config,js`
|
|
*/
|
|
export interface SpackConfig {
|
|
/**
|
|
* @default process.env.NODE_ENV
|
|
*/
|
|
mode?: Mode;
|
|
target?: Target;
|
|
entry: EntryConfig;
|
|
output: OutputConfig;
|
|
module: ModuleConfig;
|
|
options?: Options;
|
|
/**
|
|
* Modules to exclude from bundle.
|
|
*/
|
|
externalModules?: string[];
|
|
}
|
|
export interface OutputConfig {
|
|
name: string;
|
|
path: string;
|
|
}
|
|
export interface ModuleConfig {
|
|
}
|
|
export type Mode = "production" | "development" | "none";
|
|
export type Target = "browser" | "node";
|
|
export type EntryConfig = string | string[] | {
|
|
[name: string]: string;
|
|
};
|