/** * API Ninjas Trivia Skill - Fetches trivia questions from the API Ninjas service. * * Tier 2 built-in skill: requires API_NINJAS_KEY environment variable. * Uses the API Ninjas Trivia endpoint to retrieve random trivia questions * with optional category filtering. */ import { SkillBase } from '../SkillBase.js'; import type { SkillToolDefinition, SkillPromptSection, SkillConfig, ParameterSchemaEntry } from '../SkillBase.js'; /** * Fetches trivia questions from the API Ninjas service. * * Tier 2 built-in skill. Requires the `API_NINJAS_KEY` environment variable. * Supports optional `default_category` and `reveal_answer` config options. * * @example * ```ts * agent.addSkill('api_ninjas_trivia', { default_category: 'sciencenature' }); * ``` */ export declare class ApiNinjasTriviaSkill extends SkillBase { static SKILL_NAME: string; static SKILL_DESCRIPTION: string; static REQUIRED_ENV_VARS: readonly string[]; static SUPPORTS_MULTIPLE_INSTANCES: boolean; static getParameterSchema(): Record; /** * Produce a compound instance key matching Python `get_instance_key` * (skill.py:139-146): `f"{SKILL_NAME}_{self.tool_name}"` with * `tool_name` defaulting to `'get_trivia'` (skill.py:95). The base * `SkillBase.getInstanceKey` uses `this.skillName` as the fallback, * so we override to match Python's `'get_trivia'` default. */ getInstanceKey(): string; /** @returns A single trivia tool (configurable name) that fetches a random trivia question with optional category. */ getTools(): SkillToolDefinition[]; /** @returns Prompt section describing trivia capabilities and quiz behavior. */ protected _getPromptSections(): SkillPromptSection[]; /** @returns Speech recognition hints for trivia-related keywords. */ getHints(): string[]; } /** * Factory function for creating ApiNinjasTriviaSkill instances. * @param config - Optional skill configuration. * @returns A new ApiNinjasTriviaSkill instance. */ export declare function createSkill(config?: SkillConfig): ApiNinjasTriviaSkill;