import { AccessLevelList } from '../shared/access-level' ; import { PolicyStatement , Operator } from '../shared' ; param sid export class Swf extends PolicyStatement { public servicePrefix = 'swf' ; param sid constructor ( sid ? ) { super ( sid ) ; } /**
     * Description for CancelTimer
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toCancelTimer ( ) { return this . to ( 'CancelTimer' ) ; } /**
     * Description for CancelWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toCancelWorkflowExecution ( ) { return this . to ( 'CancelWorkflowExecution' ) ; } /**
     * Description for CompleteWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toCompleteWorkflowExecution ( ) { return this . to ( 'CompleteWorkflowExecution' ) ; } /**
     * Description for ContinueAsNewWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toContinueAsNewWorkflowExecution ( ) { return this . to ( 'ContinueAsNewWorkflowExecution' ) ; } /**
     * Returns the number of closed workflow executions within the given domain that meet the specified filtering criteria
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifTagFilterTag()
     * - .ifTypeFilterName()
     * - .ifTypeFilterVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountClosedWorkflowExecutions.html
     */ public toCountClosedWorkflowExecutions ( ) { return this . to ( 'CountClosedWorkflowExecutions' ) ; } /**
     * Returns the number of open workflow executions within the given domain that meet the specified filtering criteria
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifTagFilterTag()
     * - .ifTypeFilterName()
     * - .ifTypeFilterVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountOpenWorkflowExecutions.html
     */ public toCountOpenWorkflowExecutions ( ) { return this . to ( 'CountOpenWorkflowExecutions' ) ; } /**
     * Returns the estimated number of activity tasks in the specified task list
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifTaskListName()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountPendingActivityTasks.html
     */ public toCountPendingActivityTasks ( ) { return this . to ( 'CountPendingActivityTasks' ) ; } /**
     * Returns the estimated number of decision tasks in the specified task list
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifTaskListName()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_CountPendingDecisionTasks.html
     */ public toCountPendingDecisionTasks ( ) { return this . to ( 'CountPendingDecisionTasks' ) ; } /**
     * Deprecates the specified activity type
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifActivityTypeName()
     * - .ifActivityTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateActivityType.html
     */ public toDeprecateActivityType ( ) { return this . to ( 'DeprecateActivityType' ) ; } /**
     * Deprecates the specified domain
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateDomain.html
     */ public toDeprecateDomain ( ) { return this . to ( 'DeprecateDomain' ) ; } /**
     * Deprecates the specified workflow type
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifWorkflowTypeName()
     * - .ifWorkflowTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DeprecateWorkflowType.html
     */ public toDeprecateWorkflowType ( ) { return this . to ( 'DeprecateWorkflowType' ) ; } /**
     * Returns information about the specified activity type
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifActivityTypeName()
     * - .ifActivityTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeActivityType.html
     */ public toDescribeActivityType ( ) { return this . to ( 'DescribeActivityType' ) ; } /**
     * Returns information about the specified domain, including description and status
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeDomain.html
     */ public toDescribeDomain ( ) { return this . to ( 'DescribeDomain' ) ; } /**
     * Returns information about the specified workflow execution including its type and some statistics
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeWorkflowExecution.html
     */ public toDescribeWorkflowExecution ( ) { return this . to ( 'DescribeWorkflowExecution' ) ; } /**
     * Returns information about the specified workflow type
     *
     * Access Level: Read
     *
     * Possible conditions:
     * - .ifWorkflowTypeName()
     * - .ifWorkflowTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_DescribeWorkflowType.html
     */ public toDescribeWorkflowType ( ) { return this . to ( 'DescribeWorkflowType' ) ; } /**
     * Description for FailWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toFailWorkflowExecution ( ) { return this . to ( 'FailWorkflowExecution' ) ; } /**
     * Returns the history of the specified workflow execution
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_GetWorkflowExecutionHistory.html
     */ public toGetWorkflowExecutionHistory ( ) { return this . to ( 'GetWorkflowExecutionHistory' ) ; } /**
     * Returns information about all activities registered in the specified domain that match the specified name and registration status
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListActivityTypes.html
     */ public toListActivityTypes ( ) { return this . to ( 'ListActivityTypes' ) ; } /**
     * Returns a list of closed workflow executions in the specified domain that meet the filtering criteria
     *
     * Access Level: List
     *
     * Possible conditions:
     * - .ifTagFilterTag()
     * - .ifTypeFilterName()
     * - .ifTypeFilterVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListClosedWorkflowExecutions.html
     */ public toListClosedWorkflowExecutions ( ) { return this . to ( 'ListClosedWorkflowExecutions' ) ; } /**
     * Returns the list of domains registered in the account
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListDomains.html
     */ public toListDomains ( ) { return this . to ( 'ListDomains' ) ; } /**
     * Returns a list of open workflow executions in the specified domain that meet the filtering criteria
     *
     * Access Level: List
     *
     * Possible conditions:
     * - .ifTagFilterTag()
     * - .ifTypeFilterName()
     * - .ifTypeFilterVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListOpenWorkflowExecutions.html
     */ public toListOpenWorkflowExecutions ( ) { return this . to ( 'ListOpenWorkflowExecutions' ) ; } /**
     * This action lists tags for an AWS SWF resource
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListTagsForResource.html
     */ public toListTagsForResource ( ) { return this . to ( 'ListTagsForResource' ) ; } /**
     * Returns information about workflow types in the specified domain
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_ListWorkflowTypes.html
     */ public toListWorkflowTypes ( ) { return this . to ( 'ListWorkflowTypes' ) ; } /**
     * Used by workers to get an ActivityTask from the specified activity taskList
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifTaskListName()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_PollForActivityTask.html
     */ public toPollForActivityTask ( ) { return this . to ( 'PollForActivityTask' ) ; } /**
     * Used by deciders to get a DecisionTask from the specified decision taskList
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifTaskListName()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_PollForDecisionTask.html
     */ public toPollForDecisionTask ( ) { return this . to ( 'PollForDecisionTask' ) ; } /**
     * Used by activity workers to report to the service that the ActivityTask represented by the specified taskToken is still making progress
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RecordActivityTaskHeartbeat.html
     */ public toRecordActivityTaskHeartbeat ( ) { return this . to ( 'RecordActivityTaskHeartbeat' ) ; } /**
     * Description for RecordMarker
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toRecordMarker ( ) { return this . to ( 'RecordMarker' ) ; } /**
     * Registers a new activity type along with its configuration settings in the specified domain
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifDefaultTaskListName()
     * - .ifName()
     * - .ifVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterActivityType.html
     */ public toRegisterActivityType ( ) { return this . to ( 'RegisterActivityType' ) ; } /**
     * Registers a new domain
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifAwsTagKeys()
     * - .ifAwsRequestTag()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterDomain.html
     */ public toRegisterDomain ( ) { return this . to ( 'RegisterDomain' ) ; } /**
     * Registers a new workflow type and its configuration settings in the specified domain
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifDefaultTaskListName()
     * - .ifName()
     * - .ifVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RegisterWorkflowType.html
     */ public toRegisterWorkflowType ( ) { return this . to ( 'RegisterWorkflowType' ) ; } /**
     * Description for RequestCancelActivityTask
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toRequestCancelActivityTask ( ) { return this . to ( 'RequestCancelActivityTask' ) ; } /**
     * Description for RequestCancelExternalWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toRequestCancelExternalWorkflowExecution ( ) { return this . to ( 'RequestCancelExternalWorkflowExecution' ) ; } /**
     * Records a WorkflowExecutionCancelRequested event in the currently running workflow execution identified by the given domain, workflowId, and runId
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RequestCancelWorkflowExecution.html
     */ public toRequestCancelWorkflowExecution ( ) { return this . to ( 'RequestCancelWorkflowExecution' ) ; } /**
     * Used by workers to tell the service that the ActivityTask identified by the taskToken was successfully canceled
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskCanceled.html
     */ public toRespondActivityTaskCanceled ( ) { return this . to ( 'RespondActivityTaskCanceled' ) ; } /**
     * Used by workers to tell the service that the ActivityTask identified by the taskToken completed successfully with a result (if provided)
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifActivityTypeName()
     * - .ifActivityTypeVersion()
     * - .ifTagListMember0()
     * - .ifTagListMember1()
     * - .ifTagListMember2()
     * - .ifTagListMember3()
     * - .ifTagListMember4()
     * - .ifTaskListName()
     * - .ifWorkflowTypeName()
     * - .ifWorkflowTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskCompleted.html
     */ public toRespondActivityTaskCompleted ( ) { return this . to ( 'RespondActivityTaskCompleted' ) ; } /**
     * Used by workers to tell the service that the ActivityTask identified by the taskToken has failed with reason (if specified)
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondActivityTaskFailed.html
     */ public toRespondActivityTaskFailed ( ) { return this . to ( 'RespondActivityTaskFailed' ) ; } /**
     * Used by deciders to tell the service that the DecisionTask identified by the taskToken has successfully completed
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_RespondDecisionTaskCompleted.html
     */ public toRespondDecisionTaskCompleted ( ) { return this . to ( 'RespondDecisionTaskCompleted' ) ; } /**
     * Description for ScheduleActivityTask
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toScheduleActivityTask ( ) { return this . to ( 'ScheduleActivityTask' ) ; } /**
     * Description for SignalExternalWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toSignalExternalWorkflowExecution ( ) { return this . to ( 'SignalExternalWorkflowExecution' ) ; } /**
     * Records a WorkflowExecutionSignaled event in the workflow execution history and creates a decision task for the workflow execution identified by the given domain, workflowId and runId
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_SignalWorkflowExecution.html
     */ public toSignalWorkflowExecution ( ) { return this . to ( 'SignalWorkflowExecution' ) ; } /**
     * Description for StartChildWorkflowExecution
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toStartChildWorkflowExecution ( ) { return this . to ( 'StartChildWorkflowExecution' ) ; } /**
     * Description for StartTimer
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_Decision.html
     */ public toStartTimer ( ) { return this . to ( 'StartTimer' ) ; } /**
     * Starts an execution of the workflow type in the specified domain using the provided workflowId and input data
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifTagListMember0()
     * - .ifTagListMember1()
     * - .ifTagListMember2()
     * - .ifTagListMember3()
     * - .ifTagListMember4()
     * - .ifTaskListName()
     * - .ifWorkflowTypeName()
     * - .ifWorkflowTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_StartWorkflowExecution.html
     */ public toStartWorkflowExecution ( ) { return this . to ( 'StartWorkflowExecution' ) ; } /**
     * This action tags an AWS SWF resource
     *
     * Access Level: Tagging
     *
     * Possible conditions:
     * - .ifAwsTagKeys()
     * - .ifAwsRequestTag()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_TagResource.html
     */ public toTagResource ( ) { return this . to ( 'TagResource' ) ; } /**
     * Records a WorkflowExecutionTerminated event and forces closure of the workflow execution identified by the given domain, runId, and workflowId
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_TerminateWorkflowExecution.html
     */ public toTerminateWorkflowExecution ( ) { return this . to ( 'TerminateWorkflowExecution' ) ; } /**
     * Undeprecates a previously deprecated activity type
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifActivityTypeName()
     * - .ifActivityTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_UndeprecateActivityType.html
     */ public toUndeprecateActivityType ( ) { return this . to ( 'UndeprecateActivityType' ) ; } /**
     * Undeprecates a previously deprecated domain
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_UndeprecateDomain.html
     */ public toUndeprecateDomain ( ) { return this . to ( 'UndeprecateDomain' ) ; } /**
     * Undeprecates a previously deprecated workflow type
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifWorkflowTypeName()
     * - .ifWorkflowTypeVersion()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_UndeprecateWorkflowType.html
     */ public toUndeprecateWorkflowType ( ) { return this . to ( 'UndeprecateWorkflowType' ) ; } /**
     * This action removes a tag from an AWS SWF resource
     *
     * Access Level: Tagging
     *
     * Possible conditions:
     * - .ifAwsTagKeys()
     *
     * https://docs.aws.amazon.com/amazonswf/latest/apireference/API_UntagResource.html
     */ public toUntagResource ( ) { return this . to ( 'UntagResource' ) ; } protected accessLevelList : AccessLevelList = { Write : [ 'CancelTimer' , 'CancelWorkflowExecution' , 'CompleteWorkflowExecution' , 'ContinueAsNewWorkflowExecution' , 'DeprecateActivityType' , 'DeprecateDomain' , 'DeprecateWorkflowType' , 'FailWorkflowExecution' , 'PollForActivityTask' , 'PollForDecisionTask' , 'RecordActivityTaskHeartbeat' , 'RecordMarker' , 'RegisterActivityType' , 'RegisterDomain' , 'RegisterWorkflowType' , 'RequestCancelActivityTask' , 'RequestCancelExternalWorkflowExecution' , 'RequestCancelWorkflowExecution' , 'RespondActivityTaskCanceled' , 'RespondActivityTaskCompleted' , 'RespondActivityTaskFailed' , 'RespondDecisionTaskCompleted' , 'ScheduleActivityTask' , 'SignalExternalWorkflowExecution' , 'SignalWorkflowExecution' , 'StartChildWorkflowExecution' , 'StartTimer' , 'StartWorkflowExecution' , 'TerminateWorkflowExecution' , 'UndeprecateActivityType' , 'UndeprecateDomain' , 'UndeprecateWorkflowType' ] , Read : [ 'CountClosedWorkflowExecutions' , 'CountOpenWorkflowExecutions' , 'CountPendingActivityTasks' , 'CountPendingDecisionTasks' , 'DescribeActivityType' , 'DescribeDomain' , 'DescribeWorkflowExecution' , 'DescribeWorkflowType' , 'GetWorkflowExecutionHistory' ] , List : [ 'ListActivityTypes' , 'ListClosedWorkflowExecutions' , 'ListDomains' , 'ListOpenWorkflowExecutions' , 'ListTagsForResource' , 'ListWorkflowTypes' ] , Tagging : [ 'TagResource' , 'UntagResource' ] } ; param domainName param account param partition public onDomain ( domainName , account ? , partition ? ) { return this . on ( `arn:${ partition || 'aws' }:swf::${ account || '*' }:/domain/${ domainName }` ) ; } param value param operator public ifActivityTypeName ( value , operator ? ) { return this . if ( `activityType.name` , value , operator || 'StringLike' ) ; } param value param operator public ifActivityTypeVersion ( value , operator ? ) { return this . if ( `activityType.version` , value , operator || 'StringLike' ) ; } param value param operator public ifDefaultTaskListName ( value , operator ? ) { return this . if ( `defaultTaskList.name` , value , operator || 'StringLike' ) ; } param value param operator public ifName ( value , operator ? ) { return this . if ( `name` , value , operator || 'StringLike' ) ; } param value param operator public ifTagFilterTag ( value , operator ? ) { return this . if ( `tagFilter.tag` , value , operator || 'StringLike' ) ; } param value param operator public ifTagListMember0 ( value , operator ? ) { return this . if ( `tagList.member.0` , value , operator || 'StringLike' ) ; } param value param operator public ifTagListMember1 ( value , operator ? ) { return this . if ( `tagList.member.1` , value , operator || 'StringLike' ) ; } param value param operator public ifTagListMember2 ( value , operator ? ) { return this . if ( `tagList.member.2` , value , operator || 'StringLike' ) ; } param value param operator public ifTagListMember3 ( value , operator ? ) { return this . if ( `tagList.member.3` , value , operator || 'StringLike' ) ; } param value param operator public ifTagListMember4 ( value , operator ? ) { return this . if ( `tagList.member.4` , value , operator || 'StringLike' ) ; } param value param operator public ifTaskListName ( value , operator ? ) { return this . if ( `taskList.name` , value , operator || 'StringLike' ) ; } param value param operator public ifTypeFilterName ( value , operator ? ) { return this . if ( `typeFilter.name` , value , operator || 'StringLike' ) ; } param value param operator public ifTypeFilterVersion ( value , operator ? ) { return this . if ( `typeFilter.version` , value , operator || 'StringLike' ) ; } param value param operator public ifVersion ( value , operator ? ) { return this . if ( `version` , value , operator || 'StringLike' ) ; } param value param operator public ifWorkflowTypeName ( value , operator ? ) { return this . if ( `workflowType.name` , value , operator || 'StringLike' ) ; } param value param operator public ifWorkflowTypeVersion ( value , operator ? ) { return this . if ( `workflowType.version` , value , operator || 'StringLike' ) ; } }