@exionstech/skills-wrap
Version:
Comprehensive tech skills and roles database with utilities for IT service companies.
164 lines (157 loc) • 5.17 kB
TypeScript
import React from 'react';
interface RequiredSkill {
skill: string;
level: 'beginner' | 'intermediate' | 'advanced' | 'expert';
logo: string;
}
interface TechRole {
label: string;
value: string;
description: string;
required_skills: RequiredSkill[];
}
interface SkillLevel {
label: string;
value: string;
description: string;
}
interface Category {
label: string;
roles: string[];
}
interface TechRolesData {
tech_roles: Record<string, TechRole>;
skill_levels: Record<string, SkillLevel>;
categories: Record<string, Category>;
logo_sources: {
api_url: string;
base_url: string;
documentation: string;
};
metadata: {
version: string;
created_date: string;
description: string;
total_roles: number;
total_unique_skills: number;
last_updated: string;
};
}
interface SkillOption$1 {
label: string;
value: string;
logo: string;
category: string;
level: string;
}
interface RoleOption$1 {
label: string;
value: string;
description: string;
}
interface MultiSelectOption$1 {
label: string;
value: string;
icon?: React.ComponentType<{
className?: string;
}>;
otherCollege?: boolean;
}
interface SkillStatistics$1 {
totalSkills: number;
totalCategories: number;
skillsWithLogos: number;
levelDistribution: Record<string, number>;
categoryCounts: Record<string, number>;
mostPopularSkills: SkillOption$1[];
}
interface ValidationResult$1 {
isValid: boolean;
errors: string[];
suggestions: string[];
}
declare const techRolesData: TechRolesData;
interface SkillOption {
label: string;
value: string;
logo: string;
category: string;
level: string;
}
interface RoleOption {
label: string;
value: string;
description: string;
}
interface MultiSelectOption {
label: string;
value: string;
icon?: React.ComponentType<{
className?: string;
}>;
otherCollege?: boolean;
}
interface SkillStatistics {
totalSkills: number;
totalCategories: number;
skillsWithLogos: number;
levelDistribution: Record<string, number>;
categoryCounts: Record<string, number>;
mostPopularSkills: SkillOption[];
}
interface ValidationResult {
isValid: boolean;
errors: string[];
suggestions: string[];
}
declare const getAllSkillsOptions: () => SkillOption[];
declare const getSkillsByCategory: () => Record<string, SkillOption[]>;
declare const getSkillsByRole: (roleValue: string) => SkillOption[];
declare const getAllRolesOptions: () => RoleOption[];
declare const getSkillsByLevel: (level: string) => SkillOption[];
declare const getSkillByValue: (value: string) => SkillOption | undefined;
declare const createSkillIcon: (logoUrl: string, skillName: string) => ({ className }: {
className?: string;
}) => React.DetailedReactHTMLElement<{
src: string;
alt: string;
className: string;
onError: (e: React.SyntheticEvent<HTMLImageElement, Event>) => void;
}, HTMLElement>;
declare const formatSkillsForMultiSelect: (skills: SkillOption[]) => MultiSelectOption[];
declare const getSkillsCountByCategory: () => Record<string, number>;
declare const getMostPopularSkills: (limit?: number) => SkillOption[];
declare const getSkillsByLevels: (levels: string[]) => SkillOption[];
declare const searchSkills: (query: string) => SkillOption[];
declare const getRelatedSkills: (skillValue: string, limit?: number) => SkillOption[];
declare const validateSkillSelection: (selectedSkills: string[]) => ValidationResult;
declare const getSkillStatistics: () => SkillStatistics;
declare const SKILL_LEVELS: {
readonly BEGINNER: "beginner";
readonly INTERMEDIATE: "intermediate";
readonly ADVANCED: "advanced";
readonly EXPERT: "expert";
};
declare const CATEGORIES: {
readonly FRONTEND: "frontend";
readonly BACKEND: "backend";
readonly FULLSTACK: "fullstack";
readonly MOBILE: "mobile";
readonly DEVOPS: "devops";
readonly DATA: "data";
readonly AI_ML: "ai_ml";
readonly SECURITY: "security";
readonly BLOCKCHAIN: "blockchain";
readonly GAMING: "gaming";
readonly MANAGEMENT: "management";
readonly ANALYSIS: "analysis";
readonly QA: "qa";
};
declare const LOGO_SOURCES: {
readonly API_URL: "https://api.svgl.app";
readonly BASE_URL: "https://svgl.app/library/";
readonly DOCUMENTATION: "https://svgl.app/api";
};
declare const version = "1.0.0";
export { CATEGORIES, LOGO_SOURCES, SKILL_LEVELS, createSkillIcon, formatSkillsForMultiSelect, getAllRolesOptions, getAllSkillsOptions, getMostPopularSkills, getRelatedSkills, getSkillByValue, getSkillStatistics, getSkillsByCategory, getSkillsByLevel, getSkillsByLevels, getSkillsByRole, getSkillsCountByCategory, searchSkills, techRolesData, validateSkillSelection, version };
export type { Category, MultiSelectOption$1 as MultiSelectOption, RequiredSkill, RoleOption$1 as RoleOption, SkillLevel, SkillOption$1 as SkillOption, SkillStatistics$1 as SkillStatistics, TechRole, TechRolesData, ValidationResult$1 as ValidationResult };