import type { UserProfile } from "@edenapp/types"; import { CommandRegistry, EdenEmitter, IPCBridge } from "../ipc"; import { ProcessManager } from "../process-manager/ProcessManager"; import { UserManager } from "../user/UserManager"; import { SessionContext } from "./SessionContext"; interface SessionNamespaceEvents { changed: { currentUser: UserProfile | null; previousUsername: string | null; reason: "login" | "logout" | "system"; }; } export declare class SessionManager extends EdenEmitter { private userManager; private processManager; private context; private initialized; private transitionInProgress; constructor(ipcBridge: IPCBridge, commandRegistry: CommandRegistry, userManager: UserManager, processManager: ProcessManager, context: SessionContext); initialize(): Promise; getCurrentUser(): UserProfile | null; login(username: string, password: string): Promise; logout(): Promise; synchronizeUser(user: UserProfile): void; private transitionTo; private runTransition; } export {}; //# sourceMappingURL=SessionManager.d.ts.map