UNPKG

nostr-tools

Version:
35 lines (34 loc) 1.01 kB
import { AddressPointer, EventPointer, ProfilePointer } from './nip19.ts'; /** Nostr URI regex, eg `nostr:npub1...` */ export declare const NOSTR_URI_REGEX: RegExp; /** Test whether the value is a Nostr URI. */ export declare function test(value: unknown): value is `nostr:${string}`; /** Parsed Nostr URI data. */ export interface NostrURI { /** Full URI including the `nostr:` protocol. */ uri: `nostr:${string}`; /** The bech32-encoded data (eg `npub1...`). */ value: string; /** Decoded bech32 string, according to NIP-19. */ decoded: { type: 'nevent'; data: EventPointer; } | { type: 'nprofile'; data: ProfilePointer; } | { type: 'naddr'; data: AddressPointer; } | { type: 'npub'; data: string; } | { type: 'nsec'; data: Uint8Array; } | { type: 'note'; data: string; }; } /** Parse and decode a Nostr URI. */ export declare function parse(uri: string): NostrURI;