import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Definition of AWS::Omics::Workflow Resource Type
 */
export declare class Workflow extends pulumi.CustomResource {
    /**
     * Get an existing Workflow resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): Workflow;
    /**
     * Returns true if the given object is an instance of Workflow.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is Workflow;
    readonly accelerators: pulumi.Output<enums.omics.WorkflowAccelerators | undefined>;
    /**
     * The ARN for the workflow.
     */
    readonly arn: pulumi.Output<string>;
    /**
     * The workflow's ID.
     */
    readonly awsId: pulumi.Output<string>;
    /**
     * Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see [Container images](https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html) in the *AWS HealthOmics User Guide* .
     */
    readonly containerRegistryMap: pulumi.Output<outputs.omics.WorkflowContainerRegistryMap | undefined>;
    readonly containerRegistryMapUri: pulumi.Output<string | undefined>;
    /**
     * When the workflow was created.
     */
    readonly creationTime: pulumi.Output<string>;
    /**
     * Contains information about a source code repository that hosts the workflow definition files.
     */
    readonly definitionRepository: pulumi.Output<outputs.omics.WorkflowDefinitionRepository | undefined>;
    /**
     * The URI of a definition for the workflow.
     */
    readonly definitionUri: pulumi.Output<string | undefined>;
    /**
     * The parameter's description.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * An engine for the workflow.
     */
    readonly engine: pulumi.Output<enums.omics.WorkflowEngine | undefined>;
    /**
     * The path of the main definition file for the workflow.
     */
    readonly main: pulumi.Output<string | undefined>;
    /**
     * The workflow's name.
     */
    readonly name: pulumi.Output<string | undefined>;
    /**
     * The workflow's parameter template.
     */
    readonly parameterTemplate: pulumi.Output<{
        [key: string]: outputs.omics.WorkflowParameter;
    } | undefined>;
    /**
     * Path to the primary workflow parameter template JSON file inside the repository
     */
    readonly parameterTemplatePath: pulumi.Output<string | undefined>;
    /**
     * The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.
     */
    readonly readmeMarkdown: pulumi.Output<string | undefined>;
    /**
     * The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used.
     */
    readonly readmePath: pulumi.Output<string | undefined>;
    /**
     * The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. The S3 URI must begin with s3://USER-OWNED-BUCKET/. The requester must have access to the S3 bucket and object. The max README content length is 500 KiB.
     */
    readonly readmeUri: pulumi.Output<string | undefined>;
    /**
     * The workflow's status.
     */
    readonly status: pulumi.Output<enums.omics.WorkflowStatus>;
    /**
     * The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. The `storageCapacity` can be overwritten at run time. The storage capacity is not required for runs with a `DYNAMIC` storage type.
     */
    readonly storageCapacity: pulumi.Output<number | undefined>;
    readonly storageType: pulumi.Output<enums.omics.WorkflowStorageType | undefined>;
    /**
     * Tags for the workflow.
     */
    readonly tags: pulumi.Output<{
        [key: string]: string;
    } | undefined>;
    /**
     * The workflow's type.
     */
    readonly type: pulumi.Output<enums.omics.WorkflowType>;
    readonly uuid: pulumi.Output<string>;
    /**
     * Optional workflow bucket owner ID to verify the workflow bucket
     */
    readonly workflowBucketOwnerId: pulumi.Output<string | undefined>;
    /**
     * Create a Workflow resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args?: WorkflowArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Workflow resource.
 */
export interface WorkflowArgs {
    accelerators?: pulumi.Input<enums.omics.WorkflowAccelerators>;
    /**
     * Use a container registry map to specify mappings between the ECR private repository and one or more upstream registries. For more information, see [Container images](https://docs.aws.amazon.com/omics/latest/dev/workflows-ecr.html) in the *AWS HealthOmics User Guide* .
     */
    containerRegistryMap?: pulumi.Input<inputs.omics.WorkflowContainerRegistryMapArgs>;
    containerRegistryMapUri?: pulumi.Input<string>;
    /**
     * Contains information about a source code repository that hosts the workflow definition files.
     */
    definitionRepository?: pulumi.Input<inputs.omics.WorkflowDefinitionRepositoryArgs>;
    /**
     * The URI of a definition for the workflow.
     */
    definitionUri?: pulumi.Input<string>;
    /**
     * The parameter's description.
     */
    description?: pulumi.Input<string>;
    /**
     * An engine for the workflow.
     */
    engine?: pulumi.Input<enums.omics.WorkflowEngine>;
    /**
     * The path of the main definition file for the workflow.
     */
    main?: pulumi.Input<string>;
    /**
     * The workflow's name.
     */
    name?: pulumi.Input<string>;
    /**
     * The workflow's parameter template.
     */
    parameterTemplate?: pulumi.Input<{
        [key: string]: pulumi.Input<inputs.omics.WorkflowParameterArgs>;
    }>;
    /**
     * Path to the primary workflow parameter template JSON file inside the repository
     */
    parameterTemplatePath?: pulumi.Input<string>;
    /**
     * The markdown content for the workflow's README file. This provides documentation and usage information for users of the workflow.
     */
    readmeMarkdown?: pulumi.Input<string>;
    /**
     * The path to the workflow README markdown file within the repository. This file provides documentation and usage information for the workflow. If not specified, the README.md file from the root directory of the repository will be used.
     */
    readmePath?: pulumi.Input<string>;
    /**
     * The S3 URI of the README file for the workflow. This file provides documentation and usage information for the workflow. The S3 URI must begin with s3://USER-OWNED-BUCKET/. The requester must have access to the S3 bucket and object. The max README content length is 500 KiB.
     */
    readmeUri?: pulumi.Input<string>;
    /**
     * The default static storage capacity (in gibibytes) for runs that use this workflow or workflow version. The `storageCapacity` can be overwritten at run time. The storage capacity is not required for runs with a `DYNAMIC` storage type.
     */
    storageCapacity?: pulumi.Input<number>;
    storageType?: pulumi.Input<enums.omics.WorkflowStorageType>;
    /**
     * Tags for the workflow.
     */
    tags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    }>;
    /**
     * Optional workflow bucket owner ID to verify the workflow bucket
     */
    workflowBucketOwnerId?: pulumi.Input<string>;
}
