/**@class java.lang.ProcessBuilder
@extends java.lang.Object

 Creates operating system processes. See {@link java.lang.Process} for documentation and
 example usage.
*/
var ProcessBuilder = {

/**Returns this process builder's current program and arguments. Note that
 the returned list is not a copy and modifications to it will change the
 state of this instance.
@return {Object {java.util.List}} this process builder's program and arguments.
*/
command : function(  ) {},

/**Changes the program and arguments of this process builder.
@param {Object {java.lang.String[]}} command
            the new operating system program and its arguments.
@return {Object {java.lang.ProcessBuilder}} this process builder instance.
*/
command : function(  ) {},

/**Changes the program and arguments of this process builder. Note that the
 list passed to this method is not copied, so any subsequent updates to it
 are reflected in this instance's state.
@param {Object {java.util.List}} command
            the new operating system program and its arguments.
@return {Object {java.lang.ProcessBuilder}} this process builder instance.
@throws NullPointerException
             if {@code command} is {@code null}.
*/
command : function(  ) {},

/**Returns the working directory of this process builder. If {@code null} is
 returned, then the working directory of the Java process is used when a
 process is started.
@return {Object {java.io.File}} the current working directory, may be {@code null}.
*/
directory : function(  ) {},

/**Changes the working directory of this process builder. If the specified
 directory is {@code null}, then the working directory of the Java
 process is used when a process is started.
@param {Object {File}} directory
            the new working directory for this process builder.
@return {Object {java.lang.ProcessBuilder}} this process builder instance.
*/
directory : function(  ) {},

/**Returns this process builder's current environment. When a process
 builder instance is created, the environment is populated with a copy of
 the environment, as returned by {@link java.lang.System#getenv()}. Note that the
 map returned by this method is not a copy and any changes made to it are
 reflected in this instance's state.
@return {Object {java.util.Map}} the map containing this process builder's environment variables.
*/
environment : function(  ) {},

/**Indicates whether the standard error should be redirected to standard
 output. If redirected, the {@link java.lang.Process#getErrorStream()} will always
 return end of stream and standard error is written to
 {@link java.lang.Process#getInputStream()}.
@return {Boolean} {@code true} if the standard error is redirected; {@code false}
         otherwise.
*/
redirectErrorStream : function(  ) {},

/**Changes the state of whether or not standard error is redirected to
 standard output.
@param {Boolean} redirectErrorStream
            {@code true} to redirect standard error, {@code false}
            otherwise.
@return {Object {java.lang.ProcessBuilder}} this process builder instance.
*/
redirectErrorStream : function(  ) {},

/**Starts a new process based on the current state of this process builder.
@return {Object {java.lang.Process}} the new {@code Process} instance.
@throws NullPointerException
             if any of the elements of {@link #command()} is {@code null}.
@throws IndexOutOfBoundsException
             if {@link #command()} is empty.
@throws IOException
             if an I/O error happens.
*/
start : function(  ) {},


};