UNPKG

@alexaegis/nuke

Version:
55 lines 2.16 kB
import { Defined, DryOption, NormalizedDryOption } from '@alexaegis/common'; import { LoggerOption, NormalizedLoggerOption } from '@alexaegis/logging'; import { CollectWorkspacePackagesOptions, NormalizedCollectWorkspacePackagesOptions } from '@alexaegis/workspace-tools'; export declare const DEFAULT_NUKE_LIST: string[]; export declare const DEFAULT_NUKE_GLOBS: string[]; export interface NukeOptionsOnly { /** * Don't remove `node_modules` directories but try to clean them up * * @defaultValue false */ skipNodeModules?: boolean; /** * A list of relative paths this script will remove in every package * in the workspace. If you define this, the default are not applied. * * If you only wish to extend or remove parts of it use the `nukeMore` * and `dontNuke` fields and leave this one alone. * * @defaultValue DEFAULT_NUKE_LIST */ nukeList?: string[] | undefined; /** * Globs to also remove. * * If you only wish to extend or remove parts of it use the `nukeMoreGlobs` * and `dontNuke` fields and leave this one alone. * * @defaultValue DEFAULT_NUKE_GLOBS */ nukeGlobs?: string[] | undefined; /** * Additional globs to nuke if you don't want to overwrite the default ones * * @defaultValue undefined */ nukeMoreGlobs?: string[] | undefined; /** * These will be nuked too. Same role as `nukeList` but defining this * won't get rid of the built in nukelist * * @defaultValue [] */ nukeMore?: string[] | undefined; /** * If it shouldn't nuke a specific package, add them here. * * @defaultValue [] */ dontNukeIn?: (string | RegExp)[] | undefined; } export type NukeOptions = NukeOptionsOnly & DryOption & CollectWorkspacePackagesOptions & LoggerOption; export type NormalizedNukeOptions = Defined<NukeOptionsOnly> & NormalizedDryOption & NormalizedCollectWorkspacePackagesOptions & NormalizedLoggerOption; export declare const normalizeNukeOptions: (options?: NukeOptions) => NormalizedNukeOptions; //# sourceMappingURL=nuke.function.options.d.ts.map