UNPKG

@hashgraph/solo

Version:

An opinionated CLI tool to deploy and manage private Hedera Networks.

64 lines (63 loc) 3.08 kB
import { type ClassConstructor } from '../../../business/utils/class-constructor.type.js'; /** * Implementations of config accessor provide the necessary methods to access configuration properties. */ export interface ConfigAccessor { /** * Enumerates the set of property names that are available in the configuration source. * * @returns A set of property names that are available in the configuration source. */ propertyNames(): Set<string>; /** * Enumerates the key-value pairs that are available in the configuration source. * * @returns A map of key-value pairs that are available in the configuration source. */ properties(): Map<string, string>; /** * Retrieves the value of the specified key from the configuration source and converts it an object of the specified * type. If the key is not specified, the method returns the entire configuration as an object. * * @param cls - The class of the object to which the value should be converted. * @param key - The key to use to retrieve the value from the configuration source. * @returns The value of the specified key as a boolean. */ asObject<T>(cls: ClassConstructor<T>, key?: string): T; /** * Retrieves the value of the specified key from the configuration source and converts it to an array of objects of * the specified type. If the key is not specified, the method returns the entire configuration as an array of objects. * * @param cls - The class of the objects to which the values should be converted. * @param key - The key to use to retrieve the values from the configuration source. */ asObjectArray<T extends Array<T>>(cls: ClassConstructor<T>, key: string): T[]; /** * Retrieves the value of the specified key from the configuration source and converts it to a boolean. * * @param key - The key to use to retrieve the value from the configuration source. * @returns The value of the specified key as a boolean. */ asBoolean(key: string): boolean | null; /** * Retrieves the value of the specified key from the configuration source and converts it to a number. * * @param key - The key to use to retrieve the value from the configuration source. * @returns The value of the specified key as a number. */ asNumber(key: string): number | null; /** * Retrieves the value of the specified key from the configuration source and converts it to a string. * * @param key - The key to use to retrieve the value from the configuration source. * @returns The value of the specified key as a string. */ asString(key: string): string | null; /** * Retrieves the value of the specified key from the configuration source and converts it to a string array. * * @param key - The key to use to retrieve the value from the configuration source. * @returns The value of the specified key as a string array. */ asStringArray(key: string): string[] | null; }