/** * Skill Configuration Manager * * Handles skill-specific configuration and environment variables. * */ import type { SkillConfig, SkillsConfig, Skill } from './types.js'; /** * Resolve skill configuration from multiple sources * * Priority (highest to lowest): * 1. Environment variable overrides (XOPC_SKILL__) * 2. Config file entries * 3. Skill defaults */ export declare function resolveSkillConfig(skill: Skill, skillsConfig?: SkillsConfig): SkillConfig; /** * Apply environment variable overrides to a skill's environment */ export declare function applySkillEnvOverrides(skill: Skill, baseEnv?: Record, skillConfig?: SkillConfig): Record; /** * Get the effective environment for a skill */ export declare function getSkillEnvironment(skill: Skill, skillsConfig?: SkillsConfig): Record; /** * Skill configuration file manager */ export interface SkillConfigFile { /** Path to the config file */ configPath: string; /** Load configuration */ load: () => SkillsConfig; /** Save configuration */ save: (config: SkillsConfig) => void; /** Get skill-specific config */ getSkillConfig: (skillName: string) => SkillConfig | undefined; /** Update skill configuration */ updateSkillConfig: (skillName: string, config: Partial) => void; /** Enable/disable a skill */ setSkillEnabled: (skillName: string, enabled: boolean) => void; /** Set skill API key */ setSkillApiKey: (skillName: string, apiKey: string) => void; } /** * Create a skill configuration file manager */ export declare function createSkillConfigManager(configDir: string): SkillConfigFile; /** * Check if a skill is enabled */ export declare function isSkillEnabled(skill: Skill, skillsConfig?: SkillsConfig): boolean; /** * Validate skill configuration */ export declare function validateSkillConfig(config: SkillsConfig): { valid: boolean; errors: string[]; };