import express from 'express'
import { createSigilMiddleware } from '@sigil-xyz/x402'
import { Connection } from '@solana/web3.js'
import BN from 'bn.js'
const app = express()
const connection = new Connection(process.env.SOLANA_RPC_URL!, 'confirmed')
app.post(
'/api/generate',
createSigilMiddleware({
connection,
serverWallet, // your server's signing wallet
requiredCapability: 'image-generation',
spendAmount: new BN(50_000), // 0.05 USDC per request
}),
(req, res) => {
const agentPubkey = (req as any).sigilAgent // base58 verified agent pubkey
res.json({ result: 'generated', agent: agentPubkey })
}
)