st-bundle
Version:
CLI for watching and bundling SpringType projects.
73 lines (72 loc) • 2.5 kB
TypeScript
import { Cache } from '../cache/cache';
import { Context } from '../core/Context';
import { IDevServerProps } from '../dev-server/devServerProps';
import { IRawCompilerOptions } from '../interfaces/TypescriptInterfaces';
import { IJSONPluginProps } from '../plugins/core/plugin_json';
import { IPluginLinkOptions } from '../plugins/core/plugin_link';
import { IWatcherExternalProps } from '../watcher/watcher';
import { IWebIndexConfig } from '../web-index/webIndex';
import { ICodeSplittingConfig } from './ICodeSplittingConfig';
import { IFuseLoggerProps } from './IFuseLoggerProps';
import { IResourceConfig } from './IResourceConfig';
import { IStyleSheetProps } from './IStylesheetProps';
import { IWebWorkerConfig } from './IWebWorkerConfig';
import { ICacheProps, IHMRExternalProps, ITarget } from './PrivateConfig';
export interface IPublicConfig {
root?: string;
target?: ITarget;
useSingleBundle?: boolean;
dependencies?: {
include?: Array<string>;
ignorePackages?: Array<string>;
ignoreAllExternal?: boolean;
};
homeDir?: string;
output?: string;
modules?: Array<string>;
logging?: IFuseLoggerProps;
webWorkers?: IWebWorkerConfig;
codeSplitting?: ICodeSplittingConfig;
watch?: boolean | IWatcherExternalProps;
resources?: IResourceConfig;
json?: IJSONPluginProps;
link?: IPluginLinkOptions;
/**
* Environment variables. Values can be strings only
* Default values for development and production:
* NODE_ENV=development|production
* @type {{ [key: string]: string }}
* @memberof IPublicConfig
*/
env?: {
[key: string]: string;
};
hmr?: boolean | IHMRExternalProps;
stylesheet?: IStyleSheetProps;
cache?: boolean | ICacheProps;
tsConfig?: string | IRawCompilerOptions;
entry?: string | Array<string>;
allowSyntheticDefaultImports?: boolean;
webIndex?: IWebIndexConfig | boolean;
turboMode?: {
maxWorkers?: number;
workerPortsRange?: {
start: number;
end: number;
};
workerPorts?: Array<number>;
} | boolean;
sourceMap?: {
sourceRoot?: string;
vendor?: boolean;
project?: boolean;
css?: boolean;
} | boolean;
plugins?: Array<(ctx: Context) => void>;
alias?: {
[key: string]: string;
};
defaultCollectionName?: string;
devServer?: IDevServerProps | boolean | undefined;
cacheObject?: Cache;
}