diff --git a/index.d.ts b/index.d.ts new file mode 100644 index 0000000..b7af8bd --- /dev/null +++ b/index.d.ts @@ -0,0 +1,21 @@ +// index.d.ts +declare module 'solar-spa' { + export default function spa( + date: Date, + latitude: number, + longitude: number, + elevation?: number, + temperature?: number, + pressure?: number, + refraction?: number + ): Promise<{ + zenith: number; + azimuth: number; + incidence: number; + sunrise: number; + sunset: number; + solar_noon: number; + sun_transit_alt: number; + }>; + } + \ No newline at end of file diff --git a/package.json b/package.json index 3119f52..f9cec82 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,9 @@ { "name": "solar-spa", - "version": "1.0.0", + "version": "1.1.0", "description": "NREL Solar Position Algorithm (SPA) in WebAssembly", "main": "solar-spa.js", + "types": "index.d.ts", "scripts": { "test": "node test.js" }, diff --git a/solar-spa.js b/solar-spa.js index 5fb72f8..1c06bb9 100644 --- a/solar-spa.js +++ b/solar-spa.js @@ -1,5 +1,11 @@ +// solar-spa.js +const path = require('path'); const spaModule = require('./spa.js'); +// Set the wasm file path +spaModule.locateFile = (filename) => { + return path.join(__dirname, filename); +}; module.exports = function spa( date, latitude,