import type { string_url } from '../../../types/string_url';
import type { string_url_image } from '../../../types/string_url_image';
/**
 * Input data for resolving agent profiles.
 *
 * @private
 */
export type AgentProfileInput = {
    url: string_url;
    label?: string;
    imageUrl?: string_url_image;
    publicUrl?: string_url;
};
/**
 * Resolved agent profile data for UI usage.
 *
 * @private
 */
export type AgentProfileData = {
    label: string;
    imageUrl: string_url_image | null;
};
/**
 * Extracts agent name from URL.
 *
 * @private
 */
export declare function extractAgentNameFromUrl(url: string): string;
/**
 * Determines whether a label looks like an autogenerated identifier.
 *
 * @private
 */
export declare function isLikelyGeneratedId(label: string): boolean;
/**
 * Resolves the initial label for an agent without exposing generated IDs.
 *
 * @private
 */
export declare function resolveInitialAgentLabel(agent: AgentProfileInput): string;
/**
 * Picks the best available label from profile data without exposing IDs.
 *
 * @private
 */
export declare function resolvePreferredAgentLabel(candidates: Array<string | undefined>, fallback: string): string;
/**
 * Resolves the agents server base URL from the agent URL or provided public URL.
 *
 * @private
 */
export declare function resolveAgentsServerUrl(agentUrl: string, publicUrl?: string_url): string | null;
/**
 * Resolves the profile image URL, handling relative URLs when needed.
 *
 * @private
 */
export declare function resolveProfileImageUrl(profileImageUrl: string_url_image | undefined, agentUrl: string_url, publicUrl?: string_url): string_url_image | null;
/**
 * Builds a placeholder image URL for the agent when no profile image is available.
 *
 * @private
 */
export declare function resolvePlaceholderImageUrl(agent: AgentProfileInput): string_url_image | null;
/**
 * Returns true when a profile fetch would likely improve the label or image.
 *
 * @private
 */
export declare function shouldFetchAgentProfile(agent: AgentProfileInput): boolean;
/**
 * Resolves fallback profile data without fetching remote metadata.
 *
 * @private
 */
export declare function resolveAgentProfileFallback(agent: AgentProfileInput): AgentProfileData;
/**
 * Loads agent profile data from the agent profile endpoint when needed.
 *
 * @private
 */
export declare function loadAgentProfile(agent: AgentProfileInput): Promise<AgentProfileData>;
