```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("Batch size must be greater than zero.")
    
    ends = []
    start = 0
    while start + size < count:
        ends.append(start)
        start += size
    # The final part-batch has no last entry, so we don't append the end of it.
    return ends
```