import { File } from './parser'; import { Workspace } from './package-files/workspace'; export interface CreateBundleArchiveOptions { tempDir?: string; stripPrefix?: string; } export declare class BundleArchive { #private; static TMPDIR_PREFIX: string; static DEFAULT_FILENAME: string; private constructor(); static create(options: CreateBundleArchiveOptions): Promise; add(...files: File[]): Promise; finalize(): Promise; destroy(): Promise; } export interface CreateFinalizedBundleArchiveOptions { archiveFile: string; } export declare class FinalizedBundleArchive { #private; private constructor(); static create(options: CreateFinalizedBundleArchiveOptions): Promise; get archiveFile(): string; store(): Promise; } export interface CreateRemoteBundleArchiveOptions { key: string; } export declare class RemoteBundleArchive { #private; private constructor(); static create(options: CreateRemoteBundleArchiveOptions): Promise; get key(): string; } export interface CreateBundlerOptions { tempDir?: string; cacheHash: string; stripPrefix?: string; } export type CreateBundlerForWorkspaceOptions = Omit; export declare class Bundler { #private; private constructor(); static create(options: CreateBundlerOptions): Promise; static createForWorkspace(workspace: Workspace, options?: CreateBundlerForWorkspaceOptions): Promise; get marker(): BundlePathMarker; updateMarker(newValue: string): void; get cacheHash(): string; registerFiles(...files: File[]): void; finalize(): Promise; } export declare class BundlePathMarker { #private; constructor(initialValue: string); updateValue(newValue: string): void; toJSON(): string; }