git-off

git off handles large files in git repos
git clone https://noulin.net/git/git-off.git
Log | Files | Refs | README

codepipeline.d.ts (60714B)


      1 import {Request} from '../lib/request';
      2 import {Response} from '../lib/response';
      3 import {AWSError} from '../lib/error';
      4 import {Service} from '../lib/service';
      5 import {ServiceConfigurationOptions} from '../lib/service';
      6 import {ConfigBase as Config} from '../lib/config';
      7 interface Blob {}
      8 declare class CodePipeline extends Service {
      9   /**
     10    * Constructs a service object. This object has one method for each API operation.
     11    */
     12   constructor(options?: CodePipeline.Types.ClientConfiguration)
     13   config: Config & CodePipeline.Types.ClientConfiguration;
     14   /**
     15    * Returns information about a specified job and whether that job has been received by the job worker. Only used for custom actions.
     16    */
     17   acknowledgeJob(params: CodePipeline.Types.AcknowledgeJobInput, callback?: (err: AWSError, data: CodePipeline.Types.AcknowledgeJobOutput) => void): Request<CodePipeline.Types.AcknowledgeJobOutput, AWSError>;
     18   /**
     19    * Returns information about a specified job and whether that job has been received by the job worker. Only used for custom actions.
     20    */
     21   acknowledgeJob(callback?: (err: AWSError, data: CodePipeline.Types.AcknowledgeJobOutput) => void): Request<CodePipeline.Types.AcknowledgeJobOutput, AWSError>;
     22   /**
     23    * Confirms a job worker has received the specified job. Only used for partner actions.
     24    */
     25   acknowledgeThirdPartyJob(params: CodePipeline.Types.AcknowledgeThirdPartyJobInput, callback?: (err: AWSError, data: CodePipeline.Types.AcknowledgeThirdPartyJobOutput) => void): Request<CodePipeline.Types.AcknowledgeThirdPartyJobOutput, AWSError>;
     26   /**
     27    * Confirms a job worker has received the specified job. Only used for partner actions.
     28    */
     29   acknowledgeThirdPartyJob(callback?: (err: AWSError, data: CodePipeline.Types.AcknowledgeThirdPartyJobOutput) => void): Request<CodePipeline.Types.AcknowledgeThirdPartyJobOutput, AWSError>;
     30   /**
     31    * Creates a new custom action that can be used in all pipelines associated with the AWS account. Only used for custom actions.
     32    */
     33   createCustomActionType(params: CodePipeline.Types.CreateCustomActionTypeInput, callback?: (err: AWSError, data: CodePipeline.Types.CreateCustomActionTypeOutput) => void): Request<CodePipeline.Types.CreateCustomActionTypeOutput, AWSError>;
     34   /**
     35    * Creates a new custom action that can be used in all pipelines associated with the AWS account. Only used for custom actions.
     36    */
     37   createCustomActionType(callback?: (err: AWSError, data: CodePipeline.Types.CreateCustomActionTypeOutput) => void): Request<CodePipeline.Types.CreateCustomActionTypeOutput, AWSError>;
     38   /**
     39    * Creates a pipeline.
     40    */
     41   createPipeline(params: CodePipeline.Types.CreatePipelineInput, callback?: (err: AWSError, data: CodePipeline.Types.CreatePipelineOutput) => void): Request<CodePipeline.Types.CreatePipelineOutput, AWSError>;
     42   /**
     43    * Creates a pipeline.
     44    */
     45   createPipeline(callback?: (err: AWSError, data: CodePipeline.Types.CreatePipelineOutput) => void): Request<CodePipeline.Types.CreatePipelineOutput, AWSError>;
     46   /**
     47    * Marks a custom action as deleted. PollForJobs for the custom action will fail after the action is marked for deletion. Only used for custom actions.  You cannot recreate a custom action after it has been deleted unless you increase the version number of the action. 
     48    */
     49   deleteCustomActionType(params: CodePipeline.Types.DeleteCustomActionTypeInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     50   /**
     51    * Marks a custom action as deleted. PollForJobs for the custom action will fail after the action is marked for deletion. Only used for custom actions.  You cannot recreate a custom action after it has been deleted unless you increase the version number of the action. 
     52    */
     53   deleteCustomActionType(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     54   /**
     55    * Deletes the specified pipeline.
     56    */
     57   deletePipeline(params: CodePipeline.Types.DeletePipelineInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     58   /**
     59    * Deletes the specified pipeline.
     60    */
     61   deletePipeline(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     62   /**
     63    * Prevents artifacts in a pipeline from transitioning to the next stage in the pipeline.
     64    */
     65   disableStageTransition(params: CodePipeline.Types.DisableStageTransitionInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     66   /**
     67    * Prevents artifacts in a pipeline from transitioning to the next stage in the pipeline.
     68    */
     69   disableStageTransition(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     70   /**
     71    * Enables artifacts in a pipeline to transition to a stage in a pipeline.
     72    */
     73   enableStageTransition(params: CodePipeline.Types.EnableStageTransitionInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     74   /**
     75    * Enables artifacts in a pipeline to transition to a stage in a pipeline.
     76    */
     77   enableStageTransition(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
     78   /**
     79    * Returns information about a job. Only used for custom actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
     80    */
     81   getJobDetails(params: CodePipeline.Types.GetJobDetailsInput, callback?: (err: AWSError, data: CodePipeline.Types.GetJobDetailsOutput) => void): Request<CodePipeline.Types.GetJobDetailsOutput, AWSError>;
     82   /**
     83    * Returns information about a job. Only used for custom actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
     84    */
     85   getJobDetails(callback?: (err: AWSError, data: CodePipeline.Types.GetJobDetailsOutput) => void): Request<CodePipeline.Types.GetJobDetailsOutput, AWSError>;
     86   /**
     87    * Returns the metadata, structure, stages, and actions of a pipeline. Can be used to return the entire structure of a pipeline in JSON format, which can then be modified and used to update the pipeline structure with UpdatePipeline.
     88    */
     89   getPipeline(params: CodePipeline.Types.GetPipelineInput, callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineOutput) => void): Request<CodePipeline.Types.GetPipelineOutput, AWSError>;
     90   /**
     91    * Returns the metadata, structure, stages, and actions of a pipeline. Can be used to return the entire structure of a pipeline in JSON format, which can then be modified and used to update the pipeline structure with UpdatePipeline.
     92    */
     93   getPipeline(callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineOutput) => void): Request<CodePipeline.Types.GetPipelineOutput, AWSError>;
     94   /**
     95    * Returns information about an execution of a pipeline, including details about artifacts, the pipeline execution ID, and the name, version, and status of the pipeline.
     96    */
     97   getPipelineExecution(params: CodePipeline.Types.GetPipelineExecutionInput, callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineExecutionOutput) => void): Request<CodePipeline.Types.GetPipelineExecutionOutput, AWSError>;
     98   /**
     99    * Returns information about an execution of a pipeline, including details about artifacts, the pipeline execution ID, and the name, version, and status of the pipeline.
    100    */
    101   getPipelineExecution(callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineExecutionOutput) => void): Request<CodePipeline.Types.GetPipelineExecutionOutput, AWSError>;
    102   /**
    103    * Returns information about the state of a pipeline, including the stages and actions.
    104    */
    105   getPipelineState(params: CodePipeline.Types.GetPipelineStateInput, callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineStateOutput) => void): Request<CodePipeline.Types.GetPipelineStateOutput, AWSError>;
    106   /**
    107    * Returns information about the state of a pipeline, including the stages and actions.
    108    */
    109   getPipelineState(callback?: (err: AWSError, data: CodePipeline.Types.GetPipelineStateOutput) => void): Request<CodePipeline.Types.GetPipelineStateOutput, AWSError>;
    110   /**
    111    * Requests the details of a job for a third party action. Only used for partner actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
    112    */
    113   getThirdPartyJobDetails(params: CodePipeline.Types.GetThirdPartyJobDetailsInput, callback?: (err: AWSError, data: CodePipeline.Types.GetThirdPartyJobDetailsOutput) => void): Request<CodePipeline.Types.GetThirdPartyJobDetailsOutput, AWSError>;
    114   /**
    115    * Requests the details of a job for a third party action. Only used for partner actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
    116    */
    117   getThirdPartyJobDetails(callback?: (err: AWSError, data: CodePipeline.Types.GetThirdPartyJobDetailsOutput) => void): Request<CodePipeline.Types.GetThirdPartyJobDetailsOutput, AWSError>;
    118   /**
    119    * Gets a summary of all AWS CodePipeline action types associated with your account.
    120    */
    121   listActionTypes(params: CodePipeline.Types.ListActionTypesInput, callback?: (err: AWSError, data: CodePipeline.Types.ListActionTypesOutput) => void): Request<CodePipeline.Types.ListActionTypesOutput, AWSError>;
    122   /**
    123    * Gets a summary of all AWS CodePipeline action types associated with your account.
    124    */
    125   listActionTypes(callback?: (err: AWSError, data: CodePipeline.Types.ListActionTypesOutput) => void): Request<CodePipeline.Types.ListActionTypesOutput, AWSError>;
    126   /**
    127    * Gets a summary of all of the pipelines associated with your account.
    128    */
    129   listPipelines(params: CodePipeline.Types.ListPipelinesInput, callback?: (err: AWSError, data: CodePipeline.Types.ListPipelinesOutput) => void): Request<CodePipeline.Types.ListPipelinesOutput, AWSError>;
    130   /**
    131    * Gets a summary of all of the pipelines associated with your account.
    132    */
    133   listPipelines(callback?: (err: AWSError, data: CodePipeline.Types.ListPipelinesOutput) => void): Request<CodePipeline.Types.ListPipelinesOutput, AWSError>;
    134   /**
    135    * Returns information about any jobs for AWS CodePipeline to act upon.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
    136    */
    137   pollForJobs(params: CodePipeline.Types.PollForJobsInput, callback?: (err: AWSError, data: CodePipeline.Types.PollForJobsOutput) => void): Request<CodePipeline.Types.PollForJobsOutput, AWSError>;
    138   /**
    139    * Returns information about any jobs for AWS CodePipeline to act upon.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. Additionally, this API returns any secret values defined for the action. 
    140    */
    141   pollForJobs(callback?: (err: AWSError, data: CodePipeline.Types.PollForJobsOutput) => void): Request<CodePipeline.Types.PollForJobsOutput, AWSError>;
    142   /**
    143    * Determines whether there are any third party jobs for a job worker to act on. Only used for partner actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. 
    144    */
    145   pollForThirdPartyJobs(params: CodePipeline.Types.PollForThirdPartyJobsInput, callback?: (err: AWSError, data: CodePipeline.Types.PollForThirdPartyJobsOutput) => void): Request<CodePipeline.Types.PollForThirdPartyJobsOutput, AWSError>;
    146   /**
    147    * Determines whether there are any third party jobs for a job worker to act on. Only used for partner actions.  When this API is called, AWS CodePipeline returns temporary credentials for the Amazon S3 bucket used to store artifacts for the pipeline, if the action requires access to that Amazon S3 bucket for input or output artifacts. 
    148    */
    149   pollForThirdPartyJobs(callback?: (err: AWSError, data: CodePipeline.Types.PollForThirdPartyJobsOutput) => void): Request<CodePipeline.Types.PollForThirdPartyJobsOutput, AWSError>;
    150   /**
    151    * Provides information to AWS CodePipeline about new revisions to a source.
    152    */
    153   putActionRevision(params: CodePipeline.Types.PutActionRevisionInput, callback?: (err: AWSError, data: CodePipeline.Types.PutActionRevisionOutput) => void): Request<CodePipeline.Types.PutActionRevisionOutput, AWSError>;
    154   /**
    155    * Provides information to AWS CodePipeline about new revisions to a source.
    156    */
    157   putActionRevision(callback?: (err: AWSError, data: CodePipeline.Types.PutActionRevisionOutput) => void): Request<CodePipeline.Types.PutActionRevisionOutput, AWSError>;
    158   /**
    159    * Provides the response to a manual approval request to AWS CodePipeline. Valid responses include Approved and Rejected.
    160    */
    161   putApprovalResult(params: CodePipeline.Types.PutApprovalResultInput, callback?: (err: AWSError, data: CodePipeline.Types.PutApprovalResultOutput) => void): Request<CodePipeline.Types.PutApprovalResultOutput, AWSError>;
    162   /**
    163    * Provides the response to a manual approval request to AWS CodePipeline. Valid responses include Approved and Rejected.
    164    */
    165   putApprovalResult(callback?: (err: AWSError, data: CodePipeline.Types.PutApprovalResultOutput) => void): Request<CodePipeline.Types.PutApprovalResultOutput, AWSError>;
    166   /**
    167    * Represents the failure of a job as returned to the pipeline by a job worker. Only used for custom actions.
    168    */
    169   putJobFailureResult(params: CodePipeline.Types.PutJobFailureResultInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    170   /**
    171    * Represents the failure of a job as returned to the pipeline by a job worker. Only used for custom actions.
    172    */
    173   putJobFailureResult(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    174   /**
    175    * Represents the success of a job as returned to the pipeline by a job worker. Only used for custom actions.
    176    */
    177   putJobSuccessResult(params: CodePipeline.Types.PutJobSuccessResultInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    178   /**
    179    * Represents the success of a job as returned to the pipeline by a job worker. Only used for custom actions.
    180    */
    181   putJobSuccessResult(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    182   /**
    183    * Represents the failure of a third party job as returned to the pipeline by a job worker. Only used for partner actions.
    184    */
    185   putThirdPartyJobFailureResult(params: CodePipeline.Types.PutThirdPartyJobFailureResultInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    186   /**
    187    * Represents the failure of a third party job as returned to the pipeline by a job worker. Only used for partner actions.
    188    */
    189   putThirdPartyJobFailureResult(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    190   /**
    191    * Represents the success of a third party job as returned to the pipeline by a job worker. Only used for partner actions.
    192    */
    193   putThirdPartyJobSuccessResult(params: CodePipeline.Types.PutThirdPartyJobSuccessResultInput, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    194   /**
    195    * Represents the success of a third party job as returned to the pipeline by a job worker. Only used for partner actions.
    196    */
    197   putThirdPartyJobSuccessResult(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
    198   /**
    199    * Resumes the pipeline execution by retrying the last failed actions in a stage.
    200    */
    201   retryStageExecution(params: CodePipeline.Types.RetryStageExecutionInput, callback?: (err: AWSError, data: CodePipeline.Types.RetryStageExecutionOutput) => void): Request<CodePipeline.Types.RetryStageExecutionOutput, AWSError>;
    202   /**
    203    * Resumes the pipeline execution by retrying the last failed actions in a stage.
    204    */
    205   retryStageExecution(callback?: (err: AWSError, data: CodePipeline.Types.RetryStageExecutionOutput) => void): Request<CodePipeline.Types.RetryStageExecutionOutput, AWSError>;
    206   /**
    207    * Starts the specified pipeline. Specifically, it begins processing the latest commit to the source location specified as part of the pipeline.
    208    */
    209   startPipelineExecution(params: CodePipeline.Types.StartPipelineExecutionInput, callback?: (err: AWSError, data: CodePipeline.Types.StartPipelineExecutionOutput) => void): Request<CodePipeline.Types.StartPipelineExecutionOutput, AWSError>;
    210   /**
    211    * Starts the specified pipeline. Specifically, it begins processing the latest commit to the source location specified as part of the pipeline.
    212    */
    213   startPipelineExecution(callback?: (err: AWSError, data: CodePipeline.Types.StartPipelineExecutionOutput) => void): Request<CodePipeline.Types.StartPipelineExecutionOutput, AWSError>;
    214   /**
    215    * Updates a specified pipeline with edits or changes to its structure. Use a JSON file with the pipeline structure in conjunction with UpdatePipeline to provide the full structure of the pipeline. Updating the pipeline increases the version number of the pipeline by 1.
    216    */
    217   updatePipeline(params: CodePipeline.Types.UpdatePipelineInput, callback?: (err: AWSError, data: CodePipeline.Types.UpdatePipelineOutput) => void): Request<CodePipeline.Types.UpdatePipelineOutput, AWSError>;
    218   /**
    219    * Updates a specified pipeline with edits or changes to its structure. Use a JSON file with the pipeline structure in conjunction with UpdatePipeline to provide the full structure of the pipeline. Updating the pipeline increases the version number of the pipeline by 1.
    220    */
    221   updatePipeline(callback?: (err: AWSError, data: CodePipeline.Types.UpdatePipelineOutput) => void): Request<CodePipeline.Types.UpdatePipelineOutput, AWSError>;
    222 }
    223 declare namespace CodePipeline.Types {
    224   export interface AWSSessionCredentials {
    225     /**
    226      * The access key for the session.
    227      */
    228     accessKeyId: AccessKeyId;
    229     /**
    230      * The secret access key for the session.
    231      */
    232     secretAccessKey: SecretAccessKey;
    233     /**
    234      * The token for the session.
    235      */
    236     sessionToken: SessionToken;
    237   }
    238   export type AccessKeyId = string;
    239   export type AccountId = string;
    240   export interface AcknowledgeJobInput {
    241     /**
    242      * The unique system-generated ID of the job for which you want to confirm receipt.
    243      */
    244     jobId: JobId;
    245     /**
    246      * A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.
    247      */
    248     nonce: Nonce;
    249   }
    250   export interface AcknowledgeJobOutput {
    251     /**
    252      * Whether the job worker has received the specified job.
    253      */
    254     status?: JobStatus;
    255   }
    256   export interface AcknowledgeThirdPartyJobInput {
    257     /**
    258      * The unique system-generated ID of the job.
    259      */
    260     jobId: ThirdPartyJobId;
    261     /**
    262      * A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.
    263      */
    264     nonce: Nonce;
    265     /**
    266      * The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.
    267      */
    268     clientToken: ClientToken;
    269   }
    270   export interface AcknowledgeThirdPartyJobOutput {
    271     /**
    272      * The status information for the third party job, if any.
    273      */
    274     status?: JobStatus;
    275   }
    276   export type ActionCategory = "Source"|"Build"|"Deploy"|"Test"|"Invoke"|"Approval"|string;
    277   export interface ActionConfiguration {
    278     /**
    279      * The configuration data for the action.
    280      */
    281     configuration?: ActionConfigurationMap;
    282   }
    283   export type ActionConfigurationKey = string;
    284   export type ActionConfigurationMap = {[key: string]: ActionConfigurationValue};
    285   export interface ActionConfigurationProperty {
    286     /**
    287      * The name of the action configuration property.
    288      */
    289     name: ActionConfigurationKey;
    290     /**
    291      * Whether the configuration property is a required value.
    292      */
    293     required: Boolean;
    294     /**
    295      * Whether the configuration property is a key.
    296      */
    297     key: Boolean;
    298     /**
    299      * Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs. When updating a pipeline, passing * * * * * without changing any other values of the action will preserve the prior value of the secret.
    300      */
    301     secret: Boolean;
    302     /**
    303      * Indicates that the proprety will be used in conjunction with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret. If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to additional restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.
    304      */
    305     queryable?: Boolean;
    306     /**
    307      * The description of the action configuration property that will be displayed to users.
    308      */
    309     description?: Description;
    310     /**
    311      * The type of the configuration property.
    312      */
    313     type?: ActionConfigurationPropertyType;
    314   }
    315   export type ActionConfigurationPropertyList = ActionConfigurationProperty[];
    316   export type ActionConfigurationPropertyType = "String"|"Number"|"Boolean"|string;
    317   export type ActionConfigurationQueryableValue = string;
    318   export type ActionConfigurationValue = string;
    319   export interface ActionContext {
    320     /**
    321      * The name of the action within the context of a job.
    322      */
    323     name?: ActionName;
    324   }
    325   export interface ActionDeclaration {
    326     /**
    327      * The action declaration's name.
    328      */
    329     name: ActionName;
    330     /**
    331      * The configuration information for the action type.
    332      */
    333     actionTypeId: ActionTypeId;
    334     /**
    335      * The order in which actions are run.
    336      */
    337     runOrder?: ActionRunOrder;
    338     /**
    339      * The action declaration's configuration.
    340      */
    341     configuration?: ActionConfigurationMap;
    342     /**
    343      * The name or ID of the result of the action declaration, such as a test or build artifact.
    344      */
    345     outputArtifacts?: OutputArtifactList;
    346     /**
    347      * The name or ID of the artifact consumed by the action, such as a test or build artifact.
    348      */
    349     inputArtifacts?: InputArtifactList;
    350     /**
    351      * The ARN of the IAM service role that will perform the declared action. This is assumed through the roleArn for the pipeline.
    352      */
    353     roleArn?: RoleArn;
    354   }
    355   export interface ActionExecution {
    356     /**
    357      * The status of the action, or for a completed action, the last status of the action.
    358      */
    359     status?: ActionExecutionStatus;
    360     /**
    361      * A summary of the run of the action.
    362      */
    363     summary?: ExecutionSummary;
    364     /**
    365      * The last status change of the action.
    366      */
    367     lastStatusChange?: Timestamp;
    368     /**
    369      * The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState command and is used to validate that the approval request corresponding to this token is still valid.
    370      */
    371     token?: ActionExecutionToken;
    372     /**
    373      * The ARN of the user who last changed the pipeline.
    374      */
    375     lastUpdatedBy?: LastUpdatedBy;
    376     /**
    377      * The external ID of the run of the action.
    378      */
    379     externalExecutionId?: ExecutionId;
    380     /**
    381      * The URL of a resource external to AWS that will be used when running the action, for example an external repository URL.
    382      */
    383     externalExecutionUrl?: Url;
    384     /**
    385      * A percentage of completeness of the action as it runs.
    386      */
    387     percentComplete?: Percentage;
    388     /**
    389      * The details of an error returned by a URL external to AWS.
    390      */
    391     errorDetails?: ErrorDetails;
    392   }
    393   export type ActionExecutionStatus = "InProgress"|"Succeeded"|"Failed"|string;
    394   export type ActionExecutionToken = string;
    395   export type ActionName = string;
    396   export type ActionOwner = "AWS"|"ThirdParty"|"Custom"|string;
    397   export type ActionProvider = string;
    398   export interface ActionRevision {
    399     /**
    400      * The system-generated unique ID that identifies the revision number of the action.
    401      */
    402     revisionId: Revision;
    403     /**
    404      * The unique identifier of the change that set the state to this revision, for example a deployment ID or timestamp.
    405      */
    406     revisionChangeId: RevisionChangeIdentifier;
    407     /**
    408      * The date and time when the most recent version of the action was created, in timestamp format.
    409      */
    410     created: Timestamp;
    411   }
    412   export type ActionRunOrder = number;
    413   export interface ActionState {
    414     /**
    415      * The name of the action.
    416      */
    417     actionName?: ActionName;
    418     currentRevision?: ActionRevision;
    419     latestExecution?: ActionExecution;
    420     /**
    421      * A URL link for more information about the state of the action, such as a deployment group details page.
    422      */
    423     entityUrl?: Url;
    424     /**
    425      * A URL link for more information about the revision, such as a commit details page.
    426      */
    427     revisionUrl?: Url;
    428   }
    429   export type ActionStateList = ActionState[];
    430   export interface ActionType {
    431     id: ActionTypeId;
    432     /**
    433      * The settings for the action type.
    434      */
    435     settings?: ActionTypeSettings;
    436     /**
    437      * The configuration properties for the action type.
    438      */
    439     actionConfigurationProperties?: ActionConfigurationPropertyList;
    440     /**
    441      * The details of the input artifact for the action, such as its commit ID.
    442      */
    443     inputArtifactDetails: ArtifactDetails;
    444     /**
    445      * The details of the output artifact of the action, such as its commit ID.
    446      */
    447     outputArtifactDetails: ArtifactDetails;
    448   }
    449   export interface ActionTypeId {
    450     /**
    451      * A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the values below.
    452      */
    453     category: ActionCategory;
    454     /**
    455      * The creator of the action being called.
    456      */
    457     owner: ActionOwner;
    458     /**
    459      * The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of AWS CodeDeploy, which would be specified as CodeDeploy.
    460      */
    461     provider: ActionProvider;
    462     /**
    463      * A string that identifies the action type.
    464      */
    465     version: Version;
    466   }
    467   export type ActionTypeList = ActionType[];
    468   export interface ActionTypeSettings {
    469     /**
    470      * The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.
    471      */
    472     thirdPartyConfigurationUrl?: Url;
    473     /**
    474      * The URL returned to the AWS CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for an AWS CodeDeploy deployment group. This link is provided as part of the action display within the pipeline.
    475      */
    476     entityUrlTemplate?: UrlTemplate;
    477     /**
    478      * The URL returned to the AWS CodePipeline console that contains a link to the top-level landing page for the external system, such as console page for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS CodePipeline console and provides a link to the execution entity of the external action.
    479      */
    480     executionUrlTemplate?: UrlTemplate;
    481     /**
    482      * The URL returned to the AWS CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.
    483      */
    484     revisionUrlTemplate?: UrlTemplate;
    485   }
    486   export interface ApprovalResult {
    487     /**
    488      * The summary of the current status of the approval request.
    489      */
    490     summary: ApprovalSummary;
    491     /**
    492      * The response submitted by a reviewer assigned to an approval action request.
    493      */
    494     status: ApprovalStatus;
    495   }
    496   export type ApprovalStatus = "Approved"|"Rejected"|string;
    497   export type ApprovalSummary = string;
    498   export type ApprovalToken = string;
    499   export interface Artifact {
    500     /**
    501      * The artifact's name.
    502      */
    503     name?: ArtifactName;
    504     /**
    505      * The artifact's revision ID. Depending on the type of object, this could be a commit ID (GitHub) or a revision ID (Amazon S3).
    506      */
    507     revision?: Revision;
    508     /**
    509      * The location of an artifact.
    510      */
    511     location?: ArtifactLocation;
    512   }
    513   export interface ArtifactDetails {
    514     /**
    515      * The minimum number of artifacts allowed for the action type.
    516      */
    517     minimumCount: MinimumArtifactCount;
    518     /**
    519      * The maximum number of artifacts allowed for the action type.
    520      */
    521     maximumCount: MaximumArtifactCount;
    522   }
    523   export type ArtifactList = Artifact[];
    524   export interface ArtifactLocation {
    525     /**
    526      * The type of artifact in the location.
    527      */
    528     type?: ArtifactLocationType;
    529     /**
    530      * The Amazon S3 bucket that contains the artifact.
    531      */
    532     s3Location?: S3ArtifactLocation;
    533   }
    534   export type ArtifactLocationType = "S3"|string;
    535   export type ArtifactName = string;
    536   export interface ArtifactRevision {
    537     /**
    538      * The name of an artifact. This name might be system-generated, such as "MyApp", or might be defined by the user when an action is created.
    539      */
    540     name?: ArtifactName;
    541     /**
    542      * The revision ID of the artifact.
    543      */
    544     revisionId?: Revision;
    545     /**
    546      * An additional identifier for a revision, such as a commit date or, for artifacts stored in Amazon S3 buckets, the ETag value.
    547      */
    548     revisionChangeIdentifier?: RevisionChangeIdentifier;
    549     /**
    550      * Summary information about the most recent revision of the artifact. For GitHub and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets or actions, the user-provided content of a codepipeline-artifact-revision-summary key specified in the object metadata.
    551      */
    552     revisionSummary?: RevisionSummary;
    553     /**
    554      * The date and time when the most recent revision of the artifact was created, in timestamp format.
    555      */
    556     created?: Timestamp;
    557     /**
    558      * The commit ID for the artifact revision. For artifacts stored in GitHub or AWS CodeCommit repositories, the commit ID is linked to a commit details page.
    559      */
    560     revisionUrl?: Url;
    561   }
    562   export type ArtifactRevisionList = ArtifactRevision[];
    563   export interface ArtifactStore {
    564     /**
    565      * The type of the artifact store, such as S3.
    566      */
    567     type: ArtifactStoreType;
    568     /**
    569      * The location for storing the artifacts for a pipeline, such as an S3 bucket or folder.
    570      */
    571     location: ArtifactStoreLocation;
    572     /**
    573      * The encryption key used to encrypt the data in the artifact store, such as an AWS Key Management Service (AWS KMS) key. If this is undefined, the default key for Amazon S3 is used.
    574      */
    575     encryptionKey?: EncryptionKey;
    576   }
    577   export type ArtifactStoreLocation = string;
    578   export type ArtifactStoreType = "S3"|string;
    579   export interface BlockerDeclaration {
    580     /**
    581      * Reserved for future use.
    582      */
    583     name: BlockerName;
    584     /**
    585      * Reserved for future use.
    586      */
    587     type: BlockerType;
    588   }
    589   export type BlockerName = string;
    590   export type BlockerType = "Schedule"|string;
    591   export type Boolean = boolean;
    592   export type ClientId = string;
    593   export type ClientToken = string;
    594   export type Code = string;
    595   export type ContinuationToken = string;
    596   export interface CreateCustomActionTypeInput {
    597     /**
    598      * The category of the custom action, such as a build action or a test action.  Although Source and Approval are listed as valid values, they are not currently functional. These values are reserved for future use. 
    599      */
    600     category: ActionCategory;
    601     /**
    602      * The provider of the service used in the custom action, such as AWS CodeDeploy.
    603      */
    604     provider: ActionProvider;
    605     /**
    606      * The version identifier of the custom action.
    607      */
    608     version: Version;
    609     settings?: ActionTypeSettings;
    610     /**
    611      * The configuration properties for the custom action.  You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, see Create a Custom Action for a Pipeline. 
    612      */
    613     configurationProperties?: ActionConfigurationPropertyList;
    614     inputArtifactDetails: ArtifactDetails;
    615     outputArtifactDetails: ArtifactDetails;
    616   }
    617   export interface CreateCustomActionTypeOutput {
    618     actionType: ActionType;
    619   }
    620   export interface CreatePipelineInput {
    621     pipeline: PipelineDeclaration;
    622   }
    623   export interface CreatePipelineOutput {
    624     pipeline?: PipelineDeclaration;
    625   }
    626   export interface CurrentRevision {
    627     /**
    628      * The revision ID of the current version of an artifact.
    629      */
    630     revision: Revision;
    631     /**
    632      * The change identifier for the current revision.
    633      */
    634     changeIdentifier: RevisionChangeIdentifier;
    635     /**
    636      * The date and time when the most recent revision of the artifact was created, in timestamp format.
    637      */
    638     created?: Time;
    639     /**
    640      * The summary of the most recent revision of the artifact.
    641      */
    642     revisionSummary?: RevisionSummary;
    643   }
    644   export interface DeleteCustomActionTypeInput {
    645     /**
    646      * The category of the custom action that you want to delete, such as source or deploy.
    647      */
    648     category: ActionCategory;
    649     /**
    650      * The provider of the service used in the custom action, such as AWS CodeDeploy.
    651      */
    652     provider: ActionProvider;
    653     /**
    654      * The version of the custom action to delete.
    655      */
    656     version: Version;
    657   }
    658   export interface DeletePipelineInput {
    659     /**
    660      * The name of the pipeline to be deleted.
    661      */
    662     name: PipelineName;
    663   }
    664   export type Description = string;
    665   export interface DisableStageTransitionInput {
    666     /**
    667      * The name of the pipeline in which you want to disable the flow of artifacts from one stage to another.
    668      */
    669     pipelineName: PipelineName;
    670     /**
    671      * The name of the stage where you want to disable the inbound or outbound transition of artifacts.
    672      */
    673     stageName: StageName;
    674     /**
    675      * Specifies whether artifacts will be prevented from transitioning into the stage and being processed by the actions in that stage (inbound), or prevented from transitioning from the stage after they have been processed by the actions in that stage (outbound).
    676      */
    677     transitionType: StageTransitionType;
    678     /**
    679      * The reason given to the user why a stage is disabled, such as waiting for manual approval or manual tests. This message is displayed in the pipeline console UI.
    680      */
    681     reason: DisabledReason;
    682   }
    683   export type DisabledReason = string;
    684   export interface EnableStageTransitionInput {
    685     /**
    686      * The name of the pipeline in which you want to enable the flow of artifacts from one stage to another.
    687      */
    688     pipelineName: PipelineName;
    689     /**
    690      * The name of the stage where you want to enable the transition of artifacts, either into the stage (inbound) or from that stage to the next stage (outbound).
    691      */
    692     stageName: StageName;
    693     /**
    694      * Specifies whether artifacts will be allowed to enter the stage and be processed by the actions in that stage (inbound) or whether already-processed artifacts will be allowed to transition to the next stage (outbound).
    695      */
    696     transitionType: StageTransitionType;
    697   }
    698   export type Enabled = boolean;
    699   export interface EncryptionKey {
    700     /**
    701      * The ID used to identify the key. For an AWS KMS key, this is the key ID or key ARN.
    702      */
    703     id: EncryptionKeyId;
    704     /**
    705      * The type of encryption key, such as an AWS Key Management Service (AWS KMS) key. When creating or updating a pipeline, the value must be set to 'KMS'.
    706      */
    707     type: EncryptionKeyType;
    708   }
    709   export type EncryptionKeyId = string;
    710   export type EncryptionKeyType = "KMS"|string;
    711   export interface ErrorDetails {
    712     /**
    713      * The system ID or error number code of the error.
    714      */
    715     code?: Code;
    716     /**
    717      * The text of the error message.
    718      */
    719     message?: Message;
    720   }
    721   export interface ExecutionDetails {
    722     /**
    723      * The summary of the current status of the actions.
    724      */
    725     summary?: ExecutionSummary;
    726     /**
    727      * The system-generated unique ID of this action used to identify this job worker in any external systems, such as AWS CodeDeploy.
    728      */
    729     externalExecutionId?: ExecutionId;
    730     /**
    731      * The percentage of work completed on the action, represented on a scale of zero to one hundred percent.
    732      */
    733     percentComplete?: Percentage;
    734   }
    735   export type ExecutionId = string;
    736   export type ExecutionSummary = string;
    737   export interface FailureDetails {
    738     /**
    739      * The type of the failure.
    740      */
    741     type: FailureType;
    742     /**
    743      * The message about the failure.
    744      */
    745     message: Message;
    746     /**
    747      * The external ID of the run of the action that failed.
    748      */
    749     externalExecutionId?: ExecutionId;
    750   }
    751   export type FailureType = "JobFailed"|"ConfigurationError"|"PermissionError"|"RevisionOutOfSync"|"RevisionUnavailable"|"SystemUnavailable"|string;
    752   export interface GetJobDetailsInput {
    753     /**
    754      * The unique system-generated ID for the job.
    755      */
    756     jobId: JobId;
    757   }
    758   export interface GetJobDetailsOutput {
    759     /**
    760      * The details of the job.  If AWSSessionCredentials is used, a long-running job can call GetJobDetails again to obtain new credentials. 
    761      */
    762     jobDetails?: JobDetails;
    763   }
    764   export interface GetPipelineExecutionInput {
    765     /**
    766      * The name of the pipeline about which you want to get execution details.
    767      */
    768     pipelineName: PipelineName;
    769     /**
    770      * The ID of the pipeline execution about which you want to get execution details.
    771      */
    772     pipelineExecutionId: PipelineExecutionId;
    773   }
    774   export interface GetPipelineExecutionOutput {
    775     /**
    776      * Represents information about the execution of a pipeline.
    777      */
    778     pipelineExecution?: PipelineExecution;
    779   }
    780   export interface GetPipelineInput {
    781     /**
    782      * The name of the pipeline for which you want to get information. Pipeline names must be unique under an Amazon Web Services (AWS) user account.
    783      */
    784     name: PipelineName;
    785     /**
    786      * The version number of the pipeline. If you do not specify a version, defaults to the most current version.
    787      */
    788     version?: PipelineVersion;
    789   }
    790   export interface GetPipelineOutput {
    791     pipeline?: PipelineDeclaration;
    792   }
    793   export interface GetPipelineStateInput {
    794     /**
    795      * The name of the pipeline about which you want to get information.
    796      */
    797     name: PipelineName;
    798   }
    799   export interface GetPipelineStateOutput {
    800     /**
    801      * The name of the pipeline for which you want to get the state.
    802      */
    803     pipelineName?: PipelineName;
    804     /**
    805      * The version number of the pipeline.  A newly-created pipeline is always assigned a version number of 1. 
    806      */
    807     pipelineVersion?: PipelineVersion;
    808     /**
    809      * A list of the pipeline stage output information, including stage name, state, most recent run details, whether the stage is disabled, and other data.
    810      */
    811     stageStates?: StageStateList;
    812     /**
    813      * The date and time the pipeline was created, in timestamp format.
    814      */
    815     created?: Timestamp;
    816     /**
    817      * The date and time the pipeline was last updated, in timestamp format.
    818      */
    819     updated?: Timestamp;
    820   }
    821   export interface GetThirdPartyJobDetailsInput {
    822     /**
    823      * The unique system-generated ID used for identifying the job.
    824      */
    825     jobId: ThirdPartyJobId;
    826     /**
    827      * The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.
    828      */
    829     clientToken: ClientToken;
    830   }
    831   export interface GetThirdPartyJobDetailsOutput {
    832     /**
    833      * The details of the job, including any protected values defined for the job.
    834      */
    835     jobDetails?: ThirdPartyJobDetails;
    836   }
    837   export interface InputArtifact {
    838     /**
    839      * The name of the artifact to be worked on, for example, "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions.
    840      */
    841     name: ArtifactName;
    842   }
    843   export type InputArtifactList = InputArtifact[];
    844   export interface Job {
    845     /**
    846      * The unique system-generated ID of the job.
    847      */
    848     id?: JobId;
    849     /**
    850      * Additional data about a job.
    851      */
    852     data?: JobData;
    853     /**
    854      * A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.
    855      */
    856     nonce?: Nonce;
    857     /**
    858      * The ID of the AWS account to use when performing the job.
    859      */
    860     accountId?: AccountId;
    861   }
    862   export interface JobData {
    863     actionTypeId?: ActionTypeId;
    864     actionConfiguration?: ActionConfiguration;
    865     pipelineContext?: PipelineContext;
    866     /**
    867      * The artifact supplied to the job.
    868      */
    869     inputArtifacts?: ArtifactList;
    870     /**
    871      * The output of the job.
    872      */
    873     outputArtifacts?: ArtifactList;
    874     artifactCredentials?: AWSSessionCredentials;
    875     /**
    876      * A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.
    877      */
    878     continuationToken?: ContinuationToken;
    879     encryptionKey?: EncryptionKey;
    880   }
    881   export interface JobDetails {
    882     /**
    883      * The unique system-generated ID of the job.
    884      */
    885     id?: JobId;
    886     data?: JobData;
    887     /**
    888      * The AWS account ID associated with the job.
    889      */
    890     accountId?: AccountId;
    891   }
    892   export type JobId = string;
    893   export type JobList = Job[];
    894   export type JobStatus = "Created"|"Queued"|"Dispatched"|"InProgress"|"TimedOut"|"Succeeded"|"Failed"|string;
    895   export type LastChangedAt = Date;
    896   export type LastChangedBy = string;
    897   export type LastUpdatedBy = string;
    898   export interface ListActionTypesInput {
    899     /**
    900      * Filters the list of action types to those created by a specified entity.
    901      */
    902     actionOwnerFilter?: ActionOwner;
    903     /**
    904      * An identifier that was returned from the previous list action types call, which can be used to return the next set of action types in the list.
    905      */
    906     nextToken?: NextToken;
    907   }
    908   export interface ListActionTypesOutput {
    909     /**
    910      * Provides details of the action types.
    911      */
    912     actionTypes: ActionTypeList;
    913     /**
    914      * If the amount of returned information is significantly large, an identifier is also returned which can be used in a subsequent list action types call to return the next set of action types in the list.
    915      */
    916     nextToken?: NextToken;
    917   }
    918   export interface ListPipelinesInput {
    919     /**
    920      * An identifier that was returned from the previous list pipelines call, which can be used to return the next set of pipelines in the list.
    921      */
    922     nextToken?: NextToken;
    923   }
    924   export interface ListPipelinesOutput {
    925     /**
    926      * The list of pipelines.
    927      */
    928     pipelines?: PipelineList;
    929     /**
    930      * If the amount of returned information is significantly large, an identifier is also returned which can be used in a subsequent list pipelines call to return the next set of pipelines in the list.
    931      */
    932     nextToken?: NextToken;
    933   }
    934   export type MaxBatchSize = number;
    935   export type MaximumArtifactCount = number;
    936   export type Message = string;
    937   export type MinimumArtifactCount = number;
    938   export type NextToken = string;
    939   export type Nonce = string;
    940   export interface OutputArtifact {
    941     /**
    942      * The name of the output of an artifact, such as "My App". The input artifact of an action must exactly match the output artifact declared in a preceding action, but the input artifact does not have to be the next action in strict sequence from the action that provided the output artifact. Actions in parallel can declare different output artifacts, which are in turn consumed by different following actions. Output artifact names must be unique within a pipeline.
    943      */
    944     name: ArtifactName;
    945   }
    946   export type OutputArtifactList = OutputArtifact[];
    947   export type Percentage = number;
    948   export interface PipelineContext {
    949     /**
    950      * The name of the pipeline. This is a user-specified value. Pipeline names must be unique across all pipeline names under an Amazon Web Services account.
    951      */
    952     pipelineName?: PipelineName;
    953     /**
    954      * The stage of the pipeline.
    955      */
    956     stage?: StageContext;
    957     action?: ActionContext;
    958   }
    959   export interface PipelineDeclaration {
    960     /**
    961      * The name of the action to be performed.
    962      */
    963     name: PipelineName;
    964     /**
    965      * The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform actions with no actionRoleArn, or to use to assume roles for actions with an actionRoleArn.
    966      */
    967     roleArn: RoleArn;
    968     artifactStore: ArtifactStore;
    969     /**
    970      * The stage in which to perform the action.
    971      */
    972     stages: PipelineStageDeclarationList;
    973     /**
    974      * The version number of the pipeline. A new pipeline always has a version number of 1. This number is automatically incremented when a pipeline is updated.
    975      */
    976     version?: PipelineVersion;
    977   }
    978   export interface PipelineExecution {
    979     /**
    980      * The name of the pipeline that was executed.
    981      */
    982     pipelineName?: PipelineName;
    983     /**
    984      * The version number of the pipeline that was executed.
    985      */
    986     pipelineVersion?: PipelineVersion;
    987     /**
    988      * The ID of the pipeline execution.
    989      */
    990     pipelineExecutionId?: PipelineExecutionId;
    991     /**
    992      * The status of the pipeline execution.   InProgress: The pipeline execution is currently running.   Succeeded: The pipeline execution completed successfully.    Superseded: While this pipeline execution was waiting for the next stage to be completed, a newer pipeline execution caught up and continued through the pipeline instead.    Failed: The pipeline did not complete successfully.  
    993      */
    994     status?: PipelineExecutionStatus;
    995     /**
    996      * A list of ArtifactRevision objects included in a pipeline execution.
    997      */
    998     artifactRevisions?: ArtifactRevisionList;
    999   }
   1000   export type PipelineExecutionId = string;
   1001   export type PipelineExecutionStatus = "InProgress"|"Succeeded"|"Superseded"|"Failed"|string;
   1002   export type PipelineList = PipelineSummary[];
   1003   export type PipelineName = string;
   1004   export type PipelineStageDeclarationList = StageDeclaration[];
   1005   export interface PipelineSummary {
   1006     /**
   1007      * The name of the pipeline.
   1008      */
   1009     name?: PipelineName;
   1010     /**
   1011      * The version number of the pipeline.
   1012      */
   1013     version?: PipelineVersion;
   1014     /**
   1015      * The date and time the pipeline was created, in timestamp format.
   1016      */
   1017     created?: Timestamp;
   1018     /**
   1019      * The date and time of the last update to the pipeline, in timestamp format.
   1020      */
   1021     updated?: Timestamp;
   1022   }
   1023   export type PipelineVersion = number;
   1024   export interface PollForJobsInput {
   1025     actionTypeId: ActionTypeId;
   1026     /**
   1027      * The maximum number of jobs to return in a poll for jobs call.
   1028      */
   1029     maxBatchSize?: MaxBatchSize;
   1030     /**
   1031      * A map of property names and values. For an action type with no queryable properties, this value must be null or an empty map. For an action type with a queryable property, you must supply that property as a key in the map. Only jobs whose action configuration matches the mapped value will be returned.
   1032      */
   1033     queryParam?: QueryParamMap;
   1034   }
   1035   export interface PollForJobsOutput {
   1036     /**
   1037      * Information about the jobs to take action on.
   1038      */
   1039     jobs?: JobList;
   1040   }
   1041   export interface PollForThirdPartyJobsInput {
   1042     actionTypeId: ActionTypeId;
   1043     /**
   1044      * The maximum number of jobs to return in a poll for jobs call.
   1045      */
   1046     maxBatchSize?: MaxBatchSize;
   1047   }
   1048   export interface PollForThirdPartyJobsOutput {
   1049     /**
   1050      * Information about the jobs to take action on.
   1051      */
   1052     jobs?: ThirdPartyJobList;
   1053   }
   1054   export interface PutActionRevisionInput {
   1055     /**
   1056      * The name of the pipeline that will start processing the revision to the source.
   1057      */
   1058     pipelineName: PipelineName;
   1059     /**
   1060      * The name of the stage that contains the action that will act upon the revision.
   1061      */
   1062     stageName: StageName;
   1063     /**
   1064      * The name of the action that will process the revision.
   1065      */
   1066     actionName: ActionName;
   1067     actionRevision: ActionRevision;
   1068   }
   1069   export interface PutActionRevisionOutput {
   1070     /**
   1071      * Indicates whether the artifact revision was previously used in an execution of the specified pipeline.
   1072      */
   1073     newRevision?: Boolean;
   1074     /**
   1075      * The ID of the current workflow state of the pipeline.
   1076      */
   1077     pipelineExecutionId?: PipelineExecutionId;
   1078   }
   1079   export interface PutApprovalResultInput {
   1080     /**
   1081      * The name of the pipeline that contains the action. 
   1082      */
   1083     pipelineName: PipelineName;
   1084     /**
   1085      * The name of the stage that contains the action.
   1086      */
   1087     stageName: StageName;
   1088     /**
   1089      * The name of the action for which approval is requested.
   1090      */
   1091     actionName: ActionName;
   1092     /**
   1093      * Represents information about the result of the approval request.
   1094      */
   1095     result: ApprovalResult;
   1096     /**
   1097      * The system-generated token used to identify a unique approval request. The token for each open approval request can be obtained using the GetPipelineState action and is used to validate that the approval request corresponding to this token is still valid.
   1098      */
   1099     token: ApprovalToken;
   1100   }
   1101   export interface PutApprovalResultOutput {
   1102     /**
   1103      * The timestamp showing when the approval or rejection was submitted.
   1104      */
   1105     approvedAt?: Timestamp;
   1106   }
   1107   export interface PutJobFailureResultInput {
   1108     /**
   1109      * The unique system-generated ID of the job that failed. This is the same ID returned from PollForJobs.
   1110      */
   1111     jobId: JobId;
   1112     /**
   1113      * The details about the failure of a job.
   1114      */
   1115     failureDetails: FailureDetails;
   1116   }
   1117   export interface PutJobSuccessResultInput {
   1118     /**
   1119      * The unique system-generated ID of the job that succeeded. This is the same ID returned from PollForJobs.
   1120      */
   1121     jobId: JobId;
   1122     /**
   1123      * The ID of the current revision of the artifact successfully worked upon by the job.
   1124      */
   1125     currentRevision?: CurrentRevision;
   1126     /**
   1127      * A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a custom action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the custom action. When the action is complete, no continuation token should be supplied.
   1128      */
   1129     continuationToken?: ContinuationToken;
   1130     /**
   1131      * The execution details of the successful job, such as the actions taken by the job worker.
   1132      */
   1133     executionDetails?: ExecutionDetails;
   1134   }
   1135   export interface PutThirdPartyJobFailureResultInput {
   1136     /**
   1137      * The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs.
   1138      */
   1139     jobId: ThirdPartyJobId;
   1140     /**
   1141      * The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.
   1142      */
   1143     clientToken: ClientToken;
   1144     failureDetails: FailureDetails;
   1145   }
   1146   export interface PutThirdPartyJobSuccessResultInput {
   1147     /**
   1148      * The ID of the job that successfully completed. This is the same ID returned from PollForThirdPartyJobs.
   1149      */
   1150     jobId: ThirdPartyJobId;
   1151     /**
   1152      * The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.
   1153      */
   1154     clientToken: ClientToken;
   1155     currentRevision?: CurrentRevision;
   1156     /**
   1157      * A token generated by a job worker, such as an AWS CodeDeploy deployment ID, that a successful job provides to identify a partner action in progress. Future jobs will use this token in order to identify the running instance of the action. It can be reused to return additional information about the progress of the partner action. When the action is complete, no continuation token should be supplied.
   1158      */
   1159     continuationToken?: ContinuationToken;
   1160     executionDetails?: ExecutionDetails;
   1161   }
   1162   export type QueryParamMap = {[key: string]: ActionConfigurationQueryableValue};
   1163   export interface RetryStageExecutionInput {
   1164     /**
   1165      * The name of the pipeline that contains the failed stage.
   1166      */
   1167     pipelineName: PipelineName;
   1168     /**
   1169      * The name of the failed stage to be retried.
   1170      */
   1171     stageName: StageName;
   1172     /**
   1173      * The ID of the pipeline execution in the failed stage to be retried. Use the GetPipelineState action to retrieve the current pipelineExecutionId of the failed stage
   1174      */
   1175     pipelineExecutionId: PipelineExecutionId;
   1176     /**
   1177      * The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS.
   1178      */
   1179     retryMode: StageRetryMode;
   1180   }
   1181   export interface RetryStageExecutionOutput {
   1182     /**
   1183      * The ID of the current workflow execution in the failed stage.
   1184      */
   1185     pipelineExecutionId?: PipelineExecutionId;
   1186   }
   1187   export type Revision = string;
   1188   export type RevisionChangeIdentifier = string;
   1189   export type RevisionSummary = string;
   1190   export type RoleArn = string;
   1191   export interface S3ArtifactLocation {
   1192     /**
   1193      * The name of the Amazon S3 bucket.
   1194      */
   1195     bucketName: S3BucketName;
   1196     /**
   1197      * The key of the object in the Amazon S3 bucket, which uniquely identifies the object in the bucket.
   1198      */
   1199     objectKey: S3ObjectKey;
   1200   }
   1201   export type S3BucketName = string;
   1202   export type S3ObjectKey = string;
   1203   export type SecretAccessKey = string;
   1204   export type SessionToken = string;
   1205   export type StageActionDeclarationList = ActionDeclaration[];
   1206   export type StageBlockerDeclarationList = BlockerDeclaration[];
   1207   export interface StageContext {
   1208     /**
   1209      * The name of the stage.
   1210      */
   1211     name?: StageName;
   1212   }
   1213   export interface StageDeclaration {
   1214     /**
   1215      * The name of the stage.
   1216      */
   1217     name: StageName;
   1218     /**
   1219      * Reserved for future use.
   1220      */
   1221     blockers?: StageBlockerDeclarationList;
   1222     /**
   1223      * The actions included in a stage.
   1224      */
   1225     actions: StageActionDeclarationList;
   1226   }
   1227   export interface StageExecution {
   1228     /**
   1229      * The ID of the pipeline execution associated with the stage.
   1230      */
   1231     pipelineExecutionId: PipelineExecutionId;
   1232     /**
   1233      * The status of the stage, or for a completed stage, the last status of the stage.
   1234      */
   1235     status: StageExecutionStatus;
   1236   }
   1237   export type StageExecutionStatus = "InProgress"|"Failed"|"Succeeded"|string;
   1238   export type StageName = string;
   1239   export type StageRetryMode = "FAILED_ACTIONS"|string;
   1240   export interface StageState {
   1241     /**
   1242      * The name of the stage.
   1243      */
   1244     stageName?: StageName;
   1245     /**
   1246      * The state of the inbound transition, which is either enabled or disabled.
   1247      */
   1248     inboundTransitionState?: TransitionState;
   1249     /**
   1250      * The state of the stage.
   1251      */
   1252     actionStates?: ActionStateList;
   1253     /**
   1254      * Information about the latest execution in the stage, including its ID and status.
   1255      */
   1256     latestExecution?: StageExecution;
   1257   }
   1258   export type StageStateList = StageState[];
   1259   export type StageTransitionType = "Inbound"|"Outbound"|string;
   1260   export interface StartPipelineExecutionInput {
   1261     /**
   1262      * The name of the pipeline to start.
   1263      */
   1264     name: PipelineName;
   1265   }
   1266   export interface StartPipelineExecutionOutput {
   1267     /**
   1268      * The unique system-generated ID of the pipeline execution that was started.
   1269      */
   1270     pipelineExecutionId?: PipelineExecutionId;
   1271   }
   1272   export interface ThirdPartyJob {
   1273     /**
   1274      * The clientToken portion of the clientId and clientToken pair used to verify that the calling entity is allowed access to the job and its details.
   1275      */
   1276     clientId?: ClientId;
   1277     /**
   1278      * The identifier used to identify the job in AWS CodePipeline.
   1279      */
   1280     jobId?: JobId;
   1281   }
   1282   export interface ThirdPartyJobData {
   1283     actionTypeId?: ActionTypeId;
   1284     actionConfiguration?: ActionConfiguration;
   1285     pipelineContext?: PipelineContext;
   1286     /**
   1287      * The name of the artifact that will be worked upon by the action, if any. This name might be system-generated, such as "MyApp", or might be defined by the user when the action is created. The input artifact name must match the name of an output artifact generated by an action in an earlier action or stage of the pipeline.
   1288      */
   1289     inputArtifacts?: ArtifactList;
   1290     /**
   1291      * The name of the artifact that will be the result of the action, if any. This name might be system-generated, such as "MyBuiltApp", or might be defined by the user when the action is created.
   1292      */
   1293     outputArtifacts?: ArtifactList;
   1294     artifactCredentials?: AWSSessionCredentials;
   1295     /**
   1296      * A system-generated token, such as a AWS CodeDeploy deployment ID, that a job requires in order to continue the job asynchronously.
   1297      */
   1298     continuationToken?: ContinuationToken;
   1299     /**
   1300      * The encryption key used to encrypt and decrypt data in the artifact store for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This is optional and might not be present.
   1301      */
   1302     encryptionKey?: EncryptionKey;
   1303   }
   1304   export interface ThirdPartyJobDetails {
   1305     /**
   1306      * The identifier used to identify the job details in AWS CodePipeline.
   1307      */
   1308     id?: ThirdPartyJobId;
   1309     /**
   1310      * The data to be returned by the third party job worker.
   1311      */
   1312     data?: ThirdPartyJobData;
   1313     /**
   1314      * A system-generated random number that AWS CodePipeline uses to ensure that the job is being worked on by only one job worker. This number must be returned in the response.
   1315      */
   1316     nonce?: Nonce;
   1317   }
   1318   export type ThirdPartyJobId = string;
   1319   export type ThirdPartyJobList = ThirdPartyJob[];
   1320   export type Time = Date;
   1321   export type Timestamp = Date;
   1322   export interface TransitionState {
   1323     /**
   1324      * Whether the transition between stages is enabled (true) or disabled (false).
   1325      */
   1326     enabled?: Enabled;
   1327     /**
   1328      * The ID of the user who last changed the transition state.
   1329      */
   1330     lastChangedBy?: LastChangedBy;
   1331     /**
   1332      * The timestamp when the transition state was last changed.
   1333      */
   1334     lastChangedAt?: LastChangedAt;
   1335     /**
   1336      * The user-specified reason why the transition between two stages of a pipeline was disabled.
   1337      */
   1338     disabledReason?: DisabledReason;
   1339   }
   1340   export interface UpdatePipelineInput {
   1341     /**
   1342      * The name of the pipeline to be updated.
   1343      */
   1344     pipeline: PipelineDeclaration;
   1345   }
   1346   export interface UpdatePipelineOutput {
   1347     /**
   1348      * The structure of the updated pipeline.
   1349      */
   1350     pipeline?: PipelineDeclaration;
   1351   }
   1352   export type Url = string;
   1353   export type UrlTemplate = string;
   1354   export type Version = string;
   1355   /**
   1356    * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
   1357    */
   1358   export type apiVersion = "2015-07-09"|"latest"|string;
   1359   export interface ClientApiVersions {
   1360     /**
   1361      * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
   1362      */
   1363     apiVersion?: apiVersion;
   1364   }
   1365   export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
   1366 }
   1367 export = CodePipeline;