import { SavedProfile, UserProfile, ProfileListResponse, ProfileSearchResponse } from './types.js';
export declare class PRSNAApiClient {
    private baseUrl;
    private token;
    private cache;
    constructor(token: string, baseUrl?: string);
    /**
     * Authenticate and validate the token
     */
    authenticate(): Promise<UserProfile>;
    /**
     * Validate MCP token using the dedicated endpoint
     */
    private validateMCPToken;
    /**
     * Validate token and get user profile
     */
    validateToken(): Promise<{
        isValid: boolean;
        user?: UserProfile;
    }>;
    /**
     * Get all saved profiles for the authenticated user
     */
    getProfiles(limit?: number, offset?: number): Promise<ProfileListResponse>;
    /**
     * Get a specific profile by ID
     */
    getProfile(id: string): Promise<SavedProfile>;
    /**
     * Search profiles by query string
     */
    searchProfiles(query: string, limit?: number): Promise<ProfileSearchResponse>;
    /**
     * Find a profile by name (for @mention functionality)
     */
    findProfileByName(name: string): Promise<SavedProfile | null>;
    /**
     * Make HTTP request with authentication and error handling
     */
    private makeRequest;
    /**
     * Get cache statistics
     */
    getCacheStats(): {
        size: number;
        maxSize: number;
        hitRate?: number | undefined;
    };
    /**
     * Clear all cached data
     */
    clearCache(): void;
    /**
     * Destroy the client and cleanup resources
     */
    destroy(): void;
}
//# sourceMappingURL=client.d.ts.map