@candypoets/nipworker 0.88.1 → 0.89.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/NarrowTypes.js +1 -1
- package/dist/cache/index.js +1 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/cache/pkg/cache.d.ts +2 -2
- package/dist/cache/pkg/cache_bg.wasm.d.ts +2 -2
- package/dist/connections/index.d.ts +5 -0
- package/dist/connections/index.d.ts.map +1 -1
- package/dist/connections/index.js +2 -2
- package/dist/connections/index.js.map +1 -1
- package/dist/connections/pkg/connections.d.ts +4 -4
- package/dist/connections/pkg/connections_bg.wasm.d.ts +4 -4
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +1 -1
- package/dist/hooks.js.map +1 -1
- package/dist/index.d.ts +26 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index2.js +1 -1
- package/dist/index2.js.map +1 -1
- package/dist/proxy/index.d.ts +2 -0
- package/dist/proxy/index.d.ts.map +1 -0
- package/dist/proxy/index.js +1 -0
- package/dist/proxy/index.js.map +1 -0
- package/dist/proxy/relayProxyServer.d.ts +108 -0
- package/dist/proxy/relayProxyServer.d.ts.map +1 -0
- package/dist/proxy/server.d.ts +2 -0
- package/dist/proxy/server.d.ts.map +1 -0
- package/dist/proxy/server.js +1 -0
- package/dist/proxy/server.js.map +1 -0
- package/dist/proxy/vite.d.ts +45 -0
- package/dist/proxy/vite.d.ts.map +1 -0
- package/dist/proxy/vite.js +2 -0
- package/dist/proxy/vite.js.map +1 -0
- package/dist/relayProxyServer.js +1 -0
- package/dist/relayProxyServer.js.map +1 -0
- package/dist/signer-response.js +1 -0
- package/dist/signer-response.js.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils.js +4 -4
- package/dist/utils.js.map +1 -1
- package/dist/worker-message.js +1 -0
- package/dist/worker-message.js.map +1 -0
- package/package.json +44 -8
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sources":["../src/lib/ConnectionTracker.ts","../src/lib/ByteString.ts","../src/lib/ParseContent.ts","../src/utils.ts"],"sourcesContent":["import { ConnectionStatus, WorkerMessage } from \"src/generated/nostr/fb\";\nimport { isConnectionStatus } from \"./NarrowTypes\";\n\nexport class ConnectionTracker {\n private knownRelays: Map<number, ConnectionStatus> = new Map();\n private incomingCount = 0;\n private resolvedCount = 0;\n\n /**\n * Feed a new message into the tracker\n */\n handleMessage(msg: WorkerMessage) {\n const status = isConnectionStatus(msg);\n if (!status) return; // not a connection status, ignore\n\n const id = status.relayUrl()?.fnv1aHash()\n if(id && !this.knownRelays.has(id)) {\n this.incomingCount++;\n this.knownRelays.set(id, status);\n }\n if (this.isResolved(status)) {\n this.resolvedCount++;\n }\n }\n\n /**\n * Define what counts as a \"resolved\" connection.\n * Adjust based on your real ConnectionStatus enum/shape.\n */\n private isResolved(status: ConnectionStatus): boolean {\n return status.status()?.toString() === \"EOSE\";\n }\n\n /** Total connection attempts processed */\n get totalIncoming(): number {\n return this.incomingCount;\n }\n\n /** How many actually resolved */\n get totalResolved(): number {\n return this.resolvedCount;\n }\n\n /** Quick ratio (0...1) of resolved vs incoming */\n get resolutionRate(): number {\n return this.incomingCount === 0 ? 0 : this.resolvedCount / this.incomingCount;\n }\n}\n","import { ByteBuffer } from 'flatbuffers';\n\n(ByteBuffer.prototype as any).__stringByteString = function (offset: number): ByteString {\n\t// Follow indirect: add the relative offset stored at this location\n\toffset += this.readInt32(offset);\n\n\t// Now at the start of the string object → first 4 bytes = length\n\tconst length = this.readInt32(offset);\n\tconst start = offset + 4;\n\n\t// Slice out exactly [start, start+length]\n\tconst slice = this.bytes().subarray(start, start + length);\n\n\treturn new ByteString(slice);\n};\n\n// Shared decoder for all instances (cheap, stateless for non-streaming use)\nconst UTF8_DECODER = new TextDecoder('utf-8');\n\n// Hex lookup table to speed up toHex()\nconst HEX_TABLE: string[] = (() => {\n\tconst t = new Array(256);\n\tfor (let i = 0; i < 256; i++) t[i] = i.toString(16).padStart(2, '0');\n\treturn t;\n})();\n\n// Convert Uint8Array to string using the browser's built-in decoder\nfunction byteArrayToString(bytes: Uint8Array): string {\n\treturn UTF8_DECODER.decode(bytes);\n}\n\n// lib/ByteString.ts\nexport class ByteString {\n\tprivate readonly view: Uint8Array;\n\n\tconstructor(view: Uint8Array) {\n\t\tthis.view = view;\n\t}\n\n\t/**\n\t * Access underlying bytes\n\t */\n\tbytes(): Uint8Array {\n\t\treturn this.view;\n\t}\n\n\t/**\n\t * Fast numeric discriminant (FNV-1a hash).\n\t * Not cryptographically secure, but great for Map/Set keys.\n\t */\n\tfnv1aHash(): number {\n\t\tlet h = 2166136261 >>> 0;\n\t\tconst v = this.view;\n\t\tfor (let i = 0; i < v.length; i++) {\n\t\t\th ^= v[i];\n\t\t\th = Math.imul(h, 16777619);\n\t\t}\n\t\treturn h >>> 0;\n\t}\n\n\t/**\n\t * Return a stable hex string representation.\n\t */\n\ttoHex(): string {\n\t\tconst v = this.view;\n\t\tlet out = '';\n\t\tfor (let i = 0; i < v.length; i++) out += HEX_TABLE[v[i]];\n\t\treturn out;\n\t}\n\n\t/**\n\t * Decode as UTF-8 string.\n\t * If backed by SharedArrayBuffer, makes a safe copy.\n\t * No caching to allow proper GC of event data.\n\t */\n\tutf8String(): string {\n\t\treturn byteArrayToString(this.view);\n\t}\n\n\t/**\n\t * For debugging/logging\n\t */\n\ttoString(): string {\n\t\treturn this.utf8String();\n\t}\n\n\t/**\n\t * Equality check by bytes\n\t */\n\tequals(other: ByteString): boolean {\n\t\tconst a = this.view,\n\t\t\tb = other.view;\n\t\tif (a.length !== b.length) return false;\n\t\tfor (let i = 0; i < a.length; i++) {\n\t\t\tif (a[i] !== b[i]) return false;\n\t\t}\n\t\treturn true;\n\t}\n}\n","import { nip19 } from 'nostr-tools';\n\nimport { ContentBlockT } from 'src/generated/nostr/fb/content-block';\nimport { ContentData } from 'src/generated/nostr/fb/content-data';\nimport { CodeDataT } from 'src/generated/nostr/fb/code-data';\nimport { CashuDataT } from 'src/generated/nostr/fb/cashu-data';\nimport { HashtagDataT } from 'src/generated/nostr/fb/hashtag-data';\nimport { ImageDataT } from 'src/generated/nostr/fb/image-data';\nimport { VideoDataT } from 'src/generated/nostr/fb/video-data';\nimport { MediaGroupDataT } from 'src/generated/nostr/fb/media-group-data';\nimport { MediaItemT } from 'src/generated/nostr/fb/media-item';\nimport { LinkPreviewDataT } from 'src/generated/nostr/fb/link-preview-data';\nimport { NostrDataT } from 'src/generated/nostr/fb/nostr-data';\n\ntype MatchProcessor = (match: RegExpExecArray) => ContentBlockT | Promise<ContentBlockT>;\n\nconst textEncoder = new TextEncoder();\n\nexport async function parseContent(content: string): Promise<ContentBlockT[]> {\n\tconst blocks: ContentBlockT[] = [];\n\n\t// Helpers\n\tconst textBlock = (text: string): ContentBlockT =>\n\t\tnew ContentBlockT(textEncoder.encode('text'), textEncoder.encode(text), ContentData.NONE, null);\n\n\tconst imageBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('image'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.ImageData,\n\t\t\tnew ImageDataT(textEncoder.encode(url), null)\n\t\t);\n\n\tconst videoBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('video'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.VideoData,\n\t\t\tnew VideoDataT(textEncoder.encode(url), null)\n\t\t);\n\n\tconst codeBlock = (raw: string, full: string): ContentBlockT => {\n\t\t// Try to extract optional language from first line of fenced code\n\t\t// Supports patterns like ```lang\\ncode\\n```\n\t\tconst nl = raw.indexOf('\\n');\n\t\tlet language: string | null = null;\n\t\tlet code = raw;\n\t\tif (nl !== -1) {\n\t\t\tconst firstLine = raw.slice(0, nl).trim();\n\t\t\tconst rest = raw.slice(nl + 1);\n\t\t\tif (firstLine && /^[a-zA-Z0-9+#\\.\\-_]+$/.test(firstLine)) {\n\t\t\t\tlanguage = firstLine;\n\t\t\t\tcode = rest;\n\t\t\t}\n\t\t}\n\n\t\treturn new ContentBlockT(\n\t\t\ttextEncoder.encode('code'),\n\t\t\ttextEncoder.encode(full),\n\t\t\tContentData.CodeData,\n\t\t\tnew CodeDataT(textEncoder.encode(language || ''), textEncoder.encode(code))\n\t\t);\n\t};\n\n\tconst cashuBlock = (token: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('cashu'),\n\t\t\ttextEncoder.encode(token),\n\t\t\tContentData.CashuData,\n\t\t\tnew CashuDataT(textEncoder.encode(token))\n\t\t);\n\n\tconst hashtagBlock = (tag: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('hashtag'),\n\t\t\ttextEncoder.encode(`#${tag}`),\n\t\t\tContentData.HashtagData,\n\t\t\tnew HashtagDataT(textEncoder.encode(tag))\n\t\t);\n\n\tconst linkBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('link'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.LinkPreviewData,\n\t\t\tnew LinkPreviewDataT(textEncoder.encode(url), null, null, null)\n\t\t);\n\n\tconst nostrBlock = (bech32: string, fullText: string): ContentBlockT => {\n\t\ttry {\n\t\t\tconst decoded = nip19.decode(bech32);\n\t\t\tconst type = decoded.type as 'npub' | 'nprofile' | 'note' | 'nevent' | 'naddr';\n\n\t\t\tlet id: string | null = null;\n\t\t\tlet relays: string[] = [];\n\t\t\tlet author: string | null = null;\n\t\t\tlet kind: bigint = BigInt(0);\n\n\t\t\tconst d = decoded.data as any;\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'npub':\n\t\t\t\t\t// data: hex pubkey\n\t\t\t\t\tid = d as string;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'nprofile':\n\t\t\t\t\t// data: { pubkey, relays? }\n\t\t\t\t\tid = d.pubkey;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'note':\n\t\t\t\t\t// data: hex event id\n\t\t\t\t\tid = d as string;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'nevent':\n\t\t\t\t\t// data: { id, relays?, author?, kind? }\n\t\t\t\t\tid = d.id;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tauthor = typeof d.author === 'string' ? d.author : null;\n\t\t\t\t\tif (typeof d.kind === 'number') kind = BigInt(d.kind);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'naddr':\n\t\t\t\t\t// data: { identifier, pubkey, kind, relays? }\n\t\t\t\t\t// Build a stable id\n\t\t\t\t\tid = `${d.kind}:${d.pubkey}:${d.identifier}`;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tif (typeof d.kind === 'number') kind = BigInt(d.kind);\n\t\t\t\t\tauthor = typeof d.pubkey === 'string' ? d.pubkey : null;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Ensure required fields for NostrDataT: id and entity are required\n\t\t\tif (!id) {\n\t\t\t\tid = bech32;\n\t\t\t}\n\n\t\t\treturn new ContentBlockT(\n\t\t\t\ttextEncoder.encode(type),\n\t\t\t\ttextEncoder.encode(fullText),\n\t\t\t\tContentData.NostrData,\n\t\t\t\tnew NostrDataT(\n\t\t\t\t\ttextEncoder.encode(id),\n\t\t\t\t\ttextEncoder.encode(bech32),\n\t\t\t\t\trelays,\n\t\t\t\t\ttextEncoder.encode(author || ''),\n\t\t\t\t\tkind\n\t\t\t\t)\n\t\t\t);\n\t\t} catch {\n\t\t\t// Fallback to plain text block when decode fails\n\t\t\treturn textBlock(fullText);\n\t\t}\n\t};\n\n\t// Define all the patterns we want to match\n\tconst patterns: Array<{\n\t\ttype: string;\n\t\tregex: RegExp;\n\t\tprocessMatch: MatchProcessor;\n\t}> = [\n\t\t{\n\t\t\ttype: 'code',\n\t\t\tregex: /```([\\s\\S]*?)```/g,\n\t\t\tprocessMatch: (match) => codeBlock(match[1] || '', match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'cashu',\n\t\t\tregex: /(cashuA[A-Za-z0-9_-]+)/g,\n\t\t\tprocessMatch: (match) => cashuBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'hashtag',\n\t\t\t// Match hashtags that are not part of a URL\n\t\t\tregex: /(?<![^\\s\"'(])(#[a-zA-Z0-9_]+)(?![a-zA-Z0-9_])/g,\n\t\t\tprocessMatch: (match) => hashtagBlock(match[0].substring(1))\n\t\t},\n\t\t{\n\t\t\ttype: 'image',\n\t\t\tregex: /(https?:\\/\\/\\S+\\.(?:jpg|jpeg|png|gif|webp|svg|ico)(?:\\?\\S*)?)/gi,\n\t\t\tprocessMatch: (match) => imageBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'video',\n\t\t\tregex: /(https?:\\/\\/\\S+\\.(?:mp4|mov|avi|mkv|webm|m4v)(?:\\?\\S*)?)/gi,\n\t\t\tprocessMatch: (match) => videoBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'nostr',\n\t\t\tregex: /nostr:([a-z0-9]+)/gi,\n\t\t\tprocessMatch: (match) => {\n\t\t\t\tconst bech32 = match[1];\n\t\t\t\treturn nostrBlock(bech32 || '', match[0]);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\ttype: 'link',\n\t\t\tregex: /(https?:\\/\\/\\S+)(?![\\)])/gi,\n\t\t\tprocessMatch: async (match) => linkBlock(match[0])\n\t\t}\n\t];\n\n\t// Find all matches with their positions\n\tconst allMatches: Array<{\n\t\tstart: number;\n\t\tend: number;\n\t\tblock: ContentBlockT;\n\t}> = [];\n\n\t// First, find all matches for all patterns\n\tfor (const pattern of patterns) {\n\t\tlet match: RegExpExecArray | null;\n\t\tpattern.regex.lastIndex = 0;\n\n\t\twhile ((match = pattern.regex.exec(content)) !== null) {\n\t\t\tconst start = match.index;\n\t\t\tconst end = start + match[0].length;\n\t\t\tconst block = await pattern.processMatch(match);\n\n\t\t\tallMatches.push({ start, end, block });\n\t\t}\n\t}\n\n\t// Sort matches by start position\n\tallMatches.sort((a, b) => a.start - b.start);\n\n\t// Remove overlapping matches (prioritize earlier patterns in the array)\n\tconst filteredMatches: typeof allMatches = [];\n\n\tfor (const match of allMatches) {\n\t\tconst overlaps = filteredMatches.some(\n\t\t\t(existing) =>\n\t\t\t\t(match.start >= existing.start && match.start < existing.end) ||\n\t\t\t\t(match.end > existing.start && match.end <= existing.end) ||\n\t\t\t\t(match.start <= existing.start && match.end >= existing.end)\n\t\t);\n\n\t\tif (!overlaps) {\n\t\t\tfilteredMatches.push(match);\n\t\t}\n\t}\n\n\t// Re-sort filtered matches\n\tfilteredMatches.sort((a, b) => a.start - b.start);\n\n\t// Build the final result, including text between matches\n\tlet lastIndex = 0;\n\n\tfor (const { start, end, block } of filteredMatches) {\n\t\t// Add text before this match\n\t\tif (start > lastIndex) {\n\t\t\tblocks.push(textBlock(content.substring(lastIndex, start)));\n\t\t}\n\n\t\t// Add the match\n\t\tblocks.push(block);\n\n\t\tlastIndex = end;\n\t}\n\n\t// Add any remaining text after the last match\n\tif (lastIndex < content.length) {\n\t\tblocks.push(textBlock(content.substring(lastIndex)));\n\t}\n\n\t// Post-processing: group consecutive media into grids\n\tconst processedBlocks: ContentBlockT[] = [];\n\tlet mediaGroup: ContentBlockT[] = [];\n\n\tconst isWhitespace = (s: string) => /^\\s+$/.test(s);\n\n\tfor (let i = 0; i < blocks.length; i++) {\n\t\tconst block = blocks[i];\n\n\t\t// If this is an image or video\n\t\tif (block?.type?.toString() === 'image' || block?.type?.toString() === 'video') {\n\t\t\tmediaGroup.push(block);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// If this is whitespace or newlines between media, check what follows\n\t\tif (\n\t\t\tblock?.type?.toString() === 'text' &&\n\t\t\ttypeof block?.text?.toString() === 'string' &&\n\t\t\tisWhitespace(block.text?.toString())\n\t\t) {\n\t\t\tif (\n\t\t\t\tmediaGroup.length > 0 &&\n\t\t\t\ti + 1 < blocks.length &&\n\t\t\t\t(blocks[i + 1]?.type?.toString() === 'image' || blocks[i + 1]?.type?.toString() === 'video')\n\t\t\t) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\t// If we have collected media and the current block breaks the sequence\n\t\tif (mediaGroup.length > 0) {\n\t\t\t// Add media group if it contains more than one item\n\t\t\tif (mediaGroup.length > 1) {\n\t\t\t\tconst items: MediaItemT[] = mediaGroup.map((m) => {\n\t\t\t\t\tif (m.dataType === ContentData.ImageData) {\n\t\t\t\t\t\tconst d = m.data as ImageDataT;\n\t\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\t\tnew ImageDataT(textEncoder.encode(d.url ?? (m.text as string)), null),\n\t\t\t\t\t\t\tnull\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (m.dataType === ContentData.VideoData) {\n\t\t\t\t\t\tconst d = m.data as VideoDataT;\n\t\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\tnew VideoDataT(textEncoder.encode(d.url ?? (m.text as string)), null)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// Fallback — shouldn't occur because we only collect image/video\n\t\t\t\t\treturn new MediaItemT(null, null);\n\t\t\t\t});\n\n\t\t\t\tconst text = mediaGroup.map((m) => String(m.text ?? '')).join('\\n');\n\t\t\t\tprocessedBlocks.push(\n\t\t\t\t\tnew ContentBlockT(\n\t\t\t\t\t\ttextEncoder.encode('mediaGrid'),\n\t\t\t\t\t\ttextEncoder.encode(text),\n\t\t\t\t\t\tContentData.MediaGroupData,\n\t\t\t\t\t\tnew MediaGroupDataT(items)\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\t// Just add the single media item\n\t\t\t\tprocessedBlocks.push(mediaGroup[0]);\n\t\t\t}\n\t\t\tmediaGroup = [];\n\t\t}\n\n\t\t// Add the current non-media block\n\t\tprocessedBlocks.push(block);\n\t}\n\n\t// Don't forget any remaining media\n\tif (mediaGroup.length > 0) {\n\t\tif (mediaGroup.length > 1) {\n\t\t\tconst items: MediaItemT[] = mediaGroup.map((m) => {\n\t\t\t\tif (m.dataType === ContentData.ImageData) {\n\t\t\t\t\tconst d = m.data as ImageDataT;\n\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\tnew ImageDataT(textEncoder.encode(d.url ?? (m.text as string)), null),\n\t\t\t\t\t\tnull\n\t\t\t\t\t);\n\t\t\t\t} else if (m.dataType === ContentData.VideoData) {\n\t\t\t\t\tconst d = m.data as VideoDataT;\n\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\tnull,\n\t\t\t\t\t\tnew VideoDataT(textEncoder.encode(d.url ?? (m.text as string)), null)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn new MediaItemT(null, null);\n\t\t\t});\n\n\t\t\tconst text = mediaGroup.map((m) => String(m.text ?? '')).join('\\n');\n\t\t\tprocessedBlocks.push(\n\t\t\t\tnew ContentBlockT(\n\t\t\t\t\ttextEncoder.encode('mediaGrid'),\n\t\t\t\t\ttextEncoder.encode(text),\n\t\t\t\t\tContentData.MediaGroupData,\n\t\t\t\t\tnew MediaGroupDataT(items)\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\tprocessedBlocks.push(mediaGroup[0]);\n\t\t}\n\t}\n\n\treturn processedBlocks;\n}\n","import { generateSecretKey, getPublicKey } from 'nostr-tools';\nimport { manager } from '.';\n\nexport { ConnectionTracker } from './lib/ConnectionTracker';\nexport { ByteString } from './lib/ByteString';\n\nexport * from './lib/NarrowTypes';\nexport * from './lib/ParseContent';\n\n/**\n * Extracts keys from T where the value is a `function(i: number): any`\n */\ntype FlatBufferKeys<T> = {\n\t[K in keyof T]: T[K] extends (i: number) => any ? K : never;\n}[keyof T];\n\n/**\n * Non-nullable version: Filters out null results\n */\nexport function fbIterable<T, K extends FlatBufferKeys<T>>(\n\tobj: T,\n\tfieldName: K\n): Iterable<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\tconst length = (obj as any)[`${String(fieldName)}Length`]();\n\treturn {\n\t\t[Symbol.iterator](): Iterator<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\t\t\tlet i = 0;\n\t\t\treturn {\n\t\t\t\tnext(): IteratorResult<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\t\t\t\t\twhile (i < length) {\n\t\t\t\t\t\tconst value = (obj as any)[fieldName](i);\n\t\t\t\t\t\ti++;\n\t\t\t\t\t\tif (value != null) {\n\t\t\t\t\t\t\treturn { value, done: false };\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// if null → skip this index\n\t\t\t\t\t}\n\t\t\t\t\treturn { value: undefined as any, done: true };\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t};\n}\n\n/**\n * Eager array version (non-null)\n */\nexport function fbArray<T, K extends FlatBufferKeys<T>>(\n\tobj: T,\n\tfieldName: K\n): Array<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\tif (!obj) return [];\n\tconst lengthGetter = (obj as any)[`${String(fieldName)}Length`]?.bind(obj);\n\tif (!lengthGetter) return [];\n\tconst length = lengthGetter();\n\n\tconst result: Array<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> = [];\n\tfor (let i = 0; i < length; i++) {\n\t\tconst v = (obj as any)[fieldName](i);\n\t\tif (v != null) result.push(v);\n\t}\n\treturn result;\n}\n\n// In your frontend application\nexport async function connectWithQRCode(appName: string, relays: string[]) {\n\t// Generate a client keypair\n\tconst clientKeys = generateSecretKey();\n\tconst clientPubkey = getPublicKey(clientKeys);\n\tconst clientSecretHex = Array.from(clientKeys)\n\t\t.map((b) => b.toString(16).padStart(2, '0'))\n\t\t.join('');\n\n\t// Generate a random secret\n\tconst secret = getPublicKey(generateSecretKey());\n\n\tconst params = new URLSearchParams();\n\n\tfor (const relay of relays) {\n\t\tparams.append('relay', relay);\n\t}\n\n\tparams.set('secret', secret);\n\tparams.set('name', appName);\n\n\tconst nostrconnectUrl = `nostrconnect://${clientPubkey}?${params.toString()}`;\n\n\tconsole.log('connect url:', nostrconnectUrl);\n\n\t// Set up the NIP-46 signer with the client's pubkey and relays\n\t// Note: We don't know the remote signer's pubkey yet - that's what we're discovering\n\tmanager.setNip46QR(nostrconnectUrl, clientSecretHex);\n\n\treturn nostrconnectUrl;\n}\n"],"names":["ConnectionTracker","msg","status","isConnectionStatus","id","ByteBuffer","offset","length","start","slice","ByteString","UTF8_DECODER","HEX_TABLE","t","i","byteArrayToString","bytes","view","h","v","out","other","a","b","textEncoder","parseContent","content","blocks","textBlock","text","ContentBlockT","ContentData","imageBlock","url","ImageDataT","videoBlock","VideoDataT","codeBlock","raw","full","nl","language","code","firstLine","rest","CodeDataT","cashuBlock","token","CashuDataT","hashtagBlock","tag","HashtagDataT","linkBlock","LinkPreviewDataT","nostrBlock","bech32","fullText","decoded","nip19","type","relays","author","kind","d","NostrDataT","patterns","match","allMatches","pattern","end","block","filteredMatches","existing","lastIndex","processedBlocks","mediaGroup","isWhitespace","s","items","m","MediaItemT","MediaGroupDataT","fbIterable","obj","fieldName","value","fbArray","lengthGetter","result","connectWithQRCode","appName","clientKeys","generateSecretKey","clientPubkey","getPublicKey","clientSecretHex","secret","params","relay","nostrconnectUrl","manager"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../src/lib/ConnectionTracker.ts","../src/lib/ParseContent.ts","../src/utils.ts"],"sourcesContent":["import { ConnectionStatus, WorkerMessage } from \"src/generated/nostr/fb\";\nimport { isConnectionStatus } from \"./NarrowTypes\";\n\nexport class ConnectionTracker {\n private knownRelays: Map<number, ConnectionStatus> = new Map();\n private incomingCount = 0;\n private resolvedCount = 0;\n\n /**\n * Feed a new message into the tracker\n */\n handleMessage(msg: WorkerMessage) {\n const status = isConnectionStatus(msg);\n if (!status) return; // not a connection status, ignore\n\n const id = status.relayUrl()?.fnv1aHash()\n if(id && !this.knownRelays.has(id)) {\n this.incomingCount++;\n this.knownRelays.set(id, status);\n }\n if (this.isResolved(status)) {\n this.resolvedCount++;\n }\n }\n\n /**\n * Define what counts as a \"resolved\" connection.\n * Adjust based on your real ConnectionStatus enum/shape.\n */\n private isResolved(status: ConnectionStatus): boolean {\n return status.status()?.toString() === \"EOSE\";\n }\n\n /** Total connection attempts processed */\n get totalIncoming(): number {\n return this.incomingCount;\n }\n\n /** How many actually resolved */\n get totalResolved(): number {\n return this.resolvedCount;\n }\n\n /** Quick ratio (0...1) of resolved vs incoming */\n get resolutionRate(): number {\n return this.incomingCount === 0 ? 0 : this.resolvedCount / this.incomingCount;\n }\n}\n","import { nip19 } from 'nostr-tools';\n\nimport { ContentBlockT } from 'src/generated/nostr/fb/content-block';\nimport { ContentData } from 'src/generated/nostr/fb/content-data';\nimport { CodeDataT } from 'src/generated/nostr/fb/code-data';\nimport { CashuDataT } from 'src/generated/nostr/fb/cashu-data';\nimport { HashtagDataT } from 'src/generated/nostr/fb/hashtag-data';\nimport { ImageDataT } from 'src/generated/nostr/fb/image-data';\nimport { VideoDataT } from 'src/generated/nostr/fb/video-data';\nimport { MediaGroupDataT } from 'src/generated/nostr/fb/media-group-data';\nimport { MediaItemT } from 'src/generated/nostr/fb/media-item';\nimport { LinkPreviewDataT } from 'src/generated/nostr/fb/link-preview-data';\nimport { NostrDataT } from 'src/generated/nostr/fb/nostr-data';\n\ntype MatchProcessor = (match: RegExpExecArray) => ContentBlockT | Promise<ContentBlockT>;\n\nconst textEncoder = new TextEncoder();\n\nexport async function parseContent(content: string): Promise<ContentBlockT[]> {\n\tconst blocks: ContentBlockT[] = [];\n\n\t// Helpers\n\tconst textBlock = (text: string): ContentBlockT =>\n\t\tnew ContentBlockT(textEncoder.encode('text'), textEncoder.encode(text), ContentData.NONE, null);\n\n\tconst imageBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('image'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.ImageData,\n\t\t\tnew ImageDataT(textEncoder.encode(url), null)\n\t\t);\n\n\tconst videoBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('video'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.VideoData,\n\t\t\tnew VideoDataT(textEncoder.encode(url), null)\n\t\t);\n\n\tconst codeBlock = (raw: string, full: string): ContentBlockT => {\n\t\t// Try to extract optional language from first line of fenced code\n\t\t// Supports patterns like ```lang\\ncode\\n```\n\t\tconst nl = raw.indexOf('\\n');\n\t\tlet language: string | null = null;\n\t\tlet code = raw;\n\t\tif (nl !== -1) {\n\t\t\tconst firstLine = raw.slice(0, nl).trim();\n\t\t\tconst rest = raw.slice(nl + 1);\n\t\t\tif (firstLine && /^[a-zA-Z0-9+#\\.\\-_]+$/.test(firstLine)) {\n\t\t\t\tlanguage = firstLine;\n\t\t\t\tcode = rest;\n\t\t\t}\n\t\t}\n\n\t\treturn new ContentBlockT(\n\t\t\ttextEncoder.encode('code'),\n\t\t\ttextEncoder.encode(full),\n\t\t\tContentData.CodeData,\n\t\t\tnew CodeDataT(textEncoder.encode(language || ''), textEncoder.encode(code))\n\t\t);\n\t};\n\n\tconst cashuBlock = (token: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('cashu'),\n\t\t\ttextEncoder.encode(token),\n\t\t\tContentData.CashuData,\n\t\t\tnew CashuDataT(textEncoder.encode(token))\n\t\t);\n\n\tconst hashtagBlock = (tag: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('hashtag'),\n\t\t\ttextEncoder.encode(`#${tag}`),\n\t\t\tContentData.HashtagData,\n\t\t\tnew HashtagDataT(textEncoder.encode(tag))\n\t\t);\n\n\tconst linkBlock = (url: string): ContentBlockT =>\n\t\tnew ContentBlockT(\n\t\t\ttextEncoder.encode('link'),\n\t\t\ttextEncoder.encode(url),\n\t\t\tContentData.LinkPreviewData,\n\t\t\tnew LinkPreviewDataT(textEncoder.encode(url), null, null, null)\n\t\t);\n\n\tconst nostrBlock = (bech32: string, fullText: string): ContentBlockT => {\n\t\ttry {\n\t\t\tconst decoded = nip19.decode(bech32);\n\t\t\tconst type = decoded.type as 'npub' | 'nprofile' | 'note' | 'nevent' | 'naddr';\n\n\t\t\tlet id: string | null = null;\n\t\t\tlet relays: string[] = [];\n\t\t\tlet author: string | null = null;\n\t\t\tlet kind: bigint = BigInt(0);\n\n\t\t\tconst d = decoded.data as any;\n\n\t\t\tswitch (type) {\n\t\t\t\tcase 'npub':\n\t\t\t\t\t// data: hex pubkey\n\t\t\t\t\tid = d as string;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'nprofile':\n\t\t\t\t\t// data: { pubkey, relays? }\n\t\t\t\t\tid = d.pubkey;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'note':\n\t\t\t\t\t// data: hex event id\n\t\t\t\t\tid = d as string;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'nevent':\n\t\t\t\t\t// data: { id, relays?, author?, kind? }\n\t\t\t\t\tid = d.id;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tauthor = typeof d.author === 'string' ? d.author : null;\n\t\t\t\t\tif (typeof d.kind === 'number') kind = BigInt(d.kind);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'naddr':\n\t\t\t\t\t// data: { identifier, pubkey, kind, relays? }\n\t\t\t\t\t// Build a stable id\n\t\t\t\t\tid = `${d.kind}:${d.pubkey}:${d.identifier}`;\n\t\t\t\t\trelays = Array.isArray(d.relays) ? d.relays : [];\n\t\t\t\t\tif (typeof d.kind === 'number') kind = BigInt(d.kind);\n\t\t\t\t\tauthor = typeof d.pubkey === 'string' ? d.pubkey : null;\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\t// Ensure required fields for NostrDataT: id and entity are required\n\t\t\tif (!id) {\n\t\t\t\tid = bech32;\n\t\t\t}\n\n\t\t\treturn new ContentBlockT(\n\t\t\t\ttextEncoder.encode(type),\n\t\t\t\ttextEncoder.encode(fullText),\n\t\t\t\tContentData.NostrData,\n\t\t\t\tnew NostrDataT(\n\t\t\t\t\ttextEncoder.encode(id),\n\t\t\t\t\ttextEncoder.encode(bech32),\n\t\t\t\t\trelays,\n\t\t\t\t\ttextEncoder.encode(author || ''),\n\t\t\t\t\tkind\n\t\t\t\t)\n\t\t\t);\n\t\t} catch {\n\t\t\t// Fallback to plain text block when decode fails\n\t\t\treturn textBlock(fullText);\n\t\t}\n\t};\n\n\t// Define all the patterns we want to match\n\tconst patterns: Array<{\n\t\ttype: string;\n\t\tregex: RegExp;\n\t\tprocessMatch: MatchProcessor;\n\t}> = [\n\t\t{\n\t\t\ttype: 'code',\n\t\t\tregex: /```([\\s\\S]*?)```/g,\n\t\t\tprocessMatch: (match) => codeBlock(match[1] || '', match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'cashu',\n\t\t\tregex: /(cashuA[A-Za-z0-9_-]+)/g,\n\t\t\tprocessMatch: (match) => cashuBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'hashtag',\n\t\t\t// Match hashtags that are not part of a URL\n\t\t\tregex: /(?<![^\\s\"'(])(#[a-zA-Z0-9_]+)(?![a-zA-Z0-9_])/g,\n\t\t\tprocessMatch: (match) => hashtagBlock(match[0].substring(1))\n\t\t},\n\t\t{\n\t\t\ttype: 'image',\n\t\t\tregex: /(https?:\\/\\/\\S+\\.(?:jpg|jpeg|png|gif|webp|svg|ico)(?:\\?\\S*)?)/gi,\n\t\t\tprocessMatch: (match) => imageBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'video',\n\t\t\tregex: /(https?:\\/\\/\\S+\\.(?:mp4|mov|avi|mkv|webm|m4v)(?:\\?\\S*)?)/gi,\n\t\t\tprocessMatch: (match) => videoBlock(match[0])\n\t\t},\n\t\t{\n\t\t\ttype: 'nostr',\n\t\t\tregex: /nostr:([a-z0-9]+)/gi,\n\t\t\tprocessMatch: (match) => {\n\t\t\t\tconst bech32 = match[1];\n\t\t\t\treturn nostrBlock(bech32 || '', match[0]);\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\ttype: 'link',\n\t\t\tregex: /(https?:\\/\\/\\S+)(?![\\)])/gi,\n\t\t\tprocessMatch: async (match) => linkBlock(match[0])\n\t\t}\n\t];\n\n\t// Find all matches with their positions\n\tconst allMatches: Array<{\n\t\tstart: number;\n\t\tend: number;\n\t\tblock: ContentBlockT;\n\t}> = [];\n\n\t// First, find all matches for all patterns\n\tfor (const pattern of patterns) {\n\t\tlet match: RegExpExecArray | null;\n\t\tpattern.regex.lastIndex = 0;\n\n\t\twhile ((match = pattern.regex.exec(content)) !== null) {\n\t\t\tconst start = match.index;\n\t\t\tconst end = start + match[0].length;\n\t\t\tconst block = await pattern.processMatch(match);\n\n\t\t\tallMatches.push({ start, end, block });\n\t\t}\n\t}\n\n\t// Sort matches by start position\n\tallMatches.sort((a, b) => a.start - b.start);\n\n\t// Remove overlapping matches (prioritize earlier patterns in the array)\n\tconst filteredMatches: typeof allMatches = [];\n\n\tfor (const match of allMatches) {\n\t\tconst overlaps = filteredMatches.some(\n\t\t\t(existing) =>\n\t\t\t\t(match.start >= existing.start && match.start < existing.end) ||\n\t\t\t\t(match.end > existing.start && match.end <= existing.end) ||\n\t\t\t\t(match.start <= existing.start && match.end >= existing.end)\n\t\t);\n\n\t\tif (!overlaps) {\n\t\t\tfilteredMatches.push(match);\n\t\t}\n\t}\n\n\t// Re-sort filtered matches\n\tfilteredMatches.sort((a, b) => a.start - b.start);\n\n\t// Build the final result, including text between matches\n\tlet lastIndex = 0;\n\n\tfor (const { start, end, block } of filteredMatches) {\n\t\t// Add text before this match\n\t\tif (start > lastIndex) {\n\t\t\tblocks.push(textBlock(content.substring(lastIndex, start)));\n\t\t}\n\n\t\t// Add the match\n\t\tblocks.push(block);\n\n\t\tlastIndex = end;\n\t}\n\n\t// Add any remaining text after the last match\n\tif (lastIndex < content.length) {\n\t\tblocks.push(textBlock(content.substring(lastIndex)));\n\t}\n\n\t// Post-processing: group consecutive media into grids\n\tconst processedBlocks: ContentBlockT[] = [];\n\tlet mediaGroup: ContentBlockT[] = [];\n\n\tconst isWhitespace = (s: string) => /^\\s+$/.test(s);\n\n\tfor (let i = 0; i < blocks.length; i++) {\n\t\tconst block = blocks[i];\n\n\t\t// If this is an image or video\n\t\tif (block?.type?.toString() === 'image' || block?.type?.toString() === 'video') {\n\t\t\tmediaGroup.push(block);\n\t\t\tcontinue;\n\t\t}\n\n\t\t// If this is whitespace or newlines between media, check what follows\n\t\tif (\n\t\t\tblock?.type?.toString() === 'text' &&\n\t\t\ttypeof block?.text?.toString() === 'string' &&\n\t\t\tisWhitespace(block.text?.toString())\n\t\t) {\n\t\t\tif (\n\t\t\t\tmediaGroup.length > 0 &&\n\t\t\t\ti + 1 < blocks.length &&\n\t\t\t\t(blocks[i + 1]?.type?.toString() === 'image' || blocks[i + 1]?.type?.toString() === 'video')\n\t\t\t) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\t// If we have collected media and the current block breaks the sequence\n\t\tif (mediaGroup.length > 0) {\n\t\t\t// Add media group if it contains more than one item\n\t\t\tif (mediaGroup.length > 1) {\n\t\t\t\tconst items: MediaItemT[] = mediaGroup.map((m) => {\n\t\t\t\t\tif (m.dataType === ContentData.ImageData) {\n\t\t\t\t\t\tconst d = m.data as ImageDataT;\n\t\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\t\tnew ImageDataT(textEncoder.encode(d.url ?? (m.text as string)), null),\n\t\t\t\t\t\t\tnull\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if (m.dataType === ContentData.VideoData) {\n\t\t\t\t\t\tconst d = m.data as VideoDataT;\n\t\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\t\tnull,\n\t\t\t\t\t\t\tnew VideoDataT(textEncoder.encode(d.url ?? (m.text as string)), null)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// Fallback — shouldn't occur because we only collect image/video\n\t\t\t\t\treturn new MediaItemT(null, null);\n\t\t\t\t});\n\n\t\t\t\tconst text = mediaGroup.map((m) => String(m.text ?? '')).join('\\n');\n\t\t\t\tprocessedBlocks.push(\n\t\t\t\t\tnew ContentBlockT(\n\t\t\t\t\t\ttextEncoder.encode('mediaGrid'),\n\t\t\t\t\t\ttextEncoder.encode(text),\n\t\t\t\t\t\tContentData.MediaGroupData,\n\t\t\t\t\t\tnew MediaGroupDataT(items)\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\t// Just add the single media item\n\t\t\t\tprocessedBlocks.push(mediaGroup[0]);\n\t\t\t}\n\t\t\tmediaGroup = [];\n\t\t}\n\n\t\t// Add the current non-media block\n\t\tprocessedBlocks.push(block);\n\t}\n\n\t// Don't forget any remaining media\n\tif (mediaGroup.length > 0) {\n\t\tif (mediaGroup.length > 1) {\n\t\t\tconst items: MediaItemT[] = mediaGroup.map((m) => {\n\t\t\t\tif (m.dataType === ContentData.ImageData) {\n\t\t\t\t\tconst d = m.data as ImageDataT;\n\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\tnew ImageDataT(textEncoder.encode(d.url ?? (m.text as string)), null),\n\t\t\t\t\t\tnull\n\t\t\t\t\t);\n\t\t\t\t} else if (m.dataType === ContentData.VideoData) {\n\t\t\t\t\tconst d = m.data as VideoDataT;\n\t\t\t\t\treturn new MediaItemT(\n\t\t\t\t\t\tnull,\n\t\t\t\t\t\tnew VideoDataT(textEncoder.encode(d.url ?? (m.text as string)), null)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn new MediaItemT(null, null);\n\t\t\t});\n\n\t\t\tconst text = mediaGroup.map((m) => String(m.text ?? '')).join('\\n');\n\t\t\tprocessedBlocks.push(\n\t\t\t\tnew ContentBlockT(\n\t\t\t\t\ttextEncoder.encode('mediaGrid'),\n\t\t\t\t\ttextEncoder.encode(text),\n\t\t\t\t\tContentData.MediaGroupData,\n\t\t\t\t\tnew MediaGroupDataT(items)\n\t\t\t\t)\n\t\t\t);\n\t\t} else {\n\t\t\tprocessedBlocks.push(mediaGroup[0]);\n\t\t}\n\t}\n\n\treturn processedBlocks;\n}\n","import { generateSecretKey, getPublicKey } from 'nostr-tools';\nimport { manager } from '.';\n\nexport { ConnectionTracker } from './lib/ConnectionTracker';\nexport { ByteString } from './lib/ByteString';\n\nexport * from './lib/NarrowTypes';\nexport * from './lib/ParseContent';\n\n/**\n * Extracts keys from T where the value is a `function(i: number): any`\n */\ntype FlatBufferKeys<T> = {\n\t[K in keyof T]: T[K] extends (i: number) => any ? K : never;\n}[keyof T];\n\n/**\n * Non-nullable version: Filters out null results\n */\nexport function fbIterable<T, K extends FlatBufferKeys<T>>(\n\tobj: T,\n\tfieldName: K\n): Iterable<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\tconst length = (obj as any)[`${String(fieldName)}Length`]();\n\treturn {\n\t\t[Symbol.iterator](): Iterator<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\t\t\tlet i = 0;\n\t\t\treturn {\n\t\t\t\tnext(): IteratorResult<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\t\t\t\t\twhile (i < length) {\n\t\t\t\t\t\tconst value = (obj as any)[fieldName](i);\n\t\t\t\t\t\ti++;\n\t\t\t\t\t\tif (value != null) {\n\t\t\t\t\t\t\treturn { value, done: false };\n\t\t\t\t\t\t}\n\t\t\t\t\t\t// if null → skip this index\n\t\t\t\t\t}\n\t\t\t\t\treturn { value: undefined as any, done: true };\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t};\n}\n\n/**\n * Eager array version (non-null)\n */\nexport function fbArray<T, K extends FlatBufferKeys<T>>(\n\tobj: T,\n\tfieldName: K\n): Array<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> {\n\tif (!obj) return [];\n\tconst lengthGetter = (obj as any)[`${String(fieldName)}Length`]?.bind(obj);\n\tif (!lengthGetter) return [];\n\tconst length = lengthGetter();\n\n\tconst result: Array<NonNullable<ReturnType<Extract<T[K], (i: number) => any>>>> = [];\n\tfor (let i = 0; i < length; i++) {\n\t\tconst v = (obj as any)[fieldName](i);\n\t\tif (v != null) result.push(v);\n\t}\n\treturn result;\n}\n\n// In your frontend application\nexport async function connectWithQRCode(appName: string, relays: string[]) {\n\t// Generate a client keypair\n\tconst clientKeys = generateSecretKey();\n\tconst clientPubkey = getPublicKey(clientKeys);\n\tconst clientSecretHex = Array.from(clientKeys)\n\t\t.map((b) => b.toString(16).padStart(2, '0'))\n\t\t.join('');\n\n\t// Generate a random secret\n\tconst secret = getPublicKey(generateSecretKey());\n\n\tconst params = new URLSearchParams();\n\n\tfor (const relay of relays) {\n\t\tparams.append('relay', relay);\n\t}\n\n\tparams.set('secret', secret);\n\tparams.set('name', appName);\n\n\tconst nostrconnectUrl = `nostrconnect://${clientPubkey}?${params.toString()}`;\n\n\tconsole.log('connect url:', nostrconnectUrl);\n\n\t// Set up the NIP-46 signer with the client's pubkey and relays\n\t// Note: We don't know the remote signer's pubkey yet - that's what we're discovering\n\tmanager.setNip46QR(nostrconnectUrl, clientSecretHex);\n\n\treturn nostrconnectUrl;\n}\n"],"names":["ConnectionTracker","msg","status","isConnectionStatus","id","textEncoder","parseContent","content","blocks","textBlock","text","ContentBlockT","ContentData","imageBlock","url","ImageDataT","videoBlock","VideoDataT","codeBlock","raw","full","nl","language","code","firstLine","rest","CodeDataT","cashuBlock","token","CashuDataT","hashtagBlock","tag","HashtagDataT","linkBlock","LinkPreviewDataT","nostrBlock","bech32","fullText","decoded","nip19","type","relays","author","kind","d","NostrDataT","patterns","match","allMatches","pattern","start","end","block","a","b","filteredMatches","existing","lastIndex","processedBlocks","mediaGroup","isWhitespace","s","i","items","m","MediaItemT","MediaGroupDataT","fbIterable","obj","fieldName","length","value","fbArray","lengthGetter","result","v","connectWithQRCode","appName","clientKeys","generateSecretKey","clientPubkey","getPublicKey","clientSecretHex","secret","params","relay","nostrconnectUrl","manager"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import*as b from"flatbuffers";class vt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsBufferFull(t,s){return(s||new vt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsBufferFull(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new vt).__init(t.readInt32(t.position())+t.position(),t)}droppedEvents(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint16(this.bb_pos+t):0}static startBufferFull(t){t.startObject(1)}static addDroppedEvents(t,s){t.addFieldInt16(0,s,0)}static endBufferFull(t){return t.endObject()}static createBufferFull(t,s){return vt.startBufferFull(t),vt.addDroppedEvents(t,s),vt.endBufferFull(t)}unpack(){return new Zt(this.droppedEvents())}unpackTo(t){t.droppedEvents=this.droppedEvents()}}class Zt{constructor(t=0){this.droppedEvents=t}pack(t){return vt.createBufferFull(t,this.droppedEvents)}}class W{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsStringVec(t,s){return(s||new W).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsStringVec(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new W).__init(t.readInt32(t.position())+t.position(),t)}items(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}itemsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startStringVec(t){t.startObject(1)}static addItems(t,s){t.addFieldOffset(0,s,0)}static createItemsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startItemsVector(t,s){t.startVector(4,s,4)}static endStringVec(t){return t.endObject()}static createStringVec(t,s){return W.startStringVec(t),W.addItems(t,s),W.endStringVec(t)}unpack(){return new Xt(this.bb.createScalarList(this.items.bind(this),this.itemsLength()))}unpackTo(t){t.items=this.bb.createScalarList(this.items.bind(this),this.itemsLength())}}class Xt{constructor(t=[]){this.items=t}pack(t){const s=W.createItemsVector(t,t.createObjectOffsetList(this.items));return W.createStringVec(t,s)}}class K{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsNostrEvent(t,s){return(s||new K).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsNostrEvent(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new K).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}pubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}kind(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint16(this.bb_pos+t):0}content(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}tags(t,s){const e=this.bb.__offset(this.bb_pos,12);return e?(s||new W).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}tagsLength(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.__vector_len(this.bb_pos+t):0}createdAt(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readInt32(this.bb_pos+t):0}sig(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startNostrEvent(t){t.startObject(7)}static addId(t,s){t.addFieldOffset(0,s,0)}static addPubkey(t,s){t.addFieldOffset(1,s,0)}static addKind(t,s){t.addFieldInt16(2,s,0)}static addContent(t,s){t.addFieldOffset(3,s,0)}static addTags(t,s){t.addFieldOffset(4,s,0)}static createTagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTagsVector(t,s){t.startVector(4,s,4)}static addCreatedAt(t,s){t.addFieldInt32(5,s,0)}static addSig(t,s){t.addFieldOffset(6,s,0)}static endNostrEvent(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),t.requiredField(s,10),t.requiredField(s,12),t.requiredField(s,16),s}static createNostrEvent(t,s,e,i,r,a,o,d){return K.startNostrEvent(t),K.addId(t,s),K.addPubkey(t,e),K.addKind(t,i),K.addContent(t,r),K.addTags(t,a),K.addCreatedAt(t,o),K.addSig(t,d),K.endNostrEvent(t)}unpack(){return new Wt(this.id(),this.pubkey(),this.kind(),this.content(),this.bb.createObjList(this.tags.bind(this),this.tagsLength()),this.createdAt(),this.sig())}unpackTo(t){t.id=this.id(),t.pubkey=this.pubkey(),t.kind=this.kind(),t.content=this.content(),t.tags=this.bb.createObjList(this.tags.bind(this),this.tagsLength()),t.createdAt=this.createdAt(),t.sig=this.sig()}}class Wt{constructor(t=null,s=null,e=0,i=null,r=[],a=0,o=null){this.id=t,this.pubkey=s,this.kind=e,this.content=i,this.tags=r,this.createdAt=a,this.sig=o}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.pubkey!==null?t.createString(this.pubkey):0,i=this.content!==null?t.createString(this.content):0,r=K.createTagsVector(t,t.createObjectOffsetList(this.tags)),a=this.sig!==null?t.createString(this.sig):0;return K.createNostrEvent(t,s,e,this.kind,i,r,this.createdAt,a)}}class _{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind0Parsed(t,s){return(s||new _).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind0Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new _).__init(t.readInt32(t.position())+t.position(),t)}pubkey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}name(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}displayName(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}picture(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}banner(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}about(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}website(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}nip05(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}lud06(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}lud16(t){const s=this.bb.__offset(this.bb_pos,22);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}github(t){const s=this.bb.__offset(this.bb_pos,24);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}twitter(t){const s=this.bb.__offset(this.bb_pos,26);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}mastodon(t){const s=this.bb.__offset(this.bb_pos,28);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}nostr(t){const s=this.bb.__offset(this.bb_pos,30);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}displayNameAlt(t){const s=this.bb.__offset(this.bb_pos,32);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}username(t){const s=this.bb.__offset(this.bb_pos,34);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}bio(t){const s=this.bb.__offset(this.bb_pos,36);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}image(t){const s=this.bb.__offset(this.bb_pos,38);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}avatar(t){const s=this.bb.__offset(this.bb_pos,40);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}background(t){const s=this.bb.__offset(this.bb_pos,42);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind0Parsed(t){t.startObject(20)}static addPubkey(t,s){t.addFieldOffset(0,s,0)}static addName(t,s){t.addFieldOffset(1,s,0)}static addDisplayName(t,s){t.addFieldOffset(2,s,0)}static addPicture(t,s){t.addFieldOffset(3,s,0)}static addBanner(t,s){t.addFieldOffset(4,s,0)}static addAbout(t,s){t.addFieldOffset(5,s,0)}static addWebsite(t,s){t.addFieldOffset(6,s,0)}static addNip05(t,s){t.addFieldOffset(7,s,0)}static addLud06(t,s){t.addFieldOffset(8,s,0)}static addLud16(t,s){t.addFieldOffset(9,s,0)}static addGithub(t,s){t.addFieldOffset(10,s,0)}static addTwitter(t,s){t.addFieldOffset(11,s,0)}static addMastodon(t,s){t.addFieldOffset(12,s,0)}static addNostr(t,s){t.addFieldOffset(13,s,0)}static addDisplayNameAlt(t,s){t.addFieldOffset(14,s,0)}static addUsername(t,s){t.addFieldOffset(15,s,0)}static addBio(t,s){t.addFieldOffset(16,s,0)}static addImage(t,s){t.addFieldOffset(17,s,0)}static addAvatar(t,s){t.addFieldOffset(18,s,0)}static addBackground(t,s){t.addFieldOffset(19,s,0)}static endKind0Parsed(t){return t.endObject()}static createKind0Parsed(t,s,e,i,r,a,o,d,h,c,p,g,y,I,R,C,H,it,It,Lt,Ct){return _.startKind0Parsed(t),_.addPubkey(t,s),_.addName(t,e),_.addDisplayName(t,i),_.addPicture(t,r),_.addBanner(t,a),_.addAbout(t,o),_.addWebsite(t,d),_.addNip05(t,h),_.addLud06(t,c),_.addLud16(t,p),_.addGithub(t,g),_.addTwitter(t,y),_.addMastodon(t,I),_.addNostr(t,R),_.addDisplayNameAlt(t,C),_.addUsername(t,H),_.addBio(t,it),_.addImage(t,It),_.addAvatar(t,Lt),_.addBackground(t,Ct),_.endKind0Parsed(t)}unpack(){return new zt(this.pubkey(),this.name(),this.displayName(),this.picture(),this.banner(),this.about(),this.website(),this.nip05(),this.lud06(),this.lud16(),this.github(),this.twitter(),this.mastodon(),this.nostr(),this.displayNameAlt(),this.username(),this.bio(),this.image(),this.avatar(),this.background())}unpackTo(t){t.pubkey=this.pubkey(),t.name=this.name(),t.displayName=this.displayName(),t.picture=this.picture(),t.banner=this.banner(),t.about=this.about(),t.website=this.website(),t.nip05=this.nip05(),t.lud06=this.lud06(),t.lud16=this.lud16(),t.github=this.github(),t.twitter=this.twitter(),t.mastodon=this.mastodon(),t.nostr=this.nostr(),t.displayNameAlt=this.displayNameAlt(),t.username=this.username(),t.bio=this.bio(),t.image=this.image(),t.avatar=this.avatar(),t.background=this.background()}}class zt{constructor(t=null,s=null,e=null,i=null,r=null,a=null,o=null,d=null,h=null,c=null,p=null,g=null,y=null,I=null,R=null,C=null,H=null,it=null,It=null,Lt=null){this.pubkey=t,this.name=s,this.displayName=e,this.picture=i,this.banner=r,this.about=a,this.website=o,this.nip05=d,this.lud06=h,this.lud16=c,this.github=p,this.twitter=g,this.mastodon=y,this.nostr=I,this.displayNameAlt=R,this.username=C,this.bio=H,this.image=it,this.avatar=It,this.background=Lt}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.name!==null?t.createString(this.name):0,i=this.displayName!==null?t.createString(this.displayName):0,r=this.picture!==null?t.createString(this.picture):0,a=this.banner!==null?t.createString(this.banner):0,o=this.about!==null?t.createString(this.about):0,d=this.website!==null?t.createString(this.website):0,h=this.nip05!==null?t.createString(this.nip05):0,c=this.lud06!==null?t.createString(this.lud06):0,p=this.lud16!==null?t.createString(this.lud16):0,g=this.github!==null?t.createString(this.github):0,y=this.twitter!==null?t.createString(this.twitter):0,I=this.mastodon!==null?t.createString(this.mastodon):0,R=this.nostr!==null?t.createString(this.nostr):0,C=this.displayNameAlt!==null?t.createString(this.displayNameAlt):0,H=this.username!==null?t.createString(this.username):0,it=this.bio!==null?t.createString(this.bio):0,It=this.image!==null?t.createString(this.image):0,Lt=this.avatar!==null?t.createString(this.avatar):0,Ct=this.background!==null?t.createString(this.background):0;return _.createKind0Parsed(t,s,e,i,r,a,o,d,h,c,p,g,y,I,R,C,H,it,It,Lt,Ct)}}class nt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsRelayInfo(t,s){return(s||new nt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsRelayInfo(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new nt).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}read(){const t=this.bb.__offset(this.bb_pos,6);return t?!!this.bb.readInt8(this.bb_pos+t):!1}write(){const t=this.bb.__offset(this.bb_pos,8);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startRelayInfo(t){t.startObject(3)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addRead(t,s){t.addFieldInt8(1,+s,0)}static addWrite(t,s){t.addFieldInt8(2,+s,0)}static endRelayInfo(t){const s=t.endObject();return t.requiredField(s,4),s}static createRelayInfo(t,s,e,i){return nt.startRelayInfo(t),nt.addUrl(t,s),nt.addRead(t,e),nt.addWrite(t,i),nt.endRelayInfo(t)}unpack(){return new Qt(this.url(),this.read(),this.write())}unpackTo(t){t.url=this.url(),t.read=this.read(),t.write=this.write()}}class Qt{constructor(t=null,s=!1,e=!1){this.url=t,this.read=s,this.write=e}pack(t){const s=this.url!==null?t.createString(this.url):0;return nt.createRelayInfo(t,s,this.read,this.write)}}class yt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind10002Parsed(t,s){return(s||new yt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind10002Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new yt).__init(t.readInt32(t.position())+t.position(),t)}relays(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new nt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind10002Parsed(t){t.startObject(1)}static addRelays(t,s){t.addFieldOffset(0,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static endKind10002Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}static createKind10002Parsed(t,s){return yt.startKind10002Parsed(t),yt.addRelays(t,s),yt.endKind10002Parsed(t)}unpack(){return new Yt(this.bb.createObjList(this.relays.bind(this),this.relaysLength()))}unpackTo(t){t.relays=this.bb.createObjList(this.relays.bind(this),this.relaysLength())}}class Yt{constructor(t=[]){this.relays=t}pack(t){const s=yt.createRelaysVector(t,t.createObjectOffsetList(this.relays));return yt.createKind10002Parsed(t,s)}}class ht{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsMintInfo(t,s){return(s||new ht).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMintInfo(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new ht).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}baseUnits(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}baseUnitsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}static startMintInfo(t){t.startObject(2)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addBaseUnits(t,s){t.addFieldOffset(1,s,0)}static createBaseUnitsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startBaseUnitsVector(t,s){t.startVector(4,s,4)}static endMintInfo(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createMintInfo(t,s,e){return ht.startMintInfo(t),ht.addUrl(t,s),ht.addBaseUnits(t,e),ht.endMintInfo(t)}unpack(){return new Jt(this.url(),this.bb.createScalarList(this.baseUnits.bind(this),this.baseUnitsLength()))}unpackTo(t){t.url=this.url(),t.baseUnits=this.bb.createScalarList(this.baseUnits.bind(this),this.baseUnitsLength())}}class Jt{constructor(t=null,s=[]){this.url=t,this.baseUnits=s}pack(t){const s=this.url!==null?t.createString(this.url):0,e=ht.createBaseUnitsVector(t,t.createObjectOffsetList(this.baseUnits));return ht.createMintInfo(t,s,e)}}class z{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind10019Parsed(t,s){return(s||new z).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind10019Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new z).__init(t.readInt32(t.position())+t.position(),t)}trustedMints(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new ht).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}trustedMintsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}p2pkPubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}readRelays(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}readRelaysLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind10019Parsed(t){t.startObject(3)}static addTrustedMints(t,s){t.addFieldOffset(0,s,0)}static createTrustedMintsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTrustedMintsVector(t,s){t.startVector(4,s,4)}static addP2pkPubkey(t,s){t.addFieldOffset(1,s,0)}static addReadRelays(t,s){t.addFieldOffset(2,s,0)}static createReadRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startReadRelaysVector(t,s){t.startVector(4,s,4)}static endKind10019Parsed(t){return t.endObject()}static createKind10019Parsed(t,s,e,i){return z.startKind10019Parsed(t),z.addTrustedMints(t,s),z.addP2pkPubkey(t,e),z.addReadRelays(t,i),z.endKind10019Parsed(t)}unpack(){return new $t(this.bb.createObjList(this.trustedMints.bind(this),this.trustedMintsLength()),this.p2pkPubkey(),this.bb.createScalarList(this.readRelays.bind(this),this.readRelaysLength()))}unpackTo(t){t.trustedMints=this.bb.createObjList(this.trustedMints.bind(this),this.trustedMintsLength()),t.p2pkPubkey=this.p2pkPubkey(),t.readRelays=this.bb.createScalarList(this.readRelays.bind(this),this.readRelaysLength())}}class $t{constructor(t=[],s=null,e=[]){this.trustedMints=t,this.p2pkPubkey=s,this.readRelays=e}pack(t){const s=z.createTrustedMintsVector(t,t.createObjectOffsetList(this.trustedMints)),e=this.p2pkPubkey!==null?t.createString(this.p2pkPubkey):0,i=z.createReadRelaysVector(t,t.createObjectOffsetList(this.readRelays));return z.createKind10019Parsed(t,s,e,i)}}class Ft{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsCashuData(t,s){return(s||new Ft).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsCashuData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Ft).__init(t.readInt32(t.position())+t.position(),t)}token(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startCashuData(t){t.startObject(1)}static addToken(t,s){t.addFieldOffset(0,s,0)}static endCashuData(t){const s=t.endObject();return t.requiredField(s,4),s}static createCashuData(t,s){return Ft.startCashuData(t),Ft.addToken(t,s),Ft.endCashuData(t)}unpack(){return new ts(this.token())}unpackTo(t){t.token=this.token()}}class ts{constructor(t=null){this.token=t}pack(t){const s=this.token!==null?t.createString(this.token):0;return Ft.createCashuData(t,s)}}class pt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsCodeData(t,s){return(s||new pt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsCodeData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new pt).__init(t.readInt32(t.position())+t.position(),t)}language(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}code(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startCodeData(t){t.startObject(2)}static addLanguage(t,s){t.addFieldOffset(0,s,0)}static addCode(t,s){t.addFieldOffset(1,s,0)}static endCodeData(t){const s=t.endObject();return t.requiredField(s,6),s}static createCodeData(t,s,e){return pt.startCodeData(t),pt.addLanguage(t,s),pt.addCode(t,e),pt.endCodeData(t)}unpack(){return new ss(this.language(),this.code())}unpackTo(t){t.language=this.language(),t.code=this.code()}}class ss{constructor(t=null,s=null){this.language=t,this.code=s}pack(t){const s=this.language!==null?t.createString(this.language):0,e=this.code!==null?t.createString(this.code):0;return pt.createCodeData(t,s,e)}}class Vt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsHashtagData(t,s){return(s||new Vt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsHashtagData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Vt).__init(t.readInt32(t.position())+t.position(),t)}tag(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startHashtagData(t){t.startObject(1)}static addTag(t,s){t.addFieldOffset(0,s,0)}static endHashtagData(t){const s=t.endObject();return t.requiredField(s,4),s}static createHashtagData(t,s){return Vt.startHashtagData(t),Vt.addTag(t,s),Vt.endHashtagData(t)}unpack(){return new es(this.tag())}unpackTo(t){t.tag=this.tag()}}class es{constructor(t=null){this.tag=t}pack(t){const s=this.tag!==null?t.createString(this.tag):0;return Vt.createHashtagData(t,s)}}class st{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsImageData(t,s){return(s||new st).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsImageData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new st).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}alt(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}dim(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startImageData(t){t.startObject(3)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addAlt(t,s){t.addFieldOffset(1,s,0)}static addDim(t,s){t.addFieldOffset(2,s,0)}static endImageData(t){const s=t.endObject();return t.requiredField(s,4),s}static createImageData(t,s,e,i){return st.startImageData(t),st.addUrl(t,s),st.addAlt(t,e),st.addDim(t,i),st.endImageData(t)}unpack(){return new is(this.url(),this.alt(),this.dim())}unpackTo(t){t.url=this.url(),t.alt=this.alt(),t.dim=this.dim()}}class is{constructor(t=null,s=null,e=null){this.url=t,this.alt=s,this.dim=e}pack(t){const s=this.url!==null?t.createString(this.url):0,e=this.alt!==null?t.createString(this.alt):0,i=this.dim!==null?t.createString(this.dim):0;return st.createImageData(t,s,e,i)}}class Y{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsLinkPreviewData(t,s){return(s||new Y).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsLinkPreviewData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Y).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}title(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}description(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}image(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startLinkPreviewData(t){t.startObject(4)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addTitle(t,s){t.addFieldOffset(1,s,0)}static addDescription(t,s){t.addFieldOffset(2,s,0)}static addImage(t,s){t.addFieldOffset(3,s,0)}static endLinkPreviewData(t){const s=t.endObject();return t.requiredField(s,4),s}static createLinkPreviewData(t,s,e,i,r){return Y.startLinkPreviewData(t),Y.addUrl(t,s),Y.addTitle(t,e),Y.addDescription(t,i),Y.addImage(t,r),Y.endLinkPreviewData(t)}unpack(){return new ns(this.url(),this.title(),this.description(),this.image())}unpackTo(t){t.url=this.url(),t.title=this.title(),t.description=this.description(),t.image=this.image()}}class ns{constructor(t=null,s=null,e=null,i=null){this.url=t,this.title=s,this.description=e,this.image=i}pack(t){const s=this.url!==null?t.createString(this.url):0,e=this.title!==null?t.createString(this.title):0,i=this.description!==null?t.createString(this.description):0,r=this.image!==null?t.createString(this.image):0;return Y.createLinkPreviewData(t,s,e,i,r)}}class ct{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsVideoData(t,s){return(s||new ct).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsVideoData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new ct).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}thumbnail(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startVideoData(t){t.startObject(2)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addThumbnail(t,s){t.addFieldOffset(1,s,0)}static endVideoData(t){const s=t.endObject();return t.requiredField(s,4),s}static createVideoData(t,s,e){return ct.startVideoData(t),ct.addUrl(t,s),ct.addThumbnail(t,e),ct.endVideoData(t)}unpack(){return new rs(this.url(),this.thumbnail())}unpackTo(t){t.url=this.url(),t.thumbnail=this.thumbnail()}}class rs{constructor(t=null,s=null){this.url=t,this.thumbnail=s}pack(t){const s=this.url!==null?t.createString(this.url):0,e=this.thumbnail!==null?t.createString(this.thumbnail):0;return ct.createVideoData(t,s,e)}}class mt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsMediaItem(t,s){return(s||new mt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMediaItem(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new mt).__init(t.readInt32(t.position())+t.position(),t)}image(t){const s=this.bb.__offset(this.bb_pos,4);return s?(t||new st).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}video(t){const s=this.bb.__offset(this.bb_pos,6);return s?(t||new ct).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startMediaItem(t){t.startObject(2)}static addImage(t,s){t.addFieldOffset(0,s,0)}static addVideo(t,s){t.addFieldOffset(1,s,0)}static endMediaItem(t){return t.endObject()}unpack(){return new as(this.image()!==null?this.image().unpack():null,this.video()!==null?this.video().unpack():null)}unpackTo(t){t.image=this.image()!==null?this.image().unpack():null,t.video=this.video()!==null?this.video().unpack():null}}class as{constructor(t=null,s=null){this.image=t,this.video=s}pack(t){const s=this.image!==null?this.image.pack(t):0,e=this.video!==null?this.video.pack(t):0;return mt.startMediaItem(t),mt.addImage(t,s),mt.addVideo(t,e),mt.endMediaItem(t)}}class Pt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsMediaGroupData(t,s){return(s||new Pt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMediaGroupData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Pt).__init(t.readInt32(t.position())+t.position(),t)}items(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new mt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}itemsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startMediaGroupData(t){t.startObject(1)}static addItems(t,s){t.addFieldOffset(0,s,0)}static createItemsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startItemsVector(t,s){t.startVector(4,s,4)}static endMediaGroupData(t){return t.endObject()}static createMediaGroupData(t,s){return Pt.startMediaGroupData(t),Pt.addItems(t,s),Pt.endMediaGroupData(t)}unpack(){return new os(this.bb.createObjList(this.items.bind(this),this.itemsLength()))}unpackTo(t){t.items=this.bb.createObjList(this.items.bind(this),this.itemsLength())}}class os{constructor(t=[]){this.items=t}pack(t){const s=Pt.createItemsVector(t,t.createObjectOffsetList(this.items));return Pt.createMediaGroupData(t,s)}}class N{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsNostrData(t,s){return(s||new N).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsNostrData(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new N).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}entity(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}author(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}kind(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}static startNostrData(t){t.startObject(5)}static addId(t,s){t.addFieldOffset(0,s,0)}static addEntity(t,s){t.addFieldOffset(1,s,0)}static addRelays(t,s){t.addFieldOffset(2,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addAuthor(t,s){t.addFieldOffset(3,s,0)}static addKind(t,s){t.addFieldInt64(4,s,BigInt("0"))}static endNostrData(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createNostrData(t,s,e,i,r,a){return N.startNostrData(t),N.addId(t,s),N.addEntity(t,e),N.addRelays(t,i),N.addAuthor(t,r),N.addKind(t,a),N.endNostrData(t)}unpack(){return new ds(this.id(),this.entity(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.author(),this.kind())}unpackTo(t){t.id=this.id(),t.entity=this.entity(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.author=this.author(),t.kind=this.kind()}}class ds{constructor(t=null,s=null,e=[],i=null,r=BigInt("0")){this.id=t,this.entity=s,this.relays=e,this.author=i,this.kind=r}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.entity!==null?t.createString(this.entity):0,i=N.createRelaysVector(t,t.createObjectOffsetList(this.relays)),r=this.author!==null?t.createString(this.author):0;return N.createNostrData(t,s,e,i,r,this.kind)}}var At=(n=>(n[n.NONE=0]="NONE",n[n.CodeData=1]="CodeData",n[n.HashtagData=2]="HashtagData",n[n.CashuData=3]="CashuData",n[n.ImageData=4]="ImageData",n[n.VideoData=5]="VideoData",n[n.MediaGroupData=6]="MediaGroupData",n[n.NostrData=7]="NostrData",n[n.LinkPreviewData=8]="LinkPreviewData",n))(At||{});function Ht(n,t){switch(At[n]){case"NONE":return null;case"CodeData":return t(new pt);case"HashtagData":return t(new Vt);case"CashuData":return t(new Ft);case"ImageData":return t(new st);case"VideoData":return t(new ct);case"MediaGroupData":return t(new Pt);case"NostrData":return t(new N);case"LinkPreviewData":return t(new Y);default:return null}}class B{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsContentBlock(t,s){return(s||new B).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsContentBlock(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new B).__init(t.readInt32(t.position())+t.position(),t)}type(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}text(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}dataType(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint8(this.bb_pos+t):At.NONE}data(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__union(t,this.bb_pos+s):null}static startContentBlock(t){t.startObject(4)}static addType(t,s){t.addFieldOffset(0,s,0)}static addText(t,s){t.addFieldOffset(1,s,0)}static addDataType(t,s){t.addFieldInt8(2,s,At.NONE)}static addData(t,s){t.addFieldOffset(3,s,0)}static endContentBlock(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createContentBlock(t,s,e,i,r){return B.startContentBlock(t),B.addType(t,s),B.addText(t,e),B.addDataType(t,i),B.addData(t,r),B.endContentBlock(t)}unpack(){return new bs(this.type(),this.text(),this.dataType(),(()=>{const t=Ht(this.dataType(),this.data.bind(this));return t===null?null:t.unpack()})())}unpackTo(t){t.type=this.type(),t.text=this.text(),t.dataType=this.dataType(),t.data=(()=>{const s=Ht(this.dataType(),this.data.bind(this));return s===null?null:s.unpack()})()}}class bs{constructor(t=null,s=null,e=At.NONE,i=null){this.type=t,this.text=s,this.dataType=e,this.data=i}pack(t){const s=this.type!==null?t.createString(this.type):0,e=this.text!==null?t.createString(this.text):0,i=t.createObjectOffset(this.data);return B.createContentBlock(t,s,e,this.dataType,i)}}class j{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsEventPointer(t,s){return(s||new j).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsEventPointer(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new j).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}author(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}kind(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}static startEventPointer(t){t.startObject(4)}static addId(t,s){t.addFieldOffset(0,s,0)}static addRelays(t,s){t.addFieldOffset(1,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addAuthor(t,s){t.addFieldOffset(2,s,0)}static addKind(t,s){t.addFieldInt64(3,s,BigInt("0"))}static endEventPointer(t){const s=t.endObject();return t.requiredField(s,4),s}static createEventPointer(t,s,e,i,r){return j.startEventPointer(t),j.addId(t,s),j.addRelays(t,e),j.addAuthor(t,i),j.addKind(t,r),j.endEventPointer(t)}unpack(){return new hs(this.id(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.author(),this.kind())}unpackTo(t){t.id=this.id(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.author=this.author(),t.kind=this.kind()}}class hs{constructor(t=null,s=[],e=null,i=BigInt("0")){this.id=t,this.relays=s,this.author=e,this.kind=i}pack(t){const s=this.id!==null?t.createString(this.id):0,e=j.createRelaysVector(t,t.createObjectOffsetList(this.relays)),i=this.author!==null?t.createString(this.author):0;return j.createEventPointer(t,s,e,i,this.kind)}}class x{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsProfilePointer(t,s){return(s||new x).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsProfilePointer(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new x).__init(t.readInt32(t.position())+t.position(),t)}publicKey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}static startProfilePointer(t){t.startObject(2)}static addPublicKey(t,s){t.addFieldOffset(0,s,0)}static addRelays(t,s){t.addFieldOffset(1,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static endProfilePointer(t){const s=t.endObject();return t.requiredField(s,4),s}static createProfilePointer(t,s,e){return x.startProfilePointer(t),x.addPublicKey(t,s),x.addRelays(t,e),x.endProfilePointer(t)}unpack(){return new cs(this.publicKey(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()))}unpackTo(t){t.publicKey=this.publicKey(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength())}}class cs{constructor(t=null,s=[]){this.publicKey=t,this.relays=s}pack(t){const s=this.publicKey!==null?t.createString(this.publicKey):0,e=x.createRelaysVector(t,t.createObjectOffsetList(this.relays));return x.createProfilePointer(t,s,e)}}class u{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind1111Parsed(t,s){return(s||new u).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind1111Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new u).__init(t.readInt32(t.position())+t.position(),t)}content(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parsedContent(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?(s||new B).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}parsedContentLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}rootId(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}rootCoordinate(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}rootExternal(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}rootKind(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readUint16(this.bb_pos+t):0}rootAuthor(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}rootRelays(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}rootRelaysLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}parentId(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parentCoordinate(t){const s=this.bb.__offset(this.bb_pos,22);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parentExternal(t){const s=this.bb.__offset(this.bb_pos,24);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parentKind(){const t=this.bb.__offset(this.bb_pos,26);return t?this.bb.readUint16(this.bb_pos+t):0}parentAuthor(t){const s=this.bb.__offset(this.bb_pos,28);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parentRelays(t,s){const e=this.bb.__offset(this.bb_pos,30);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}parentRelaysLength(){const t=this.bb.__offset(this.bb_pos,30);return t?this.bb.__vector_len(this.bb_pos+t):0}citations(t,s){const e=this.bb.__offset(this.bb_pos,32);return e?(s||new j).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}citationsLength(){const t=this.bb.__offset(this.bb_pos,32);return t?this.bb.__vector_len(this.bb_pos+t):0}mentions(t,s){const e=this.bb.__offset(this.bb_pos,34);return e?(s||new x).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}mentionsLength(){const t=this.bb.__offset(this.bb_pos,34);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind1111Parsed(t){t.startObject(16)}static addContent(t,s){t.addFieldOffset(0,s,0)}static addParsedContent(t,s){t.addFieldOffset(1,s,0)}static createParsedContentVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParsedContentVector(t,s){t.startVector(4,s,4)}static addRootId(t,s){t.addFieldOffset(2,s,0)}static addRootCoordinate(t,s){t.addFieldOffset(3,s,0)}static addRootExternal(t,s){t.addFieldOffset(4,s,0)}static addRootKind(t,s){t.addFieldInt16(5,s,0)}static addRootAuthor(t,s){t.addFieldOffset(6,s,0)}static addRootRelays(t,s){t.addFieldOffset(7,s,0)}static createRootRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRootRelaysVector(t,s){t.startVector(4,s,4)}static addParentId(t,s){t.addFieldOffset(8,s,0)}static addParentCoordinate(t,s){t.addFieldOffset(9,s,0)}static addParentExternal(t,s){t.addFieldOffset(10,s,0)}static addParentKind(t,s){t.addFieldInt16(11,s,0)}static addParentAuthor(t,s){t.addFieldOffset(12,s,0)}static addParentRelays(t,s){t.addFieldOffset(13,s,0)}static createParentRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParentRelaysVector(t,s){t.startVector(4,s,4)}static addCitations(t,s){t.addFieldOffset(14,s,0)}static createCitationsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startCitationsVector(t,s){t.startVector(4,s,4)}static addMentions(t,s){t.addFieldOffset(15,s,0)}static createMentionsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startMentionsVector(t,s){t.startVector(4,s,4)}static endKind1111Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}static createKind1111Parsed(t,s,e,i,r,a,o,d,h,c,p,g,y,I,R,C,H){return u.startKind1111Parsed(t),u.addContent(t,s),u.addParsedContent(t,e),u.addRootId(t,i),u.addRootCoordinate(t,r),u.addRootExternal(t,a),u.addRootKind(t,o),u.addRootAuthor(t,d),u.addRootRelays(t,h),u.addParentId(t,c),u.addParentCoordinate(t,p),u.addParentExternal(t,g),u.addParentKind(t,y),u.addParentAuthor(t,I),u.addParentRelays(t,R),u.addCitations(t,C),u.addMentions(t,H),u.endKind1111Parsed(t)}unpack(){return new ls(this.content(),this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),this.rootId(),this.rootCoordinate(),this.rootExternal(),this.rootKind(),this.rootAuthor(),this.bb.createScalarList(this.rootRelays.bind(this),this.rootRelaysLength()),this.parentId(),this.parentCoordinate(),this.parentExternal(),this.parentKind(),this.parentAuthor(),this.bb.createScalarList(this.parentRelays.bind(this),this.parentRelaysLength()),this.bb.createObjList(this.citations.bind(this),this.citationsLength()),this.bb.createObjList(this.mentions.bind(this),this.mentionsLength()))}unpackTo(t){t.content=this.content(),t.parsedContent=this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),t.rootId=this.rootId(),t.rootCoordinate=this.rootCoordinate(),t.rootExternal=this.rootExternal(),t.rootKind=this.rootKind(),t.rootAuthor=this.rootAuthor(),t.rootRelays=this.bb.createScalarList(this.rootRelays.bind(this),this.rootRelaysLength()),t.parentId=this.parentId(),t.parentCoordinate=this.parentCoordinate(),t.parentExternal=this.parentExternal(),t.parentKind=this.parentKind(),t.parentAuthor=this.parentAuthor(),t.parentRelays=this.bb.createScalarList(this.parentRelays.bind(this),this.parentRelaysLength()),t.citations=this.bb.createObjList(this.citations.bind(this),this.citationsLength()),t.mentions=this.bb.createObjList(this.mentions.bind(this),this.mentionsLength())}}class ls{constructor(t=null,s=[],e=null,i=null,r=null,a=0,o=null,d=[],h=null,c=null,p=null,g=0,y=null,I=[],R=[],C=[]){this.content=t,this.parsedContent=s,this.rootId=e,this.rootCoordinate=i,this.rootExternal=r,this.rootKind=a,this.rootAuthor=o,this.rootRelays=d,this.parentId=h,this.parentCoordinate=c,this.parentExternal=p,this.parentKind=g,this.parentAuthor=y,this.parentRelays=I,this.citations=R,this.mentions=C}pack(t){const s=this.content!==null?t.createString(this.content):0,e=u.createParsedContentVector(t,t.createObjectOffsetList(this.parsedContent)),i=this.rootId!==null?t.createString(this.rootId):0,r=this.rootCoordinate!==null?t.createString(this.rootCoordinate):0,a=this.rootExternal!==null?t.createString(this.rootExternal):0,o=this.rootAuthor!==null?t.createString(this.rootAuthor):0,d=u.createRootRelaysVector(t,t.createObjectOffsetList(this.rootRelays)),h=this.parentId!==null?t.createString(this.parentId):0,c=this.parentCoordinate!==null?t.createString(this.parentCoordinate):0,p=this.parentExternal!==null?t.createString(this.parentExternal):0,g=this.parentAuthor!==null?t.createString(this.parentAuthor):0,y=u.createParentRelaysVector(t,t.createObjectOffsetList(this.parentRelays)),I=u.createCitationsVector(t,t.createObjectOffsetList(this.citations)),R=u.createMentionsVector(t,t.createObjectOffsetList(this.mentions));return u.createKind1111Parsed(t,s,e,i,r,a,this.rootKind,o,d,h,c,p,this.parentKind,g,y,I,R)}}class J{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsLiveActivityRef(t,s){return(s||new J).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsLiveActivityRef(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new J).__init(t.readInt32(t.position())+t.position(),t)}kind(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint16(this.bb_pos+t):0}pubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}identifier(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startLiveActivityRef(t){t.startObject(4)}static addKind(t,s){t.addFieldInt16(0,s,0)}static addPubkey(t,s){t.addFieldOffset(1,s,0)}static addIdentifier(t,s){t.addFieldOffset(2,s,0)}static addRelay(t,s){t.addFieldOffset(3,s,0)}static endLiveActivityRef(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),s}static createLiveActivityRef(t,s,e,i,r){return J.startLiveActivityRef(t),J.addKind(t,s),J.addPubkey(t,e),J.addIdentifier(t,i),J.addRelay(t,r),J.endLiveActivityRef(t)}unpack(){return new us(this.kind(),this.pubkey(),this.identifier(),this.relay())}unpackTo(t){t.kind=this.kind(),t.pubkey=this.pubkey(),t.identifier=this.identifier(),t.relay=this.relay()}}class us{constructor(t=0,s=null,e=null,i=null){this.kind=t,this.pubkey=s,this.identifier=e,this.relay=i}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.identifier!==null?t.createString(this.identifier):0,i=this.relay!==null?t.createString(this.relay):0;return J.createLiveActivityRef(t,this.kind,s,e,i)}}class ft{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsLiveChatParticipant(t,s){return(s||new ft).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsLiveChatParticipant(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new ft).__init(t.readInt32(t.position())+t.position(),t)}pubkey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startLiveChatParticipant(t){t.startObject(2)}static addPubkey(t,s){t.addFieldOffset(0,s,0)}static addRelay(t,s){t.addFieldOffset(1,s,0)}static endLiveChatParticipant(t){const s=t.endObject();return t.requiredField(s,4),s}static createLiveChatParticipant(t,s,e){return ft.startLiveChatParticipant(t),ft.addPubkey(t,s),ft.addRelay(t,e),ft.endLiveChatParticipant(t)}unpack(){return new _s(this.pubkey(),this.relay())}unpackTo(t){t.pubkey=this.pubkey(),t.relay=this.relay()}}class _s{constructor(t=null,s=null){this.pubkey=t,this.relay=s}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.relay!==null?t.createString(this.relay):0;return ft.createLiveChatParticipant(t,s,e)}}class gt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsLiveChatThreadRef(t,s){return(s||new gt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsLiveChatThreadRef(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new gt).__init(t.readInt32(t.position())+t.position(),t)}eventId(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startLiveChatThreadRef(t){t.startObject(2)}static addEventId(t,s){t.addFieldOffset(0,s,0)}static addRelay(t,s){t.addFieldOffset(1,s,0)}static endLiveChatThreadRef(t){const s=t.endObject();return t.requiredField(s,4),s}static createLiveChatThreadRef(t,s,e){return gt.startLiveChatThreadRef(t),gt.addEventId(t,s),gt.addRelay(t,e),gt.endLiveChatThreadRef(t)}unpack(){return new ps(this.eventId(),this.relay())}unpackTo(t){t.eventId=this.eventId(),t.relay=this.relay()}}class ps{constructor(t=null,s=null){this.eventId=t,this.relay=s}pack(t){const s=this.eventId!==null?t.createString(this.eventId):0,e=this.relay!==null?t.createString(this.relay):0;return gt.createLiveChatThreadRef(t,s,e)}}class A{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind1311Parsed(t,s){return(s||new A).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind1311Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new A).__init(t.readInt32(t.position())+t.position(),t)}content(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}parsedContent(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?(s||new B).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}parsedContentLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}activity(t){const s=this.bb.__offset(this.bb_pos,8);return s?(t||new J).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}threadRefs(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?(s||new gt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}threadRefsLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}mentions(t,s){const e=this.bb.__offset(this.bb_pos,12);return e?(s||new ft).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}mentionsLength(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind1311Parsed(t){t.startObject(5)}static addContent(t,s){t.addFieldOffset(0,s,0)}static addParsedContent(t,s){t.addFieldOffset(1,s,0)}static createParsedContentVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParsedContentVector(t,s){t.startVector(4,s,4)}static addActivity(t,s){t.addFieldOffset(2,s,0)}static addThreadRefs(t,s){t.addFieldOffset(3,s,0)}static createThreadRefsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startThreadRefsVector(t,s){t.startVector(4,s,4)}static addMentions(t,s){t.addFieldOffset(4,s,0)}static createMentionsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startMentionsVector(t,s){t.startVector(4,s,4)}static endKind1311Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,8),s}unpack(){return new fs(this.content(),this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),this.activity()!==null?this.activity().unpack():null,this.bb.createObjList(this.threadRefs.bind(this),this.threadRefsLength()),this.bb.createObjList(this.mentions.bind(this),this.mentionsLength()))}unpackTo(t){t.content=this.content(),t.parsedContent=this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),t.activity=this.activity()!==null?this.activity().unpack():null,t.threadRefs=this.bb.createObjList(this.threadRefs.bind(this),this.threadRefsLength()),t.mentions=this.bb.createObjList(this.mentions.bind(this),this.mentionsLength())}}class fs{constructor(t=null,s=[],e=null,i=[],r=[]){this.content=t,this.parsedContent=s,this.activity=e,this.threadRefs=i,this.mentions=r}pack(t){const s=this.content!==null?t.createString(this.content):0,e=A.createParsedContentVector(t,t.createObjectOffsetList(this.parsedContent)),i=this.activity!==null?this.activity.pack(t):0,r=A.createThreadRefsVector(t,t.createObjectOffsetList(this.threadRefs)),a=A.createMentionsVector(t,t.createObjectOffsetList(this.mentions));return A.startKind1311Parsed(t),A.addContent(t,s),A.addParsedContent(t,e),A.addActivity(t,i),A.addThreadRefs(t,r),A.addMentions(t,a),A.endKind1311Parsed(t)}}class Z{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind17375Parsed(t,s){return(s||new Z).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind17375Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Z).__init(t.readInt32(t.position())+t.position(),t)}mints(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}mintsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}p2pkPrivKey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}p2pkPubKey(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}decrypted(){const t=this.bb.__offset(this.bb_pos,10);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startKind17375Parsed(t){t.startObject(4)}static addMints(t,s){t.addFieldOffset(0,s,0)}static createMintsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startMintsVector(t,s){t.startVector(4,s,4)}static addP2pkPrivKey(t,s){t.addFieldOffset(1,s,0)}static addP2pkPubKey(t,s){t.addFieldOffset(2,s,0)}static addDecrypted(t,s){t.addFieldInt8(3,+s,0)}static endKind17375Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}static createKind17375Parsed(t,s,e,i,r){return Z.startKind17375Parsed(t),Z.addMints(t,s),Z.addP2pkPrivKey(t,e),Z.addP2pkPubKey(t,i),Z.addDecrypted(t,r),Z.endKind17375Parsed(t)}unpack(){return new gs(this.bb.createScalarList(this.mints.bind(this),this.mintsLength()),this.p2pkPrivKey(),this.p2pkPubKey(),this.decrypted())}unpackTo(t){t.mints=this.bb.createScalarList(this.mints.bind(this),this.mintsLength()),t.p2pkPrivKey=this.p2pkPrivKey(),t.p2pkPubKey=this.p2pkPubKey(),t.decrypted=this.decrypted()}}class gs{constructor(t=[],s=null,e=null,i=!1){this.mints=t,this.p2pkPrivKey=s,this.p2pkPubKey=e,this.decrypted=i}pack(t){const s=Z.createMintsVector(t,t.createObjectOffsetList(this.mints)),e=this.p2pkPrivKey!==null?t.createString(this.p2pkPrivKey):0,i=this.p2pkPubKey!==null?t.createString(this.p2pkPubKey):0;return Z.createKind17375Parsed(t,s,e,i,this.decrypted)}}class lt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsEmoji(t,s){return(s||new lt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsEmoji(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new lt).__init(t.readInt32(t.position())+t.position(),t)}shortcode(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}url(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startEmoji(t){t.startObject(2)}static addShortcode(t,s){t.addFieldOffset(0,s,0)}static addUrl(t,s){t.addFieldOffset(1,s,0)}static endEmoji(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createEmoji(t,s,e){return lt.startEmoji(t),lt.addShortcode(t,s),lt.addUrl(t,e),lt.endEmoji(t)}unpack(){return new ys(this.shortcode(),this.url())}unpackTo(t){t.shortcode=this.shortcode(),t.url=this.url()}}class ys{constructor(t=null,s=null){this.shortcode=t,this.url=s}pack(t){const s=this.shortcode!==null?t.createString(this.shortcode):0,e=this.url!==null?t.createString(this.url):0;return lt.createEmoji(t,s,e)}}var jt=(n=>(n[n.Like=0]="Like",n[n.Dislike=1]="Dislike",n[n.Emoji=2]="Emoji",n[n.Custom=3]="Custom",n))(jt||{});class M{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind17Parsed(t,s){return(s||new M).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind17Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new M).__init(t.readInt32(t.position())+t.position(),t)}reactionType(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt8(this.bb_pos+t):jt.Like}eventId(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}pubkey(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}eventKind(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}emoji(t){const s=this.bb.__offset(this.bb_pos,12);return s?(t||new lt).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}targetCoordinates(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind17Parsed(t){t.startObject(6)}static addReactionType(t,s){t.addFieldInt8(0,s,jt.Like)}static addEventId(t,s){t.addFieldOffset(1,s,0)}static addPubkey(t,s){t.addFieldOffset(2,s,0)}static addEventKind(t,s){t.addFieldInt64(3,s,BigInt("0"))}static addEmoji(t,s){t.addFieldOffset(4,s,0)}static addTargetCoordinates(t,s){t.addFieldOffset(5,s,0)}static endKind17Parsed(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),s}unpack(){return new Ps(this.reactionType(),this.eventId(),this.pubkey(),this.eventKind(),this.emoji()!==null?this.emoji().unpack():null,this.targetCoordinates())}unpackTo(t){t.reactionType=this.reactionType(),t.eventId=this.eventId(),t.pubkey=this.pubkey(),t.eventKind=this.eventKind(),t.emoji=this.emoji()!==null?this.emoji().unpack():null,t.targetCoordinates=this.targetCoordinates()}}class Ps{constructor(t=jt.Like,s=null,e=null,i=BigInt("0"),r=null,a=null){this.reactionType=t,this.eventId=s,this.pubkey=e,this.eventKind=i,this.emoji=r,this.targetCoordinates=a}pack(t){const s=this.eventId!==null?t.createString(this.eventId):0,e=this.pubkey!==null?t.createString(this.pubkey):0,i=this.emoji!==null?this.emoji.pack(t):0,r=this.targetCoordinates!==null?t.createString(this.targetCoordinates):0;return M.startKind17Parsed(t),M.addReactionType(t,this.reactionType),M.addEventId(t,s),M.addPubkey(t,e),M.addEventKind(t,this.eventKind),M.addEmoji(t,i),M.addTargetCoordinates(t,r),M.endKind17Parsed(t)}}class E{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind1Parsed(t,s){return(s||new E).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind1Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new E).__init(t.readInt32(t.position())+t.position(),t)}parsedContent(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new B).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}parsedContentLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}shortenedContent(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?(s||new B).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}shortenedContentLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}quotes(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?(s||new x).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}quotesLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}mentions(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?(s||new j).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}mentionsLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}reply(t){const s=this.bb.__offset(this.bb_pos,12);return s?(t||new j).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}root(t){const s=this.bb.__offset(this.bb_pos,14);return s?(t||new j).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startKind1Parsed(t){t.startObject(6)}static addParsedContent(t,s){t.addFieldOffset(0,s,0)}static createParsedContentVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParsedContentVector(t,s){t.startVector(4,s,4)}static addShortenedContent(t,s){t.addFieldOffset(1,s,0)}static createShortenedContentVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startShortenedContentVector(t,s){t.startVector(4,s,4)}static addQuotes(t,s){t.addFieldOffset(2,s,0)}static createQuotesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startQuotesVector(t,s){t.startVector(4,s,4)}static addMentions(t,s){t.addFieldOffset(3,s,0)}static createMentionsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startMentionsVector(t,s){t.startVector(4,s,4)}static addReply(t,s){t.addFieldOffset(4,s,0)}static addRoot(t,s){t.addFieldOffset(5,s,0)}static endKind1Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}unpack(){return new Os(this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),this.bb.createObjList(this.shortenedContent.bind(this),this.shortenedContentLength()),this.bb.createObjList(this.quotes.bind(this),this.quotesLength()),this.bb.createObjList(this.mentions.bind(this),this.mentionsLength()),this.reply()!==null?this.reply().unpack():null,this.root()!==null?this.root().unpack():null)}unpackTo(t){t.parsedContent=this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),t.shortenedContent=this.bb.createObjList(this.shortenedContent.bind(this),this.shortenedContentLength()),t.quotes=this.bb.createObjList(this.quotes.bind(this),this.quotesLength()),t.mentions=this.bb.createObjList(this.mentions.bind(this),this.mentionsLength()),t.reply=this.reply()!==null?this.reply().unpack():null,t.root=this.root()!==null?this.root().unpack():null}}class Os{constructor(t=[],s=[],e=[],i=[],r=null,a=null){this.parsedContent=t,this.shortenedContent=s,this.quotes=e,this.mentions=i,this.reply=r,this.root=a}pack(t){const s=E.createParsedContentVector(t,t.createObjectOffsetList(this.parsedContent)),e=E.createShortenedContentVector(t,t.createObjectOffsetList(this.shortenedContent)),i=E.createQuotesVector(t,t.createObjectOffsetList(this.quotes)),r=E.createMentionsVector(t,t.createObjectOffsetList(this.mentions)),a=this.reply!==null?this.reply.pack(t):0,o=this.root!==null?this.root.pack(t):0;return E.startKind1Parsed(t),E.addParsedContent(t,s),E.addShortenedContent(t,e),E.addQuotes(t,i),E.addMentions(t,r),E.addReply(t,a),E.addRoot(t,o),E.endKind1Parsed(t)}}class T{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsImetaTag(t,s){return(s||new T).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsImetaTag(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new T).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}mimeType(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}dim(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}alt(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}blurhash(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}hash(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}fallback(t,s){const e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}fallbackLength(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.__vector_len(this.bb_pos+t):0}annotateUser(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startImetaTag(t){t.startObject(8)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addMimeType(t,s){t.addFieldOffset(1,s,0)}static addDim(t,s){t.addFieldOffset(2,s,0)}static addAlt(t,s){t.addFieldOffset(3,s,0)}static addBlurhash(t,s){t.addFieldOffset(4,s,0)}static addHash(t,s){t.addFieldOffset(5,s,0)}static addFallback(t,s){t.addFieldOffset(6,s,0)}static createFallbackVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startFallbackVector(t,s){t.startVector(4,s,4)}static addAnnotateUser(t,s){t.addFieldOffset(7,s,0)}static endImetaTag(t){const s=t.endObject();return t.requiredField(s,4),s}static createImetaTag(t,s,e,i,r,a,o,d,h){return T.startImetaTag(t),T.addUrl(t,s),T.addMimeType(t,e),T.addDim(t,i),T.addAlt(t,r),T.addBlurhash(t,a),T.addHash(t,o),T.addFallback(t,d),T.addAnnotateUser(t,h),T.endImetaTag(t)}unpack(){return new Ss(this.url(),this.mimeType(),this.dim(),this.alt(),this.blurhash(),this.hash(),this.bb.createScalarList(this.fallback.bind(this),this.fallbackLength()),this.annotateUser())}unpackTo(t){t.url=this.url(),t.mimeType=this.mimeType(),t.dim=this.dim(),t.alt=this.alt(),t.blurhash=this.blurhash(),t.hash=this.hash(),t.fallback=this.bb.createScalarList(this.fallback.bind(this),this.fallbackLength()),t.annotateUser=this.annotateUser()}}class Ss{constructor(t=null,s=null,e=null,i=null,r=null,a=null,o=[],d=null){this.url=t,this.mimeType=s,this.dim=e,this.alt=i,this.blurhash=r,this.hash=a,this.fallback=o,this.annotateUser=d}pack(t){const s=this.url!==null?t.createString(this.url):0,e=this.mimeType!==null?t.createString(this.mimeType):0,i=this.dim!==null?t.createString(this.dim):0,r=this.alt!==null?t.createString(this.alt):0,a=this.blurhash!==null?t.createString(this.blurhash):0,o=this.hash!==null?t.createString(this.hash):0,d=T.createFallbackVector(t,t.createObjectOffsetList(this.fallback)),h=this.annotateUser!==null?t.createString(this.annotateUser):0;return T.createImetaTag(t,s,e,i,r,a,o,d,h)}}class m{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind20Parsed(t,s){return(s||new m).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind20Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new m).__init(t.readInt32(t.position())+t.position(),t)}title(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}description(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}images(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?(s||new T).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}imagesLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}contentWarning(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}location(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}geohash(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}hashtags(t,s){const e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}hashtagsLength(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.__vector_len(this.bb_pos+t):0}mentions(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?(s||new x).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}mentionsLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind20Parsed(t){t.startObject(8)}static addTitle(t,s){t.addFieldOffset(0,s,0)}static addDescription(t,s){t.addFieldOffset(1,s,0)}static addImages(t,s){t.addFieldOffset(2,s,0)}static createImagesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startImagesVector(t,s){t.startVector(4,s,4)}static addContentWarning(t,s){t.addFieldOffset(3,s,0)}static addLocation(t,s){t.addFieldOffset(4,s,0)}static addGeohash(t,s){t.addFieldOffset(5,s,0)}static addHashtags(t,s){t.addFieldOffset(6,s,0)}static createHashtagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startHashtagsVector(t,s){t.startVector(4,s,4)}static addMentions(t,s){t.addFieldOffset(7,s,0)}static createMentionsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startMentionsVector(t,s){t.startVector(4,s,4)}static endKind20Parsed(t){const s=t.endObject();return t.requiredField(s,8),s}static createKind20Parsed(t,s,e,i,r,a,o,d,h){return m.startKind20Parsed(t),m.addTitle(t,s),m.addDescription(t,e),m.addImages(t,i),m.addContentWarning(t,r),m.addLocation(t,a),m.addGeohash(t,o),m.addHashtags(t,d),m.addMentions(t,h),m.endKind20Parsed(t)}unpack(){return new ks(this.title(),this.description(),this.bb.createObjList(this.images.bind(this),this.imagesLength()),this.contentWarning(),this.location(),this.geohash(),this.bb.createScalarList(this.hashtags.bind(this),this.hashtagsLength()),this.bb.createObjList(this.mentions.bind(this),this.mentionsLength()))}unpackTo(t){t.title=this.title(),t.description=this.description(),t.images=this.bb.createObjList(this.images.bind(this),this.imagesLength()),t.contentWarning=this.contentWarning(),t.location=this.location(),t.geohash=this.geohash(),t.hashtags=this.bb.createScalarList(this.hashtags.bind(this),this.hashtagsLength()),t.mentions=this.bb.createObjList(this.mentions.bind(this),this.mentionsLength())}}class ks{constructor(t=null,s=null,e=[],i=null,r=null,a=null,o=[],d=[]){this.title=t,this.description=s,this.images=e,this.contentWarning=i,this.location=r,this.geohash=a,this.hashtags=o,this.mentions=d}pack(t){const s=this.title!==null?t.createString(this.title):0,e=this.description!==null?t.createString(this.description):0,i=m.createImagesVector(t,t.createObjectOffsetList(this.images)),r=this.contentWarning!==null?t.createString(this.contentWarning):0,a=this.location!==null?t.createString(this.location):0,o=this.geohash!==null?t.createString(this.geohash):0,d=m.createHashtagsVector(t,t.createObjectOffsetList(this.hashtags)),h=m.createMentionsVector(t,t.createObjectOffsetList(this.mentions));return m.createKind20Parsed(t,s,e,i,r,a,o,d,h)}}class F{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsVideoVariant(t,s){return(s||new F).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsVideoVariant(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new F).__init(t.readInt32(t.position())+t.position(),t)}url(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}mimeType(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}dim(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}blurhash(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}hash(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}duration(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readFloat32(this.bb_pos+t):0}bitrate(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}image(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}fallback(t,s){const e=this.bb.__offset(this.bb_pos,20);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}fallbackLength(){const t=this.bb.__offset(this.bb_pos,20);return t?this.bb.__vector_len(this.bb_pos+t):0}static startVideoVariant(t){t.startObject(9)}static addUrl(t,s){t.addFieldOffset(0,s,0)}static addMimeType(t,s){t.addFieldOffset(1,s,0)}static addDim(t,s){t.addFieldOffset(2,s,0)}static addBlurhash(t,s){t.addFieldOffset(3,s,0)}static addHash(t,s){t.addFieldOffset(4,s,0)}static addDuration(t,s){t.addFieldFloat32(5,s,0)}static addBitrate(t,s){t.addFieldInt64(6,s,BigInt("0"))}static addImage(t,s){t.addFieldOffset(7,s,0)}static addFallback(t,s){t.addFieldOffset(8,s,0)}static createFallbackVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startFallbackVector(t,s){t.startVector(4,s,4)}static endVideoVariant(t){const s=t.endObject();return t.requiredField(s,4),s}static createVideoVariant(t,s,e,i,r,a,o,d,h,c){return F.startVideoVariant(t),F.addUrl(t,s),F.addMimeType(t,e),F.addDim(t,i),F.addBlurhash(t,r),F.addHash(t,a),F.addDuration(t,o),F.addBitrate(t,d),F.addImage(t,h),F.addFallback(t,c),F.endVideoVariant(t)}unpack(){return new Is(this.url(),this.mimeType(),this.dim(),this.blurhash(),this.hash(),this.duration(),this.bitrate(),this.image(),this.bb.createScalarList(this.fallback.bind(this),this.fallbackLength()))}unpackTo(t){t.url=this.url(),t.mimeType=this.mimeType(),t.dim=this.dim(),t.blurhash=this.blurhash(),t.hash=this.hash(),t.duration=this.duration(),t.bitrate=this.bitrate(),t.image=this.image(),t.fallback=this.bb.createScalarList(this.fallback.bind(this),this.fallbackLength())}}class Is{constructor(t=null,s=null,e=null,i=null,r=null,a=0,o=BigInt("0"),d=null,h=[]){this.url=t,this.mimeType=s,this.dim=e,this.blurhash=i,this.hash=r,this.duration=a,this.bitrate=o,this.image=d,this.fallback=h}pack(t){const s=this.url!==null?t.createString(this.url):0,e=this.mimeType!==null?t.createString(this.mimeType):0,i=this.dim!==null?t.createString(this.dim):0,r=this.blurhash!==null?t.createString(this.blurhash):0,a=this.hash!==null?t.createString(this.hash):0,o=this.image!==null?t.createString(this.image):0,d=F.createFallbackVector(t,t.createObjectOffsetList(this.fallback));return F.createVideoVariant(t,s,e,i,r,a,this.duration,this.bitrate,o,d)}}class k{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind22Parsed(t,s){return(s||new k).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind22Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new k).__init(t.readInt32(t.position())+t.position(),t)}title(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}description(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}videos(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?(s||new F).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}videosLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}alt(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}contentWarning(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}duration(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readFloat32(this.bb_pos+t):0}publishedAt(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}hashtags(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}hashtagsLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}participants(t,s){const e=this.bb.__offset(this.bb_pos,20);return e?(s||new x).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}participantsLength(){const t=this.bb.__offset(this.bb_pos,20);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind22Parsed(t){t.startObject(9)}static addTitle(t,s){t.addFieldOffset(0,s,0)}static addDescription(t,s){t.addFieldOffset(1,s,0)}static addVideos(t,s){t.addFieldOffset(2,s,0)}static createVideosVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startVideosVector(t,s){t.startVector(4,s,4)}static addAlt(t,s){t.addFieldOffset(3,s,0)}static addContentWarning(t,s){t.addFieldOffset(4,s,0)}static addDuration(t,s){t.addFieldFloat32(5,s,0)}static addPublishedAt(t,s){t.addFieldInt64(6,s,BigInt("0"))}static addHashtags(t,s){t.addFieldOffset(7,s,0)}static createHashtagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startHashtagsVector(t,s){t.startVector(4,s,4)}static addParticipants(t,s){t.addFieldOffset(8,s,0)}static createParticipantsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParticipantsVector(t,s){t.startVector(4,s,4)}static endKind22Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,8),s}static createKind22Parsed(t,s,e,i,r,a,o,d,h,c){return k.startKind22Parsed(t),k.addTitle(t,s),k.addDescription(t,e),k.addVideos(t,i),k.addAlt(t,r),k.addContentWarning(t,a),k.addDuration(t,o),k.addPublishedAt(t,d),k.addHashtags(t,h),k.addParticipants(t,c),k.endKind22Parsed(t)}unpack(){return new Ls(this.title(),this.description(),this.bb.createObjList(this.videos.bind(this),this.videosLength()),this.alt(),this.contentWarning(),this.duration(),this.publishedAt(),this.bb.createScalarList(this.hashtags.bind(this),this.hashtagsLength()),this.bb.createObjList(this.participants.bind(this),this.participantsLength()))}unpackTo(t){t.title=this.title(),t.description=this.description(),t.videos=this.bb.createObjList(this.videos.bind(this),this.videosLength()),t.alt=this.alt(),t.contentWarning=this.contentWarning(),t.duration=this.duration(),t.publishedAt=this.publishedAt(),t.hashtags=this.bb.createScalarList(this.hashtags.bind(this),this.hashtagsLength()),t.participants=this.bb.createObjList(this.participants.bind(this),this.participantsLength())}}class Ls{constructor(t=null,s=null,e=[],i=null,r=null,a=0,o=BigInt("0"),d=[],h=[]){this.title=t,this.description=s,this.videos=e,this.alt=i,this.contentWarning=r,this.duration=a,this.publishedAt=o,this.hashtags=d,this.participants=h}pack(t){const s=this.title!==null?t.createString(this.title):0,e=this.description!==null?t.createString(this.description):0,i=k.createVideosVector(t,t.createObjectOffsetList(this.videos)),r=this.alt!==null?t.createString(this.alt):0,a=this.contentWarning!==null?t.createString(this.contentWarning):0,o=k.createHashtagsVector(t,t.createObjectOffsetList(this.hashtags)),d=k.createParticipantsVector(t,t.createObjectOffsetList(this.participants));return k.createKind22Parsed(t,s,e,i,r,a,this.duration,this.publishedAt,o,d)}}class V{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind30023Parsed(t,s){return(s||new V).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind30023Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new V).__init(t.readInt32(t.position())+t.position(),t)}slug(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}title(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}summary(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}image(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}canonical(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}topics(t,s){const e=this.bb.__offset(this.bb_pos,14);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}topicsLength(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.__vector_len(this.bb_pos+t):0}publishedAt(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}naddr(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}content(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind30023Parsed(t){t.startObject(9)}static addSlug(t,s){t.addFieldOffset(0,s,0)}static addTitle(t,s){t.addFieldOffset(1,s,0)}static addSummary(t,s){t.addFieldOffset(2,s,0)}static addImage(t,s){t.addFieldOffset(3,s,0)}static addCanonical(t,s){t.addFieldOffset(4,s,0)}static addTopics(t,s){t.addFieldOffset(5,s,0)}static createTopicsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTopicsVector(t,s){t.startVector(4,s,4)}static addPublishedAt(t,s){t.addFieldInt64(6,s,BigInt("0"))}static addNaddr(t,s){t.addFieldOffset(7,s,0)}static addContent(t,s){t.addFieldOffset(8,s,0)}static endKind30023Parsed(t){return t.endObject()}static createKind30023Parsed(t,s,e,i,r,a,o,d,h,c){return V.startKind30023Parsed(t),V.addSlug(t,s),V.addTitle(t,e),V.addSummary(t,i),V.addImage(t,r),V.addCanonical(t,a),V.addTopics(t,o),V.addPublishedAt(t,d),V.addNaddr(t,h),V.addContent(t,c),V.endKind30023Parsed(t)}unpack(){return new ms(this.slug(),this.title(),this.summary(),this.image(),this.canonical(),this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),this.publishedAt(),this.naddr(),this.content())}unpackTo(t){t.slug=this.slug(),t.title=this.title(),t.summary=this.summary(),t.image=this.image(),t.canonical=this.canonical(),t.topics=this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),t.publishedAt=this.publishedAt(),t.naddr=this.naddr(),t.content=this.content()}}class ms{constructor(t=null,s=null,e=null,i=null,r=null,a=[],o=BigInt("0"),d=null,h=null){this.slug=t,this.title=s,this.summary=e,this.image=i,this.canonical=r,this.topics=a,this.publishedAt=o,this.naddr=d,this.content=h}pack(t){const s=this.slug!==null?t.createString(this.slug):0,e=this.title!==null?t.createString(this.title):0,i=this.summary!==null?t.createString(this.summary):0,r=this.image!==null?t.createString(this.image):0,a=this.canonical!==null?t.createString(this.canonical):0,o=V.createTopicsVector(t,t.createObjectOffsetList(this.topics)),d=this.naddr!==null?t.createString(this.naddr):0,h=this.content!==null?t.createString(this.content):0;return V.createKind30023Parsed(t,s,e,i,r,a,o,this.publishedAt,d,h)}}class et{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsContact(t,s){return(s||new et).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsContact(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new et).__init(t.readInt32(t.position())+t.position(),t)}pubkey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}petname(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startContact(t){t.startObject(3)}static addPubkey(t,s){t.addFieldOffset(0,s,0)}static addRelays(t,s){t.addFieldOffset(1,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addPetname(t,s){t.addFieldOffset(2,s,0)}static endContact(t){const s=t.endObject();return t.requiredField(s,4),s}static createContact(t,s,e,i){return et.startContact(t),et.addPubkey(t,s),et.addRelays(t,e),et.addPetname(t,i),et.endContact(t)}unpack(){return new vs(this.pubkey(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.petname())}unpackTo(t){t.pubkey=this.pubkey(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.petname=this.petname()}}class vs{constructor(t=null,s=[],e=null){this.pubkey=t,this.relays=s,this.petname=e}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=et.createRelaysVector(t,t.createObjectOffsetList(this.relays)),i=this.petname!==null?t.createString(this.petname):0;return et.createContact(t,s,e,i)}}class Ot{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind3Parsed(t,s){return(s||new Ot).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind3Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Ot).__init(t.readInt32(t.position())+t.position(),t)}contacts(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new et).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}contactsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startKind3Parsed(t){t.startObject(1)}static addContacts(t,s){t.addFieldOffset(0,s,0)}static createContactsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startContactsVector(t,s){t.startVector(4,s,4)}static endKind3Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}static createKind3Parsed(t,s){return Ot.startKind3Parsed(t),Ot.addContacts(t,s),Ot.endKind3Parsed(t)}unpack(){return new Fs(this.bb.createObjList(this.contacts.bind(this),this.contactsLength()))}unpackTo(t){t.contacts=this.bb.createObjList(this.contacts.bind(this),this.contactsLength())}}class Fs{constructor(t=[]){this.contacts=t}pack(t){const s=Ot.createContactsVector(t,t.createObjectOffsetList(this.contacts));return Ot.createKind3Parsed(t,s)}}class X{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind4Parsed(t,s){return(s||new X).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind4Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new X).__init(t.readInt32(t.position())+t.position(),t)}parsedContent(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new B).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}parsedContentLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}decryptedContent(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}chatId(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}recipient(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind4Parsed(t){t.startObject(4)}static addParsedContent(t,s){t.addFieldOffset(0,s,0)}static createParsedContentVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParsedContentVector(t,s){t.startVector(4,s,4)}static addDecryptedContent(t,s){t.addFieldOffset(1,s,0)}static addChatId(t,s){t.addFieldOffset(2,s,0)}static addRecipient(t,s){t.addFieldOffset(3,s,0)}static endKind4Parsed(t){const s=t.endObject();return t.requiredField(s,8),t.requiredField(s,10),s}static createKind4Parsed(t,s,e,i,r){return X.startKind4Parsed(t),X.addParsedContent(t,s),X.addDecryptedContent(t,e),X.addChatId(t,i),X.addRecipient(t,r),X.endKind4Parsed(t)}unpack(){return new Vs(this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),this.decryptedContent(),this.chatId(),this.recipient())}unpackTo(t){t.parsedContent=this.bb.createObjList(this.parsedContent.bind(this),this.parsedContentLength()),t.decryptedContent=this.decryptedContent(),t.chatId=this.chatId(),t.recipient=this.recipient()}}class Vs{constructor(t=[],s=null,e=null,i=null){this.parsedContent=t,this.decryptedContent=s,this.chatId=e,this.recipient=i}pack(t){const s=X.createParsedContentVector(t,t.createObjectOffsetList(this.parsedContent)),e=this.decryptedContent!==null?t.createString(this.decryptedContent):0,i=this.chatId!==null?t.createString(this.chatId):0,r=this.recipient!==null?t.createString(this.recipient):0;return X.createKind4Parsed(t,s,e,i,r)}}class Rt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind6Parsed(t,s){return(s||new Rt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind6Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Rt).__init(t.readInt32(t.position())+t.position(),t)}repostedEvent(t){const s=this.bb.__offset(this.bb_pos,4);return s?(t||new O).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startKind6Parsed(t){t.startObject(1)}static addRepostedEvent(t,s){t.addFieldOffset(0,s,0)}static endKind6Parsed(t){return t.endObject()}static createKind6Parsed(t,s){return Rt.startKind6Parsed(t),Rt.addRepostedEvent(t,s),Rt.endKind6Parsed(t)}unpack(){return new Rs(this.repostedEvent()!==null?this.repostedEvent().unpack():null)}unpackTo(t){t.repostedEvent=this.repostedEvent()!==null?this.repostedEvent().unpack():null}}class Rs{constructor(t=null){this.repostedEvent=t}pack(t){const s=this.repostedEvent!==null?this.repostedEvent.pack(t):0;return Rt.createKind6Parsed(t,s)}}class rt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind7374Parsed(t,s){return(s||new rt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind7374Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new rt).__init(t.readInt32(t.position())+t.position(),t)}quoteId(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}mintUrl(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}expiration(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}static startKind7374Parsed(t){t.startObject(3)}static addQuoteId(t,s){t.addFieldOffset(0,s,0)}static addMintUrl(t,s){t.addFieldOffset(1,s,0)}static addExpiration(t,s){t.addFieldInt64(2,s,BigInt("0"))}static endKind7374Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createKind7374Parsed(t,s,e,i){return rt.startKind7374Parsed(t),rt.addQuoteId(t,s),rt.addMintUrl(t,e),rt.addExpiration(t,i),rt.endKind7374Parsed(t)}unpack(){return new Es(this.quoteId(),this.mintUrl(),this.expiration())}unpackTo(t){t.quoteId=this.quoteId(),t.mintUrl=this.mintUrl(),t.expiration=this.expiration()}}class Es{constructor(t=null,s=null,e=BigInt("0")){this.quoteId=t,this.mintUrl=s,this.expiration=e}pack(t){const s=this.quoteId!==null?t.createString(this.quoteId):0,e=this.mintUrl!==null?t.createString(this.mintUrl):0;return rt.createKind7374Parsed(t,s,e,this.expiration)}}class at{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsDLEQProof(t,s){return(s||new at).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsDLEQProof(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new at).__init(t.readInt32(t.position())+t.position(),t)}e(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}s(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}r(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startDLEQProof(t){t.startObject(3)}static addE(t,s){t.addFieldOffset(0,s,0)}static addS(t,s){t.addFieldOffset(1,s,0)}static addR(t,s){t.addFieldOffset(2,s,0)}static endDLEQProof(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),t.requiredField(s,8),s}static createDLEQProof(t,s,e,i){return at.startDLEQProof(t),at.addE(t,s),at.addS(t,e),at.addR(t,i),at.endDLEQProof(t)}unpack(){return new ws(this.e(),this.s(),this.r())}unpackTo(t){t.e=this.e(),t.s=this.s(),t.r=this.r()}}class ws{constructor(t=null,s=null,e=null){this.e=t,this.s=s,this.r=e}pack(t){const s=this.e!==null?t.createString(this.e):0,e=this.s!==null?t.createString(this.s):0,i=this.r!==null?t.createString(this.r):0;return at.createDLEQProof(t,s,e,i)}}class ut{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsHTLCWitness(t,s){return(s||new ut).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsHTLCWitness(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new ut).__init(t.readInt32(t.position())+t.position(),t)}preimage(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}signatures(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}signaturesLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}static startHTLCWitness(t){t.startObject(2)}static addPreimage(t,s){t.addFieldOffset(0,s,0)}static addSignatures(t,s){t.addFieldOffset(1,s,0)}static createSignaturesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startSignaturesVector(t,s){t.startVector(4,s,4)}static endHTLCWitness(t){const s=t.endObject();return t.requiredField(s,4),s}static createHTLCWitness(t,s,e){return ut.startHTLCWitness(t),ut.addPreimage(t,s),ut.addSignatures(t,e),ut.endHTLCWitness(t)}unpack(){return new Ts(this.preimage(),this.bb.createScalarList(this.signatures.bind(this),this.signaturesLength()))}unpackTo(t){t.preimage=this.preimage(),t.signatures=this.bb.createScalarList(this.signatures.bind(this),this.signaturesLength())}}class Ts{constructor(t=null,s=[]){this.preimage=t,this.signatures=s}pack(t){const s=this.preimage!==null?t.createString(this.preimage):0,e=ut.createSignaturesVector(t,t.createObjectOffsetList(this.signatures));return ut.createHTLCWitness(t,s,e)}}class St{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsP2PKWitness(t,s){return(s||new St).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsP2PKWitness(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new St).__init(t.readInt32(t.position())+t.position(),t)}signatures(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}signaturesLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startP2PKWitness(t){t.startObject(1)}static addSignatures(t,s){t.addFieldOffset(0,s,0)}static createSignaturesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startSignaturesVector(t,s){t.startVector(4,s,4)}static endP2PKWitness(t){return t.endObject()}static createP2PKWitness(t,s){return St.startP2PKWitness(t),St.addSignatures(t,s),St.endP2PKWitness(t)}unpack(){return new Ks(this.bb.createScalarList(this.signatures.bind(this),this.signaturesLength()))}unpackTo(t){t.signatures=this.bb.createScalarList(this.signatures.bind(this),this.signaturesLength())}}class Ks{constructor(t=[]){this.signatures=t}pack(t){const s=St.createSignaturesVector(t,t.createObjectOffsetList(this.signatures));return St.createP2PKWitness(t,s)}}class Et{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsWitnessString(t,s){return(s||new Et).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsWitnessString(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Et).__init(t.readInt32(t.position())+t.position(),t)}value(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startWitnessString(t){t.startObject(1)}static addValue(t,s){t.addFieldOffset(0,s,0)}static endWitnessString(t){return t.endObject()}static createWitnessString(t,s){return Et.startWitnessString(t),Et.addValue(t,s),Et.endWitnessString(t)}unpack(){return new Bs(this.value())}unpackTo(t){t.value=this.value()}}class Bs{constructor(t=null){this.value=t}pack(t){const s=this.value!==null?t.createString(this.value):0;return Et.createWitnessString(t,s)}}var Nt=(n=>(n[n.NONE=0]="NONE",n[n.WitnessString=1]="WitnessString",n[n.P2PKWitness=2]="P2PKWitness",n[n.HTLCWitness=3]="HTLCWitness",n))(Nt||{});function js(n,t){switch(Nt[n]){case"NONE":return null;case"WitnessString":return t(new Et);case"P2PKWitness":return t(new St);case"HTLCWitness":return t(new ut);default:return null}}class w{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsProof(t,s){return(s||new w).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsProof(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new w).__init(t.readInt32(t.position())+t.position(),t)}amount(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}id(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}secret(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}c(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}dleq(t){const s=this.bb.__offset(this.bb_pos,12);return s?(t||new at).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}witnessType(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readUint8(this.bb_pos+t):Nt.NONE}witness(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__union(t,this.bb_pos+s):null}version(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.readUint8(this.bb_pos+t):0}static startProof(t){t.startObject(8)}static addAmount(t,s){t.addFieldInt64(0,s,BigInt("0"))}static addId(t,s){t.addFieldOffset(1,s,0)}static addSecret(t,s){t.addFieldOffset(2,s,0)}static addC(t,s){t.addFieldOffset(3,s,0)}static addDleq(t,s){t.addFieldOffset(4,s,0)}static addWitnessType(t,s){t.addFieldInt8(5,s,Nt.NONE)}static addWitness(t,s){t.addFieldOffset(6,s,0)}static addVersion(t,s){t.addFieldInt8(7,s,0)}static endProof(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),t.requiredField(s,10),s}unpack(){return new Cs(this.amount(),this.id(),this.secret(),this.c(),this.dleq()!==null?this.dleq().unpack():null,this.witnessType(),(()=>{const t=js(this.witnessType(),this.witness.bind(this));return t===null?null:t.unpack()})(),this.version())}unpackTo(t){t.amount=this.amount(),t.id=this.id(),t.secret=this.secret(),t.c=this.c(),t.dleq=this.dleq()!==null?this.dleq().unpack():null,t.witnessType=this.witnessType(),t.witness=(()=>{const s=js(this.witnessType(),this.witness.bind(this));return s===null?null:s.unpack()})(),t.version=this.version()}}class Cs{constructor(t=BigInt("0"),s=null,e=null,i=null,r=null,a=Nt.NONE,o=null,d=0){this.amount=t,this.id=s,this.secret=e,this.c=i,this.dleq=r,this.witnessType=a,this.witness=o,this.version=d}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.secret!==null?t.createString(this.secret):0,i=this.c!==null?t.createString(this.c):0,r=this.dleq!==null?this.dleq.pack(t):0,a=t.createObjectOffset(this.witness);return w.startProof(t),w.addAmount(t,this.amount),w.addId(t,s),w.addSecret(t,e),w.addC(t,i),w.addDleq(t,r),w.addWitnessType(t,this.witnessType),w.addWitness(t,a),w.addVersion(t,this.version),w.endProof(t)}}class q{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind7375Parsed(t,s){return(s||new q).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind7375Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new q).__init(t.readInt32(t.position())+t.position(),t)}mintUrl(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}proofs(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?(s||new w).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}proofsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}deletedIds(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}deletedIdsLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}decrypted(){const t=this.bb.__offset(this.bb_pos,10);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startKind7375Parsed(t){t.startObject(4)}static addMintUrl(t,s){t.addFieldOffset(0,s,0)}static addProofs(t,s){t.addFieldOffset(1,s,0)}static createProofsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startProofsVector(t,s){t.startVector(4,s,4)}static addDeletedIds(t,s){t.addFieldOffset(2,s,0)}static createDeletedIdsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startDeletedIdsVector(t,s){t.startVector(4,s,4)}static addDecrypted(t,s){t.addFieldInt8(3,+s,0)}static endKind7375Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createKind7375Parsed(t,s,e,i,r){return q.startKind7375Parsed(t),q.addMintUrl(t,s),q.addProofs(t,e),q.addDeletedIds(t,i),q.addDecrypted(t,r),q.endKind7375Parsed(t)}unpack(){return new As(this.mintUrl(),this.bb.createObjList(this.proofs.bind(this),this.proofsLength()),this.bb.createScalarList(this.deletedIds.bind(this),this.deletedIdsLength()),this.decrypted())}unpackTo(t){t.mintUrl=this.mintUrl(),t.proofs=this.bb.createObjList(this.proofs.bind(this),this.proofsLength()),t.deletedIds=this.bb.createScalarList(this.deletedIds.bind(this),this.deletedIdsLength()),t.decrypted=this.decrypted()}}class As{constructor(t=null,s=[],e=[],i=!1){this.mintUrl=t,this.proofs=s,this.deletedIds=e,this.decrypted=i}pack(t){const s=this.mintUrl!==null?t.createString(this.mintUrl):0,e=q.createProofsVector(t,t.createObjectOffsetList(this.proofs)),i=q.createDeletedIdsVector(t,t.createObjectOffsetList(this.deletedIds));return q.createKind7375Parsed(t,s,e,i,this.decrypted)}}class ${constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsHistoryTag(t,s){return(s||new $).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsHistoryTag(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new $).__init(t.readInt32(t.position())+t.position(),t)}name(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}value(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}marker(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startHistoryTag(t){t.startObject(4)}static addName(t,s){t.addFieldOffset(0,s,0)}static addValue(t,s){t.addFieldOffset(1,s,0)}static addRelay(t,s){t.addFieldOffset(2,s,0)}static addMarker(t,s){t.addFieldOffset(3,s,0)}static endHistoryTag(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createHistoryTag(t,s,e,i,r){return $.startHistoryTag(t),$.addName(t,s),$.addValue(t,e),$.addRelay(t,i),$.addMarker(t,r),$.endHistoryTag(t)}unpack(){return new Ns(this.name(),this.value(),this.relay(),this.marker())}unpackTo(t){t.name=this.name(),t.value=this.value(),t.relay=this.relay(),t.marker=this.marker()}}class Ns{constructor(t=null,s=null,e=null,i=null){this.name=t,this.value=s,this.relay=e,this.marker=i}pack(t){const s=this.name!==null?t.createString(this.name):0,e=this.value!==null?t.createString(this.value):0,i=this.relay!==null?t.createString(this.relay):0,r=this.marker!==null?t.createString(this.marker):0;return $.createHistoryTag(t,s,e,i,r)}}class v{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind7376Parsed(t,s){return(s||new v).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind7376Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new v).__init(t.readInt32(t.position())+t.position(),t)}direction(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}amount(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt32(this.bb_pos+t):0}createdEvents(t,s){const e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}createdEventsLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}destroyedEvents(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}destroyedEventsLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}redeemedEvents(t,s){const e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}redeemedEventsLength(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.__vector_len(this.bb_pos+t):0}tags(t,s){const e=this.bb.__offset(this.bb_pos,14);return e?(s||new $).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}tagsLength(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.__vector_len(this.bb_pos+t):0}decrypted(){const t=this.bb.__offset(this.bb_pos,16);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startKind7376Parsed(t){t.startObject(7)}static addDirection(t,s){t.addFieldOffset(0,s,0)}static addAmount(t,s){t.addFieldInt32(1,s,0)}static addCreatedEvents(t,s){t.addFieldOffset(2,s,0)}static createCreatedEventsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startCreatedEventsVector(t,s){t.startVector(4,s,4)}static addDestroyedEvents(t,s){t.addFieldOffset(3,s,0)}static createDestroyedEventsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startDestroyedEventsVector(t,s){t.startVector(4,s,4)}static addRedeemedEvents(t,s){t.addFieldOffset(4,s,0)}static createRedeemedEventsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRedeemedEventsVector(t,s){t.startVector(4,s,4)}static addTags(t,s){t.addFieldOffset(5,s,0)}static createTagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTagsVector(t,s){t.startVector(4,s,4)}static addDecrypted(t,s){t.addFieldInt8(6,+s,0)}static endKind7376Parsed(t){const s=t.endObject();return t.requiredField(s,4),s}static createKind7376Parsed(t,s,e,i,r,a,o,d){return v.startKind7376Parsed(t),v.addDirection(t,s),v.addAmount(t,e),v.addCreatedEvents(t,i),v.addDestroyedEvents(t,r),v.addRedeemedEvents(t,a),v.addTags(t,o),v.addDecrypted(t,d),v.endKind7376Parsed(t)}unpack(){return new Ds(this.direction(),this.amount(),this.bb.createScalarList(this.createdEvents.bind(this),this.createdEventsLength()),this.bb.createScalarList(this.destroyedEvents.bind(this),this.destroyedEventsLength()),this.bb.createScalarList(this.redeemedEvents.bind(this),this.redeemedEventsLength()),this.bb.createObjList(this.tags.bind(this),this.tagsLength()),this.decrypted())}unpackTo(t){t.direction=this.direction(),t.amount=this.amount(),t.createdEvents=this.bb.createScalarList(this.createdEvents.bind(this),this.createdEventsLength()),t.destroyedEvents=this.bb.createScalarList(this.destroyedEvents.bind(this),this.destroyedEventsLength()),t.redeemedEvents=this.bb.createScalarList(this.redeemedEvents.bind(this),this.redeemedEventsLength()),t.tags=this.bb.createObjList(this.tags.bind(this),this.tagsLength()),t.decrypted=this.decrypted()}}class Ds{constructor(t=null,s=0,e=[],i=[],r=[],a=[],o=!1){this.direction=t,this.amount=s,this.createdEvents=e,this.destroyedEvents=i,this.redeemedEvents=r,this.tags=a,this.decrypted=o}pack(t){const s=this.direction!==null?t.createString(this.direction):0,e=v.createCreatedEventsVector(t,t.createObjectOffsetList(this.createdEvents)),i=v.createDestroyedEventsVector(t,t.createObjectOffsetList(this.destroyedEvents)),r=v.createRedeemedEventsVector(t,t.createObjectOffsetList(this.redeemedEvents)),a=v.createTagsVector(t,t.createObjectOffsetList(this.tags));return v.createKind7376Parsed(t,s,this.amount,e,i,r,a,this.decrypted)}}class G{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind7Parsed(t,s){return(s||new G).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind7Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new G).__init(t.readInt32(t.position())+t.position(),t)}reactionType(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readInt8(this.bb_pos+t):jt.Like}eventId(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}pubkey(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}eventKind(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}emoji(t){const s=this.bb.__offset(this.bb_pos,12);return s?(t||new lt).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}targetCoordinates(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind7Parsed(t){t.startObject(6)}static addReactionType(t,s){t.addFieldInt8(0,s,jt.Like)}static addEventId(t,s){t.addFieldOffset(1,s,0)}static addPubkey(t,s){t.addFieldOffset(2,s,0)}static addEventKind(t,s){t.addFieldInt64(3,s,BigInt("0"))}static addEmoji(t,s){t.addFieldOffset(4,s,0)}static addTargetCoordinates(t,s){t.addFieldOffset(5,s,0)}static endKind7Parsed(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),s}unpack(){return new qs(this.reactionType(),this.eventId(),this.pubkey(),this.eventKind(),this.emoji()!==null?this.emoji().unpack():null,this.targetCoordinates())}unpackTo(t){t.reactionType=this.reactionType(),t.eventId=this.eventId(),t.pubkey=this.pubkey(),t.eventKind=this.eventKind(),t.emoji=this.emoji()!==null?this.emoji().unpack():null,t.targetCoordinates=this.targetCoordinates()}}class qs{constructor(t=jt.Like,s=null,e=null,i=BigInt("0"),r=null,a=null){this.reactionType=t,this.eventId=s,this.pubkey=e,this.eventKind=i,this.emoji=r,this.targetCoordinates=a}pack(t){const s=this.eventId!==null?t.createString(this.eventId):0,e=this.pubkey!==null?t.createString(this.pubkey):0,i=this.emoji!==null?this.emoji.pack(t):0,r=this.targetCoordinates!==null?t.createString(this.targetCoordinates):0;return G.startKind7Parsed(t),G.addReactionType(t,this.reactionType),G.addEventId(t,s),G.addPubkey(t,e),G.addEventKind(t,this.eventKind),G.addEmoji(t,i),G.addTargetCoordinates(t,r),G.endKind7Parsed(t)}}class S{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind9321Parsed(t,s){return(s||new S).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind9321Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new S).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}amount(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt32(this.bb_pos+t):0}recipient(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}sender(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}eventId(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}mintUrl(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}redeemed(){const t=this.bb.__offset(this.bb_pos,16);return t?!!this.bb.readInt8(this.bb_pos+t):!1}proofs(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?(s||new w).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}proofsLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}comment(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}isP2pkLocked(){const t=this.bb.__offset(this.bb_pos,22);return t?!!this.bb.readInt8(this.bb_pos+t):!1}p2pkPubkey(t){const s=this.bb.__offset(this.bb_pos,24);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startKind9321Parsed(t){t.startObject(11)}static addId(t,s){t.addFieldOffset(0,s,0)}static addAmount(t,s){t.addFieldInt32(1,s,0)}static addRecipient(t,s){t.addFieldOffset(2,s,0)}static addSender(t,s){t.addFieldOffset(3,s,0)}static addEventId(t,s){t.addFieldOffset(4,s,0)}static addMintUrl(t,s){t.addFieldOffset(5,s,0)}static addRedeemed(t,s){t.addFieldInt8(6,+s,0)}static addProofs(t,s){t.addFieldOffset(7,s,0)}static createProofsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startProofsVector(t,s){t.startVector(4,s,4)}static addComment(t,s){t.addFieldOffset(8,s,0)}static addIsP2pkLocked(t,s){t.addFieldInt8(9,+s,0)}static addP2pkPubkey(t,s){t.addFieldOffset(10,s,0)}static endKind9321Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,8),t.requiredField(s,10),t.requiredField(s,14),t.requiredField(s,18),s}static createKind9321Parsed(t,s,e,i,r,a,o,d,h,c,p,g){return S.startKind9321Parsed(t),S.addId(t,s),S.addAmount(t,e),S.addRecipient(t,i),S.addSender(t,r),S.addEventId(t,a),S.addMintUrl(t,o),S.addRedeemed(t,d),S.addProofs(t,h),S.addComment(t,c),S.addIsP2pkLocked(t,p),S.addP2pkPubkey(t,g),S.endKind9321Parsed(t)}unpack(){return new Us(this.id(),this.amount(),this.recipient(),this.sender(),this.eventId(),this.mintUrl(),this.redeemed(),this.bb.createObjList(this.proofs.bind(this),this.proofsLength()),this.comment(),this.isP2pkLocked(),this.p2pkPubkey())}unpackTo(t){t.id=this.id(),t.amount=this.amount(),t.recipient=this.recipient(),t.sender=this.sender(),t.eventId=this.eventId(),t.mintUrl=this.mintUrl(),t.redeemed=this.redeemed(),t.proofs=this.bb.createObjList(this.proofs.bind(this),this.proofsLength()),t.comment=this.comment(),t.isP2pkLocked=this.isP2pkLocked(),t.p2pkPubkey=this.p2pkPubkey()}}class Us{constructor(t=null,s=0,e=null,i=null,r=null,a=null,o=!1,d=[],h=null,c=!1,p=null){this.id=t,this.amount=s,this.recipient=e,this.sender=i,this.eventId=r,this.mintUrl=a,this.redeemed=o,this.proofs=d,this.comment=h,this.isP2pkLocked=c,this.p2pkPubkey=p}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.recipient!==null?t.createString(this.recipient):0,i=this.sender!==null?t.createString(this.sender):0,r=this.eventId!==null?t.createString(this.eventId):0,a=this.mintUrl!==null?t.createString(this.mintUrl):0,o=S.createProofsVector(t,t.createObjectOffsetList(this.proofs)),d=this.comment!==null?t.createString(this.comment):0,h=this.p2pkPubkey!==null?t.createString(this.p2pkPubkey):0;return S.createKind9321Parsed(t,s,this.amount,e,i,r,a,this.redeemed,o,d,this.isP2pkLocked,h)}}class D{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsZapRequest(t,s){return(s||new D).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsZapRequest(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new D).__init(t.readInt32(t.position())+t.position(),t)}kind(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint16(this.bb_pos+t):0}pubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}content(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}tags(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?(s||new W).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}tagsLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}signature(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startZapRequest(t){t.startObject(5)}static addKind(t,s){t.addFieldInt16(0,s,0)}static addPubkey(t,s){t.addFieldOffset(1,s,0)}static addContent(t,s){t.addFieldOffset(2,s,0)}static addTags(t,s){t.addFieldOffset(3,s,0)}static createTagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTagsVector(t,s){t.startVector(4,s,4)}static addSignature(t,s){t.addFieldOffset(4,s,0)}static endZapRequest(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),t.requiredField(s,10),s}static createZapRequest(t,s,e,i,r,a){return D.startZapRequest(t),D.addKind(t,s),D.addPubkey(t,e),D.addContent(t,i),D.addTags(t,r),D.addSignature(t,a),D.endZapRequest(t)}unpack(){return new xs(this.kind(),this.pubkey(),this.content(),this.bb.createObjList(this.tags.bind(this),this.tagsLength()),this.signature())}unpackTo(t){t.kind=this.kind(),t.pubkey=this.pubkey(),t.content=this.content(),t.tags=this.bb.createObjList(this.tags.bind(this),this.tagsLength()),t.signature=this.signature()}}class xs{constructor(t=0,s=null,e=null,i=[],r=null){this.kind=t,this.pubkey=s,this.content=e,this.tags=i,this.signature=r}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.content!==null?t.createString(this.content):0,i=D.createTagsVector(t,t.createObjectOffsetList(this.tags)),r=this.signature!==null?t.createString(this.signature):0;return D.createZapRequest(t,this.kind,s,e,i,r)}}class L{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsKind9735Parsed(t,s){return(s||new L).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsKind9735Parsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new L).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}amount(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readInt32(this.bb_pos+t):0}content(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}bolt11(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}preimage(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}sender(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}recipient(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}event(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}eventCoordinate(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}timestamp(){const t=this.bb.__offset(this.bb_pos,22);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}valid(){const t=this.bb.__offset(this.bb_pos,24);return t?!!this.bb.readInt8(this.bb_pos+t):!1}description(t){const s=this.bb.__offset(this.bb_pos,26);return s?(t||new D).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startKind9735Parsed(t){t.startObject(12)}static addId(t,s){t.addFieldOffset(0,s,0)}static addAmount(t,s){t.addFieldInt32(1,s,0)}static addContent(t,s){t.addFieldOffset(2,s,0)}static addBolt11(t,s){t.addFieldOffset(3,s,0)}static addPreimage(t,s){t.addFieldOffset(4,s,0)}static addSender(t,s){t.addFieldOffset(5,s,0)}static addRecipient(t,s){t.addFieldOffset(6,s,0)}static addEvent(t,s){t.addFieldOffset(7,s,0)}static addEventCoordinate(t,s){t.addFieldOffset(8,s,0)}static addTimestamp(t,s){t.addFieldInt64(9,s,BigInt("0"))}static addValid(t,s){t.addFieldInt8(10,+s,0)}static addDescription(t,s){t.addFieldOffset(11,s,0)}static endKind9735Parsed(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,8),t.requiredField(s,10),t.requiredField(s,14),t.requiredField(s,16),t.requiredField(s,26),s}unpack(){return new Hs(this.id(),this.amount(),this.content(),this.bolt11(),this.preimage(),this.sender(),this.recipient(),this.event(),this.eventCoordinate(),this.timestamp(),this.valid(),this.description()!==null?this.description().unpack():null)}unpackTo(t){t.id=this.id(),t.amount=this.amount(),t.content=this.content(),t.bolt11=this.bolt11(),t.preimage=this.preimage(),t.sender=this.sender(),t.recipient=this.recipient(),t.event=this.event(),t.eventCoordinate=this.eventCoordinate(),t.timestamp=this.timestamp(),t.valid=this.valid(),t.description=this.description()!==null?this.description().unpack():null}}class Hs{constructor(t=null,s=0,e=null,i=null,r=null,a=null,o=null,d=null,h=null,c=BigInt("0"),p=!1,g=null){this.id=t,this.amount=s,this.content=e,this.bolt11=i,this.preimage=r,this.sender=a,this.recipient=o,this.event=d,this.eventCoordinate=h,this.timestamp=c,this.valid=p,this.description=g}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.content!==null?t.createString(this.content):0,i=this.bolt11!==null?t.createString(this.bolt11):0,r=this.preimage!==null?t.createString(this.preimage):0,a=this.sender!==null?t.createString(this.sender):0,o=this.recipient!==null?t.createString(this.recipient):0,d=this.event!==null?t.createString(this.event):0,h=this.eventCoordinate!==null?t.createString(this.eventCoordinate):0,c=this.description!==null?this.description.pack(t):0;return L.startKind9735Parsed(t),L.addId(t,s),L.addAmount(t,this.amount),L.addContent(t,e),L.addBolt11(t,i),L.addPreimage(t,r),L.addSender(t,a),L.addRecipient(t,o),L.addEvent(t,d),L.addEventCoordinate(t,h),L.addTimestamp(t,this.timestamp),L.addValid(t,this.valid),L.addDescription(t,c),L.endKind9735Parsed(t)}}class U{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsCoordinate(t,s){return(s||new U).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsCoordinate(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new U).__init(t.readInt32(t.position())+t.position(),t)}kind(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}pubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}d(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}static startCoordinate(t){t.startObject(4)}static addKind(t,s){t.addFieldInt64(0,s,BigInt("0"))}static addPubkey(t,s){t.addFieldOffset(1,s,0)}static addD(t,s){t.addFieldOffset(2,s,0)}static addRelays(t,s){t.addFieldOffset(3,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static endCoordinate(t){const s=t.endObject();return t.requiredField(s,6),t.requiredField(s,8),s}static createCoordinate(t,s,e,i,r){return U.startCoordinate(t),U.addKind(t,s),U.addPubkey(t,e),U.addD(t,i),U.addRelays(t,r),U.endCoordinate(t)}unpack(){return new Ms(this.kind(),this.pubkey(),this.d(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()))}unpackTo(t){t.kind=this.kind(),t.pubkey=this.pubkey(),t.d=this.d(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength())}}class Ms{constructor(t=BigInt("0"),s=null,e=null,i=[]){this.kind=t,this.pubkey=s,this.d=e,this.relays=i}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.d!==null?t.createString(this.d):0,i=U.createRelaysVector(t,t.createObjectOffsetList(this.relays));return U.createCoordinate(t,this.kind,s,e,i)}}class P{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsListParsed(t,s){return(s||new P).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsListParsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new P).__init(t.readInt32(t.position())+t.position(),t)}listKind(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint16(this.bb_pos+t):0}d(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}title(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}description(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}image(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}topics(t,s){const e=this.bb.__offset(this.bb_pos,14);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}topicsLength(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.__vector_len(this.bb_pos+t):0}people(t,s){const e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}peopleLength(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.__vector_len(this.bb_pos+t):0}events(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}eventsLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}addresses(t,s){const e=this.bb.__offset(this.bb_pos,20);return e?(s||new U).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}addressesLength(){const t=this.bb.__offset(this.bb_pos,20);return t?this.bb.__vector_len(this.bb_pos+t):0}static startListParsed(t){t.startObject(9)}static addListKind(t,s){t.addFieldInt16(0,s,0)}static addD(t,s){t.addFieldOffset(1,s,0)}static addTitle(t,s){t.addFieldOffset(2,s,0)}static addDescription(t,s){t.addFieldOffset(3,s,0)}static addImage(t,s){t.addFieldOffset(4,s,0)}static addTopics(t,s){t.addFieldOffset(5,s,0)}static createTopicsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTopicsVector(t,s){t.startVector(4,s,4)}static addPeople(t,s){t.addFieldOffset(6,s,0)}static createPeopleVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startPeopleVector(t,s){t.startVector(4,s,4)}static addEvents(t,s){t.addFieldOffset(7,s,0)}static createEventsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startEventsVector(t,s){t.startVector(4,s,4)}static addAddresses(t,s){t.addFieldOffset(8,s,0)}static createAddressesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startAddressesVector(t,s){t.startVector(4,s,4)}static endListParsed(t){return t.endObject()}static createListParsed(t,s,e,i,r,a,o,d,h,c){return P.startListParsed(t),P.addListKind(t,s),P.addD(t,e),P.addTitle(t,i),P.addDescription(t,r),P.addImage(t,a),P.addTopics(t,o),P.addPeople(t,d),P.addEvents(t,h),P.addAddresses(t,c),P.endListParsed(t)}unpack(){return new Gs(this.listKind(),this.d(),this.title(),this.description(),this.image(),this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),this.bb.createScalarList(this.people.bind(this),this.peopleLength()),this.bb.createScalarList(this.events.bind(this),this.eventsLength()),this.bb.createObjList(this.addresses.bind(this),this.addressesLength()))}unpackTo(t){t.listKind=this.listKind(),t.d=this.d(),t.title=this.title(),t.description=this.description(),t.image=this.image(),t.topics=this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),t.people=this.bb.createScalarList(this.people.bind(this),this.peopleLength()),t.events=this.bb.createScalarList(this.events.bind(this),this.eventsLength()),t.addresses=this.bb.createObjList(this.addresses.bind(this),this.addressesLength())}}class Gs{constructor(t=0,s=null,e=null,i=null,r=null,a=[],o=[],d=[],h=[]){this.listKind=t,this.d=s,this.title=e,this.description=i,this.image=r,this.topics=a,this.people=o,this.events=d,this.addresses=h}pack(t){const s=this.d!==null?t.createString(this.d):0,e=this.title!==null?t.createString(this.title):0,i=this.description!==null?t.createString(this.description):0,r=this.image!==null?t.createString(this.image):0,a=P.createTopicsVector(t,t.createObjectOffsetList(this.topics)),o=P.createPeopleVector(t,t.createObjectOffsetList(this.people)),d=P.createEventsVector(t,t.createObjectOffsetList(this.events)),h=P.createAddressesVector(t,t.createObjectOffsetList(this.addresses));return P.createListParsed(t,this.listKind,s,e,i,r,a,o,d,h)}}class tt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsPreParticipant(t,s){return(s||new tt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsPreParticipant(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new tt).__init(t.readInt32(t.position())+t.position(),t)}pubkey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}role(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}proof(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startPreParticipant(t){t.startObject(4)}static addPubkey(t,s){t.addFieldOffset(0,s,0)}static addRelay(t,s){t.addFieldOffset(1,s,0)}static addRole(t,s){t.addFieldOffset(2,s,0)}static addProof(t,s){t.addFieldOffset(3,s,0)}static endPreParticipant(t){const s=t.endObject();return t.requiredField(s,4),s}static createPreParticipant(t,s,e,i,r){return tt.startPreParticipant(t),tt.addPubkey(t,s),tt.addRelay(t,e),tt.addRole(t,i),tt.addProof(t,r),tt.endPreParticipant(t)}unpack(){return new Zs(this.pubkey(),this.relay(),this.role(),this.proof())}unpackTo(t){t.pubkey=this.pubkey(),t.relay=this.relay(),t.role=this.role(),t.proof=this.proof()}}class Zs{constructor(t=null,s=null,e=null,i=null){this.pubkey=t,this.relay=s,this.role=e,this.proof=i}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0,e=this.relay!==null?t.createString(this.relay):0,i=this.role!==null?t.createString(this.role):0,r=this.proof!==null?t.createString(this.proof):0;return tt.createPreParticipant(t,s,e,i,r)}}class ot{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsPreRefEvent(t,s){return(s||new ot).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsPreRefEvent(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new ot).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relay(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}marker(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startPreRefEvent(t){t.startObject(3)}static addId(t,s){t.addFieldOffset(0,s,0)}static addRelay(t,s){t.addFieldOffset(1,s,0)}static addMarker(t,s){t.addFieldOffset(2,s,0)}static endPreRefEvent(t){const s=t.endObject();return t.requiredField(s,4),s}static createPreRefEvent(t,s,e,i){return ot.startPreRefEvent(t),ot.addId(t,s),ot.addRelay(t,e),ot.addMarker(t,i),ot.endPreRefEvent(t)}unpack(){return new Xs(this.id(),this.relay(),this.marker())}unpackTo(t){t.id=this.id(),t.relay=this.relay(),t.marker=this.marker()}}class Xs{constructor(t=null,s=null,e=null){this.id=t,this.relay=s,this.marker=e}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.relay!==null?t.createString(this.relay):0,i=this.marker!==null?t.createString(this.marker):0;return ot.createPreRefEvent(t,s,e,i)}}class l{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsPreGenericParsed(t,s){return(s||new l).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsPreGenericParsed(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new l).__init(t.readInt32(t.position())+t.position(),t)}kind(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint16(this.bb_pos+t):0}d(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}title(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}description(t){const s=this.bb.__offset(this.bb_pos,10);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}image(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}streaming(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}recording(t){const s=this.bb.__offset(this.bb_pos,16);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}service(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}endpoint(t){const s=this.bb.__offset(this.bb_pos,20);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}room(t){const s=this.bb.__offset(this.bb_pos,22);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}status(t){const s=this.bb.__offset(this.bb_pos,24);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}starts(){const t=this.bb.__offset(this.bb_pos,26);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}ends(){const t=this.bb.__offset(this.bb_pos,28);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}currentParticipants(){const t=this.bb.__offset(this.bb_pos,30);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}totalParticipants(){const t=this.bb.__offset(this.bb_pos,32);return t?this.bb.readUint64(this.bb_pos+t):BigInt("0")}pinned(t){const s=this.bb.__offset(this.bb_pos,34);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}topics(t,s){const e=this.bb.__offset(this.bb_pos,36);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}topicsLength(){const t=this.bb.__offset(this.bb_pos,36);return t?this.bb.__vector_len(this.bb_pos+t):0}links(t,s){const e=this.bb.__offset(this.bb_pos,38);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}linksLength(){const t=this.bb.__offset(this.bb_pos,38);return t?this.bb.__vector_len(this.bb_pos+t):0}relays(t,s){const e=this.bb.__offset(this.bb_pos,40);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,40);return t?this.bb.__vector_len(this.bb_pos+t):0}participants(t,s){const e=this.bb.__offset(this.bb_pos,42);return e?(s||new tt).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}participantsLength(){const t=this.bb.__offset(this.bb_pos,42);return t?this.bb.__vector_len(this.bb_pos+t):0}events(t,s){const e=this.bb.__offset(this.bb_pos,44);return e?(s||new ot).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}eventsLength(){const t=this.bb.__offset(this.bb_pos,44);return t?this.bb.__vector_len(this.bb_pos+t):0}addresses(t,s){const e=this.bb.__offset(this.bb_pos,46);return e?(s||new U).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}addressesLength(){const t=this.bb.__offset(this.bb_pos,46);return t?this.bb.__vector_len(this.bb_pos+t):0}static startPreGenericParsed(t){t.startObject(22)}static addKind(t,s){t.addFieldInt16(0,s,0)}static addD(t,s){t.addFieldOffset(1,s,0)}static addTitle(t,s){t.addFieldOffset(2,s,0)}static addDescription(t,s){t.addFieldOffset(3,s,0)}static addImage(t,s){t.addFieldOffset(4,s,0)}static addStreaming(t,s){t.addFieldOffset(5,s,0)}static addRecording(t,s){t.addFieldOffset(6,s,0)}static addService(t,s){t.addFieldOffset(7,s,0)}static addEndpoint(t,s){t.addFieldOffset(8,s,0)}static addRoom(t,s){t.addFieldOffset(9,s,0)}static addStatus(t,s){t.addFieldOffset(10,s,0)}static addStarts(t,s){t.addFieldInt64(11,s,BigInt("0"))}static addEnds(t,s){t.addFieldInt64(12,s,BigInt("0"))}static addCurrentParticipants(t,s){t.addFieldInt64(13,s,BigInt("0"))}static addTotalParticipants(t,s){t.addFieldInt64(14,s,BigInt("0"))}static addPinned(t,s){t.addFieldOffset(15,s,0)}static addTopics(t,s){t.addFieldOffset(16,s,0)}static createTopicsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTopicsVector(t,s){t.startVector(4,s,4)}static addLinks(t,s){t.addFieldOffset(17,s,0)}static createLinksVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startLinksVector(t,s){t.startVector(4,s,4)}static addRelays(t,s){t.addFieldOffset(18,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addParticipants(t,s){t.addFieldOffset(19,s,0)}static createParticipantsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startParticipantsVector(t,s){t.startVector(4,s,4)}static addEvents(t,s){t.addFieldOffset(20,s,0)}static createEventsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startEventsVector(t,s){t.startVector(4,s,4)}static addAddresses(t,s){t.addFieldOffset(21,s,0)}static createAddressesVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startAddressesVector(t,s){t.startVector(4,s,4)}static endPreGenericParsed(t){return t.endObject()}static createPreGenericParsed(t,s,e,i,r,a,o,d,h,c,p,g,y,I,R,C,H,it,It,Lt,Ct,xt,ae){return l.startPreGenericParsed(t),l.addKind(t,s),l.addD(t,e),l.addTitle(t,i),l.addDescription(t,r),l.addImage(t,a),l.addStreaming(t,o),l.addRecording(t,d),l.addService(t,h),l.addEndpoint(t,c),l.addRoom(t,p),l.addStatus(t,g),l.addStarts(t,y),l.addEnds(t,I),l.addCurrentParticipants(t,R),l.addTotalParticipants(t,C),l.addPinned(t,H),l.addTopics(t,it),l.addLinks(t,It),l.addRelays(t,Lt),l.addParticipants(t,Ct),l.addEvents(t,xt),l.addAddresses(t,ae),l.endPreGenericParsed(t)}unpack(){return new Ws(this.kind(),this.d(),this.title(),this.description(),this.image(),this.streaming(),this.recording(),this.service(),this.endpoint(),this.room(),this.status(),this.starts(),this.ends(),this.currentParticipants(),this.totalParticipants(),this.pinned(),this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),this.bb.createScalarList(this.links.bind(this),this.linksLength()),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.bb.createObjList(this.participants.bind(this),this.participantsLength()),this.bb.createObjList(this.events.bind(this),this.eventsLength()),this.bb.createObjList(this.addresses.bind(this),this.addressesLength()))}unpackTo(t){t.kind=this.kind(),t.d=this.d(),t.title=this.title(),t.description=this.description(),t.image=this.image(),t.streaming=this.streaming(),t.recording=this.recording(),t.service=this.service(),t.endpoint=this.endpoint(),t.room=this.room(),t.status=this.status(),t.starts=this.starts(),t.ends=this.ends(),t.currentParticipants=this.currentParticipants(),t.totalParticipants=this.totalParticipants(),t.pinned=this.pinned(),t.topics=this.bb.createScalarList(this.topics.bind(this),this.topicsLength()),t.links=this.bb.createScalarList(this.links.bind(this),this.linksLength()),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.participants=this.bb.createObjList(this.participants.bind(this),this.participantsLength()),t.events=this.bb.createObjList(this.events.bind(this),this.eventsLength()),t.addresses=this.bb.createObjList(this.addresses.bind(this),this.addressesLength())}}class Ws{constructor(t=0,s=null,e=null,i=null,r=null,a=null,o=null,d=null,h=null,c=null,p=null,g=BigInt("0"),y=BigInt("0"),I=BigInt("0"),R=BigInt("0"),C=null,H=[],it=[],It=[],Lt=[],Ct=[],xt=[]){this.kind=t,this.d=s,this.title=e,this.description=i,this.image=r,this.streaming=a,this.recording=o,this.service=d,this.endpoint=h,this.room=c,this.status=p,this.starts=g,this.ends=y,this.currentParticipants=I,this.totalParticipants=R,this.pinned=C,this.topics=H,this.links=it,this.relays=It,this.participants=Lt,this.events=Ct,this.addresses=xt}pack(t){const s=this.d!==null?t.createString(this.d):0,e=this.title!==null?t.createString(this.title):0,i=this.description!==null?t.createString(this.description):0,r=this.image!==null?t.createString(this.image):0,a=this.streaming!==null?t.createString(this.streaming):0,o=this.recording!==null?t.createString(this.recording):0,d=this.service!==null?t.createString(this.service):0,h=this.endpoint!==null?t.createString(this.endpoint):0,c=this.room!==null?t.createString(this.room):0,p=this.status!==null?t.createString(this.status):0,g=this.pinned!==null?t.createString(this.pinned):0,y=l.createTopicsVector(t,t.createObjectOffsetList(this.topics)),I=l.createLinksVector(t,t.createObjectOffsetList(this.links)),R=l.createRelaysVector(t,t.createObjectOffsetList(this.relays)),C=l.createParticipantsVector(t,t.createObjectOffsetList(this.participants)),H=l.createEventsVector(t,t.createObjectOffsetList(this.events)),it=l.createAddressesVector(t,t.createObjectOffsetList(this.addresses));return l.createPreGenericParsed(t,this.kind,s,e,i,r,a,o,d,h,c,p,this.starts,this.ends,this.currentParticipants,this.totalParticipants,g,y,I,R,C,H,it)}}var Dt=(n=>(n[n.NONE=0]="NONE",n[n.Kind0Parsed=1]="Kind0Parsed",n[n.Kind1Parsed=2]="Kind1Parsed",n[n.Kind3Parsed=3]="Kind3Parsed",n[n.Kind4Parsed=4]="Kind4Parsed",n[n.Kind6Parsed=5]="Kind6Parsed",n[n.Kind7Parsed=6]="Kind7Parsed",n[n.Kind17Parsed=7]="Kind17Parsed",n[n.Kind20Parsed=8]="Kind20Parsed",n[n.Kind22Parsed=9]="Kind22Parsed",n[n.Kind1111Parsed=10]="Kind1111Parsed",n[n.Kind1311Parsed=11]="Kind1311Parsed",n[n.Kind10002Parsed=12]="Kind10002Parsed",n[n.Kind10019Parsed=13]="Kind10019Parsed",n[n.Kind17375Parsed=14]="Kind17375Parsed",n[n.Kind7374Parsed=15]="Kind7374Parsed",n[n.Kind7375Parsed=16]="Kind7375Parsed",n[n.Kind7376Parsed=17]="Kind7376Parsed",n[n.Kind9321Parsed=18]="Kind9321Parsed",n[n.Kind9735Parsed=19]="Kind9735Parsed",n[n.Kind30023Parsed=20]="Kind30023Parsed",n[n.ListParsed=21]="ListParsed",n[n.PreGenericParsed=22]="PreGenericParsed",n))(Dt||{});function Mt(n,t){switch(Dt[n]){case"NONE":return null;case"Kind0Parsed":return t(new _);case"Kind1Parsed":return t(new E);case"Kind3Parsed":return t(new Ot);case"Kind4Parsed":return t(new X);case"Kind6Parsed":return t(new Rt);case"Kind7Parsed":return t(new G);case"Kind17Parsed":return t(new M);case"Kind20Parsed":return t(new m);case"Kind22Parsed":return t(new k);case"Kind1111Parsed":return t(new u);case"Kind1311Parsed":return t(new A);case"Kind10002Parsed":return t(new yt);case"Kind10019Parsed":return t(new z);case"Kind17375Parsed":return t(new Z);case"Kind7374Parsed":return t(new rt);case"Kind7375Parsed":return t(new q);case"Kind7376Parsed":return t(new v);case"Kind9321Parsed":return t(new S);case"Kind9735Parsed":return t(new L);case"Kind30023Parsed":return t(new V);case"ListParsed":return t(new P);case"PreGenericParsed":return t(new l);default:return null}}class f{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsRequest(t,s){return(s||new f).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsRequest(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new f).__init(t.readInt32(t.position())+t.position(),t)}ids(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}idsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}authors(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}authorsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}kinds(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.readUint16(this.bb.__vector(this.bb_pos+s)+t*2):0}kindsLength(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__vector_len(this.bb_pos+t):0}kindsArray(){const t=this.bb.__offset(this.bb_pos,8);return t?new Uint16Array(this.bb.bytes().buffer,this.bb.bytes().byteOffset+this.bb.__vector(this.bb_pos+t),this.bb.__vector_len(this.bb_pos+t)):null}tags(t,s){const e=this.bb.__offset(this.bb_pos,10);return e?(s||new W).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}tagsLength(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__vector_len(this.bb_pos+t):0}limit(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.readInt32(this.bb_pos+t):0}since(){const t=this.bb.__offset(this.bb_pos,14);return t?this.bb.readInt32(this.bb_pos+t):0}until(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.readInt32(this.bb_pos+t):0}search(t){const s=this.bb.__offset(this.bb_pos,18);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}relays(t,s){const e=this.bb.__offset(this.bb_pos,20);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,20);return t?this.bb.__vector_len(this.bb_pos+t):0}closeOnEose(){const t=this.bb.__offset(this.bb_pos,22);return t?!!this.bb.readInt8(this.bb_pos+t):!1}cacheFirst(){const t=this.bb.__offset(this.bb_pos,24);return t?!!this.bb.readInt8(this.bb_pos+t):!1}noCache(){const t=this.bb.__offset(this.bb_pos,26);return t?!!this.bb.readInt8(this.bb_pos+t):!1}maxRelays(){const t=this.bb.__offset(this.bb_pos,28);return t?this.bb.readUint16(this.bb_pos+t):0}static startRequest(t){t.startObject(13)}static addIds(t,s){t.addFieldOffset(0,s,0)}static createIdsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startIdsVector(t,s){t.startVector(4,s,4)}static addAuthors(t,s){t.addFieldOffset(1,s,0)}static createAuthorsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startAuthorsVector(t,s){t.startVector(4,s,4)}static addKinds(t,s){t.addFieldOffset(2,s,0)}static createKindsVector(t,s){t.startVector(2,s.length,2);for(let e=s.length-1;e>=0;e--)t.addInt16(s[e]);return t.endVector()}static startKindsVector(t,s){t.startVector(2,s,2)}static addTags(t,s){t.addFieldOffset(3,s,0)}static createTagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTagsVector(t,s){t.startVector(4,s,4)}static addLimit(t,s){t.addFieldInt32(4,s,0)}static addSince(t,s){t.addFieldInt32(5,s,0)}static addUntil(t,s){t.addFieldInt32(6,s,0)}static addSearch(t,s){t.addFieldOffset(7,s,0)}static addRelays(t,s){t.addFieldOffset(8,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addCloseOnEose(t,s){t.addFieldInt8(9,+s,0)}static addCacheFirst(t,s){t.addFieldInt8(10,+s,0)}static addNoCache(t,s){t.addFieldInt8(11,+s,0)}static addMaxRelays(t,s){t.addFieldInt16(12,s,0)}static endRequest(t){return t.endObject()}static createRequest(t,s,e,i,r,a,o,d,h,c,p,g,y,I){return f.startRequest(t),f.addIds(t,s),f.addAuthors(t,e),f.addKinds(t,i),f.addTags(t,r),f.addLimit(t,a),f.addSince(t,o),f.addUntil(t,d),f.addSearch(t,h),f.addRelays(t,c),f.addCloseOnEose(t,p),f.addCacheFirst(t,g),f.addNoCache(t,y),f.addMaxRelays(t,I),f.endRequest(t)}unpack(){return new zs(this.bb.createScalarList(this.ids.bind(this),this.idsLength()),this.bb.createScalarList(this.authors.bind(this),this.authorsLength()),this.bb.createScalarList(this.kinds.bind(this),this.kindsLength()),this.bb.createObjList(this.tags.bind(this),this.tagsLength()),this.limit(),this.since(),this.until(),this.search(),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.closeOnEose(),this.cacheFirst(),this.noCache(),this.maxRelays())}unpackTo(t){t.ids=this.bb.createScalarList(this.ids.bind(this),this.idsLength()),t.authors=this.bb.createScalarList(this.authors.bind(this),this.authorsLength()),t.kinds=this.bb.createScalarList(this.kinds.bind(this),this.kindsLength()),t.tags=this.bb.createObjList(this.tags.bind(this),this.tagsLength()),t.limit=this.limit(),t.since=this.since(),t.until=this.until(),t.search=this.search(),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.closeOnEose=this.closeOnEose(),t.cacheFirst=this.cacheFirst(),t.noCache=this.noCache(),t.maxRelays=this.maxRelays()}}class zs{constructor(t=[],s=[],e=[],i=[],r=0,a=0,o=0,d=null,h=[],c=!1,p=!1,g=!1,y=0){this.ids=t,this.authors=s,this.kinds=e,this.tags=i,this.limit=r,this.since=a,this.until=o,this.search=d,this.relays=h,this.closeOnEose=c,this.cacheFirst=p,this.noCache=g,this.maxRelays=y}pack(t){const s=f.createIdsVector(t,t.createObjectOffsetList(this.ids)),e=f.createAuthorsVector(t,t.createObjectOffsetList(this.authors)),i=f.createKindsVector(t,this.kinds),r=f.createTagsVector(t,t.createObjectOffsetList(this.tags)),a=this.search!==null?t.createString(this.search):0,o=f.createRelaysVector(t,t.createObjectOffsetList(this.relays));return f.createRequest(t,s,e,i,r,this.limit,this.since,this.until,a,o,this.closeOnEose,this.cacheFirst,this.noCache,this.maxRelays)}}class O{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsParsedEvent(t,s){return(s||new O).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsParsedEvent(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new O).__init(t.readInt32(t.position())+t.position(),t)}id(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}pubkey(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}kind(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint16(this.bb_pos+t):0}createdAt(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readUint32(this.bb_pos+t):0}parsedType(){const t=this.bb.__offset(this.bb_pos,12);return t?this.bb.readUint8(this.bb_pos+t):Dt.NONE}parsed(t){const s=this.bb.__offset(this.bb_pos,14);return s?this.bb.__union(t,this.bb_pos+s):null}requests(t,s){const e=this.bb.__offset(this.bb_pos,16);return e?(s||new f).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}requestsLength(){const t=this.bb.__offset(this.bb_pos,16);return t?this.bb.__vector_len(this.bb_pos+t):0}relays(t,s){const e=this.bb.__offset(this.bb_pos,18);return e?this.bb.__stringByteString(this.bb.__vector(this.bb_pos+e)+t*4,s):null}relaysLength(){const t=this.bb.__offset(this.bb_pos,18);return t?this.bb.__vector_len(this.bb_pos+t):0}tags(t,s){const e=this.bb.__offset(this.bb_pos,20);return e?(s||new W).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}tagsLength(){const t=this.bb.__offset(this.bb_pos,20);return t?this.bb.__vector_len(this.bb_pos+t):0}static startParsedEvent(t){t.startObject(9)}static addId(t,s){t.addFieldOffset(0,s,0)}static addPubkey(t,s){t.addFieldOffset(1,s,0)}static addKind(t,s){t.addFieldInt16(2,s,0)}static addCreatedAt(t,s){t.addFieldInt32(3,s,0)}static addParsedType(t,s){t.addFieldInt8(4,s,Dt.NONE)}static addParsed(t,s){t.addFieldOffset(5,s,0)}static addRequests(t,s){t.addFieldOffset(6,s,0)}static createRequestsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRequestsVector(t,s){t.startVector(4,s,4)}static addRelays(t,s){t.addFieldOffset(7,s,0)}static createRelaysVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startRelaysVector(t,s){t.startVector(4,s,4)}static addTags(t,s){t.addFieldOffset(8,s,0)}static createTagsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startTagsVector(t,s){t.startVector(4,s,4)}static endParsedEvent(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),t.requiredField(s,20),s}static createParsedEvent(t,s,e,i,r,a,o,d,h,c){return O.startParsedEvent(t),O.addId(t,s),O.addPubkey(t,e),O.addKind(t,i),O.addCreatedAt(t,r),O.addParsedType(t,a),O.addParsed(t,o),O.addRequests(t,d),O.addRelays(t,h),O.addTags(t,c),O.endParsedEvent(t)}unpack(){return new Qs(this.id(),this.pubkey(),this.kind(),this.createdAt(),this.parsedType(),(()=>{const t=Mt(this.parsedType(),this.parsed.bind(this));return t===null?null:t.unpack()})(),this.bb.createObjList(this.requests.bind(this),this.requestsLength()),this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),this.bb.createObjList(this.tags.bind(this),this.tagsLength()))}unpackTo(t){t.id=this.id(),t.pubkey=this.pubkey(),t.kind=this.kind(),t.createdAt=this.createdAt(),t.parsedType=this.parsedType(),t.parsed=(()=>{const s=Mt(this.parsedType(),this.parsed.bind(this));return s===null?null:s.unpack()})(),t.requests=this.bb.createObjList(this.requests.bind(this),this.requestsLength()),t.relays=this.bb.createScalarList(this.relays.bind(this),this.relaysLength()),t.tags=this.bb.createObjList(this.tags.bind(this),this.tagsLength())}}class Qs{constructor(t=null,s=null,e=0,i=0,r=Dt.NONE,a=null,o=[],d=[],h=[]){this.id=t,this.pubkey=s,this.kind=e,this.createdAt=i,this.parsedType=r,this.parsed=a,this.requests=o,this.relays=d,this.tags=h}pack(t){const s=this.id!==null?t.createString(this.id):0,e=this.pubkey!==null?t.createString(this.pubkey):0,i=t.createObjectOffset(this.parsed),r=O.createRequestsVector(t,t.createObjectOffsetList(this.requests)),a=O.createRelaysVector(t,t.createObjectOffsetList(this.relays)),o=O.createTagsVector(t,t.createObjectOffsetList(this.tags));return O.createParsedEvent(t,s,e,this.kind,this.createdAt,this.parsedType,i,r,a,o)}}class dt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsConnectionStatus(t,s){return(s||new dt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsConnectionStatus(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new dt).__init(t.readInt32(t.position())+t.position(),t)}relayUrl(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}status(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}message(t){const s=this.bb.__offset(this.bb_pos,8);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startConnectionStatus(t){t.startObject(3)}static addRelayUrl(t,s){t.addFieldOffset(0,s,0)}static addStatus(t,s){t.addFieldOffset(1,s,0)}static addMessage(t,s){t.addFieldOffset(2,s,0)}static endConnectionStatus(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createConnectionStatus(t,s,e,i){return dt.startConnectionStatus(t),dt.addRelayUrl(t,s),dt.addStatus(t,e),dt.addMessage(t,i),dt.endConnectionStatus(t)}unpack(){return new Ys(this.relayUrl(),this.status(),this.message())}unpackTo(t){t.relayUrl=this.relayUrl(),t.status=this.status(),t.message=this.message()}}class Ys{constructor(t=null,s=null,e=null){this.relayUrl=t,this.status=s,this.message=e}pack(t){const s=this.relayUrl!==null?t.createString(this.relayUrl):0,e=this.status!==null?t.createString(this.status):0,i=this.message!==null?t.createString(this.message):0;return dt.createConnectionStatus(t,s,e,i)}}class bt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsCountResponse(t,s){return(s||new bt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsCountResponse(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new bt).__init(t.readInt32(t.position())+t.position(),t)}count(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.readUint32(this.bb_pos+t):0}kind(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.readUint16(this.bb_pos+t):0}you(){const t=this.bb.__offset(this.bb_pos,8);return t?!!this.bb.readInt8(this.bb_pos+t):!1}static startCountResponse(t){t.startObject(3)}static addCount(t,s){t.addFieldInt32(0,s,0)}static addKind(t,s){t.addFieldInt16(1,s,0)}static addYou(t,s){t.addFieldInt8(2,+s,0)}static endCountResponse(t){return t.endObject()}static createCountResponse(t,s,e,i){return bt.startCountResponse(t),bt.addCount(t,s),bt.addKind(t,e),bt.addYou(t,i),bt.endCountResponse(t)}unpack(){return new Js(this.count(),this.kind(),this.you())}unpackTo(t){t.count=this.count(),t.kind=this.kind(),t.you=this.you()}}class Js{constructor(t=0,s=0,e=!1){this.count=t,this.kind=s,this.you=e}pack(t){return bt.createCountResponse(t,this.count,this.kind,this.you)}}class wt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsEoce(t,s){return(s||new wt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsEoce(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new wt).__init(t.readInt32(t.position())+t.position(),t)}subscriptionId(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startEoce(t){t.startObject(1)}static addSubscriptionId(t,s){t.addFieldOffset(0,s,0)}static endEoce(t){const s=t.endObject();return t.requiredField(s,4),s}static createEoce(t,s){return wt.startEoce(t),wt.addSubscriptionId(t,s),wt.endEoce(t)}unpack(){return new $s(this.subscriptionId())}unpackTo(t){t.subscriptionId=this.subscriptionId()}}class $s{constructor(t=null){this.subscriptionId=t}pack(t){const s=this.subscriptionId!==null?t.createString(this.subscriptionId):0;return wt.createEoce(t,s)}}class Tt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsPubkey(t,s){return(s||new Tt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsPubkey(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Tt).__init(t.readInt32(t.position())+t.position(),t)}pubkey(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startPubkey(t){t.startObject(1)}static addPubkey(t,s){t.addFieldOffset(0,s,0)}static endPubkey(t){const s=t.endObject();return t.requiredField(s,4),s}static createPubkey(t,s){return Tt.startPubkey(t),Tt.addPubkey(t,s),Tt.endPubkey(t)}unpack(){return new te(this.pubkey())}unpackTo(t){t.pubkey=this.pubkey()}}class te{constructor(t=null){this.pubkey=t}pack(t){const s=this.pubkey!==null?t.createString(this.pubkey):0;return Tt.createPubkey(t,s)}}class Kt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsRaw(t,s){return(s||new Kt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsRaw(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Kt).__init(t.readInt32(t.position())+t.position(),t)}raw(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}static startRaw(t){t.startObject(1)}static addRaw(t,s){t.addFieldOffset(0,s,0)}static endRaw(t){const s=t.endObject();return t.requiredField(s,4),s}static createRaw(t,s){return Kt.startRaw(t),Kt.addRaw(t,s),Kt.endRaw(t)}unpack(){return new se(this.raw())}unpackTo(t){t.raw=this.raw()}}class se{constructor(t=null){this.raw=t}pack(t){const s=this.raw!==null?t.createString(this.raw):0;return Kt.createRaw(t,s)}}class Bt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsSignedEvent(t,s){return(s||new Bt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsSignedEvent(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Bt).__init(t.readInt32(t.position())+t.position(),t)}event(t){const s=this.bb.__offset(this.bb_pos,4);return s?(t||new K).__init(this.bb.__indirect(this.bb_pos+s),this.bb):null}static startSignedEvent(t){t.startObject(1)}static addEvent(t,s){t.addFieldOffset(0,s,0)}static endSignedEvent(t){const s=t.endObject();return t.requiredField(s,4),s}static createSignedEvent(t,s){return Bt.startSignedEvent(t),Bt.addEvent(t,s),Bt.endSignedEvent(t)}unpack(){return new ee(this.event()!==null?this.event().unpack():null)}unpackTo(t){t.event=this.event()!==null?this.event().unpack():null}}class ee{constructor(t=null){this.event=t}pack(t){const s=this.event!==null?this.event.pack(t):0;return Bt.createSignedEvent(t,s)}}class _t{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsMintProofs(t,s){return(s||new _t).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsMintProofs(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new _t).__init(t.readInt32(t.position())+t.position(),t)}mint(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}proofs(t,s){const e=this.bb.__offset(this.bb_pos,6);return e?(s||new w).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}proofsLength(){const t=this.bb.__offset(this.bb_pos,6);return t?this.bb.__vector_len(this.bb_pos+t):0}static startMintProofs(t){t.startObject(2)}static addMint(t,s){t.addFieldOffset(0,s,0)}static addProofs(t,s){t.addFieldOffset(1,s,0)}static createProofsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startProofsVector(t,s){t.startVector(4,s,4)}static endMintProofs(t){const s=t.endObject();return t.requiredField(s,4),t.requiredField(s,6),s}static createMintProofs(t,s,e){return _t.startMintProofs(t),_t.addMint(t,s),_t.addProofs(t,e),_t.endMintProofs(t)}unpack(){return new ie(this.mint(),this.bb.createObjList(this.proofs.bind(this),this.proofsLength()))}unpackTo(t){t.mint=this.mint(),t.proofs=this.bb.createObjList(this.proofs.bind(this),this.proofsLength())}}class ie{constructor(t=null,s=[]){this.mint=t,this.proofs=s}pack(t){const s=this.mint!==null?t.createString(this.mint):0,e=_t.createProofsVector(t,t.createObjectOffsetList(this.proofs));return _t.createMintProofs(t,s,e)}}class kt{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsValidProofs(t,s){return(s||new kt).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsValidProofs(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new kt).__init(t.readInt32(t.position())+t.position(),t)}proofs(t,s){const e=this.bb.__offset(this.bb_pos,4);return e?(s||new _t).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+e)+t*4),this.bb):null}proofsLength(){const t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__vector_len(this.bb_pos+t):0}static startValidProofs(t){t.startObject(1)}static addProofs(t,s){t.addFieldOffset(0,s,0)}static createProofsVector(t,s){t.startVector(4,s.length,4);for(let e=s.length-1;e>=0;e--)t.addOffset(s[e]);return t.endVector()}static startProofsVector(t,s){t.startVector(4,s,4)}static endValidProofs(t){const s=t.endObject();return t.requiredField(s,4),s}static createValidProofs(t,s){return kt.startValidProofs(t),kt.addProofs(t,s),kt.endValidProofs(t)}unpack(){return new ne(this.bb.createObjList(this.proofs.bind(this),this.proofsLength()))}unpackTo(t){t.proofs=this.bb.createObjList(this.proofs.bind(this),this.proofsLength())}}class ne{constructor(t=[]){this.proofs=t}pack(t){const s=kt.createProofsVector(t,t.createObjectOffsetList(this.proofs));return kt.createValidProofs(t,s)}}var qt=(n=>(n[n.NONE=0]="NONE",n[n.ParsedEvent=1]="ParsedEvent",n[n.NostrEvent=2]="NostrEvent",n[n.ConnectionStatus=3]="ConnectionStatus",n[n.CountResponse=4]="CountResponse",n[n.Eoce=5]="Eoce",n[n.BufferFull=6]="BufferFull",n[n.ValidProofs=7]="ValidProofs",n[n.SignedEvent=8]="SignedEvent",n[n.Pubkey=9]="Pubkey",n[n.Raw=10]="Raw",n))(qt||{});function Gt(n,t){switch(qt[n]){case"NONE":return null;case"ParsedEvent":return t(new O);case"NostrEvent":return t(new K);case"ConnectionStatus":return t(new dt);case"CountResponse":return t(new bt);case"Eoce":return t(new wt);case"BufferFull":return t(new vt);case"ValidProofs":return t(new kt);case"SignedEvent":return t(new Bt);case"Pubkey":return t(new Tt);case"Raw":return t(new Kt);default:return null}}var Ut=(n=>(n[n.ParsedNostrEvent=0]="ParsedNostrEvent",n[n.ConnectionStatus=1]="ConnectionStatus",n[n.CountResponse=2]="CountResponse",n[n.Eoce=3]="Eoce",n[n.BufferFull=4]="BufferFull",n[n.ValidProofs=5]="ValidProofs",n[n.SignedEvent=6]="SignedEvent",n[n.Pubkey=7]="Pubkey",n[n.Raw=8]="Raw",n[n.NostrEvent=9]="NostrEvent",n))(Ut||{});class Q{constructor(){this.bb=null,this.bb_pos=0}__init(t,s){return this.bb_pos=t,this.bb=s,this}static getRootAsWorkerMessage(t,s){return(s||new Q).__init(t.readInt32(t.position())+t.position(),t)}static getSizePrefixedRootAsWorkerMessage(t,s){return t.setPosition(t.position()+b.SIZE_PREFIX_LENGTH),(s||new Q).__init(t.readInt32(t.position())+t.position(),t)}subId(t){const s=this.bb.__offset(this.bb_pos,4);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}url(t){const s=this.bb.__offset(this.bb_pos,6);return s?this.bb.__stringByteString(this.bb_pos+s,t):null}type(){const t=this.bb.__offset(this.bb_pos,8);return t?this.bb.readUint32(this.bb_pos+t):Ut.ParsedNostrEvent}contentType(){const t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readUint8(this.bb_pos+t):qt.NONE}content(t){const s=this.bb.__offset(this.bb_pos,12);return s?this.bb.__union(t,this.bb_pos+s):null}static startWorkerMessage(t){t.startObject(5)}static addSubId(t,s){t.addFieldOffset(0,s,0)}static addUrl(t,s){t.addFieldOffset(1,s,0)}static addType(t,s){t.addFieldInt32(2,s,Ut.ParsedNostrEvent)}static addContentType(t,s){t.addFieldInt8(3,s,qt.NONE)}static addContent(t,s){t.addFieldOffset(4,s,0)}static endWorkerMessage(t){return t.endObject()}static finishWorkerMessageBuffer(t,s){t.finish(s)}static finishSizePrefixedWorkerMessageBuffer(t,s){t.finish(s,void 0,!0)}static createWorkerMessage(t,s,e,i,r,a){return Q.startWorkerMessage(t),Q.addSubId(t,s),Q.addUrl(t,e),Q.addType(t,i),Q.addContentType(t,r),Q.addContent(t,a),Q.endWorkerMessage(t)}unpack(){return new re(this.subId(),this.url(),this.type(),this.contentType(),(()=>{const t=Gt(this.contentType(),this.content.bind(this));return t===null?null:t.unpack()})())}unpackTo(t){t.subId=this.subId(),t.url=this.url(),t.type=this.type(),t.contentType=this.contentType(),t.content=(()=>{const s=Gt(this.contentType(),this.content.bind(this));return s===null?null:s.unpack()})()}}class re{constructor(t=null,s=null,e=Ut.ParsedNostrEvent,i=qt.NONE,r=null){this.subId=t,this.url=s,this.type=e,this.contentType=i,this.content=r}pack(t){const s=this.subId!==null?t.createString(this.subId):0,e=this.url!==null?t.createString(this.url):0,i=t.createObjectOffset(this.content);return Q.createWorkerMessage(t,s,e,this.type,this.contentType,i)}}export{Ns as $,U as A,vt as B,bt as C,Ms as D,wt as E,Js as F,at as G,es as H,is as I,ws as J,lt as K,ns as L,Ut as M,Wt as N,ys as O,Dt as P,$s as Q,se as R,Xt as S,j as T,hs as U,kt as V,re as W,ut as X,Ts as Y,Vt as Z,$ as _,Mt as a,Ws as a$,st as a0,T as a1,Ss as a2,_ as a3,zt as a4,yt as a5,Yt as a6,z as a7,$t as a8,u as a9,Ds as aA,G as aB,qs as aC,S as aD,Us as aE,L as aF,Hs as aG,Y as aH,P as aI,Gs as aJ,J as aK,us as aL,ft as aM,_s as aN,gt as aO,ps as aP,Pt as aQ,mt as aR,ht as aS,Jt as aT,_t as aU,ie as aV,N as aW,St as aX,Ks as aY,Qs as aZ,l as a_,ls as aa,A as ab,fs as ac,Z as ad,gs as ae,M as af,Ps as ag,E as ah,Os as ai,m as aj,ks as ak,k as al,Ls as am,V as an,ms as ao,Ot as ap,Fs as aq,X as ar,Vs as as,Rt as at,Rs as au,rt as av,Es as aw,q as ax,As as ay,v as az,At as b,tt as b0,Zs as b1,ot as b2,Xs as b3,x as b4,cs as b5,w as b6,Cs as b7,Tt as b8,te as b9,Kt as ba,jt as bb,nt as bc,Qt as bd,Bt as be,ee as bf,ne as bg,ct as bh,F as bi,Is as bj,Nt as bk,Et as bl,Bs as bm,D as bn,xs as bo,Ht as c,qt as d,Ys as e,bs as f,as as g,rs as h,os as i,ss as j,ts as k,ds as l,Q as m,dt as n,f as o,K as p,O as q,W as r,zs as s,Zt as t,Gt as u,Ft as v,pt as w,et as x,vs as y,B as z};
|