#!/usr/bin/env node
import database from '../src/database.js';
async function generateApiKey() {
await database.init();
const args = process.argv.slice(2);
const tier = args[0] || 'starter';
const validTiers = ['starter', 'professional', 'agency', 'enterprise'];
if (!validTiers.includes(tier)) {
console.error(`Invalid tier. Must be one of: ${validTiers.join(', ')}`);
process.exit(1);
}
const result = await database.createApiKey(tier);
console.log('\n=== NEW API KEY GENERATED ===');
console.log(`Tier: ${result.tier}`);
console.log(`API Key: ${result.key}`);
console.log(`Key ID: ${result.id}`);
console.log('\nIMPORTANT: Save this API key immediately. It cannot be retrieved later.');
console.log('\nTier Limits:');
const limits = await database.getTierLimits(result.tier);
console.log(`- Profile Analyses: ${limits.profiles === -1 ? 'Unlimited' : limits.profiles}/month`);
console.log(`- Messages: ${limits.messages === -1 ? 'Unlimited' : limits.messages}/month`);
console.log(`- Sequences: ${limits.sequences === -1 ? 'Unlimited' : limits.sequences}`);
console.log('');
}
generateApiKey().catch(error => {
console.error('Error:', error.message);
process.exit(1);
});