import { Repository } from 'typeorm';
import { ApiKey, ApiKeyTier } from '../entities/api-key.entity';
export declare class ApiKeyRepository extends Repository<ApiKey> {
    private readonly apiKeyRepo;
    private readonly logger;
    constructor(apiKeyRepo: Repository<ApiKey>);
    createApiKey(userId: string, name: string, permissions: string[], tier: ApiKeyTier, limits: {
        minuteLimit: number;
        dailyLimit: number;
        monthlyLimit: number;
    }): Promise<ApiKey>;
    private generateApiKey;
    findByKey(key: string): Promise<ApiKey | null>;
    incrementUsage(id: string): Promise<void>;
}
