from typing import Any, NamedTuple
import numpy as np
from typing_extensions import assert_type
# Subtype of tuple[int, int]
class XYGrid(NamedTuple):
x_axis: int
y_axis: int
arr: np.ndarray[XYGrid, Any]
# Test shape property matches shape typevar
assert_type(arr.shape, XYGrid)