import { Database } from "../db.js"; export type Platform = "discord" | "telegram" | "slack" | "whatsapp" | "signal" | "sms" | "email" | "matrix" | "web" | "websocket"; interface AllowlistEntry { platform: Platform; userId: string; addedAt: number; note?: string; } export declare function initSecurityStore(): Promise; export declare function generatePairingCode(platform: Platform, userId: string): Promise; export declare function approvePairingCode(code: string): Promise; export declare function listPendingPairingCodes(): Promise>; export declare function revokeUserAccess(platform: Platform, userId: string): Promise; export declare function isUserAllowed(platform: Platform, userId: string): Promise; export declare function addToAllowlist(platform: Platform, userId: string, note?: string): Promise; export declare function listAllowlistedUsers(platform?: Platform): Promise; export declare function checkRateLimit(identifier: string, maxRequests?: number, windowMs?: number): Promise; export declare function cleanupExpiredCodes(): Promise; interface SecurityConfig { allowAll: boolean; requirePairing: boolean; rateLimit: { maxRequests: number; windowMs: number; }; } export declare function setSecurityConfig(config: Partial): void; export {};