/**
 * Skill Watcher
 *
 * Watches skill directories for changes and triggers reloads.
 *
 */
import type { SkillLoader } from './index.js';
export interface SkillWatcherOptions {
    /** Debounce time in milliseconds */
    debounceMs?: number;
    /** Watch these directories */
    watchDirs: string[];
}
export interface SkillWatcher {
    /** Start watching */
    start: () => void;
    /** Stop watching */
    stop: () => void;
    /** Check if watching is active */
    isWatching: () => boolean;
    /** Get last refresh time */
    getLastRefreshTime: () => number;
}
/**
 * Create a skill watcher
 */
export declare function createSkillWatcher(loader: SkillLoader, options: SkillWatcherOptions): SkillWatcher;
/**
 * Create a skill watcher from loader configuration
 */
export declare function createWatcherFromLoader(loader: SkillLoader, options: {
    workspaceDir?: string;
    builtinDir?: string;
    globalDirs?: string[];
    extraDirs?: string[];
    debounceMs?: number;
}): SkillWatcher | null;
