export interface NativeNumRsArray { readonly data: Float32Array; shape(): number[]; } export interface NativeTensor { backward(): void; add(other: NativeTensor): NativeTensor; sub(other: NativeTensor): NativeTensor; mul(other: NativeTensor): NativeTensor; div(other: NativeTensor): NativeTensor; matmul(other: NativeTensor): NativeTensor; pow(exponent: number): NativeTensor; neg(): NativeTensor; abs(): NativeTensor; sqrt(): NativeTensor; sin(): NativeTensor; cos(): NativeTensor; exp(): NativeTensor; log(): NativeTensor; relu(): NativeTensor; sigmoid(): NativeTensor; mean(axis?: number): NativeTensor; sum(axis?: number): NativeTensor; mseLoss(target: NativeTensor): NativeTensor; flatten(startDim?: number, endDim?: number): NativeTensor; reshape(shape: number[]): NativeTensor; transpose(dim0?: number, dim1?: number): NativeTensor; assign(other: NativeTensor): void; zeroGrad(): void; backward(): void; detach(): NativeTensor; toString(): string; readonly data: any; readonly grad: NativeTensor | undefined; readonly requiresGrad: boolean; readonly shape: number[]; } export interface NativeOptimizer { step(): void; zeroGrad(): void; } export interface NativeModule { forward(input: NativeTensor): NativeTensor; parameters(): NativeTensor[]; } export interface NativeSequential { addLinear(layer: any): void; addRelu(layer: any): void; addSigmoid(layer: any): void; addConv1D(layer: any): void; addFlatten(layer: any): void; addDropout(layer: any): void; addBatchNorm1D(layer: any): void; addUnsqueeze(dim: number): void; forward(input: NativeTensor): NativeTensor; parameters(): NativeTensor[]; saveOnnx(input: NativeTensor, path: string): void; } export interface NativeLinear { new (inFeatures: number, outFeatures: number): NativeLinear; forward(input: NativeTensor): NativeTensor; parameters(): NativeTensor[]; } export interface NativeConv1d { new (inChannels: number, outChannels: number, kernelSize: number, stride?: number, padding?: number): NativeConv1d; forward(input: NativeTensor): NativeTensor; } export interface NativeFlatten { new (startDim: number, endDim: number): NativeFlatten; forward(input: NativeTensor): NativeTensor; } export interface NativeDropout { new (p: number): NativeDropout; forward(input: NativeTensor): NativeTensor; } export interface NativeBatchNorm1d { new (numFeatures: number): NativeBatchNorm1d; forward(input: NativeTensor): NativeTensor; train(): void; eval(): void; } export interface OptimizerConstructor { new (params: NativeTensor[], ...args: number[]): NativeOptimizer; } export interface NativeMetrics { trainLoss: number; trainAcc?: number; valLoss?: number; valAcc?: number; } export interface NativeDataset { new (inputs: number[][], targets: number[][], batchSize: number): NativeDataset; readonly numBatches: number; } export interface NativeTrainer { fit(trainDataset: NativeDataset, valDataset: NativeDataset | undefined | null, epochs: number, verbose?: boolean): NativeMetrics[]; } export interface NativeTrainerBuilder { new (model: NativeSequential): NativeTrainerBuilder; learningRate(lr: number): NativeTrainerBuilder; build(optimizer: string, loss: string): NativeTrainer; } export interface NativeExports { NumRsArray: any; Tensor: { new (array: any, shape?: number[], requires_grad?: boolean): NativeTensor; fromArray(data: number[], shape?: number[], requires_grad?: boolean): NativeTensor; }; Linear: NativeLinear; ReLu: any; Sigmoid: any; Conv1D: NativeConv1d; Flatten: NativeFlatten; Dropout: NativeDropout; BatchNorm1D: NativeBatchNorm1d; Sequential: { new (): NativeSequential; }; Optimizer: any; Sgd: any; Adam: any; RmSprop: any; Adagrad: any; AdamW: any; Lamb: any; Lbfgs: any; TrainerBuilder: { new (model: any): NativeTrainerBuilder; }; Dataset: { new (inputs: number[][], targets: number[][], batchSize: number): NativeDataset; fromRaw(inputs: Float32Array, inputShape: number[], targets: Float32Array, targetShape: number[], batchSize: number): NativeDataset; }; add: (a: any, b: any) => any; sub: (a: any, b: any) => any; mul: (a: any, b: any) => any; div: (a: any, b: any) => any; matmul: (a: any, b: any) => any; dot: (a: any, b: any) => any; relu: (a: any) => any; sigmoid: (a: any) => any; exp: (a: any) => any; log: (a: any) => any; sqrt: (a: any) => any; abs: (a: any) => any; cos: (a: any) => any; sin: (a: any) => any; tan: (a: any) => any; neg: (a: any) => any; acos: (a: any) => any; asin: (a: any) => any; atan: (a: any) => any; ceil: (a: any) => any; floor: (a: any) => any; round: (a: any) => any; square: (a: any) => any; tanh: (a: any) => any; sum: (a: any) => any; mean: (a: any) => any; max: (a: any, axis?: number) => any; min: (a: any, axis?: number) => any; argmax: (a: any, axis?: number) => any; variance: (a: any, axis?: number) => any; softmax: (a: any, dim?: number) => any; crossEntropy: (input: any, target: any) => any; norm: (a: any) => any; reshape: (a: any, shape: number[]) => any; flatten: (a: any, start?: number, end?: number) => any; transpose: (a: any, d0?: number, d1?: number) => any; broadcastTo: (a: any, shape: number[]) => any; concat: (arrays: any[], axis: number) => any; version: () => string; } export declare const NumRsArray: any, Tensor: { new (array: any, shape?: number[], requires_grad?: boolean): NativeTensor; fromArray(data: number[], shape?: number[], requires_grad?: boolean): NativeTensor; }, version: () => string, Sgd: any, Adam: any, AdamW: any, RmSprop: any, Adagrad: any, Lamb: any, Lbfgs: any, Conv1d: NativeConv1d, BatchNorm1d: NativeBatchNorm1d, ReLU: any; export declare const nn: { Linear: NativeLinear; Sequential: new () => NativeSequential; ReLU: any; Sigmoid: any; Conv1d: NativeConv1d; Flatten: NativeFlatten; Dropout: NativeDropout; BatchNorm1d: NativeBatchNorm1d; }; export declare const optimizers: { SGD: any; Adam: any; AdamW: any; RMSprop: any; Adagrad: any; LAMB: any; LBFGS: any; }; export declare const Linear: NativeLinear; export declare const Sequential: new () => NativeSequential; export declare const Flatten: NativeFlatten; export declare const Dropout: NativeDropout; export declare const Sigmoid: any; export declare const ops: { add: (a: any, b: any) => any; sub: (a: any, b: any) => any; mul: (a: any, b: any) => any; div: (a: any, b: any) => any; matmul: (a: any, b: any) => any; dot: (a: any, b: any) => any; relu: (a: any) => any; sigmoid: (a: any) => any; exp: (a: any) => any; log: (a: any) => any; sqrt: (a: any) => any; abs: (a: any) => any; cos: (a: any) => any; sin: (a: any) => any; tan: (a: any) => any; neg: (a: any) => any; acos: (a: any) => any; asin: (a: any) => any; atan: (a: any) => any; ceil: (a: any) => any; floor: (a: any) => any; round: (a: any) => any; square: (a: any) => any; tanh: (a: any) => any; sum: (a: any) => any; mean: (a: any) => any; max: (a: any, axis?: number) => any; min: (a: any, axis?: number) => any; argmax: (a: any, axis?: number) => any; variance: (a: any, axis?: number) => any; softmax: (a: any, dim?: number) => any; crossEntropy: (input: any, target: any) => any; norm: (a: any) => any; reshape: (a: any, shape: number[]) => any; flatten: (a: any, start?: number, end?: number) => any; transpose: (a: any, d0?: number, d1?: number) => any; broadcastTo: (a: any, shape: number[]) => any; concat: (arrays: any[], axis: number) => any; }; export declare const add: (a: any, b: any) => any; export declare const sub: (a: any, b: any) => any; export declare const mul: (a: any, b: any) => any; export declare const div: (a: any, b: any) => any; export declare const matmul: (a: any, b: any) => any; export declare const dot: (a: any, b: any) => any; export declare const relu: (a: any) => any; export declare const sigmoid: (a: any) => any; export declare const exp: (a: any) => any; export declare const log: (a: any) => any; export declare const sqrt: (a: any) => any; export declare const abs: (a: any) => any; export declare const cos: (a: any) => any; export declare const sin: (a: any) => any; export declare const tan: (a: any) => any; export declare const neg: (a: any) => any; export declare const acos: (a: any) => any; export declare const asin: (a: any) => any; export declare const atan: (a: any) => any; export declare const ceil: (a: any) => any; export declare const floor: (a: any) => any; export declare const round: (a: any) => any; export declare const square: (a: any) => any; export declare const tanh: (a: any) => any; export declare const sum: (a: any) => any; export declare const mean: (a: any) => any; export declare const max: (a: any, axis?: number) => any; export declare const min: (a: any, axis?: number) => any; export declare const argmax: (a: any, axis?: number) => any; export declare const variance: (a: any, axis?: number) => any; export declare const softmax: (a: any, dim?: number) => any; export declare const crossEntropy: (input: any, target: any) => any; export declare const norm: (a: any) => any; export declare const reshape: (a: any, shape: number[]) => any; export declare const flatten: (a: any, start?: number, end?: number) => any; export declare const transpose: (a: any, d0?: number, d1?: number) => any; export declare const broadcastTo: (a: any, shape: number[]) => any; export declare const concat: (arrays: any[], axis: number) => any; export declare const SGD: any; export declare const TrainerBuilder: new (model: any) => NativeTrainerBuilder; export declare const Dataset: { new (inputs: number[][], targets: number[][], batchSize: number): NativeDataset; fromRaw(inputs: Float32Array, inputShape: number[], targets: Float32Array, targetShape: number[], batchSize: number): NativeDataset; }; //# sourceMappingURL=native_loader.d.ts.map