import { Session } from './session'; import { LoggerFactory } from '../logger/logger-factory'; import { ID, ApiKey } from '../protocol/protocol'; import { Config } from '../config/config'; import { AdditionalHeadersOptions } from '../http/api-headers'; import { Password, Email } from '../spinner/protocol'; import { GuestSession } from './guest-session'; export declare class SessionFactory { private readonly config; private readonly loggerFactory; constructor(config: Config, loggerFactory: LoggerFactory); createWithNewGuest(orgId: ID, options?: AdditionalHeadersOptions): Promise; createWithExistingGuest(orgId: ID, sessionId: ID, apiKey: ApiKey, options?: AdditionalHeadersOptions): Promise; createAsAgent(email: Email, password: Password): Promise; create(sessionId: ID, apiKey: ApiKey, options?: AdditionalHeadersOptions): Session; private createSpinner; private createArtichoke; private createArtichokeApi; private createHttpClient; private createWebsocketClient; private createWebsocketClientUrl; private createCallFactory; }