| from __future__ import annotations | |
| from typing import Callable | |
| class A[T, *Ts, **P]: | |
| x: T | |
| y: tuple[*Ts] | |
| z: Callable[P, str] | |
| class B[T, *Ts, **P]: | |
| T = int | |
| Ts = str | |
| P = bytes | |
| x: T | |
| y: Ts | |
| z: P | |
| def generic_function[T, *Ts, **P]( | |
| x: T, *y: *Ts, z: P.args, zz: P.kwargs | |
| ) -> None: ... |