Rush StackShopBlogEvents
Skip to main content

Home > @rushstack/heft

heft package

Heft is a config-driven toolchain that invokes other popular tools such as TypeScript, ESLint, Jest, Webpack, and API Extractor. You can use it to build web applications, Node.js services, command-line tools, libraries, and more.

Classes

ClassDescription
CancellationToken(BETA) A cancellation token. Can be used to signal that an ongoing process has either been cancelled or timed out.
CancellationTokenSource(BETA) A cancellation token source. Produces cancellation tokens that can be used to signal that an ongoing process has either been cancelled or timed out.
HeftConfiguration

Interfaces

InterfaceDescription
ICancellationTokenSourceOptions(BETA) Options for the cancellation token source.
ICopyOperationUsed to specify a selection of files to copy from a specific source folder to one or more destination folders.
IDeleteOperationUsed to specify a selection of source files to delete from the specified source folder.
IFileSelectionSpecifierUsed to specify a selection of one or more files.
IGlobOptionsA supported subset of options used when globbing files.
IHeftDefaultParametersThe default parameters provided by Heft.
IHeftLifecycleCleanHookOptionsOptions provided to the clean hook.
IHeftLifecycleHooksHooks that are available to the lifecycle plugin.
IHeftLifecyclePluginThe interface that Heft lifecycle plugins must implement. Lifecycle plugins are used to provide functionality that affects the lifecycle of the Heft run. As such, they do not belong to any particular Heft phase.
IHeftLifecycleSessionThe lifecycle session is responsible for providing session-specific information to Heft lifecycle plugins. The session provides access to the hooks that Heft will run as part of lifecycle execution, as well as access to parameters provided via the CLI. The session is also how you request access to other lifecycle plugins.
IHeftLifecycleToolFinishHookOptionsOptions provided to the toolFinish hook.
IHeftLifecycleToolStartHookOptionsOptions provided to the toolStart hook.
IHeftParametersParameters provided to a Heft plugin.
IHeftParsedCommandLineThe type of IHeftTaskSession.parsedCommandLine, which exposes details about the command line that was used to invoke Heft.
IHeftPluginThe interface used for all Heft plugins.
IHeftRecordMetricsHookOptions
IHeftTaskFileOperationsOptions provided to the registerFileOperations hook.
IHeftTaskHooksHooks that are available to the task plugin.
IHeftTaskPluginThe interface that Heft task plugins must implement. Task plugins are used to provide the implementation of a specific task.
IHeftTaskRunHookOptionsOptions provided to the run hook.
IHeftTaskRunIncrementalHookOptionsOptions provided to the 'runIncremental' hook.
IHeftTaskSessionThe task session is responsible for providing session-specific information to Heft task plugins. The session provides access to the hooks that Heft will run as part of task execution, as well as access to parameters provided via the CLI. The session is also how you request access to other task plugins.
IIncrementalCopyOperationUsed to specify a selection of files to copy from a specific source folder to one or more destination folders.
IMetricsData
IRigPackageResolverRig resolves requested tools from the project's Heft rig.
IRunScript(BETA) Interface used by scripts that are run by the RunScriptPlugin.
IRunScriptOptions(BETA) Options provided to scripts that are run using the RunScriptPlugin.
IScopedLoggerA logger which is used to emit errors and warnings to the console, as well as to write to the console. Messaged emitted by the scoped logger are prefixed with the name of the scoped logger.
IWatchedFileStateInformation about the state of a watched file.

Type Aliases

Type AliasDescription
GlobFnGlob a set of files and return a list of paths that match the provided patterns.
WatchGlobFnGlob a set of files and return a map of paths that match the provided patterns to their current state in the watcher.