import ExecutionInfo from './ExecutionInfo'; import AppendFileInfo from './instructions/AppendFileInfo'; import CreateFileInfo from './instructions/CreateFileInfo'; import DeleteFileInfo from './instructions/DeleteFileInfo'; import DetachFromFileInfo from './instructions/DetachFromFileInfo'; import RollbackFileInfo from './instructions/RollbackFileInfo'; import RollbackJSONFileInfo from './instructions/RollbackJSONFileInfo'; import UpdateFileInfo from './instructions/UpdateFileInfo'; import UpdateJSONFileInfo from './instructions/UpdateJSONFileInfo'; import InstallDependencyInfo from './instructions/InstallDependencyInfo'; import RemoveDependencyInfo from './instructions/RemoveDependencyInfo'; import RunShellCommandInfo from './instructions/RunShellCommandInfo'; import UndoShellCommandInfo from './instructions/UndoShellCommandInfo'; import KeepDirectoryInGitInfo from './instructions/KeepDirectoryInGitInfo'; import OptionRules from './OptionRules'; import Options from './Options'; import Reporter from './Reporter'; import Executor from './Executor'; import HelpSection from './HelpSection'; declare class Context implements ExecutionInfo { optionDefinitions: OptionRules; savedOptions: Options; wd: string; args: string[]; options: Options; overwrite: boolean; mockInstall: boolean; helpMode: boolean; helpSections: HelpSection[]; disableFlush: boolean; reporter: Reporter; readonly executor: Executor; private templateLocation?; constructor(executionInfo: ExecutionInfo); createFile(detail: CreateFileInfo): void; createFiles(details: CreateFileInfo[]): void; deleteFile(detail: DeleteFileInfo): void; deleteFiles(details: DeleteFileInfo[]): void; appendFile(detail: AppendFileInfo): void; appendFiles(details: AppendFileInfo[]): void; detachFromFile(detail: DetachFromFileInfo): void; detachFromFiles(details: DetachFromFileInfo[]): void; updateFile(detail: UpdateFileInfo): void; updateFiles(details: UpdateFileInfo[]): void; rollbackFile(detail: RollbackFileInfo): void; rollbackFiles(details: RollbackFileInfo[]): void; updateJSONFile(detail: UpdateJSONFileInfo): void; updateJSONFiles(details: UpdateJSONFileInfo[]): void; rollbackJSONFile(detail: RollbackJSONFileInfo): void; rollbackJSONFiles(details: RollbackJSONFileInfo[]): void; installDependency(detail: InstallDependencyInfo): void; installDependencies(details: InstallDependencyInfo[]): void; removeDependency(detail: RemoveDependencyInfo): void; removeDependencies(details: RemoveDependencyInfo[]): void; runShellCommand(detail: RunShellCommandInfo): void; runShellCommands(details: RunShellCommandInfo[]): void; undoShellCommand(detail: UndoShellCommandInfo): void; undoShellCommands(details: UndoShellCommandInfo[]): void; keepDirectoryInGit(detail: KeepDirectoryInGitInfo): void; keepDirectoryInGits(details: KeepDirectoryInGitInfo[]): void; useTemplateFrom(templateLocation: string, callback: () => Promise | void): Promise; private applyTemplate; private applyDestination; } export default Context;