import * as core from "@terrascript/core";
export interface HumanLoopActivationConditionsConfigArgs extends core.SchemaArgs {
    humanLoopActivationConditions: string | core.StringOut;
}
export declare class HumanLoopActivationConditionsConfig extends core.Schema<HumanLoopActivationConditionsConfigArgs> {
    humanLoopActivationConditions: string | core.StringOut;
}
export interface HumanLoopActivationConfigArgs extends core.SchemaArgs {
    humanLoopActivationConditionsConfig?: HumanLoopActivationConditionsConfig;
}
export declare class HumanLoopActivationConfig extends core.Schema<HumanLoopActivationConfigArgs> {
    humanLoopActivationConditionsConfig?: HumanLoopActivationConditionsConfig;
}
export interface HumanLoopRequestSourceArgs extends core.SchemaArgs {
    awsManagedHumanLoopRequestSource: string | core.StringOut;
}
export declare class HumanLoopRequestSource extends core.Schema<HumanLoopRequestSourceArgs> {
    awsManagedHumanLoopRequestSource: string | core.StringOut;
}
export interface OutputConfigArgs extends core.SchemaArgs {
    kmsKeyId?: string | core.StringOut;
    s3OutputPath: string | core.StringOut;
}
export declare class OutputConfig extends core.Schema<OutputConfigArgs> {
    kmsKeyId?: string | core.StringOut;
    s3OutputPath: string | core.StringOut;
}
export interface AmountInUsdArgs extends core.SchemaArgs {
    cents?: number | core.NumberOut;
    dollars?: number | core.NumberOut;
    tenthFractionsOfACent?: number | core.NumberOut;
}
export declare class AmountInUsd extends core.Schema<AmountInUsdArgs> {
    cents?: number | core.NumberOut;
    dollars?: number | core.NumberOut;
    tenthFractionsOfACent?: number | core.NumberOut;
}
export interface PublicWorkforceTaskPriceArgs extends core.SchemaArgs {
    amountInUsd?: AmountInUsd;
}
export declare class PublicWorkforceTaskPrice extends core.Schema<PublicWorkforceTaskPriceArgs> {
    amountInUsd?: AmountInUsd;
}
export interface HumanLoopConfigArgs extends core.SchemaArgs {
    humanTaskUiArn: string | core.StringOut;
    publicWorkforceTaskPrice?: PublicWorkforceTaskPrice;
    taskAvailabilityLifetimeInSeconds?: number | core.NumberOut;
    taskCount: number | core.NumberOut;
    taskDescription: string | core.StringOut;
    taskKeywords?: core.Array<string> | core.ArrayOut<core.StringOut>;
    taskTimeLimitInSeconds?: number | core.NumberOut;
    taskTitle: string | core.StringOut;
    workteamArn: string | core.StringOut;
}
export declare class HumanLoopConfig extends core.Schema<HumanLoopConfigArgs> {
    humanTaskUiArn: string | core.StringOut;
    publicWorkforceTaskPrice?: PublicWorkforceTaskPrice;
    taskAvailabilityLifetimeInSeconds?: number | core.NumberOut;
    taskCount: number | core.NumberOut;
    taskDescription: string | core.StringOut;
    taskKeywords?: core.Array<string> | core.ArrayOut<core.StringOut>;
    taskTimeLimitInSeconds?: number | core.NumberOut;
    taskTitle: string | core.StringOut;
    workteamArn: string | core.StringOut;
}
export interface FlowDefinitionArgs extends core.ResourceArgs {
    flowDefinitionName: string | core.StringOut;
    humanLoopActivationConfig?: HumanLoopActivationConfig;
    humanLoopConfig: HumanLoopConfig;
    humanLoopRequestSource?: HumanLoopRequestSource;
    outputConfig: OutputConfig;
    roleArn: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
}
export declare class FlowDefinition extends core.Resource<FlowDefinitionArgs> {
    arn: string | core.StringOut;
    flowDefinitionName: string | core.StringOut;
    humanLoopActivationConfig?: HumanLoopActivationConfig;
    humanLoopConfig: HumanLoopConfig;
    humanLoopRequestSource?: HumanLoopRequestSource;
    id: string | core.StringOut;
    outputConfig: OutputConfig;
    roleArn: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    constructor(name: string, args?: FlowDefinitionArgs);
    getNamespace(): string;
}
//# sourceMappingURL=flow_definition.d.ts.map