export interface SqlParameter {
    /** The name of the parameter. */
    name?: string;
    /** The value of the parameter. */
    value?: any;
    /** A hint that specifies the correct object type for data type mapping. Possible values are as follows: DATE - The corresponding String parameter value is sent as an object of DATE type to the database.  */
    typeHint?: 'JSON' | 'UUID' | 'TIMESTAMP' | 'DATE' | 'TIME' | 'DECIMAL';
}
export interface ResultSetOptions {
    /** A value that indicates how a field of DECIMAL type is represented in the response. The value of STRING, the default, specifies that it is converted to a String value. The value of DOUBLE_OR_LONG speci */
    decimalReturnType?: 'STRING' | 'DOUBLE_OR_LONG';
    /** A value that indicates how a field of LONG type is represented. Allowed values are LONG and STRING. The default is LONG. Specify STRING if the length or precision of numeric values might cause truncat */
    longReturnType?: 'STRING' | 'LONG';
}
/** The request parameters represent the input of a SQL statement over an array of data. */
export interface BatchExecuteStatementInput {
    /** The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. */
    resourceArn: string;
    /** The ARN of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret. For information about creating the secret, see Create a databa */
    secretArn: string;
    /** The SQL statement to run. Don't include a semicolon (;) at the end of the SQL statement. */
    sql: string;
    /** The name of the database. */
    database?: string;
    /** The parameter set for the batch operation. The SQL statement is executed as many times as the number of parameter sets provided. To execute a SQL statement with no parameters, use one of the following */
    parameterSets?: any[][];
    /** The name of the database schema. Currently, the schema parameter isn't supported. */
    schema?: string;
    /** The identifier of a transaction that was started by using the BeginTransaction operation. Specify the transaction ID of the transaction that you want to include the SQL statement in. If the SQL statem */
    transactionId?: string;
}
/** The request parameters represent the input of a request to start a SQL transaction. */
export interface BeginTransactionInput {
    /** The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. */
    resourceArn: string;
    /** The name or ARN of the secret that enables access to the DB cluster. */
    secretArn: string;
    /** The name of the database. */
    database?: string;
    /** The name of the database schema. */
    schema?: string;
}
/** The request parameters represent the input of a commit transaction request. */
export interface CommitTransactionInput {
    /** The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. */
    resourceArn: string;
    /** The name or ARN of the secret that enables access to the DB cluster. */
    secretArn: string;
    /** The identifier of the transaction to end and commit. */
    transactionId: string;
}
/** The request parameters represent the input of a request to run one or more SQL statements. */
export interface ExecuteSqlInput {
    /** The Amazon Resource Name (ARN) of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret. For information about creating the secr */
    awsSecretStoreArn: string;
    /** The ARN of the Aurora Serverless DB cluster. */
    dbClusterOrInstanceArn: string;
    /** One or more SQL statements to run on the DB cluster. You can separate SQL statements from each other with a semicolon (;). Any valid SQL statement is permitted, including data definition, data manipul */
    sqlStatements: string;
    /** The name of the database. */
    database?: string;
    /** The name of the database schema. */
    schema?: string;
}
/** The request parameters represent the input of a request to run a SQL statement against a database. */
export interface ExecuteStatementInput {
    /** The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. */
    resourceArn: string;
    /** The ARN of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret. For information about creating the secret, see Create a databa */
    secretArn: string;
    /** The SQL statement to run. */
    sql: string;
    /** A value that indicates whether to continue running the statement after the call times out. By default, the statement stops running when the call times out. For DDL statements, we recommend continuing  */
    continueAfterTimeout?: boolean;
    /** The name of the database. */
    database?: string;
    /** A value that indicates whether to format the result set as a single JSON string. This parameter only applies to SELECT statements and is ignored for other types of statements. Allowed values are NONE  */
    formatRecordsAs?: 'NONE' | 'JSON';
    /** A value that indicates whether to include metadata in the results. */
    includeResultMetadata?: boolean;
    /** The parameters for the SQL statement. Array parameters are not supported. */
    parameters?: SqlParameter[];
    /** Options that control how the result set is returned. */
    resultSetOptions?: ResultSetOptions;
    /** The name of the database schema. Currently, the schema parameter isn't supported. */
    schema?: string;
    /** The identifier of a transaction that was started by using the BeginTransaction operation. Specify the transaction ID of the transaction that you want to include the SQL statement in. If the SQL statem */
    transactionId?: string;
}
/** The request parameters represent the input of a request to perform a rollback of a transaction. */
export interface RollbackTransactionInput {
    /** The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. */
    resourceArn: string;
    /** The name or ARN of the secret that enables access to the DB cluster. */
    secretArn: string;
    /** The identifier of the transaction to roll back. */
    transactionId: string;
}
/** RDS Data service binding for Step Functions SDK integrations. */
export declare class RDSData {
    constructor();
    batchExecuteStatement<T>(params: BatchExecuteStatementInput): Promise<T>;
    beginTransaction<T>(params: BeginTransactionInput): Promise<T>;
    commitTransaction<T>(params: CommitTransactionInput): Promise<T>;
    executeSql<T>(params: ExecuteSqlInput): Promise<T>;
    executeStatement<T>(params: ExecuteStatementInput): Promise<T>;
    rollbackTransaction<T>(params: RollbackTransactionInput): Promise<T>;
}
//# sourceMappingURL=RDSData.d.ts.map