import type { PondoknusaRequest } from '@pondoknusa/http'; import type { SessionStore } from './session.js'; import type { UserProvider } from './user-provider.js'; import type { Authenticatable, AuthConfig, Guard } from './types.js'; type WebResponse = globalThis.Response; export declare class SessionGuard implements Guard { private readonly provider; private readonly store; private readonly sessionConfig; readonly name: string; private session?; private currentUser; private request?; constructor(name: string, provider: UserProvider, store: SessionStore, sessionConfig: AuthConfig['session']); setRequest(request: PondoknusaRequest): void; startSession(): Promise; persistSession(response: WebResponse): Promise; user(): Authenticatable | null; id(): string | number | null; check(): boolean; attempt(credentials: Record): Promise; login(user: Authenticatable): Promise; logout(): Promise; } export {}; //# sourceMappingURL=session-guard.d.ts.map