```python
def batch_ends(count: int, size: int) -> list:
    """The position of the last entry of each full batch."""
    if count <= 0 or size <= 0:
        raise ValueError("Input values must be positive integers")
    
    ends = []
    start = 0
    while start + size < count:
        ends.append(start)
        start += size
    
    # The last batch might not have a last entry, so we need to check for that case.
    if start < count:
        ends.append(start)
    
    return ends
```