nodepyx 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +399 -0
- package/binding.gyp +73 -0
- package/dist/core/PyCallable.d.ts +65 -0
- package/dist/core/PyCallable.d.ts.map +1 -0
- package/dist/core/PyCallable.js +109 -0
- package/dist/core/PyCallable.js.map +1 -0
- package/dist/core/PyContext.d.ts +76 -0
- package/dist/core/PyContext.d.ts.map +1 -0
- package/dist/core/PyContext.js +228 -0
- package/dist/core/PyContext.js.map +1 -0
- package/dist/core/PyIterator.d.ts +84 -0
- package/dist/core/PyIterator.d.ts.map +1 -0
- package/dist/core/PyIterator.js +243 -0
- package/dist/core/PyIterator.js.map +1 -0
- package/dist/core/PyModule.d.ts +55 -0
- package/dist/core/PyModule.d.ts.map +1 -0
- package/dist/core/PyModule.js +172 -0
- package/dist/core/PyModule.js.map +1 -0
- package/dist/core/PyProxy.d.ts +65 -0
- package/dist/core/PyProxy.d.ts.map +1 -0
- package/dist/core/PyProxy.js +483 -0
- package/dist/core/PyProxy.js.map +1 -0
- package/dist/core/PyRuntime.d.ts +105 -0
- package/dist/core/PyRuntime.d.ts.map +1 -0
- package/dist/core/PyRuntime.js +438 -0
- package/dist/core/PyRuntime.js.map +1 -0
- package/dist/env/CondaManager.d.ts +118 -0
- package/dist/env/CondaManager.d.ts.map +1 -0
- package/dist/env/CondaManager.js +401 -0
- package/dist/env/CondaManager.js.map +1 -0
- package/dist/env/PackageInstaller.d.ts +233 -0
- package/dist/env/PackageInstaller.d.ts.map +1 -0
- package/dist/env/PackageInstaller.js +609 -0
- package/dist/env/PackageInstaller.js.map +1 -0
- package/dist/env/PythonDetector.d.ts +103 -0
- package/dist/env/PythonDetector.d.ts.map +1 -0
- package/dist/env/PythonDetector.js +381 -0
- package/dist/env/PythonDetector.js.map +1 -0
- package/dist/env/VenvManager.d.ts +117 -0
- package/dist/env/VenvManager.d.ts.map +1 -0
- package/dist/env/VenvManager.js +331 -0
- package/dist/env/VenvManager.js.map +1 -0
- package/dist/index.d.ts +169 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +393 -0
- package/dist/index.js.map +1 -0
- package/dist/plugins/Plugin.interface.d.ts +41 -0
- package/dist/plugins/Plugin.interface.d.ts.map +1 -0
- package/dist/plugins/Plugin.interface.js +12 -0
- package/dist/plugins/Plugin.interface.js.map +1 -0
- package/dist/plugins/PluginManager.d.ts +26 -0
- package/dist/plugins/PluginManager.d.ts.map +1 -0
- package/dist/plugins/PluginManager.js +174 -0
- package/dist/plugins/PluginManager.js.map +1 -0
- package/dist/plugins/builtin/NumpyPlugin.d.ts +17 -0
- package/dist/plugins/builtin/NumpyPlugin.d.ts.map +1 -0
- package/dist/plugins/builtin/NumpyPlugin.js +41 -0
- package/dist/plugins/builtin/NumpyPlugin.js.map +1 -0
- package/dist/plugins/builtin/PandasPlugin.d.ts +19 -0
- package/dist/plugins/builtin/PandasPlugin.d.ts.map +1 -0
- package/dist/plugins/builtin/PandasPlugin.js +57 -0
- package/dist/plugins/builtin/PandasPlugin.js.map +1 -0
- package/dist/plugins/builtin/TorchPlugin.d.ts +23 -0
- package/dist/plugins/builtin/TorchPlugin.d.ts.map +1 -0
- package/dist/plugins/builtin/TorchPlugin.js +50 -0
- package/dist/plugins/builtin/TorchPlugin.js.map +1 -0
- package/dist/plugins/index.d.ts +7 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +12 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/serialization/DataFrameBridge.d.ts +141 -0
- package/dist/serialization/DataFrameBridge.d.ts.map +1 -0
- package/dist/serialization/DataFrameBridge.js +355 -0
- package/dist/serialization/DataFrameBridge.js.map +1 -0
- package/dist/serialization/MsgPackSerializer.d.ts +45 -0
- package/dist/serialization/MsgPackSerializer.d.ts.map +1 -0
- package/dist/serialization/MsgPackSerializer.js +242 -0
- package/dist/serialization/MsgPackSerializer.js.map +1 -0
- package/dist/serialization/NumpyBridge.d.ts +96 -0
- package/dist/serialization/NumpyBridge.d.ts.map +1 -0
- package/dist/serialization/NumpyBridge.js +323 -0
- package/dist/serialization/NumpyBridge.js.map +1 -0
- package/dist/serialization/Serializer.d.ts +78 -0
- package/dist/serialization/Serializer.d.ts.map +1 -0
- package/dist/serialization/Serializer.js +281 -0
- package/dist/serialization/Serializer.js.map +1 -0
- package/dist/types/PythonTypeMapper.d.ts +87 -0
- package/dist/types/PythonTypeMapper.d.ts.map +1 -0
- package/dist/types/PythonTypeMapper.js +449 -0
- package/dist/types/PythonTypeMapper.js.map +1 -0
- package/dist/types/StubCache.d.ts +109 -0
- package/dist/types/StubCache.d.ts.map +1 -0
- package/dist/types/StubCache.js +333 -0
- package/dist/types/StubCache.js.map +1 -0
- package/dist/types/TypeGenerator.d.ts +139 -0
- package/dist/types/TypeGenerator.d.ts.map +1 -0
- package/dist/types/TypeGenerator.js +372 -0
- package/dist/types/TypeGenerator.js.map +1 -0
- package/dist/types/addon.d.ts +114 -0
- package/dist/types/addon.d.ts.map +1 -0
- package/dist/types/addon.js +32 -0
- package/dist/types/addon.js.map +1 -0
- package/dist/types/config.d.ts +175 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/config.js +35 -0
- package/dist/types/config.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +12 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/python.d.ts +235 -0
- package/dist/types/python.d.ts.map +1 -0
- package/dist/types/python.js +7 -0
- package/dist/types/python.js.map +1 -0
- package/dist/utils/ErrorTranslator.d.ts +83 -0
- package/dist/utils/ErrorTranslator.d.ts.map +1 -0
- package/dist/utils/ErrorTranslator.js +210 -0
- package/dist/utils/ErrorTranslator.js.map +1 -0
- package/dist/utils/Logger.d.ts +27 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +115 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/MemoryMonitor.d.ts +44 -0
- package/dist/utils/MemoryMonitor.d.ts.map +1 -0
- package/dist/utils/MemoryMonitor.js +143 -0
- package/dist/utils/MemoryMonitor.js.map +1 -0
- package/package.json +177 -0
- package/python/error_handler.py +433 -0
- package/python/nodepyx_runtime.py +575 -0
- package/python/serializer.py +379 -0
- package/python/type_inspector.py +288 -0
- package/scripts/build-native.js +68 -0
- package/scripts/download-prebuilds.js +99 -0
- package/scripts/generate-stubs.js +405 -0
- package/scripts/install.js +260 -0
- package/src/core/PyCallable.ts +137 -0
- package/src/core/PyContext.ts +296 -0
- package/src/core/PyIterator.ts +294 -0
- package/src/core/PyModule.ts +194 -0
- package/src/core/PyProxy.ts +605 -0
- package/src/core/PyRuntime.ts +504 -0
- package/src/env/CondaManager.ts +451 -0
- package/src/env/PackageInstaller.ts +738 -0
- package/src/env/PythonDetector.ts +414 -0
- package/src/env/VenvManager.ts +396 -0
- package/src/index.ts +425 -0
- package/src/native/gil_guard.cpp +26 -0
- package/src/native/gil_guard.h +175 -0
- package/src/native/nodepyx_addon.cpp +886 -0
- package/src/native/python_bridge.cpp +790 -0
- package/src/native/python_bridge.h +257 -0
- package/src/native/thread_pool.cpp +336 -0
- package/src/native/thread_pool.h +175 -0
- package/src/native/type_converter.cpp +901 -0
- package/src/native/type_converter.h +272 -0
- package/src/nextjs/PyProvider.tsx +123 -0
- package/src/nextjs/index.ts +21 -0
- package/src/nextjs/usePython.ts +106 -0
- package/src/nextjs/withnodepyx.ts +88 -0
- package/src/plugins/Plugin.interface.ts +51 -0
- package/src/plugins/PluginManager.ts +155 -0
- package/src/plugins/builtin/NumpyPlugin.ts +36 -0
- package/src/plugins/builtin/PandasPlugin.ts +49 -0
- package/src/plugins/builtin/TorchPlugin.ts +56 -0
- package/src/plugins/index.ts +7 -0
- package/src/serialization/DataFrameBridge.ts +398 -0
- package/src/serialization/MsgPackSerializer.ts +220 -0
- package/src/serialization/NumpyBridge.ts +332 -0
- package/src/serialization/Serializer.ts +320 -0
- package/src/types/PythonTypeMapper.ts +495 -0
- package/src/types/StubCache.ts +340 -0
- package/src/types/TypeGenerator.ts +491 -0
- package/src/types/addon.ts +170 -0
- package/src/types/config.ts +226 -0
- package/src/types/index.ts +55 -0
- package/src/types/python.ts +309 -0
- package/src/types/stubs/numpy.d.ts +441 -0
- package/src/types/stubs/pandas.d.ts +575 -0
- package/src/types/stubs/sklearn.d.ts +728 -0
- package/src/types/stubs/torch.d.ts +694 -0
- package/src/utils/ErrorTranslator.ts +220 -0
- package/src/utils/Logger.ts +119 -0
- package/src/utils/MemoryMonitor.ts +175 -0
|
@@ -0,0 +1,441 @@
|
|
|
1
|
+
// =============================================================
|
|
2
|
+
// nodepyx — Pre-built TypeScript stub for numpy
|
|
3
|
+
// Version: 1.x / 2.x
|
|
4
|
+
// Source: https://numpy.org
|
|
5
|
+
// =============================================================
|
|
6
|
+
|
|
7
|
+
import type { PyProxy } from 'nodepyx';
|
|
8
|
+
|
|
9
|
+
declare module 'nodepyx/numpy' {
|
|
10
|
+
|
|
11
|
+
// ── TypedArray alias ──────────────────────────────────────────────────────
|
|
12
|
+
|
|
13
|
+
export type NDArray =
|
|
14
|
+
| Float32Array
|
|
15
|
+
| Float64Array
|
|
16
|
+
| Int8Array
|
|
17
|
+
| Int16Array
|
|
18
|
+
| Int32Array
|
|
19
|
+
| BigInt64Array
|
|
20
|
+
| Uint8Array
|
|
21
|
+
| Uint16Array
|
|
22
|
+
| Uint32Array
|
|
23
|
+
| BigUint64Array;
|
|
24
|
+
|
|
25
|
+
// ── ndarray class ─────────────────────────────────────────────────────────
|
|
26
|
+
|
|
27
|
+
export class ndarray {
|
|
28
|
+
constructor(shape: number[], dtype?: string, buffer?: ArrayBuffer, strides?: number[]);
|
|
29
|
+
|
|
30
|
+
readonly shape: Promise<number[]>;
|
|
31
|
+
readonly dtype: Promise<string>;
|
|
32
|
+
readonly ndim: Promise<number>;
|
|
33
|
+
readonly size: Promise<number>;
|
|
34
|
+
readonly nbytes: Promise<number>;
|
|
35
|
+
readonly itemsize: Promise<number>;
|
|
36
|
+
readonly strides: Promise<number[]>;
|
|
37
|
+
readonly T: Promise<NDArray>;
|
|
38
|
+
readonly flat: PyProxy;
|
|
39
|
+
readonly real: Promise<NDArray>;
|
|
40
|
+
readonly imag: Promise<NDArray>;
|
|
41
|
+
|
|
42
|
+
// Conversion
|
|
43
|
+
tolist(): Promise<unknown[]>;
|
|
44
|
+
tobytes(order?: 'C' | 'F'): Promise<Uint8Array>;
|
|
45
|
+
astype(dtype: string, order?: string, copy?: boolean): Promise<NDArray>;
|
|
46
|
+
copy(order?: 'C' | 'F'): Promise<NDArray>;
|
|
47
|
+
flatten(order?: 'C' | 'F'): Promise<NDArray>;
|
|
48
|
+
ravel(order?: 'C' | 'F'): Promise<NDArray>;
|
|
49
|
+
reshape(...shape: number[]): Promise<NDArray>;
|
|
50
|
+
resize(new_shape: number | number[]): Promise<void>;
|
|
51
|
+
squeeze(axis?: number | number[]): Promise<NDArray>;
|
|
52
|
+
transpose(...axes: number[]): Promise<NDArray>;
|
|
53
|
+
|
|
54
|
+
// Reduction
|
|
55
|
+
sum(axis?: number | number[], dtype?: string, keepdims?: boolean): Promise<number | NDArray>;
|
|
56
|
+
mean(axis?: number | number[], dtype?: string, keepdims?: boolean): Promise<number | NDArray>;
|
|
57
|
+
std(axis?: number | number[], dtype?: string, ddof?: number, keepdims?: boolean): Promise<number | NDArray>;
|
|
58
|
+
var(axis?: number | number[], dtype?: string, ddof?: number): Promise<number | NDArray>;
|
|
59
|
+
min(axis?: number | number[], keepdims?: boolean): Promise<number | NDArray>;
|
|
60
|
+
max(axis?: number | number[], keepdims?: boolean): Promise<number | NDArray>;
|
|
61
|
+
argmin(axis?: number): Promise<number | NDArray>;
|
|
62
|
+
argmax(axis?: number): Promise<number | NDArray>;
|
|
63
|
+
cumsum(axis?: number, dtype?: string): Promise<NDArray>;
|
|
64
|
+
cumprod(axis?: number, dtype?: string): Promise<NDArray>;
|
|
65
|
+
prod(axis?: number | number[], dtype?: string, keepdims?: boolean): Promise<number | NDArray>;
|
|
66
|
+
all(axis?: number | number[], keepdims?: boolean): Promise<boolean | NDArray>;
|
|
67
|
+
any(axis?: number | number[], keepdims?: boolean): Promise<boolean | NDArray>;
|
|
68
|
+
trace(offset?: number, axis1?: number, axis2?: number): Promise<number | NDArray>;
|
|
69
|
+
ptp(axis?: number): Promise<number | NDArray>;
|
|
70
|
+
|
|
71
|
+
// Linear algebra
|
|
72
|
+
dot(b: NDArray | PyProxy): Promise<NDArray | number>;
|
|
73
|
+
cross(b: NDArray | PyProxy, axisa?: number, axisb?: number): Promise<NDArray>;
|
|
74
|
+
|
|
75
|
+
// Search / sort
|
|
76
|
+
argsort(axis?: number, kind?: string): Promise<NDArray>;
|
|
77
|
+
sort(axis?: number, kind?: string): Promise<void>;
|
|
78
|
+
searchsorted(v: number | NDArray, side?: 'left' | 'right'): Promise<number | NDArray>;
|
|
79
|
+
nonzero(): Promise<NDArray[]>;
|
|
80
|
+
where(): Promise<NDArray>;
|
|
81
|
+
|
|
82
|
+
// Item access
|
|
83
|
+
item(...args: number[]): Promise<number | boolean | string>;
|
|
84
|
+
itemset(...args: unknown[]): Promise<void>;
|
|
85
|
+
take(indices: number | number[] | NDArray, axis?: number): Promise<NDArray>;
|
|
86
|
+
put(indices: number | number[], values: number | number[]): Promise<void>;
|
|
87
|
+
choose(choices: NDArray[] | PyProxy): Promise<NDArray>;
|
|
88
|
+
compress(condition: NDArray, axis?: number): Promise<NDArray>;
|
|
89
|
+
diagonal(offset?: number, axis1?: number, axis2?: number): Promise<NDArray>;
|
|
90
|
+
|
|
91
|
+
// Utility
|
|
92
|
+
clip(a_min: number | null, a_max: number | null): Promise<NDArray>;
|
|
93
|
+
round(decimals?: number): Promise<NDArray>;
|
|
94
|
+
conj(): Promise<NDArray>;
|
|
95
|
+
conjugate(): Promise<NDArray>;
|
|
96
|
+
view(dtype?: string): Promise<NDArray>;
|
|
97
|
+
byteswap(): Promise<NDArray>;
|
|
98
|
+
fill(value: number): Promise<void>;
|
|
99
|
+
repeat(repeats: number | number[], axis?: number): Promise<NDArray>;
|
|
100
|
+
tile(reps: number | number[]): Promise<NDArray>;
|
|
101
|
+
|
|
102
|
+
__len__(): Promise<number>;
|
|
103
|
+
[key: string]: unknown;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// ── Array creation ─────────────────────────────────────────────────────────
|
|
107
|
+
|
|
108
|
+
export function array(
|
|
109
|
+
object: unknown[] | NDArray | PyProxy,
|
|
110
|
+
dtype?: string,
|
|
111
|
+
copy?: boolean,
|
|
112
|
+
order?: 'K' | 'A' | 'C' | 'F',
|
|
113
|
+
ndmin?: number,
|
|
114
|
+
): Promise<NDArray>;
|
|
115
|
+
|
|
116
|
+
export function asarray(a: unknown, dtype?: string, order?: 'C' | 'F'): Promise<NDArray>;
|
|
117
|
+
export function ascontiguousarray(a: unknown, dtype?: string): Promise<NDArray>;
|
|
118
|
+
export function asfortranarray(a: unknown, dtype?: string): Promise<NDArray>;
|
|
119
|
+
|
|
120
|
+
export function zeros(shape: number | number[], dtype?: string, order?: 'C' | 'F'): Promise<NDArray>;
|
|
121
|
+
export function ones(shape: number | number[], dtype?: string, order?: 'C' | 'F'): Promise<NDArray>;
|
|
122
|
+
export function empty(shape: number | number[], dtype?: string, order?: 'C' | 'F'): Promise<NDArray>;
|
|
123
|
+
export function full(shape: number | number[], fill_value: number, dtype?: string): Promise<NDArray>;
|
|
124
|
+
export function eye(N: number, M?: number, k?: number, dtype?: string): Promise<NDArray>;
|
|
125
|
+
export function identity(n: number, dtype?: string): Promise<NDArray>;
|
|
126
|
+
export function zeros_like(a: NDArray | PyProxy, dtype?: string): Promise<NDArray>;
|
|
127
|
+
export function ones_like(a: NDArray | PyProxy, dtype?: string): Promise<NDArray>;
|
|
128
|
+
export function empty_like(a: NDArray | PyProxy, dtype?: string): Promise<NDArray>;
|
|
129
|
+
export function full_like(a: NDArray | PyProxy, fill_value: number, dtype?: string): Promise<NDArray>;
|
|
130
|
+
|
|
131
|
+
export function arange(
|
|
132
|
+
start: number,
|
|
133
|
+
stop?: number,
|
|
134
|
+
step?: number,
|
|
135
|
+
dtype?: string,
|
|
136
|
+
): Promise<NDArray>;
|
|
137
|
+
|
|
138
|
+
export function linspace(
|
|
139
|
+
start: number,
|
|
140
|
+
stop: number,
|
|
141
|
+
num?: number,
|
|
142
|
+
endpoint?: boolean,
|
|
143
|
+
retstep?: false,
|
|
144
|
+
dtype?: string,
|
|
145
|
+
): Promise<NDArray>;
|
|
146
|
+
|
|
147
|
+
export function logspace(
|
|
148
|
+
start: number,
|
|
149
|
+
stop: number,
|
|
150
|
+
num?: number,
|
|
151
|
+
endpoint?: boolean,
|
|
152
|
+
base?: number,
|
|
153
|
+
dtype?: string,
|
|
154
|
+
): Promise<NDArray>;
|
|
155
|
+
|
|
156
|
+
export function geomspace(start: number, stop: number, num?: number, endpoint?: boolean, dtype?: string): Promise<NDArray>;
|
|
157
|
+
|
|
158
|
+
export function meshgrid(...xi: NDArray[]): Promise<NDArray[]>;
|
|
159
|
+
export const mgrid: PyProxy;
|
|
160
|
+
export const ogrid: PyProxy;
|
|
161
|
+
|
|
162
|
+
export function fromiter(iterable: PyProxy, dtype: string, count?: number): Promise<NDArray>;
|
|
163
|
+
export function frombuffer(buffer: ArrayBuffer | Uint8Array, dtype?: string, count?: number, offset?: number): Promise<NDArray>;
|
|
164
|
+
export function fromfunction(func: PyProxy | ((...args: unknown[]) => unknown), shape: number[], dtype?: string): Promise<NDArray>;
|
|
165
|
+
|
|
166
|
+
// ── Manipulation ──────────────────────────────────────────────────────────
|
|
167
|
+
|
|
168
|
+
export function reshape(a: NDArray | PyProxy, newshape: number | number[], order?: 'C' | 'F' | 'A'): Promise<NDArray>;
|
|
169
|
+
export function ravel(a: NDArray | PyProxy, order?: 'C' | 'F'): Promise<NDArray>;
|
|
170
|
+
export function flatten(a: NDArray | PyProxy, order?: 'C' | 'F'): Promise<NDArray>;
|
|
171
|
+
export function squeeze(a: NDArray | PyProxy, axis?: number | number[]): Promise<NDArray>;
|
|
172
|
+
export function expand_dims(a: NDArray | PyProxy, axis: number | number[]): Promise<NDArray>;
|
|
173
|
+
export function transpose(a: NDArray | PyProxy, axes?: number[]): Promise<NDArray>;
|
|
174
|
+
export function swapaxes(a: NDArray | PyProxy, axis1: number, axis2: number): Promise<NDArray>;
|
|
175
|
+
export function moveaxis(a: NDArray | PyProxy, source: number | number[], destination: number | number[]): Promise<NDArray>;
|
|
176
|
+
export function rollaxis(a: NDArray | PyProxy, axis: number, start?: number): Promise<NDArray>;
|
|
177
|
+
export function flip(m: NDArray | PyProxy, axis?: number | number[]): Promise<NDArray>;
|
|
178
|
+
export function fliplr(m: NDArray | PyProxy): Promise<NDArray>;
|
|
179
|
+
export function flipud(m: NDArray | PyProxy): Promise<NDArray>;
|
|
180
|
+
export function rot90(m: NDArray | PyProxy, k?: number, axes?: [number, number]): Promise<NDArray>;
|
|
181
|
+
export function roll(a: NDArray | PyProxy, shift: number | number[], axis?: number | number[]): Promise<NDArray>;
|
|
182
|
+
|
|
183
|
+
export function concatenate(a: NDArray[] | PyProxy, axis?: number): Promise<NDArray>;
|
|
184
|
+
export function stack(arrays: NDArray[] | PyProxy, axis?: number): Promise<NDArray>;
|
|
185
|
+
export function vstack(tup: NDArray[] | PyProxy): Promise<NDArray>;
|
|
186
|
+
export function hstack(tup: NDArray[] | PyProxy): Promise<NDArray>;
|
|
187
|
+
export function dstack(tup: NDArray[] | PyProxy): Promise<NDArray>;
|
|
188
|
+
export function block(arrays: unknown[]): Promise<NDArray>;
|
|
189
|
+
export function split(ary: NDArray | PyProxy, indices_or_sections: number | number[], axis?: number): Promise<NDArray[]>;
|
|
190
|
+
export function hsplit(ary: NDArray | PyProxy, indices_or_sections: number | number[]): Promise<NDArray[]>;
|
|
191
|
+
export function vsplit(ary: NDArray | PyProxy, indices_or_sections: number | number[]): Promise<NDArray[]>;
|
|
192
|
+
export function dsplit(ary: NDArray | PyProxy, indices_or_sections: number | number[]): Promise<NDArray[]>;
|
|
193
|
+
export function tile(A: NDArray | PyProxy, reps: number | number[]): Promise<NDArray>;
|
|
194
|
+
export function repeat(a: NDArray | PyProxy, repeats: number | number[], axis?: number): Promise<NDArray>;
|
|
195
|
+
export function delete_(arr: NDArray | PyProxy, obj: number | number[], axis?: number): Promise<NDArray>;
|
|
196
|
+
export function insert(arr: NDArray | PyProxy, obj: number | number[], values: unknown, axis?: number): Promise<NDArray>;
|
|
197
|
+
export function append(arr: NDArray | PyProxy, values: NDArray | PyProxy, axis?: number): Promise<NDArray>;
|
|
198
|
+
export function resize(a: NDArray | PyProxy, new_shape: number | number[]): Promise<NDArray>;
|
|
199
|
+
export function unique(ar: NDArray | PyProxy, return_index?: boolean, return_inverse?: boolean, return_counts?: boolean): Promise<NDArray | [NDArray, NDArray, NDArray, NDArray]>;
|
|
200
|
+
|
|
201
|
+
// ── Mathematics ───────────────────────────────────────────────────────────
|
|
202
|
+
|
|
203
|
+
// Trigonometric
|
|
204
|
+
export function sin(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
205
|
+
export function cos(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
206
|
+
export function tan(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
207
|
+
export function arcsin(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
208
|
+
export function arccos(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
209
|
+
export function arctan(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
210
|
+
export function arctan2(y: NDArray | number | PyProxy, x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
211
|
+
export function sinh(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
212
|
+
export function cosh(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
213
|
+
export function tanh(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
214
|
+
export function deg2rad(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
215
|
+
export function rad2deg(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
216
|
+
|
|
217
|
+
// Exponential / logarithmic
|
|
218
|
+
export function exp(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
219
|
+
export function exp2(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
220
|
+
export function log(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
221
|
+
export function log2(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
222
|
+
export function log10(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
223
|
+
export function log1p(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
224
|
+
export function expm1(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
225
|
+
export function power(x: NDArray | number | PyProxy, y: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
226
|
+
export function sqrt(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
227
|
+
export function cbrt(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
228
|
+
export function square(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
229
|
+
|
|
230
|
+
// Rounding
|
|
231
|
+
export function round_(a: NDArray | number | PyProxy, decimals?: number): Promise<NDArray | number>;
|
|
232
|
+
export function around(a: NDArray | number | PyProxy, decimals?: number): Promise<NDArray | number>;
|
|
233
|
+
export function floor(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
234
|
+
export function ceil(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
235
|
+
export function trunc(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
236
|
+
export function fix(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
237
|
+
|
|
238
|
+
// Arithmetic
|
|
239
|
+
export function add(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
240
|
+
export function subtract(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
241
|
+
export function multiply(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
242
|
+
export function divide(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
243
|
+
export function true_divide(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
244
|
+
export function floor_divide(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
245
|
+
export function mod(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
246
|
+
export function remainder(x1: NDArray | number | PyProxy, x2: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
247
|
+
export function absolute(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
248
|
+
export function abs(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
249
|
+
export function sign(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
250
|
+
export function clip(a: NDArray | PyProxy, a_min: number | null, a_max: number | null): Promise<NDArray>;
|
|
251
|
+
export function negative(x: NDArray | number | PyProxy): Promise<NDArray | number>;
|
|
252
|
+
|
|
253
|
+
// Aggregation
|
|
254
|
+
export function sum(a: NDArray | PyProxy, axis?: number | number[], dtype?: string, keepdims?: boolean): Promise<number | NDArray>;
|
|
255
|
+
export function prod(a: NDArray | PyProxy, axis?: number | number[], dtype?: string): Promise<number | NDArray>;
|
|
256
|
+
export function mean(a: NDArray | PyProxy, axis?: number | number[], dtype?: string, keepdims?: boolean): Promise<number | NDArray>;
|
|
257
|
+
export function std(a: NDArray | PyProxy, axis?: number | number[], dtype?: string, ddof?: number): Promise<number | NDArray>;
|
|
258
|
+
export function var_(a: NDArray | PyProxy, axis?: number | number[], dtype?: string, ddof?: number): Promise<number | NDArray>;
|
|
259
|
+
export function min(a: NDArray | PyProxy, axis?: number | number[]): Promise<number | NDArray>;
|
|
260
|
+
export function max(a: NDArray | PyProxy, axis?: number | number[]): Promise<number | NDArray>;
|
|
261
|
+
export function amin(a: NDArray | PyProxy, axis?: number | number[]): Promise<number | NDArray>;
|
|
262
|
+
export function amax(a: NDArray | PyProxy, axis?: number | number[]): Promise<number | NDArray>;
|
|
263
|
+
export function argmin(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
264
|
+
export function argmax(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
265
|
+
export function cumsum(a: NDArray | PyProxy, axis?: number, dtype?: string): Promise<NDArray>;
|
|
266
|
+
export function cumprod(a: NDArray | PyProxy, axis?: number, dtype?: string): Promise<NDArray>;
|
|
267
|
+
export function diff(a: NDArray | PyProxy, n?: number, axis?: number): Promise<NDArray>;
|
|
268
|
+
export function gradient(f: NDArray | PyProxy, varargs?: NDArray | number): Promise<NDArray | NDArray[]>;
|
|
269
|
+
export function median(a: NDArray | PyProxy, axis?: number, keepdims?: boolean): Promise<number | NDArray>;
|
|
270
|
+
export function average(a: NDArray | PyProxy, axis?: number, weights?: NDArray): Promise<number | NDArray>;
|
|
271
|
+
export function percentile(a: NDArray | PyProxy, q: number | number[], axis?: number): Promise<number | NDArray>;
|
|
272
|
+
export function quantile(a: NDArray | PyProxy, q: number | number[], axis?: number): Promise<number | NDArray>;
|
|
273
|
+
export function nanmean(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
274
|
+
export function nanstd(a: NDArray | PyProxy, axis?: number, ddof?: number): Promise<number | NDArray>;
|
|
275
|
+
export function nansum(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
276
|
+
export function nanmin(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
277
|
+
export function nanmax(a: NDArray | PyProxy, axis?: number): Promise<number | NDArray>;
|
|
278
|
+
|
|
279
|
+
// Comparison
|
|
280
|
+
export function all(a: NDArray | PyProxy, axis?: number, keepdims?: boolean): Promise<boolean | NDArray>;
|
|
281
|
+
export function any(a: NDArray | PyProxy, axis?: number, keepdims?: boolean): Promise<boolean | NDArray>;
|
|
282
|
+
export function equal(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
283
|
+
export function not_equal(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
284
|
+
export function greater(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
285
|
+
export function greater_equal(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
286
|
+
export function less(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
287
|
+
export function less_equal(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
288
|
+
export function isnan(x: NDArray | PyProxy): Promise<NDArray | boolean>;
|
|
289
|
+
export function isinf(x: NDArray | PyProxy): Promise<NDArray | boolean>;
|
|
290
|
+
export function isfinite(x: NDArray | PyProxy): Promise<NDArray | boolean>;
|
|
291
|
+
export function isneginf(x: NDArray | PyProxy): Promise<NDArray | boolean>;
|
|
292
|
+
export function isposinf(x: NDArray | PyProxy): Promise<NDArray | boolean>;
|
|
293
|
+
|
|
294
|
+
// ── Linear Algebra ─────────────────────────────────────────────────────────
|
|
295
|
+
|
|
296
|
+
export namespace linalg {
|
|
297
|
+
export function dot(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<NDArray | number>;
|
|
298
|
+
export function vdot(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<number>;
|
|
299
|
+
export function inner(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<NDArray | number>;
|
|
300
|
+
export function outer(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<NDArray>;
|
|
301
|
+
export function matmul(x1: NDArray | PyProxy, x2: NDArray | PyProxy): Promise<NDArray>;
|
|
302
|
+
export function matrix_power(M: NDArray | PyProxy, n: number): Promise<NDArray>;
|
|
303
|
+
export function tensordot(a: NDArray | PyProxy, b: NDArray | PyProxy, axes?: number | number[][]): Promise<NDArray>;
|
|
304
|
+
|
|
305
|
+
export function det(a: NDArray | PyProxy): Promise<number>;
|
|
306
|
+
export function inv(a: NDArray | PyProxy): Promise<NDArray>;
|
|
307
|
+
export function pinv(a: NDArray | PyProxy, rcond?: number): Promise<NDArray>;
|
|
308
|
+
export function solve(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<NDArray>;
|
|
309
|
+
export function lstsq(a: NDArray | PyProxy, b: NDArray | PyProxy, rcond?: number | null): Promise<[NDArray, NDArray, number, NDArray]>;
|
|
310
|
+
|
|
311
|
+
export function svd(a: NDArray | PyProxy, full_matrices?: boolean, compute_uv?: boolean): Promise<[NDArray, NDArray, NDArray]>;
|
|
312
|
+
export function eig(a: NDArray | PyProxy): Promise<[NDArray, NDArray]>;
|
|
313
|
+
export function eigh(a: NDArray | PyProxy, UPLO?: 'L' | 'U'): Promise<[NDArray, NDArray]>;
|
|
314
|
+
export function eigvals(a: NDArray | PyProxy): Promise<NDArray>;
|
|
315
|
+
export function eigvalsh(a: NDArray | PyProxy, UPLO?: 'L' | 'U'): Promise<NDArray>;
|
|
316
|
+
|
|
317
|
+
export function cholesky(a: NDArray | PyProxy): Promise<NDArray>;
|
|
318
|
+
export function qr(a: NDArray | PyProxy, mode?: 'reduced' | 'complete' | 'r' | 'raw'): Promise<[NDArray, NDArray]>;
|
|
319
|
+
export function norm(x: NDArray | PyProxy, ord?: number | string, axis?: number, keepdims?: boolean): Promise<number | NDArray>;
|
|
320
|
+
export function cond(x: NDArray | PyProxy, p?: number | string): Promise<number>;
|
|
321
|
+
export function matrix_rank(M: NDArray | PyProxy, tol?: number): Promise<number>;
|
|
322
|
+
export function slogdet(a: NDArray | PyProxy): Promise<[number, number]>;
|
|
323
|
+
export function trace(a: NDArray | PyProxy, offset?: number, axis1?: number, axis2?: number): Promise<number | NDArray>;
|
|
324
|
+
export function cross(a: NDArray | PyProxy, b: NDArray | PyProxy): Promise<NDArray>;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
// ── Random module ─────────────────────────────────────────────────────────
|
|
328
|
+
|
|
329
|
+
export namespace random {
|
|
330
|
+
export function seed(seed?: number): Promise<void>;
|
|
331
|
+
export function rand(...d: number[]): Promise<NDArray>;
|
|
332
|
+
export function randn(...d: number[]): Promise<NDArray>;
|
|
333
|
+
export function randint(low: number, high?: number, size?: number | number[], dtype?: string): Promise<NDArray | number>;
|
|
334
|
+
export function random(size?: number | number[]): Promise<NDArray | number>;
|
|
335
|
+
export function uniform(low?: number, high?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
336
|
+
export function normal(loc?: number, scale?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
337
|
+
export function standard_normal(size?: number | number[]): Promise<NDArray | number>;
|
|
338
|
+
export function exponential(scale?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
339
|
+
export function poisson(lam?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
340
|
+
export function binomial(n: number, p: number, size?: number | number[]): Promise<NDArray | number>;
|
|
341
|
+
export function choice(a: number | NDArray | PyProxy, size?: number | number[], replace?: boolean, p?: NDArray): Promise<NDArray | unknown>;
|
|
342
|
+
export function shuffle(x: NDArray | PyProxy): Promise<void>;
|
|
343
|
+
export function permutation(x: number | NDArray | PyProxy): Promise<NDArray>;
|
|
344
|
+
export function multivariate_normal(mean: NDArray | number[], cov: NDArray | number[][], size?: number | number[]): Promise<NDArray>;
|
|
345
|
+
export function beta(a: number, b: number, size?: number | number[]): Promise<NDArray | number>;
|
|
346
|
+
export function gamma(shape: number, scale?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
347
|
+
export function dirichlet(alpha: NDArray | number[], size?: number | number[]): Promise<NDArray>;
|
|
348
|
+
export function get_state(): Promise<PyProxy>;
|
|
349
|
+
export function set_state(state: PyProxy): Promise<void>;
|
|
350
|
+
|
|
351
|
+
export class Generator {
|
|
352
|
+
constructor(bit_generator?: PyProxy);
|
|
353
|
+
random(size?: number | number[]): Promise<NDArray | number>;
|
|
354
|
+
uniform(low?: number, high?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
355
|
+
normal(loc?: number, scale?: number, size?: number | number[]): Promise<NDArray | number>;
|
|
356
|
+
integers(low: number, high?: number, size?: number | number[], dtype?: string): Promise<NDArray | number>;
|
|
357
|
+
choice(a: number | NDArray, size?: number | number[], replace?: boolean): Promise<NDArray | unknown>;
|
|
358
|
+
shuffle(x: NDArray): Promise<void>;
|
|
359
|
+
[key: string]: unknown;
|
|
360
|
+
}
|
|
361
|
+
|
|
362
|
+
export function default_rng(seed?: number | null): Promise<Generator>;
|
|
363
|
+
}
|
|
364
|
+
|
|
365
|
+
// ── FFT ────────────────────────────────────────────────────────────────────
|
|
366
|
+
|
|
367
|
+
export namespace fft {
|
|
368
|
+
export function fft(a: NDArray | PyProxy, n?: number, axis?: number): Promise<NDArray>;
|
|
369
|
+
export function ifft(a: NDArray | PyProxy, n?: number, axis?: number): Promise<NDArray>;
|
|
370
|
+
export function rfft(a: NDArray | PyProxy, n?: number, axis?: number): Promise<NDArray>;
|
|
371
|
+
export function irfft(a: NDArray | PyProxy, n?: number, axis?: number): Promise<NDArray>;
|
|
372
|
+
export function fft2(a: NDArray | PyProxy, s?: [number, number], axes?: [number, number]): Promise<NDArray>;
|
|
373
|
+
export function ifft2(a: NDArray | PyProxy, s?: [number, number], axes?: [number, number]): Promise<NDArray>;
|
|
374
|
+
export function fftn(a: NDArray | PyProxy, s?: number[], axes?: number[]): Promise<NDArray>;
|
|
375
|
+
export function ifftn(a: NDArray | PyProxy, s?: number[], axes?: number[]): Promise<NDArray>;
|
|
376
|
+
export function fftshift(x: NDArray | PyProxy, axes?: number | number[]): Promise<NDArray>;
|
|
377
|
+
export function ifftshift(x: NDArray | PyProxy, axes?: number | number[]): Promise<NDArray>;
|
|
378
|
+
export function fftfreq(n: number, d?: number): Promise<NDArray>;
|
|
379
|
+
export function rfftfreq(n: number, d?: number): Promise<NDArray>;
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
// ── Constants ─────────────────────────────────────────────────────────────
|
|
383
|
+
|
|
384
|
+
export const pi: number;
|
|
385
|
+
export const e: number;
|
|
386
|
+
export const inf: number;
|
|
387
|
+
export const nan: number;
|
|
388
|
+
export const newaxis: null;
|
|
389
|
+
export const __version__: string;
|
|
390
|
+
|
|
391
|
+
// ── dtype objects ─────────────────────────────────────────────────────────
|
|
392
|
+
|
|
393
|
+
export const float32: PyProxy;
|
|
394
|
+
export const float64: PyProxy;
|
|
395
|
+
export const int8: PyProxy;
|
|
396
|
+
export const int16: PyProxy;
|
|
397
|
+
export const int32: PyProxy;
|
|
398
|
+
export const int64: PyProxy;
|
|
399
|
+
export const uint8: PyProxy;
|
|
400
|
+
export const uint16: PyProxy;
|
|
401
|
+
export const uint32: PyProxy;
|
|
402
|
+
export const uint64: PyProxy;
|
|
403
|
+
export const bool_: PyProxy;
|
|
404
|
+
export const complex64: PyProxy;
|
|
405
|
+
export const complex128: PyProxy;
|
|
406
|
+
export const str_: PyProxy;
|
|
407
|
+
export const object_: PyProxy;
|
|
408
|
+
|
|
409
|
+
// ── Indexing helpers ───────────────────────────────────────────────────────
|
|
410
|
+
|
|
411
|
+
export function where(
|
|
412
|
+
condition: NDArray | PyProxy,
|
|
413
|
+
x?: NDArray | number | PyProxy,
|
|
414
|
+
y?: NDArray | number | PyProxy,
|
|
415
|
+
): Promise<NDArray | NDArray[]>;
|
|
416
|
+
|
|
417
|
+
export function nonzero(a: NDArray | PyProxy): Promise<NDArray[]>;
|
|
418
|
+
export function argwhere(a: NDArray | PyProxy): Promise<NDArray>;
|
|
419
|
+
export function flatnonzero(a: NDArray | PyProxy): Promise<NDArray>;
|
|
420
|
+
export function searchsorted(a: NDArray | PyProxy, v: NDArray | number | PyProxy, side?: 'left' | 'right'): Promise<NDArray | number>;
|
|
421
|
+
export function extract(condition: NDArray | PyProxy, arr: NDArray | PyProxy): Promise<NDArray>;
|
|
422
|
+
|
|
423
|
+
// ── Set operations ────────────────────────────────────────────────────────
|
|
424
|
+
|
|
425
|
+
export function union1d(ar1: NDArray | PyProxy, ar2: NDArray | PyProxy): Promise<NDArray>;
|
|
426
|
+
export function intersect1d(ar1: NDArray | PyProxy, ar2: NDArray | PyProxy, assume_unique?: boolean, return_indices?: boolean): Promise<NDArray | [NDArray, NDArray, NDArray]>;
|
|
427
|
+
export function setdiff1d(ar1: NDArray | PyProxy, ar2: NDArray | PyProxy): Promise<NDArray>;
|
|
428
|
+
export function in1d(ar: NDArray | PyProxy, test_elements: NDArray | PyProxy): Promise<NDArray>;
|
|
429
|
+
export function isin(element: NDArray | PyProxy, test_elements: NDArray | PyProxy): Promise<NDArray>;
|
|
430
|
+
|
|
431
|
+
// ── IO ────────────────────────────────────────────────────────────────────
|
|
432
|
+
|
|
433
|
+
export function save(file: string, arr: NDArray | PyProxy): Promise<void>;
|
|
434
|
+
export function savez(file: string, ...arrays: NDArray[]): Promise<void>;
|
|
435
|
+
export function savez_compressed(file: string, ...arrays: NDArray[]): Promise<void>;
|
|
436
|
+
export function load(file: string, mmap_mode?: string): Promise<NDArray | PyProxy>;
|
|
437
|
+
export function savetxt(fname: string, X: NDArray | PyProxy, fmt?: string, delimiter?: string, header?: string): Promise<void>;
|
|
438
|
+
export function loadtxt(fname: string, dtype?: string, delimiter?: string, skiprows?: number, usecols?: number | number[]): Promise<NDArray>;
|
|
439
|
+
export function genfromtxt(fname: string, dtype?: string, delimiter?: string, skip_header?: number, names?: string[]): Promise<NDArray>;
|
|
440
|
+
}
|
|
441
|
+
|