/**
 * Teams Backup Controller
 *
 * HTTP request handlers for the teams backup and restore system.
 * Provides endpoints to check backup status and restore teams from backup.
 *
 * @module controllers/teams-backup/teams-backup.controller
 */
import type { Request, Response, NextFunction } from 'express';
/**
 * GET /api/teams/backup/status
 *
 * Compare current teams data against the backup file.
 * Returns mismatch flag, counts, and timestamp.
 *
 * @param req - Request
 * @param res - Response with TeamsBackupStatus
 * @param next - Next middleware
 */
export declare function getBackupStatus(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * POST /api/teams/backup/restore
 *
 * Restore teams from the backup file. Reads the backup, saves each team
 * via StorageService, and returns the restored count.
 *
 * @param req - Request
 * @param res - Response with restore result
 * @param next - Next middleware
 */
export declare function restoreFromBackup(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * GET /api/teams/backup/history
 *
 * List all populated rotating-snapshot slots, newest first.
 * Used by an admin UI to pick a slot to restore from.
 *
 * @param req - Request
 * @param res - Response with TeamsBackupHistoryEntry[]
 * @param next - Next middleware
 */
export declare function getBackupHistory(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * POST /api/teams/backup/restore/:slot
 *
 * Restore teams from a specific rotating-snapshot slot. Reads the slot,
 * saves each team via StorageService, and returns the restored count.
 *
 * @param req - Request with `slot` URL param (0..MAX_HISTORY_SLOTS-1)
 * @param res - Response with restore result
 * @param next - Next middleware
 */
export declare function restoreFromSlot(req: Request, res: Response, next: NextFunction): Promise<void>;
//# sourceMappingURL=teams-backup.controller.d.ts.map