import * as cdk from "aws-cdk-lib";
import * as events from "aws-cdk-lib/aws-events";
import * as sfn from "aws-cdk-lib/aws-stepfunctions";
import { Construct } from "constructs";
import { StateMachineStage, StateMachineStageProps } from "../pipelines/stage";
/**
 * Properties for `RedshiftDataApiStage`.
 */
export interface RedshiftDataApiStageProps extends StateMachineStageProps {
    /**
     * Identifier of the Redshift cluster.
     */
    readonly redshiftClusterIdentifier: string;
    /**
     * List of SQL statements to execute.
     */
    readonly sqlStatements: string[];
    /**
     * Name of the database in Redshift.
     *
     * @default "dev"
     */
    readonly databaseName?: string;
    /**
     * Database user.
     *
     * @default "awsuser"
     */
    readonly databaseUser?: string;
    /**
     * Waiting time between checking whether the statements have finished executing.
     *
     * @default cdk.Duration.seconds(15)
     */
    readonly pollingTime?: cdk.Duration;
}
/**
 * Stage that contains a step function that executes Redshift Data API statements.
 */
export declare class RedshiftDataApiStage extends StateMachineStage {
    readonly targets?: events.IRuleTarget[];
    readonly eventPattern?: events.EventPattern;
    readonly stateMachine: sfn.StateMachine;
    readonly stateMachineInput?: {
        [key: string]: any;
    };
    readonly eventBridgeEventPath?: string;
    /**
     * Constructs `RedshiftDataApiStage`.
     * @param scope Scope within which this construct is defined.
     * @param id Identifier of the stage.
     * @param props Properties for the stage.
     */
    constructor(scope: Construct, id: string, props: RedshiftDataApiStageProps);
}
