@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
24 lines (23 loc) • 1.74 kB
TypeScript
import { ShellRunner } from '../shell-runner.js';
import { HelmDependencyManager } from './helm-dependency-manager.js';
import { type SoloListrTask } from '../../types/index.js';
import { KindDependencyManager } from './kind-dependency-manager.js';
import { KubectlDependencyManager } from './kubectl-dependency-manager.js';
import { PodmanDependencyManager } from './podman-dependency-manager.js';
import { VfkitDependencyManager } from './vfkit-dependency-manager.js';
import { GvproxyDependencyManager } from './gvproxy-dependency-manager.js';
import { CraneDependencyManager } from './crane-dependency-manager.js';
export type DependencyManagerType = HelmDependencyManager | KindDependencyManager | KubectlDependencyManager | PodmanDependencyManager | VfkitDependencyManager | GvproxyDependencyManager | CraneDependencyManager;
export declare class DependencyManager extends ShellRunner {
private readonly dependancyManagerMap;
constructor(helmDepManager?: HelmDependencyManager, kindDepManager?: KindDependencyManager, kubectlDependencyManager?: KubectlDependencyManager, podmanDependencyManager?: PodmanDependencyManager, vfkitDependencyManager?: VfkitDependencyManager, gvproxyDependencyManager?: GvproxyDependencyManager, craneDependencyManager?: CraneDependencyManager);
getDependency(dependency: string): Promise<DependencyManagerType>;
/**
* Check if the required dependency is installed or not
* @param dependency - is the name of the program
*/
checkDependency(dependency: string): Promise<boolean>;
skipDependency(dependency: string): Promise<boolean>;
taskCheckDependencies<T>(dependencies: string[]): SoloListrTask<T>[];
getExecutable(dependency: string): Promise<string>;
}