import { Session } from "./Session";
import { WebServiceProtocol } from "../webservice";
import { SessionContext, SessionContextSettings } from "./connection";
import { AuthenticationProvider } from "./auth";
export declare abstract class AbstractSession implements Session {
    private readonly webServiceProtocol;
    private readonly serverContext;
    private readonly authProvider;
    private readonly basePath;
    private readonly baseUrl;
    constructor(webServiceProtocol: WebServiceProtocol, serverContext: SessionContext, authProvider: AuthenticationProvider);
    getAuthProvider(): AuthenticationProvider;
    getWebServiceProtocol(): WebServiceProtocol;
    getSessionContext(): SessionContextSettings;
    getURL(subPath: string, parameters?: URLSearchParams): URL;
    abstract close(): Promise<void>;
}
