import { HttpHandlerOptions as __HttpHandlerOptions } from "@aws-sdk/types" ; import { Cloud9Client } from "./Cloud9Client" ; import { CreateEnvironmentEC2Command , CreateEnvironmentEC2CommandInput , CreateEnvironmentEC2CommandOutput , } from "./commands/CreateEnvironmentEC2Command" ; import { CreateEnvironmentMembershipCommand , CreateEnvironmentMembershipCommandInput , CreateEnvironmentMembershipCommandOutput , } from "./commands/CreateEnvironmentMembershipCommand" ; import { DeleteEnvironmentCommand , DeleteEnvironmentCommandInput , DeleteEnvironmentCommandOutput , } from "./commands/DeleteEnvironmentCommand" ; import { DeleteEnvironmentMembershipCommand , DeleteEnvironmentMembershipCommandInput , DeleteEnvironmentMembershipCommandOutput , } from "./commands/DeleteEnvironmentMembershipCommand" ; import { DescribeEnvironmentMembershipsCommand , DescribeEnvironmentMembershipsCommandInput , DescribeEnvironmentMembershipsCommandOutput , } from "./commands/DescribeEnvironmentMembershipsCommand" ; import { DescribeEnvironmentsCommand , DescribeEnvironmentsCommandInput , DescribeEnvironmentsCommandOutput , } from "./commands/DescribeEnvironmentsCommand" ; import { DescribeEnvironmentStatusCommand , DescribeEnvironmentStatusCommandInput , DescribeEnvironmentStatusCommandOutput , } from "./commands/DescribeEnvironmentStatusCommand" ; import { ListEnvironmentsCommand , ListEnvironmentsCommandInput , ListEnvironmentsCommandOutput , } from "./commands/ListEnvironmentsCommand" ; import { ListTagsForResourceCommand , ListTagsForResourceCommandInput , ListTagsForResourceCommandOutput , } from "./commands/ListTagsForResourceCommand" ; import { TagResourceCommand , TagResourceCommandInput , TagResourceCommandOutput } from "./commands/TagResourceCommand" ; import { UntagResourceCommand , UntagResourceCommandInput , UntagResourceCommandOutput , } from "./commands/UntagResourceCommand" ; import { UpdateEnvironmentCommand , UpdateEnvironmentCommandInput , UpdateEnvironmentCommandOutput , } from "./commands/UpdateEnvironmentCommand" ; import { UpdateEnvironmentMembershipCommand , UpdateEnvironmentMembershipCommandInput , UpdateEnvironmentMembershipCommandOutput , } from "./commands/UpdateEnvironmentMembershipCommand" ; /**
 * <fullname>Cloud9</fullname>
 *          <p>Cloud9 is a collection of tools that you can use to code, build, run, test, debug, and
 *       release software in the cloud.</p>
 *          <p>For more information about Cloud9, see the <a href="https://docs.aws.amazon.com/cloud9/latest/user-guide">Cloud9 User Guide</a>.</p>
 *          <p>Cloud9 supports these operations:</p>
 *          <ul>
 *             <li>
 *                <p>
 *                   <code>CreateEnvironmentEC2</code>: Creates an Cloud9 development environment, launches
 *           an Amazon EC2 instance, and then connects from the instance to the environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>CreateEnvironmentMembership</code>: Adds an environment member to an
 *           environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>DeleteEnvironment</code>: Deletes an environment. If an Amazon EC2 instance is
 *           connected to the environment, also terminates the instance.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>DeleteEnvironmentMembership</code>: Deletes an environment member from an
 *           environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>DescribeEnvironmentMemberships</code>: Gets information about environment
 *           members for an environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>DescribeEnvironments</code>: Gets information about environments.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>DescribeEnvironmentStatus</code>: Gets status information for an
 *           environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>ListEnvironments</code>: Gets a list of environment identifiers.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>ListTagsForResource</code>: Gets the tags for an environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>TagResource</code>: Adds tags to an environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>UntagResource</code>: Removes tags from an environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>UpdateEnvironment</code>: Changes the settings of an existing
 *           environment.</p>
 *             </li>
 *             <li>
 *                <p>
 *                   <code>UpdateEnvironmentMembership</code>: Changes the settings of an existing
 *           environment member for an environment.</p>
 *             </li>
 *          </ul>
 */ export class Cloud9 extends Cloud9Client { /**
     * <p>Creates an Cloud9 development environment, launches an Amazon Elastic Compute Cloud (Amazon EC2) instance, and
     *       then connects from the instance to the environment.</p>
     */ public createEnvironmentEC2 ( args , options ? ) ; public createEnvironmentEC2 ( args , cb ) ; public createEnvironmentEC2 ( args , options , cb ) ; public createEnvironmentEC2 ( args , optionsOrCb ? , cb ? ) { const command = new CreateEnvironmentEC2Command ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Adds an environment member to an Cloud9 development environment.</p>
     */ public createEnvironmentMembership ( args , options ? ) ; public createEnvironmentMembership ( args , cb ) ; public createEnvironmentMembership ( args , options , cb ) ; public createEnvironmentMembership ( args , optionsOrCb ? , cb ? ) { const command = new CreateEnvironmentMembershipCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes an Cloud9 development environment. If an Amazon EC2 instance is connected to the
     *       environment, also terminates the instance.</p>
     */ public deleteEnvironment ( args , options ? ) ; public deleteEnvironment ( args , cb ) ; public deleteEnvironment ( args , options , cb ) ; public deleteEnvironment ( args , optionsOrCb ? , cb ? ) { const command = new DeleteEnvironmentCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Deletes an environment member from an Cloud9 development environment.</p>
     */ public deleteEnvironmentMembership ( args , options ? ) ; public deleteEnvironmentMembership ( args , cb ) ; public deleteEnvironmentMembership ( args , options , cb ) ; public deleteEnvironmentMembership ( args , optionsOrCb ? , cb ? ) { const command = new DeleteEnvironmentMembershipCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Gets information about environment members for an Cloud9 development environment.</p>
     */ public describeEnvironmentMemberships ( args , options ? ) ; public describeEnvironmentMemberships ( args , cb ) ; public describeEnvironmentMemberships ( args , options , cb ) ; public describeEnvironmentMemberships ( args , optionsOrCb ? , cb ? ) { const command = new DescribeEnvironmentMembershipsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Gets information about Cloud9 development environments.</p>
     */ public describeEnvironments ( args , options ? ) ; public describeEnvironments ( args , cb ) ; public describeEnvironments ( args , options , cb ) ; public describeEnvironments ( args , optionsOrCb ? , cb ? ) { const command = new DescribeEnvironmentsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Gets status information for an Cloud9 development environment.</p>
     */ public describeEnvironmentStatus ( args , options ? ) ; public describeEnvironmentStatus ( args , cb ) ; public describeEnvironmentStatus ( args , options , cb ) ; public describeEnvironmentStatus ( args , optionsOrCb ? , cb ? ) { const command = new DescribeEnvironmentStatusCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Gets a list of Cloud9 development environment identifiers.</p>
     */ public listEnvironments ( args , options ? ) ; public listEnvironments ( args , cb ) ; public listEnvironments ( args , options , cb ) ; public listEnvironments ( args , optionsOrCb ? , cb ? ) { const command = new ListEnvironmentsCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Gets a list of the tags associated with an Cloud9 development environment.</p>
     */ public listTagsForResource ( args , options ? ) ; public listTagsForResource ( args , cb ) ; public listTagsForResource ( args , options , cb ) ; public listTagsForResource ( args , optionsOrCb ? , cb ? ) { const command = new ListTagsForResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Adds tags to an Cloud9 development environment.</p>
     *          <important>
     *             <p>Tags that you add to an Cloud9 environment by using this method will NOT be
     *         automatically propagated to underlying resources.</p>
     *          </important>
     */ public tagResource ( args , options ? ) ; public tagResource ( args , cb ) ; public tagResource ( args , options , cb ) ; public tagResource ( args , optionsOrCb ? , cb ? ) { const command = new TagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Removes tags from an Cloud9 development environment.</p>
     */ public untagResource ( args , options ? ) ; public untagResource ( args , cb ) ; public untagResource ( args , options , cb ) ; public untagResource ( args , optionsOrCb ? , cb ? ) { const command = new UntagResourceCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Changes the settings of an existing Cloud9 development environment.</p>
     */ public updateEnvironment ( args , options ? ) ; public updateEnvironment ( args , cb ) ; public updateEnvironment ( args , options , cb ) ; public updateEnvironment ( args , optionsOrCb ? , cb ? ) { const command = new UpdateEnvironmentCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } /**
     * <p>Changes the settings of an existing environment member for an Cloud9 development
     *       environment.</p>
     */ public updateEnvironmentMembership ( args , options ? ) ; public updateEnvironmentMembership ( args , cb ) ; public updateEnvironmentMembership ( args , options , cb ) ; public updateEnvironmentMembership ( args , optionsOrCb ? , cb ? ) { const command = new UpdateEnvironmentMembershipCommand ( args ) ; if ( typeof optionsOrCb === "function" ) { this . send ( command , optionsOrCb ) ; } else if ( typeof cb === "function" ) { if ( typeof optionsOrCb !== "object" ) throw new Error ( `Expect http options but get ${ typeof optionsOrCb }` ) ; this . send ( command , optionsOrCb || { } , cb ) ; } else { return this . send ( command , optionsOrCb ) ; } } }