Skip to content

Welshman Docs / @welshman/signer

@welshman/signer ​

Enumerations ​

Nip46Event ​

Defined in: packages/signer/src/signers/nip46.ts:51

Enumeration Members ​

Receive ​

Receive: "receive"

Defined in: packages/signer/src/signers/nip46.ts:53

Send ​

Send: "send"

Defined in: packages/signer/src/signers/nip46.ts:52

Classes ​

Interfaces ​

Type Aliases ​

Decrypt() ​

Decrypt = (pubkey, message) => Promise<string>

Defined in: packages/signer/src/util.ts:36

Parameters ​

pubkey ​

string

message ​

string

Returns ​

Promise<string>


Encrypt() ​

Encrypt = (pubkey, message) => Promise<string>

Defined in: packages/signer/src/util.ts:34

Parameters ​

pubkey ​

string

message ​

string

Returns ​

Promise<string>


EncryptionImplementation ​

EncryptionImplementation = object

Defined in: packages/signer/src/util.ts:38

Properties ​

decrypt ​

decrypt: Decrypt

Defined in: packages/signer/src/util.ts:40

encrypt ​

encrypt: Encrypt

Defined in: packages/signer/src/util.ts:39


Nip07 ​

Nip07 = object

Defined in: packages/signer/src/signers/nip07.ts:5

Properties ​

getPublicKey() ​

getPublicKey: () => string | undefined

Defined in: packages/signer/src/signers/nip07.ts:9

Returns ​

string | undefined

nip04 ​

nip04: EncryptionImplementation

Defined in: packages/signer/src/signers/nip07.ts:7

nip44 ​

nip44: EncryptionImplementation

Defined in: packages/signer/src/signers/nip07.ts:8

signEvent ​

signEvent: Sign

Defined in: packages/signer/src/signers/nip07.ts:6


Nip46Algorithm ​

Nip46Algorithm = "nip04" | "nip44"

Defined in: packages/signer/src/signers/nip46.ts:49


Nip46BrokerParams ​

Nip46BrokerParams = object

Defined in: packages/signer/src/signers/nip46.ts:56

Properties ​

algorithm? ​

optional algorithm: Nip46Algorithm

Defined in: packages/signer/src/signers/nip46.ts:61

clientSecret ​

clientSecret: string

Defined in: packages/signer/src/signers/nip46.ts:58

connectSecret? ​

optional connectSecret: string

Defined in: packages/signer/src/signers/nip46.ts:59

context? ​

optional context: AdapterContext

Defined in: packages/signer/src/signers/nip46.ts:62

relays ​

relays: string[]

Defined in: packages/signer/src/signers/nip46.ts:57

signerPubkey? ​

optional signerPubkey: string

Defined in: packages/signer/src/signers/nip46.ts:60


Nip46Context ​

Nip46Context = object

Defined in: packages/signer/src/signers/nip46.ts:35

Properties ​

debug ​

debug: boolean

Defined in: packages/signer/src/signers/nip46.ts:36


Nip46Response ​

Nip46Response = object

Defined in: packages/signer/src/signers/nip46.ts:65

Properties ​

error? ​

optional error: string

Defined in: packages/signer/src/signers/nip46.ts:69

event ​

event: TrustedEvent

Defined in: packages/signer/src/signers/nip46.ts:68

id ​

id: string

Defined in: packages/signer/src/signers/nip46.ts:66

result? ​

optional result: string

Defined in: packages/signer/src/signers/nip46.ts:70

url ​

url: string

Defined in: packages/signer/src/signers/nip46.ts:67


Nip46ResponseWithError ​

Nip46ResponseWithError = object

Defined in: packages/signer/src/signers/nip46.ts:80

Properties ​

error ​

error: string

Defined in: packages/signer/src/signers/nip46.ts:84

event ​

event: TrustedEvent

Defined in: packages/signer/src/signers/nip46.ts:83

id ​

id: string

Defined in: packages/signer/src/signers/nip46.ts:81

url ​

url: string

Defined in: packages/signer/src/signers/nip46.ts:82


Nip46ResponseWithResult ​

Nip46ResponseWithResult = object

Defined in: packages/signer/src/signers/nip46.ts:73

Properties ​

event ​

event: TrustedEvent

Defined in: packages/signer/src/signers/nip46.ts:76

id ​

id: string

Defined in: packages/signer/src/signers/nip46.ts:74

result ​

result: string

Defined in: packages/signer/src/signers/nip46.ts:77

url ​

url: string

Defined in: packages/signer/src/signers/nip46.ts:75


Nip55 ​

Nip55 = object

Defined in: packages/signer/src/signers/nip55.ts:25

The part of nostr-signer-capacitor-plugin's NostrSignerPlugin that Nip55Signer uses, declared structurally so this package never imports the plugin. It only exists in Capacitor apps, and a bundler can't resolve a package that was never installed.

Properties ​

getInstalledSignerApps() ​

