/**
 * Env parser parses the environment variables from a string formatted
 * as a key-value pair seperated using an `=`. For example:
 *
 * ```
 * PORT=3333
 * HOST=127.0.0.1
 * ```
 *
 * The variables can reference other environment variables as well using `$`.
 * For example:
 *
 * ```
 * PORT=3333
 * REDIS_PORT=$PORT
 * ```
 *
 * The variables using characters other than letters can use wrap variables inside
 * a curly brace.
 *
 * ```
 * APP-PORT=3333
 * REDIS_PORT=${APP-PORT}
 * ```
 */
export declare class EnvParser {
    private preferExistingEnvVariables;
    constructor(preferExistingEnvVariables?: boolean);
    /**
     * Returns value for a given key from the environment variables. Also
     * the current parsed object is used to pull the reference.
     */
    private getValue;
    /**
     * Interpolating the token wrapped inside the mustache
     * braces.
     */
    private interpolateMustache;
    /**
     * Interpolating the variable reference starting with a
     * `$`. We only capture numbers,letter and underscore.
     * For other characters, one can use the mustache
     * braces.
     */
    private interpolateVariable;
    /**
     * Interpolates the referenced values
     */
    private interpolate;
    /**
     * Parse the env string to an object of environment variables.
     */
    parse(envString: string): {};
}
