import { AI } from "@raycast/api"; import { LLM, type BaseLLMParams } from "@langchain/core/language_models/llms"; /** * The input parameters for the RaycastAI class, which extends the BaseLLMParams interface. */ export interface RaycastAIInput extends BaseLLMParams { model?: AI.Model; creativity?: number; rateLimitPerMinute?: number; } /** * The RaycastAI class, which extends the LLM class and implements the RaycastAIInput interface. */ export declare class RaycastAI extends LLM implements RaycastAIInput { lc_serializable: boolean; /** * The model to use for generating text. */ model: AI.Model; /** * The creativity parameter, also known as the "temperature". */ creativity: number; /** * The rate limit for API calls, in requests per minute. */ rateLimitPerMinute: number; /** * The timestamp of the last API call, used to enforce the rate limit. */ private lastCallTimestamp; /** * Creates a new instance of the RaycastAI class. * @param {RaycastAIInput} fields The input parameters for the RaycastAI class. * @throws {Error} If the Raycast AI environment is not accessible. */ constructor(fields: RaycastAIInput); /** * Returns the type of the LLM, which is "raycast_ai". * @return {string} The type of the LLM. * @ignore */ _llmType(): string; /** * Calls AI.ask with the given prompt and returns the generated text. * @param {string} prompt The prompt to generate text from. * @return {Promise} A Promise that resolves to the generated text. * @ignore */ _call(prompt: string, options: this["ParsedCallOptions"]): Promise; }