getInstalledSignerApps: () => Promise<{ apps: Nip55AppInfo[]; }>

Defined in: packages/signer/src/signers/nip55.ts:27

Returns ​

Promise<{ apps: Nip55AppInfo[]; }>

getPublicKey() ​

getPublicKey: (packageName?) => Promise<{ npub: string; }>

Defined in: packages/signer/src/signers/nip55.ts:28

Parameters ​
packageName? ​

string

Returns ​

Promise<{ npub: string; }>

nip04Decrypt ​

nip04Decrypt: Nip55Crypt

Defined in: packages/signer/src/signers/nip55.ts:36

nip04Encrypt ​

nip04Encrypt: Nip55Crypt

Defined in: packages/signer/src/signers/nip55.ts:35

nip44Decrypt ​

nip44Decrypt: Nip55Crypt

Defined in: packages/signer/src/signers/nip55.ts:38

nip44Encrypt ​

nip44Encrypt: Nip55Crypt

Defined in: packages/signer/src/signers/nip55.ts:37

setPackageName() ​

setPackageName: (packageName) => Promise<void>

Defined in: packages/signer/src/signers/nip55.ts:26

Parameters ​
packageName ​

string

Returns ​

Promise<void>

signEvent() ​

signEvent: (packageName, eventJson, id, npub) => Promise<{ event: string; }>

Defined in: packages/signer/src/signers/nip55.ts:29

Parameters ​
packageName ​

string

eventJson ​

string

id ​

string

npub ​

string

Returns ​

Promise<{ event: string; }>


Nip55AppInfo ​

Nip55AppInfo = object

Defined in: packages/signer/src/signers/nip55.ts:5

Properties ​

iconUrl? ​

optional iconUrl: string

Defined in: packages/signer/src/signers/nip55.ts:8

name ​

name: string

Defined in: packages/signer/src/signers/nip55.ts:6

packageName ​

packageName: string

Defined in: packages/signer/src/signers/nip55.ts:7


Nip55Crypt() ​

Nip55Crypt = (packageName, text, id, pubKey, npub) => Promise<{ result: string; }>

Defined in: packages/signer/src/signers/nip55.ts:11

Parameters ​

packageName ​

string

text ​

string

id ​

string

pubKey ​

string

npub ​

string

Returns ​

Promise<{ result: string; }>


PromenadeOptions ​

PromenadeOptions = object

Defined in: packages/signer/src/signers/nip46.ts:87

Properties ​

coordinatorUrl ​

coordinatorUrl: string

Defined in: packages/signer/src/signers/nip46.ts:90

generatePow() ​

generatePow: (event, difficulty) => MaybeAsync<HashedEvent>

Defined in: packages/signer/src/signers/nip46.ts:93

Parameters ​
event ​

HashedEvent

difficulty ​

number

Returns ​

MaybeAsync<HashedEvent>

getPubkeyRelays() ​

getPubkeyRelays: (pubkey, mode) => MaybeAsync<string[]>

Defined in: packages/signer/src/signers/nip46.ts:94

Parameters ​
pubkey ​

string

mode ​

string

Returns ​

MaybeAsync<string[]>

onProgress()? ​

optional onProgress: (progress) => void

Defined in: packages/signer/src/signers/nip46.ts:92

Parameters ​
progress ​

number

Returns ​

void

policy ​

policy: [number, number]

Defined in: packages/signer/src/signers/nip46.ts:89

secret ​

secret: string

Defined in: packages/signer/src/signers/nip46.ts:88

signerPubkeys ​

signerPubkeys: string[]

Defined in: packages/signer/src/signers/nip46.ts:91


Sign() ​

Sign = (event) => Promise<SignedEvent>

Defined in: packages/signer/src/util.ts:26

Parameters ​

event ​

StampedEvent

Returns ​

Promise<SignedEvent>


SignerMethodWrapper() ​

SignerMethodWrapper = <T>(method, thunk, args) => Promise<T>

Defined in: packages/signer/src/util.ts:59

Type Parameters ​

T ​

T

Parameters ​

method ​

string

thunk ​

() => Promise<T>

args ​

unknown[]

Returns ​

Promise<T>


SignOptions ​

SignOptions = object

Defined in: packages/signer/src/util.ts:28

Properties ​

signal? ​

optional signal: AbortSignal

Defined in: packages/signer/src/util.ts:29


SignWithOptions() ​

SignWithOptions = (event, options?) => Promise<SignedEvent>

Defined in: packages/signer/src/util.ts:32

Parameters ​

event ​

StampedEvent

options? ​

SignOptions

Returns ​

Promise<SignedEvent>

Variables ​

nip04 ​

const nip04: object

Defined in: packages/signer/src/util.ts:7

Type declaration ​

decrypt() ​

decrypt: (pubkey, secret, m) => string

Parameters ​
pubkey ​

string

secret ​

string

m ​

string

Returns ​

string

