///
import { dom } from "ion-js";
import { ResultReadable } from "./ResultReadable";
import { IOUsage } from "./stats/IOUsage";
import { TimingInformation } from "./stats/TimingInformation";
interface Blob {
}
export type IonBinary = Buffer | Uint8Array | Blob | string;
/**
* A class representing a fully buffered set of results returned from QLDB.
*/
export declare class Result {
private _resultList;
private _ioUsage;
private _timingInformation;
/**
* Creates a Result.
* @param resultList A list of Ion values containing the statement execution's result returned from QLDB.
* @param ioUsage Contains the number of consumed IO requests for the executed statement.
* @param timingInformation Holds server side processing time for the executed statement.
*/
private constructor();
/**
* Static method that creates a Result object by reading and buffering the contents of a ResultReadable.
* @param resultReadable A ResultReadable object to convert to a Result object.
* @returns Promise which fulfills with a Result.
*/
static bufferResultReadable(resultReadable: ResultReadable): Promise;
/**
* Returns the list of results of the statement execution returned from QLDB.
* @returns A list of Ion values which wrap the Ion values returned from the QLDB statement execution.
*/
getResultList(): dom.Value[];
/**
* Returns the number of read IO request for the executed statement.
* @returns IOUsage, containing number of read IOs.
*/
getConsumedIOs(): IOUsage;
/**
* Returns server-side processing time for the executed statement.
* @returns TimingInformation, containing processing time.
*/
getTimingInformation(): TimingInformation;
/**
* Fetches all subsequent Pages given an initial Page, places each value of each Page in an Ion value.
* @param txnId The ID of the transaction the statement was executed in.
* @param executeResult The returned result from the statement execution.
* @param communicator The Communicator used for the statement execution.
* @returns Promise which fulfills with a Result, containing a list of Ion values, representing all the returned
* values of the result set, number of IOs for the request, and the time spent processing the request.
*/
private static _fetchResultPages;
/**
* Helper method that reads a ResultReadable and extracts the results, placing them in an array of Ion values.
* @param resultReadable The ResultReadable to read.
* @returns Promise which fulfills with a list of Ion values, representing all the returned values of the result set.
*/
private static _readResultReadable;
}
export {};