import { ILogger } from 'js-logger';
import { AbstractRemote, AbstractRemoteOptions, BSONImplementation, DataStream, RemoteConnector, SyncStreamOptions } from '@powersync/common';
import { TextDecoder } from 'text-encoding';
export declare const STREAMING_POST_TIMEOUT_MS = 30000;
export declare class ReactNativeRemote extends AbstractRemote {
    protected connector: RemoteConnector;
    protected logger: ILogger;
    constructor(connector: RemoteConnector, logger?: ILogger, options?: Partial<AbstractRemoteOptions>);
    getUserAgent(): string;
    getBSON(): Promise<BSONImplementation>;
    protected createTextDecoder(): TextDecoder;
    postStreamRaw<T>(options: SyncStreamOptions, mapLine: (line: string) => T): Promise<DataStream<T>>;
}
