import type { AgentContext } from '@credo-ts/core'; import type { ThresholdSessionStatus } from './ThresholdSessionRecord'; import { EventEmitter, Repository, StorageService } from '@credo-ts/core'; import { ThresholdSessionRecord } from './ThresholdSessionRecord'; export declare class ThresholdSessionRepository extends Repository { constructor(storageService: StorageService, eventEmitter: EventEmitter); /** * Find session by session ID */ findBySessionId(agentContext: AgentContext, sessionId: string): Promise; /** * Get session by session ID (throws if not found) */ getBySessionId(agentContext: AgentContext, sessionId: string): Promise; /** * Find all sessions for a vault */ findByVaultId(agentContext: AgentContext, vaultId: string): Promise; /** * Find sessions by status */ findByStatus(agentContext: AgentContext, status: ThresholdSessionStatus): Promise; /** * Find active (pending) sessions for a vault */ findActiveSessions(agentContext: AgentContext, vaultId: string): Promise; /** * Find sessions initiated by a specific DID */ findByInitiator(agentContext: AgentContext, initiatedBy: string): Promise; /** * Delete expired sessions */ deleteExpiredSessions(agentContext: AgentContext): Promise; }