import { AccessLevelList } from '../../shared/access-level';
import { PolicyStatement, Operator } from '../../shared';
import { aws_iam as iam } from "aws-cdk-lib";
/**
 * Statement provider for service [transform-custom](https://docs.aws.amazon.com/service-authorization/latest/reference/list_transform-custom.html).
 *
 * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
 */
export declare class TransformCustom extends PolicyStatement {
    servicePrefix: string;
    /**
     * Grants permission to invoke BatchCreateFindings on AWS Transform custom
     *
     * Access Level: Write
     *
     * Possible conditions:
     * - .ifAwsRequestTag()
     * - .ifAwsResourceTag()
     * - .ifAwsTagKeys()
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toBatchCreateFindings(): this;
    /**
     * Grants permission to invoke BatchUpdateFindings on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toBatchUpdateFindings(): this;
    /**
     * Grants permission to invoke CompleteTransformationPackageUpload on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCompleteTransformationPackageUpload(): this;
    /**
     * Grants permission to invoke ConverseStream on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toConverseStream(): this;
    /**
     * Grants permission to invoke CreateAnalysis on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateAnalysis(): this;
    /**
     * Grants permission to invoke CreateCampaign on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateCampaign(): this;
    /**
     * Grants permission to invoke CreateRemediation on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateRemediation(): this;
    /**
     * Grants permission to invoke CreateRepository on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateRepository(): this;
    /**
     * Grants permission to invoke CreateSource on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateSource(): this;
    /**
     * Grants permission to invoke CreateTransformationPackageUrl on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toCreateTransformationPackageUrl(): this;
    /**
     * Grants permission to invoke DeleteAnalysis on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteAnalysis(): this;
    /**
     * Grants permission to invoke DeleteCampaign on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteCampaign(): this;
    /**
     * Grants permission to invoke DeleteFinding on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteFinding(): this;
    /**
     * Grants permission to invoke DeleteKnowledgeItem on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteKnowledgeItem(): this;
    /**
     * Grants permission to invoke DeleteRemediation on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteRemediation(): this;
    /**
     * Grants permission to invoke DeleteRepository on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteRepository(): this;
    /**
     * Grants permission to invoke DeleteSource on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteSource(): this;
    /**
     * Grants permission to invoke DeleteTransformationPackage on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toDeleteTransformationPackage(): this;
    /**
     * Grants permission to invoke ExecuteTransformation on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toExecuteTransformation(): this;
    /**
     * Grants permission to invoke GetAnalysis on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetAnalysis(): this;
    /**
     * Grants permission to invoke GetAnalysisArtifactDownloadUrl on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetAnalysisArtifactDownloadUrl(): this;
    /**
     * Grants permission to invoke GetCampaign on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetCampaign(): this;
    /**
     * Grants permission to invoke GetFinding on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetFinding(): this;
    /**
     * Grants permission to invoke GetFindingGroups on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetFindingGroups(): this;
    /**
     * Grants permission to invoke GetKnowledgeItem on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetKnowledgeItem(): this;
    /**
     * Grants permission to invoke GetRemediation on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetRemediation(): this;
    /**
     * Grants permission to invoke GetRepository on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetRepository(): this;
    /**
     * Grants permission to invoke GetSource on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetSource(): this;
    /**
     * Grants permission to invoke GetTransformationPackageUrl on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toGetTransformationPackageUrl(): this;
    /**
     * Grants permission to invoke ListAnalyses on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListAnalyses(): this;
    /**
     * Grants permission to invoke ListAnalysisArtifacts on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListAnalysisArtifacts(): this;
    /**
     * Grants permission to invoke ListCampaignRepositories on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListCampaignRepositories(): this;
    /**
     * Grants permission to invoke ListCampaign on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListCampaigns(): this;
    /**
     * Grants permission to invoke ListFindings on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListFindings(): this;
    /**
     * Grants permission to invoke ListKnowledgeItems on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListKnowledgeItems(): this;
    /**
     * Grants permission to invoke ListRemediations on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListRemediations(): this;
    /**
     * Grants permission to invoke ListRepositories on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListRepositories(): this;
    /**
     * Grants permission to invoke ListSources on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListSources(): this;
    /**
     * Grants permission to invoke ListTagsForResource on AWS Transform custom
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListTagsForResource(): this;
    /**
     * Grants permission to invoke ListTransformationPackageMetadata on AWS Transform custom
     *
     * Access Level: List
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListTransformationPackageMetadata(): this;
    /**
     * Grants permission to list active shares of a Transformation Package
     *
     * Access Level: Read
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toListTransformationPackageShares(): this;
    /**
     * Grants permission to send a CLI telemetry event
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toSendTelemetryEvent(): this;
    /**
     * Grants permission to share a Transformation Package with another AWS account or AWS Organization
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toShareTransformationPackage(): this;
    /**
     * Grants permission to invoke TagResource on AWS Transform custom
     *
     * Access Level: Tagging, Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toTagResource(): this;
    /**
     * Grants permission to revoke an existing share of a Transformation Package
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUnshareTransformationPackage(): this;
    /**
     * Grants permission to invoke UntagResource on AWS Transform custom
     *
     * Access Level: Tagging, Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUntagResource(): this;
    /**
     * Grants permission to invoke UpdateAnalysis on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateAnalysis(): this;
    /**
     * Grants permission to invoke UpdateCampaign on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateCampaign(): this;
    /**
     * Grants permission to invoke UpdateCampaignRepositories on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateCampaignRepositoryStatus(): this;
    /**
     * Grants permission to invoke UpdateKnowledgeItemConfiguration on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateKnowledgeItemConfiguration(): this;
    /**
     * Grants permission to invoke UpdateKnowledgeItemStatus on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateKnowledgeItemStatus(): this;
    /**
     * Grants permission to invoke UpdateRemediation on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateRemediation(): this;
    /**
     * Grants permission to invoke UpdateRepository on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateRepository(): this;
    /**
     * Grants permission to invoke UpdateSource on AWS Transform custom
     *
     * Access Level: Write
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     */
    toUpdateSource(): this;
    protected accessLevelList: AccessLevelList;
    /**
     * Adds a resource of type analysis to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param analysisId - Identifier for the analysisId.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onAnalysis(analysisId: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type campaign to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param name - Identifier for the name.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onCampaign(name: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type finding to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param findingId - Identifier for the findingId.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onFinding(findingId: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type knowledge-item to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param transformationPackageName - Identifier for the transformationPackageName.
     * @param id - Identifier for the id.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onKnowledgeItem(transformationPackageName: string, id: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type package to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param name - Identifier for the name.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onPackage(name: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type remediation to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param remediationId - Identifier for the remediationId.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onRemediation(remediationId: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type repository to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param repositoryId - Identifier for the repositoryId.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onRepository(repositoryId: string, account?: string, region?: string, partition?: string): this;
    /**
     * Adds a resource of type source to the statement
     *
     * https://docs.aws.amazon.com/transform/latest/userguide/custom.html
     *
     * @param name - Identifier for the name.
     * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
     * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
     * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
     *
     * Possible conditions:
     * - .ifAwsResourceTag()
     */
    onSource(name: string, account?: string, region?: string, partition?: string): this;
    /**
     * Filters access by the tags that are passed in the request
     *
     * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
     *
     * Applies to actions:
     * - .toBatchCreateFindings()
     * - .toCreateAnalysis()
     * - .toCreateCampaign()
     * - .toCreateRemediation()
     * - .toCreateRepository()
     * - .toCreateSource()
     * - .toCreateTransformationPackageUrl()
     * - .toTagResource()
     *
     * @param tagKey The tag key to check
     * @param value The value(s) to check
     * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
     */
    ifAwsRequestTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
    /**
     * Filters access by the tags associated with the resource
     *
     * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
     *
     * Applies to actions:
     * - .toBatchCreateFindings()
     * - .toCompleteTransformationPackageUpload()
     * - .toCreateAnalysis()
     * - .toCreateCampaign()
     * - .toCreateRemediation()
     * - .toCreateRepository()
     * - .toCreateSource()
     * - .toCreateTransformationPackageUrl()
     * - .toDeleteAnalysis()
     * - .toDeleteCampaign()
     * - .toDeleteFinding()
     * - .toDeleteKnowledgeItem()
     * - .toDeleteRemediation()
     * - .toDeleteRepository()
     * - .toDeleteSource()
     * - .toDeleteTransformationPackage()
     * - .toExecuteTransformation()
     * - .toGetAnalysis()
     * - .toGetAnalysisArtifactDownloadUrl()
     * - .toGetCampaign()
     * - .toGetFinding()
     * - .toGetKnowledgeItem()
     * - .toGetRemediation()
     * - .toGetRepository()
     * - .toGetSource()
     * - .toGetTransformationPackageUrl()
     * - .toListAnalysisArtifacts()
     * - .toListCampaignRepositories()
     * - .toListTransformationPackageShares()
     * - .toShareTransformationPackage()
     * - .toTagResource()
     * - .toUnshareTransformationPackage()
     * - .toUntagResource()
     * - .toUpdateAnalysis()
     * - .toUpdateCampaign()
     * - .toUpdateCampaignRepositoryStatus()
     * - .toUpdateKnowledgeItemConfiguration()
     * - .toUpdateKnowledgeItemStatus()
     * - .toUpdateRemediation()
     * - .toUpdateRepository()
     * - .toUpdateSource()
     *
     * Applies to resource types:
     * - analysis
     * - campaign
     * - finding
     * - knowledge-item
     * - package
     * - remediation
     * - repository
     * - source
     *
     * @param tagKey The tag key to check
     * @param value The value(s) to check
     * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
     */
    ifAwsResourceTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
    /**
     * Filters access by the tag keys that are passed in the request
     *
     * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
     *
     * Applies to actions:
     * - .toBatchCreateFindings()
     * - .toCreateAnalysis()
     * - .toCreateCampaign()
     * - .toCreateRemediation()
     * - .toCreateRepository()
     * - .toCreateSource()
     * - .toCreateTransformationPackageUrl()
     * - .toTagResource()
     * - .toUntagResource()
     *
     * @param value The value(s) to check
     * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
     */
    ifAwsTagKeys(value: string | string[], operator?: Operator | string): this;
    /**
     * Statement provider for service [transform-custom](https://docs.aws.amazon.com/service-authorization/latest/reference/list_transform-custom.html).
     *
     */
    constructor(props?: iam.PolicyStatementProps);
}
