def validate_image_size(output_size: ImageSizeType) -> tuple[int, int]:
if not isinstance(output_size, (int, tuple)):
raise InvalidTypeError(
input_value=output_size,
allowed_types=ImageSizeType,
message="Argument output_size must be an int or a tuple.",
)
if isinstance(output_size, int):
output_size = (output_size, output_size)
elif len(output_size) != 2 or not all([isinstance(el, int) for el in output_size]):
raise InvalidInputError(
input_value=output_size,
message="Argument output_size tuple must have 2 elements and contain only integers.",
)
return output_size