export interface StorageMaintenanceTarget {
  processCleanupQueue(): Promise<{ completed: number; failed: number }>;
  reconcileStartup(): Promise<{ orphaned: number; released_reservations: number }>;
}

export async function runStorageMaintenance(target: StorageMaintenanceTarget) {
  const reconciliation = await target.reconcileStartup();
  const cleanup = await target.processCleanupQueue();
  return { cleanup, reconciliation };
}
