/// import { Nullable, Dictionary } from './utils'; export declare type Skill = MajorSkill | BaseSkill; export declare type TooltipDirection = 'right' | 'left' | 'top' | 'bottom'; export declare type NodeState = 'locked' | 'unlocked' | 'selected'; export declare type SkillMap = Record; export interface SkillGroupData { skillCount: SkillCount; selectedSkillCount: SkillCount; resetSkills: VoidFunction; handleFilter: (query: string) => void; } export declare type SavedDataType = Dictionary; export declare type SkillData = { optional: boolean; nodeState: NodeState; }; export interface SkillCount { required: number; optional: number; } export interface Tooltip { content: React.ReactNode; direction?: TooltipDirection; } export declare type Action = { type: ActionType; }; export declare type ActionType = 'SELECT_REQUIRED_SKILL' | 'DESELECT_REQUIRED_SKILL' | 'SELECT_OPTIONAL_SKILL' | 'DESELECT_OPTIONAL_SKILL' | 'RESET_SKILLS'; interface BaseSkill { id: string; optional?: boolean; color?: 'default' | 'alternative'; title: string; tooltip: Tooltip; children: Skill[]; } interface MajorSkill extends BaseSkill { icon: string; } export declare type Direction = 'left' | 'right'; export interface ContextStorage { getItem: (key: string) => Nullable; setItem: (key: string, value: string) => void; } export interface NodeSelectEvent { key: string; state: NodeState; } export {};