Funkcje
ConstructorParameters
Wydobywa listę parametrów konstruktora jako krotkę.
Czym jest
Konstruktorowy odpowiednik `Parameters`. Dopasowuje sygnaturę `new`, wnioskuje krotkę między nawiasami i zachowuje etykiety parametrów oraz opcjonalność. Przydaje się, gdy fabryka lub rejestr ma przyjmować dokładnie argumenty przechowywanej klasy.
Przykłady
ConstructorParameters<typeof Job>→[id: number, name: string]ConstructorParameters<abstract new (enabled: boolean) => object>
→[enabled: boolean]ConstructorParameters<any>→unknown[]`any` nie dostarcza konkretnej sygnatury konstruktora, więc bezpieczną krotką parametrów jest `unknown[]`.
Każdy rozwinięty typ powyżej wypisał TypeScript 6.0.3, nie ręka człowieka.
Czego nie robi
- Przyjmuje typ wartości konstruktora, zwykle `typeof C`, a nie typ instancji `C`. To dwie strony nazwy klasy.
- Dla przeciążonych konstruktorów widzi ostatnią sygnaturę, a nie unię wszystkich przeciążeń — tak samo jak `Parameters`.
Wniosek
Użyj `typeof C`, aby nazwać konstruktor klasy, a potem `ConstructorParameters`, by odzyskać to, co trafia do `new C(...)`.
