import type { ArkmeSessionCredentials, ArkmeSessionStore } from '../keychain-store.js'; export interface SessionTransitionObserver { prepare(previous: ArkmeSessionCredentials | undefined, next: ArkmeSessionCredentials | undefined): Promise; committed(ticket: Ticket): void; rolledBack(ticket: Ticket): void; } /** Adds principal-change observation without teaching the auth service about managed OpenAPI credentials. */ export declare class ObservedArkmeSessionStore implements ArkmeSessionStore { private readonly inner; private observer; private mutations; constructor(inner: ArkmeSessionStore); attach(observer: SessionTransitionObserver): void; read(): Promise; write(session: ArkmeSessionCredentials): Promise; delete(): Promise; private mutate; } //# sourceMappingURL=session-observer.d.ts.map