Type definitions for WebLN
WebLN may be implemented by a lightning browser extension (e.g. Alby) therefore WebLN can already be called directly from the browser if the user has the extension installed. This package simply adds type definitions to make it easier to integrate WebLN into web applications that are written in Typescript.
-
Install package
npm install @webbtc/webln-types --save-dev # or yarn add @webbtc/webln-types --dev
-
Create
webln-types.d.ts
in yoursrc
directory with the following contents to ensure the types are picked up by the Typescript compiler:
/// <reference types="@webbtc/webln-types" />
- Import types from
"@webbtc/webln-types"
import type { GetInfoResponse } from "@webbtc/webln-types";
if (window.webln) {
(async () => {
await window.webln.enable();
const info: GetInfoResponse = await window.webln.getInfo();
console.log("Your node pubkey is", info.node.pubkey);
})();
} else {
console.warn("WebLN not enabled");
}
Read the WebLN Guide