@hashgraph/solo
Version:
An opinionated CLI tool to deploy and manage private Hedera Networks.
39 lines (32 loc) • 1.23 kB
text/typescript
// SPDX-License-Identifier: Apache-2.0
import {type NamespaceName} from '../../../types/namespace/namespace-name.js';
import {type NodeAlias, type NodeAliases} from '../../../types/aliases.js';
import {type ConsensusNode} from '../../../core/model/consensus-node.js';
import {type PodReference} from '../../../integration/kube/resources/pod/pod-reference.js';
import {type NodeServiceMapping} from '../../../types/mappings/node-service-mapping.js';
export interface NodeCommonConfigClass {
namespace: NamespaceName;
deployment: string;
consensusNodes: ConsensusNode[];
contexts: string[];
quiet: boolean;
keysDir: string;
stagingDir: string;
}
export interface NodeCommonConfigWithNodeAliases extends NodeCommonConfigClass {
nodeAliases: NodeAliases;
nodeAliasesUnparsed: string;
}
export interface NodeCommonConfigWithNodeAlias extends NodeCommonConfigClass {
nodeAlias: NodeAlias;
}
export interface CheckedNodesConfigClass extends NodeCommonConfigClass {
podRefs: Record<NodeAlias, PodReference>;
skipStop: boolean;
existingNodeAliases: NodeAliases;
allNodeAliases: NodeAliases;
serviceMap: NodeServiceMapping;
}
export interface CheckedNodesContext {
config: CheckedNodesConfigClass;
}