import type { ApifyClient } from '../apify_client.js';
import type { ActorDefinitionStorage, DatasetItem } from '../types.js';
/**
 * Resolve and cache the MCP server URL for the given Actor.
 * - Returns a string URL when the Actor exposes an MCP server
 * - Returns false when the Actor is not an MCP server
 * Uses a TTL LRU cache to avoid repeated API calls.
 */
export declare function getActorMcpUrlCached(actorIdOrName: string, apifyClient: ApifyClient): Promise<string | false>;
/**
 * Returns an array of all field names mentioned in the display.properties
 * of all views in the given ActorDefinitionStorage object.
 */
export declare function getActorDefinitionStorageFieldNames(storage: ActorDefinitionStorage | object): string[];
/**
 * Ensures the Actor output items are within the character limit.
 *
 * First checks if all items fit into the limit, then tries only the important fields and as a last resort
 * starts removing items until within the limit. In worst scenario return empty array.
 *
 * This is primarily used to ensure the tool output does not exceed the LLM context length or tool output limit.
 */
export declare function ensureOutputWithinCharLimit(items: DatasetItem[], importantFields: string[], charLimit: number): DatasetItem[];
//# sourceMappingURL=actor.d.ts.map