import { NamedMappedParameter, NamedParameter, NamedSecret, NamedValue, ParametersListing } from "./ParametersDefinition";
/**
 * Fluent builder for command parameters. Similar to inquirer.js API.
 */
export declare class ParametersBuilder implements ParametersListing {
    parameters: NamedParameter[];
    mappedParameters: NamedMappedParameter[];
    secrets: NamedSecret[];
    values: NamedValue[];
    /**
     * Declare a new parameter for a command
     * @return {this}
     */
    addParameters(p: NamedParameter, ...more: NamedParameter[]): this;
    /**
     * Declare a new mapped parameter for a command
     * @return {this}
     */
    addMappedParameters(mp: NamedMappedParameter, ...more: NamedMappedParameter[]): this;
    /**
     * Declare a new secret parameter for a command
     * @return {this}
     */
    addSecrets(s: NamedSecret, ...more: NamedSecret[]): this;
    /**
     * Declare a new configuration value parameter for a command
     * @return {this}
     */
    addValues(s: NamedValue, ...more: NamedValue[]): this;
}
/**
 * Declare a new parameter for the given command
 * @return {ParametersBuilder}
 */
export declare function addParameters(p: NamedParameter, ...more: NamedParameter[]): ParametersBuilder;
/**
 * Declare a new mapped parameter for the given command
 * @return {ParametersBuilder}
 */
export declare function addMappedParameters(p: NamedMappedParameter, ...more: NamedMappedParameter[]): ParametersBuilder;
/**
 * Declare a new secret parameter for the given command
 * @return {ParametersBuilder}
 */
export declare function addSecrets(s: NamedSecret, ...more: NamedSecret[]): ParametersBuilder;
/**
 * Declare a new configuration value parameter for the given command
 * @return {ParametersBuilder}
 */
export declare function addValues(s: NamedValue, ...more: NamedValue[]): ParametersBuilder;
//# sourceMappingURL=ParametersBuilder.d.ts.map