UNPKG

@rushstack/package-extractor

Version:

A library for bundling selected files and dependencies into a deployable package.

52 lines 1.99 kB
import { type FileSystemStats } from '@rushstack/node-core-library'; import type { IExtractorOptions } from './PackageExtractor'; import type { SymlinkAnalyzer } from './SymlinkAnalyzer'; export interface IIncludeAssetOptions { sourceFilePath?: string; sourceFileStats?: FileSystemStats; sourceFileContent?: string | Buffer; targetFilePath: string; ignoreIfExisting?: boolean; } export interface IIncludeAssetPathOptions extends IIncludeAssetOptions { sourceFilePath: string; sourceFileContent?: never; } export interface IIncludeExistingAssetPathOptions extends IIncludeAssetOptions { sourceFilePath?: never; sourceFileContent?: never; } export interface IIncludeAssetContentOptions extends IIncludeAssetOptions { sourceFileContent: string | Buffer; sourceFilePath?: never; sourceFileStats?: never; } export interface IAssetHandlerOptions extends IExtractorOptions { symlinkAnalyzer: SymlinkAnalyzer; } export interface IFinalizeOptions { onAfterExtractSymlinksAsync: () => Promise<void>; } export declare class AssetHandler { private readonly _terminal; private readonly _sourceRootFolder; private readonly _targetRootFolder; private readonly _createArchiveOnly; private readonly _symlinkAnalyzer; private readonly _archiveManager; private readonly _archiveFilePath; private readonly _linkCreationMode; private readonly _includedAssetPaths; private _isFinalized; constructor(options: IAssetHandlerOptions); includeAssetAsync(options: IIncludeAssetPathOptions): Promise<void>; includeAssetAsync(options: IIncludeExistingAssetPathOptions): Promise<void>; includeAssetAsync(options: IIncludeAssetContentOptions): Promise<void>; get assetPaths(): string[]; finalizeAsync(options?: IFinalizeOptions): Promise<void>; /** * Create a symlink as described by the ILinkInfo object. */ private _extractSymlinkAsync; } //# sourceMappingURL=AssetHandler.d.ts.map