@authereum/zos
Version:
Command-line interface for the ZeppelinOS smart contract platform
51 lines (50 loc) • 1.52 kB
TypeScript
interface NetworkConfig extends Config {
artifactDefaults: ArtifactDefaults;
network: Network;
}
interface Config {
networks: {
[network: string]: Network;
};
provider: Provider;
buildDir: string;
compilers?: CompilersInfo;
}
interface NetworkCamelCase<T> {
networkId: T;
}
interface NetworkSnakeCase<T> {
network_id: T;
}
declare type NetworkId<T> = NetworkCamelCase<T> | NetworkSnakeCase<T> | (NetworkCamelCase<T> & NetworkSnakeCase<T>);
declare type Network = {
host: string;
port: number | string;
protocol?: string;
from?: number | string;
gas?: number | string;
gasPrice?: number | string;
provider?: string | (() => any);
} & NetworkId<string | number>;
interface ArtifactDefaults {
from?: number | string;
gas?: number | string;
gasPrice?: number | string;
}
declare type Provider = string | ((any: any) => any);
declare type CompilersInfo = any;
declare const ZosConfig: {
name: string;
initialize(root?: string): void;
exists(root?: string): boolean;
getConfig(root?: string): Config;
getBuildDir(): string;
loadNetworkConfig(networkName: string, root?: string): NetworkConfig;
getProvider(network: Network): Provider;
getArtifactDefaults(zosConfigFile: Config, network: Network): ArtifactDefaults;
getDefaultCompilersProperties(): any;
createContractsDir(root: string): void;
createZosConfigFile(root: string): void;
createDir(dir: string): void;
};
export default ZosConfig;