import { D as Database } from '../index-D90p-4Uh.js';
import { A as AuthConfig, S as Session, U as User } from '../index-Dn-e4r-J.js';
import 'drizzle-orm/node-postgres';
import 'drizzle-orm';
import 'drizzle-orm/pg-core';
import 'pg';
import 'hono';
import '@hono/zod-openapi';
import '@mesob/common';

type SessionCachePayload = {
    session: Session;
    user: User;
};
declare const sessionCacheKey: (config: AuthConfig, hashedToken: string) => string;
declare function readSessionCache(config: AuthConfig, hashedToken: string): Promise<SessionCachePayload | null>;
declare function writeSessionCache(config: AuthConfig, hashedToken: string, payload: SessionCachePayload): Promise<void>;
declare function deleteSessionCacheKeys(config: AuthConfig, hashedTokens: string[]): Promise<void>;
declare function invalidateSessionCacheForHashedToken(config: AuthConfig, hashedToken: string): Promise<void>;
declare function invalidateSessionCacheForUser(config: AuthConfig, database: Database, userId: string, tenantId: string): Promise<void>;

export { type SessionCachePayload, deleteSessionCacheKeys, invalidateSessionCacheForHashedToken, invalidateSessionCacheForUser, readSessionCache, sessionCacheKey, writeSessionCache };
