/**
 * FCS Script Registry
 *
 * Provides discovery and management of FCS script templates.
 */
export interface ScriptTemplate {
    name: string;
    path: string;
    category: string;
    description: string;
    usage?: string;
    envVars?: string[];
}
export interface ScriptCategory {
    name: string;
    description: string;
    scripts: ScriptTemplate[];
}
/**
 * Registry of available FCS script templates
 */
export declare class ScriptRegistry {
    private templates;
    private categories;
    private templatesDir;
    constructor(templatesDir?: string);
    /**
     * Load all templates from the templates directory
     */
    loadTemplates(): Promise<void>;
    /**
     * Load scripts from a category directory
     */
    private loadCategoryScripts;
    /**
     * Parse a template file to extract metadata
     */
    private parseTemplate;
    /**
     * Get all templates
     */
    getTemplates(): ScriptTemplate[];
    /**
     * Get templates by category
     */
    getTemplatesByCategory(category: string): ScriptTemplate[];
    /**
     * Get all categories
     */
    getCategories(): ScriptCategory[];
    /**
     * Get a specific template by name
     */
    getTemplate(name: string): ScriptTemplate | undefined;
    /**
     * Search templates by keyword
     */
    searchTemplates(keyword: string): ScriptTemplate[];
    /**
     * Format templates as a readable list
     */
    formatTemplateList(): string;
}
/**
 * Get the script registry instance
 */
export declare function getScriptRegistry(): ScriptRegistry;
/**
 * Initialize and load the script registry
 */
export declare function initScriptRegistry(templatesDir?: string): Promise<ScriptRegistry>;
