import type { Component, Focusable } from '../../../tui/index.js';
import { Container } from '../../../tui/index.js';
export interface SkillVisibilityItem {
    name: string;
    description: string;
    enabled: boolean;
    locked: boolean;
    filePath: string;
    source: string;
}
declare class SkillList implements Component, Focusable {
    private readonly searchInput;
    private items;
    private filteredItems;
    private selectedIndex;
    private readonly maxVisible;
    private _focused;
    onCancel?: () => void;
    onExit?: () => void;
    onToggle?: () => void;
    onApply?: (items: SkillVisibilityItem[]) => void;
    get focused(): boolean;
    set focused(value: boolean);
    constructor(items: SkillVisibilityItem[]);
    invalidate(): void;
    render(width: number): string[];
    handleInput(data: string): void;
    private filterItems;
    private selectFirstItem;
}
export declare class SkillsSelectorComponent extends Container implements Focusable {
    private readonly skillList;
    private readonly hintText;
    private _focused;
    get focused(): boolean;
    set focused(value: boolean);
    constructor(items: SkillVisibilityItem[], onClose: () => void, onExit: () => void, onToggle: (items: SkillVisibilityItem[]) => void, requestRender: () => void);
    getSkillList(): SkillList;
}
export {};
//# sourceMappingURL=skills-selector.d.ts.map