import { Router } from 'express' import { adminAuth } from '../middleware/adminAuth.js' export const adminNostrRouter = Router() adminNostrRouter.use(adminAuth) adminNostrRouter.get('/nostr-info', async (_req, res) => { const privkeyHex = process.env.NOSTR_PRIVATE_KEY if (!privkeyHex) { res.status(404).json({ error: { code: 'NOT_CONFIGURED', message: 'NOSTR_PRIVATE_KEY not set' } }) return } try { const { getPublicKey } = await import('nostr-tools/pure') const { npubEncode } = await import('nostr-tools/nip19') const privkey = Uint8Array.from(Buffer.from(privkeyHex, 'hex')) const pubkey = getPublicKey(privkey) const npub = npubEncode(pubkey) privkey.fill(0) res.json({ npub, pubkey }) } catch { res.status(500).json({ error: { code: 'NOSTR_ERROR', message: 'Failed to derive public key' } }) } })