import { DecimalReturnType, LongReturnType, RecordsFormatType, TypeHint, } from "./enums"; export interface BeginTransactionRequest { resourceArn: string | undefined; secretArn: string | undefined; database?: string | undefined; schema?: string | undefined; } export interface BeginTransactionResponse { transactionId?: string | undefined; } export interface ColumnMetadata { name?: string | undefined; type?: number | undefined; typeName?: string | undefined; label?: string | undefined; schemaName?: string | undefined; tableName?: string | undefined; isAutoIncrement?: boolean | undefined; isSigned?: boolean | undefined; isCurrency?: boolean | undefined; isCaseSensitive?: boolean | undefined; nullable?: number | undefined; precision?: number | undefined; scale?: number | undefined; arrayBaseColumnType?: number | undefined; } export interface CommitTransactionRequest { resourceArn: string | undefined; secretArn: string | undefined; transactionId: string | undefined; } export interface CommitTransactionResponse { transactionStatus?: string | undefined; } export interface ExecuteSqlRequest { dbClusterOrInstanceArn: string | undefined; awsSecretStoreArn: string | undefined; sqlStatements: string | undefined; database?: string | undefined; schema?: string | undefined; } export interface ResultSetMetadata { columnCount?: number | undefined; columnMetadata?: ColumnMetadata[] | undefined; } export interface ResultSetOptions { decimalReturnType?: DecimalReturnType | undefined; longReturnType?: LongReturnType | undefined; } export interface RollbackTransactionRequest { resourceArn: string | undefined; secretArn: string | undefined; transactionId: string | undefined; } export interface RollbackTransactionResponse { transactionStatus?: string | undefined; } export type ArrayValue = | ArrayValue.ArrayValuesMember | ArrayValue.BooleanValuesMember | ArrayValue.DoubleValuesMember | ArrayValue.LongValuesMember | ArrayValue.StringValuesMember | ArrayValue.$UnknownMember; export declare namespace ArrayValue { interface BooleanValuesMember { booleanValues: boolean[]; longValues?: never; doubleValues?: never; stringValues?: never; arrayValues?: never; $unknown?: never; } interface LongValuesMember { booleanValues?: never; longValues: number[]; doubleValues?: never; stringValues?: never; arrayValues?: never; $unknown?: never; } interface DoubleValuesMember { booleanValues?: never; longValues?: never; doubleValues: number[]; stringValues?: never; arrayValues?: never; $unknown?: never; } interface StringValuesMember { booleanValues?: never; longValues?: never; doubleValues?: never; stringValues: string[]; arrayValues?: never; $unknown?: never; } interface ArrayValuesMember { booleanValues?: never; longValues?: never; doubleValues?: never; stringValues?: never; arrayValues: ArrayValue[]; $unknown?: never; } interface $UnknownMember { booleanValues?: never; longValues?: never; doubleValues?: never; stringValues?: never; arrayValues?: never; $unknown: [string, any]; } interface Visitor { booleanValues: (value: boolean[]) => T; longValues: (value: number[]) => T; doubleValues: (value: number[]) => T; stringValues: (value: string[]) => T; arrayValues: (value: ArrayValue[]) => T; _: (name: string, value: any) => T; } } export type Field = | Field.ArrayValueMember | Field.BlobValueMember | Field.BooleanValueMember | Field.DoubleValueMember | Field.IsNullMember | Field.LongValueMember | Field.StringValueMember | Field.$UnknownMember; export declare namespace Field { interface IsNullMember { isNull: boolean; booleanValue?: never; longValue?: never; doubleValue?: never; stringValue?: never; blobValue?: never; arrayValue?: never; $unknown?: never; } interface BooleanValueMember { isNull?: never; booleanValue: boolean; longValue?: never; doubleValue?: never; stringValue?: never; blobValue?: never; arrayValue?: never; $unknown?: never; } interface LongValueMember { isNull?: never; booleanValue?: never; longValue: number; doubleValue?: never; stringValue?: never; blobValue?: never; arrayValue?: never; $unknown?: never; } interface DoubleValueMember { isNull?: never; booleanValue?: never; longValue?: never; doubleValue: number; stringValue?: never; blobValue?: never; arrayValue?: never; $unknown?: never; } interface StringValueMember { isNull?: never; booleanValue?: never; longValue?: never; doubleValue?: never; stringValue: string; blobValue?: never; arrayValue?: never; $unknown?: never; } interface BlobValueMember { isNull?: never; booleanValue?: never; longValue?: never; doubleValue?: never; stringValue?: never; blobValue: Uint8Array; arrayValue?: never; $unknown?: never; } interface ArrayValueMember { isNull?: never; booleanValue?: never; longValue?: never; doubleValue?: never; stringValue?: never; blobValue?: never; arrayValue: ArrayValue; $unknown?: never; } interface $UnknownMember { isNull?: never; booleanValue?: never; longValue?: never; doubleValue?: never; stringValue?: never; blobValue?: never; arrayValue?: never; $unknown: [string, any]; } interface Visitor { isNull: (value: boolean) => T; booleanValue: (value: boolean) => T; longValue: (value: number) => T; doubleValue: (value: number) => T; stringValue: (value: string) => T; blobValue: (value: Uint8Array) => T; arrayValue: (value: ArrayValue) => T; _: (name: string, value: any) => T; } } export interface SqlParameter { name?: string | undefined; value?: Field | undefined; typeHint?: TypeHint | undefined; } export interface UpdateResult { generatedFields?: Field[] | undefined; } export type Value = | Value.ArrayValuesMember | Value.BigIntValueMember | Value.BitValueMember | Value.BlobValueMember | Value.DoubleValueMember | Value.IntValueMember | Value.IsNullMember | Value.RealValueMember | Value.StringValueMember | Value.StructValueMember | Value.$UnknownMember; export declare namespace Value { interface IsNullMember { isNull: boolean; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface BitValueMember { isNull?: never; bitValue: boolean; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface BigIntValueMember { isNull?: never; bitValue?: never; bigIntValue: number; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface IntValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue: number; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface DoubleValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue: number; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface RealValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue: number; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface StringValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue: string; blobValue?: never; arrayValues?: never; structValue?: never; $unknown?: never; } interface BlobValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue: Uint8Array; arrayValues?: never; structValue?: never; $unknown?: never; } interface ArrayValuesMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues: Value[]; structValue?: never; $unknown?: never; } interface StructValueMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue: StructValue; $unknown?: never; } interface $UnknownMember { isNull?: never; bitValue?: never; bigIntValue?: never; intValue?: never; doubleValue?: never; realValue?: never; stringValue?: never; blobValue?: never; arrayValues?: never; structValue?: never; $unknown: [string, any]; } interface Visitor { isNull: (value: boolean) => T; bitValue: (value: boolean) => T; bigIntValue: (value: number) => T; intValue: (value: number) => T; doubleValue: (value: number) => T; realValue: (value: number) => T; stringValue: (value: string) => T; blobValue: (value: Uint8Array) => T; arrayValues: (value: Value[]) => T; structValue: (value: StructValue) => T; _: (name: string, value: any) => T; } } export interface ExecuteStatementRequest { resourceArn: string | undefined; secretArn: string | undefined; sql: string | undefined; database?: string | undefined; schema?: string | undefined; parameters?: SqlParameter[] | undefined; transactionId?: string | undefined; includeResultMetadata?: boolean | undefined; continueAfterTimeout?: boolean | undefined; resultSetOptions?: ResultSetOptions | undefined; formatRecordsAs?: RecordsFormatType | undefined; } export interface StructValue { attributes?: Value[] | undefined; } export interface BatchExecuteStatementRequest { resourceArn: string | undefined; secretArn: string | undefined; sql: string | undefined; database?: string | undefined; schema?: string | undefined; parameterSets?: SqlParameter[][] | undefined; transactionId?: string | undefined; } export interface BatchExecuteStatementResponse { updateResults?: UpdateResult[] | undefined; } export interface _Record { values?: Value[] | undefined; } export interface ExecuteStatementResponse { records?: Field[][] | undefined; columnMetadata?: ColumnMetadata[] | undefined; numberOfRecordsUpdated?: number | undefined; generatedFields?: Field[] | undefined; formattedRecords?: string | undefined; } export interface ResultFrame { resultSetMetadata?: ResultSetMetadata | undefined; records?: _Record[] | undefined; } export interface SqlStatementResult { resultFrame?: ResultFrame | undefined; numberOfRecordsUpdated?: number | undefined; } export interface ExecuteSqlResponse { sqlStatementResults?: SqlStatementResult[] | undefined; }