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>