import { RouterWrapper } from 'edge.libx.js/build/main.js'; import { apiKeysController } from '../../controllers/apikeys'; export default function apiKeysRoutes(baseRoute = '/apikeys'): RouterWrapper { const routerWrapper = RouterWrapper.getNew(baseRoute); // Create a new API key routerWrapper.router.post('/', apiKeysController.createApiKey); // List API keys for a user routerWrapper.router.get('/', apiKeysController.listApiKeys); // Get API key details routerWrapper.router.get('/:apiKey', apiKeysController.getApiKey); // Revoke an API key routerWrapper.router.delete('/:apiKey', apiKeysController.revokeApiKey); // Add or update provider key routerWrapper.router.post('/:apiKey/providers', apiKeysController.addProviderKey); // Remove provider key routerWrapper.router.delete('/:apiKey/providers/:provider', apiKeysController.removeProviderKey); // Get usage statistics routerWrapper.router.get('/:apiKey/usage', apiKeysController.getUsageStats); return routerWrapper; }