detect() ​

detect: (m) => boolean

Parameters ​
m ​

string

Returns ​

boolean

encrypt() ​

encrypt: (pubkey, secret, m) => string

Parameters ​
pubkey ​

string

secret ​

string

m ​

string

Returns ​

string


nip44 ​

const nip44: object

Defined in: packages/signer/src/util.ts:13

Type declaration ​

decrypt() ​

decrypt: (pubkey, secret, m) => string

Parameters ​
pubkey ​

string

secret ​

string

m ​

string

Returns ​

string

encrypt() ​

encrypt: (pubkey, secret, m) => string

Parameters ​
pubkey ​

string

secret ​

string

m ​

string

Returns ​

string

getSharedSecret ​

getSharedSecret: {(...args): Uint8Array<ArrayBufferLike>; cache: LRUCache<string, Uint8Array<ArrayBufferLike>>; getKey: (args) => string; getValue: (args) => Uint8Array; pop: (...args) => Uint8Array<ArrayBufferLike>; }

Parameters ​
args ​

...string[]

Returns ​

Uint8Array<ArrayBufferLike>

getSharedSecret.cache ​

getSharedSecret.cache: LRUCache<string, Uint8Array<ArrayBufferLike>>

getSharedSecret.getKey() ​

getSharedSecret.getKey: (args) => string

Parameters ​
args ​

string[]

Returns ​

string

getSharedSecret.getValue() ​

getSharedSecret.getValue: (args) => Uint8Array

Parameters ​
args ​

string[]

Returns ​

Uint8Array

getSharedSecret.pop() ​

getSharedSecret.pop: (...args) => Uint8Array<ArrayBufferLike>

Parameters ​
args ​

...string[]

Returns ​

Uint8Array<ArrayBufferLike>


nip46Context ​

const nip46Context: object

Defined in: packages/signer/src/signers/nip46.ts:39

Type declaration ​

debug ​

debug: boolean = false

Functions ​

decrypt() ​

decrypt(signer, pubkey, message): Promise<string>

Defined in: packages/signer/src/util.ts:51

Parameters ​

signer ​

ISigner

pubkey ​

string

message ​

string

Returns ​

Promise<string>


getNip07() ​

getNip07(): undefined | Nip07

Defined in: packages/signer/src/signers/nip07.ts:12

Returns ​

undefined | Nip07


getNip55() ​

getNip55(): Promise<Nip55AppInfo[]>

Defined in: packages/signer/src/signers/nip55.ts:58

Installed signer apps, or an empty list if no plugin has been registered.

Returns ​

Promise<Nip55AppInfo[]>


getNip55Plugin() ​

getNip55Plugin(): undefined | Nip55

Defined in: packages/signer/src/signers/nip55.ts:55

Returns ​

undefined | Nip55


getSeal() ​

getSeal(signer, pubkey, rumor): Promise<SignedEvent>

Defined in: packages/signer/src/nip59.ts:17

Parameters ​

signer ​

ISigner

pubkey ​

string

rumor ​

HashedEvent

Returns ​

Promise<SignedEvent>


getWrap() ​

getWrap(wrapper, pubkey, seal, tags): Promise<SignedEvent>

Defined in: packages/signer/src/nip59.ts:28

Parameters ​

wrapper ​

ISigner

pubkey ​

string

seal ​

SignedEvent

tags ​

string[][]

Returns ​

Promise<SignedEvent>


now() ​

now(drift): number

Defined in: packages/signer/src/nip59.ts:14

Parameters ​

drift ​

number = 0

Returns ​

number


setNip55Plugin() ​

setNip55Plugin(nip55): void

Defined in: packages/signer/src/signers/nip55.ts:51

Register the NIP-55 plugin. Capacitor apps should call this once at startup:

import {NostrSignerPlugin} from "nostr-signer-capacitor-plugin"
import {setNip55Plugin} from "@welshman/signer"

setNip55Plugin(NostrSignerPlugin)

Parameters ​

nip55 ​

undefined | Nip55

Returns ​

void


signWithOptions() ​

signWithOptions(promise, options): Promise<SignedEvent>

Defined in: packages/signer/src/util.ts:109

Parameters ​

promise ​

SignedEvent | Promise<SignedEvent>

options ​

SignOptions

Returns ​

Promise<SignedEvent>


unwrap() ​

unwrap(signer, wrap): Promise<HashedEvent>

Defined in: packages/signer/src/nip59.ts:59

Parameters ​

signer ​

ISigner

wrap ​

SignedEvent

Returns ​

Promise<HashedEvent>


wrap() ​

wrap(signer, wrapper, pubkey, template, tags): Promise<SignedEvent>

Defined in: packages/signer/src/nip59.ts:44

Parameters ​

signer ​

ISigner

wrapper ​

ISigner

pubkey ​

string

template ​

StampedEvent

tags ​

string[][] = []

Returns ​

Promise<SignedEvent>