import { ApiKeyService } from './api-key.service';
import { CreateApiKeyDto } from './dto/api-create.dto';
import { RateLimitService } from './rate-limit/rate-limit.service';
export declare class ApiKeyController {
    private apiKeyService;
    private rateLimitService;
    constructor(apiKeyService: ApiKeyService, rateLimitService: RateLimitService);
    createApiKey(req: any, createApiKeyDto: CreateApiKeyDto): Promise<import("./dto/api-response.dto").ApiKeyResponseDto>;
    listApiKeys(req: any): Promise<import("./dto/api-response.dto").ApiKeyResponseDto[]>;
    getApiKeyUsage(req: any, apiKeyId: string): Promise<{
        minuteUsage: number;
        minuteLimit: number;
        dailyUsage: number;
        dailyLimit: number;
        monthlyUsage: number;
        monthlyLimit: number;
        totalUsage: number;
        lastUsed: Date;
    }>;
    resetApiKeyUsage(req: any, apiKeyId: string): Promise<{
        success: boolean;
        message: string;
    }>;
    revokeApiKey(req: any, apiKeyId: string): Promise<void>;
}
