Rect: {
    x: number;
    y: number;
    width: number;
    height: number;
}

represents a 2d rectangle. compatible with DOMRect, without its inherited annoying readonly fields