import { TeradataConnection } from "./teradata-connection";
export declare const BINARY: string;
export declare const DATE: string;
export declare const NUMBER: string;
export declare const STRING: string;
export type Row = any[] | null;
export type Rows = any[];
export declare class TeradataCursor {
    static nInstanceCount: number;
    private nId;
    private desc;
    private rowCount;
    private rowNumber;
    private conn;
    private uRowsHandle;
    private arraySize;
    private bClosed;
    private bInAsyncExecute;
    private lib;
    private logger;
    constructor(connection: TeradataConnection, ffiLib: any);
    get Id(): number;
    get description(): Row;
    get rowcount(): bigint;
    get rownumber(): bigint | null;
    get connection(): TeradataConnection;
    get arraysize(): number;
    set arraysize(value: number);
    callproc(procname: string, parameters?: any[]): void;
    _stopIfInAsyncExecute(): void;
    close(): void;
    _stopIfClosed(): void;
    _closeRows(): void;
    execute(operation: string, parameters?: any[], ignoreErrors?: number | number[] | null): void;
    executemany(procname: string, seqOfParameters: any[] | null, ignoreErrors?: number | number[] | null): void;
    executeAsync(operation: string, parameters?: any[], ignoreErrors?: number | number[] | null): Promise<void>;
    executemanyAsync(procname: string, seqOfParameters: any[] | null, ignoreErrors?: number | number[] | null): Promise<void>;
    fetchone(): Row;
    fetchall(): Rows;
    fetchmany(nDesiredRowCount?: number): Rows;
    nextset(): boolean;
    setinputsizes(sizes: number): void;
    setoutputsize(size: number, column: number): void;
    next(): any[];
    fetchmany_(nDesiredRowCount?: number): any[] | null;
    private _buildBindValues;
    private _createRows;
    private _jsgoPollRows;
    private _pollRows;
    private _buildAbyBindValuesBuffer;
    private _obtainResultMetaData;
    private _deserializeBool;
    private _deserializeBytes;
    private _deserializeCharacterValue;
    private _deserializeDate;
    private _deserializeDouble;
    private _deserializeInt;
    private _deserializeLong;
    private _deserializeNull;
    private _deserializeNumber;
    private _deserializeString;
    private _deserializeTime;
    private _deserializeTimeWithTimeZone;
    private _deserializeTimestamp;
    private _deserializeTimestampWithTimeZone;
}
//# sourceMappingURL=teradata-cursor.d.ts.map