|
1 |
| -from scipy._typing import Untyped |
| 1 | +import numpy.typing as npt |
| 2 | +from numpy._typing import _ArrayLikeNumber_co |
| 3 | +from scipy._typing import DCTType, NormalizationMode, Untyped |
2 | 4 |
|
3 | 5 | def dctn(
|
4 | 6 | x: Untyped,
|
5 |
| - type: int = 2, |
| 7 | + type: DCTType = 2, |
6 | 8 | s: Untyped | None = None,
|
7 | 9 | axes: Untyped | None = None,
|
8 |
| - norm: Untyped | None = None, |
| 10 | + norm: NormalizationMode | None = None, |
9 | 11 | overwrite_x: bool = False,
|
10 |
| - workers: Untyped | None = None, |
| 12 | + workers: int | None = None, |
11 | 13 | *,
|
12 |
| - orthogonalize: Untyped | None = None, |
| 14 | + orthogonalize: bool | None = None, |
13 | 15 | ) -> Untyped: ...
|
14 | 16 | def idctn(
|
15 | 17 | x: Untyped,
|
16 |
| - type: int = 2, |
| 18 | + type: DCTType = 2, |
17 | 19 | s: Untyped | None = None,
|
18 | 20 | axes: Untyped | None = None,
|
19 |
| - norm: Untyped | None = None, |
| 21 | + norm: NormalizationMode | None = None, |
20 | 22 | overwrite_x: bool = False,
|
21 |
| - workers: Untyped | None = None, |
22 |
| - orthogonalize: Untyped | None = None, |
| 23 | + workers: int | None = None, |
| 24 | + orthogonalize: bool | None = None, |
23 | 25 | ) -> Untyped: ...
|
24 | 26 | def dstn(
|
25 | 27 | x: Untyped,
|
26 |
| - type: int = 2, |
| 28 | + type: DCTType = 2, |
27 | 29 | s: Untyped | None = None,
|
28 | 30 | axes: Untyped | None = None,
|
29 |
| - norm: Untyped | None = None, |
| 31 | + norm: NormalizationMode | None = None, |
30 | 32 | overwrite_x: bool = False,
|
31 |
| - workers: Untyped | None = None, |
32 |
| - orthogonalize: Untyped | None = None, |
| 33 | + workers: int | None = None, |
| 34 | + orthogonalize: bool | None = None, |
33 | 35 | ) -> Untyped: ...
|
34 | 36 | def idstn(
|
35 | 37 | x: Untyped,
|
36 |
| - type: int = 2, |
| 38 | + type: DCTType = 2, |
37 | 39 | s: Untyped | None = None,
|
38 | 40 | axes: Untyped | None = None,
|
39 |
| - norm: Untyped | None = None, |
| 41 | + norm: NormalizationMode | None = None, |
40 | 42 | overwrite_x: bool = False,
|
41 |
| - workers: Untyped | None = None, |
42 |
| - orthogonalize: Untyped | None = None, |
| 43 | + workers: int | None = None, |
| 44 | + orthogonalize: bool | None = None, |
43 | 45 | ) -> Untyped: ...
|
| 46 | + |
| 47 | +# We could use overloads based on the type of x to get more accurate return type |
| 48 | +# see https://github.com/jorenham/scipy-stubs/pull/118#discussion_r1807957439 |
44 | 49 | def dct(
|
45 |
| - x: Untyped, |
46 |
| - type: int = 2, |
47 |
| - n: Untyped | None = None, |
| 50 | + x: _ArrayLikeNumber_co, |
| 51 | + type: DCTType = 2, |
| 52 | + n: int | None = None, |
48 | 53 | axis: int = -1,
|
49 |
| - norm: Untyped | None = None, |
| 54 | + norm: NormalizationMode | None = None, |
50 | 55 | overwrite_x: bool = False,
|
51 |
| - workers: Untyped | None = None, |
52 |
| - orthogonalize: Untyped | None = None, |
53 |
| -) -> Untyped: ... |
| 56 | + workers: int | None = None, |
| 57 | + orthogonalize: bool | None = None, |
| 58 | +) -> npt.NDArray[Untyped]: ... |
54 | 59 | def idct(
|
55 | 60 | x: Untyped,
|
56 |
| - type: int = 2, |
57 |
| - n: Untyped | None = None, |
| 61 | + type: DCTType = 2, |
| 62 | + n: int | None = None, |
58 | 63 | axis: int = -1,
|
59 |
| - norm: Untyped | None = None, |
| 64 | + norm: NormalizationMode | None = None, |
60 | 65 | overwrite_x: bool = False,
|
61 |
| - workers: Untyped | None = None, |
62 |
| - orthogonalize: Untyped | None = None, |
| 66 | + workers: int | None = None, |
| 67 | + orthogonalize: bool | None = None, |
63 | 68 | ) -> Untyped: ...
|
64 | 69 | def dst(
|
65 | 70 | x: Untyped,
|
66 |
| - type: int = 2, |
67 |
| - n: Untyped | None = None, |
| 71 | + type: DCTType = 2, |
| 72 | + n: int | None = None, |
68 | 73 | axis: int = -1,
|
69 |
| - norm: Untyped | None = None, |
| 74 | + norm: NormalizationMode | None = None, |
70 | 75 | overwrite_x: bool = False,
|
71 |
| - workers: Untyped | None = None, |
72 |
| - orthogonalize: Untyped | None = None, |
| 76 | + workers: int | None = None, |
| 77 | + orthogonalize: bool | None = None, |
73 | 78 | ) -> Untyped: ...
|
74 | 79 | def idst(
|
75 | 80 | x: Untyped,
|
76 |
| - type: int = 2, |
77 |
| - n: Untyped | None = None, |
| 81 | + type: DCTType = 2, |
| 82 | + n: int | None = None, |
78 | 83 | axis: int = -1,
|
79 |
| - norm: Untyped | None = None, |
| 84 | + norm: NormalizationMode | None = None, |
80 | 85 | overwrite_x: bool = False,
|
81 |
| - workers: Untyped | None = None, |
82 |
| - orthogonalize: Untyped | None = None, |
| 86 | + workers: int | None = None, |
| 87 | + orthogonalize: bool | None = None, |
83 | 88 | ) -> Untyped: ...
|
0 commit comments