import { TypeDBDriver } from "../api/connection/TypeDBDriver"; import { TypeDBCredential } from "../api/connection/TypeDBCredential"; import { TypeDBOptions } from "../api/connection/TypeDBOptions"; import { SessionType } from "../api/connection/TypeDBSession"; import { Database } from "../api/connection/database/Database"; import { TypeDBStub } from "../common/rpc/TypeDBStub"; import { RequestTransmitter } from "../stream/RequestTransmitter"; import { UserImpl } from "../user/UserImpl"; import { UserManagerImpl } from "../user/UserManagerImpl"; import { TypeDBDatabaseManagerImpl } from "./TypeDBDatabaseManagerImpl"; import { TypeDBSessionImpl } from "./TypeDBSessionImpl"; export declare class TypeDBDriverImpl implements TypeDBDriver { private _isOpen; private readonly _isCloud; private readonly _initAddresses; private readonly _credential; private _userManager; private readonly _serverDrivers; private readonly _databases; _database_cache: { [db: string]: Database; }; private readonly _sessions; constructor(addresses: string | string[] | Record, credential?: TypeDBCredential); open(): Promise; private openCore; private openCloud; private fetchCloudServerAddresses; isOpen(): boolean; isCloud(): boolean; session(databaseName: string, type: SessionType, options?: TypeDBOptions): Promise; get databases(): TypeDBDatabaseManagerImpl; user(): Promise; get users(): UserManagerImpl; get serverDrivers(): Map; close(): Promise; closeSession(session: TypeDBSessionImpl): void; } export declare class ServerDriver { private readonly _address; private readonly _stub; private readonly _requestTransmitter; constructor(address: string, stub: TypeDBStub); get address(): string; get stub(): TypeDBStub; get transmitter(): RequestTransmitter; close(): void; }