import type { FlatSkillType, SkillType } from '../../types/skill';
import type { SkillQuery } from '@learncard/types';
export declare const doesProfileManageSkill: (profileId: string, skillId: string) => Promise<boolean>;
export declare const doesProfileManageSkillInFramework: (profileId: string, frameworkId: string, skillId: string) => Promise<boolean>;
export declare const getFrameworkIdsForSkill: (skillId: string) => Promise<string[]>;
export declare const doesSkillExistInFramework: (frameworkId: string, skillId: string) => Promise<boolean>;
export declare const getSkillById: (frameworkId: string, skillId: string) => Promise<FlatSkillType | null>;
export type Paginated<T> = {
    records: T[];
    hasMore: boolean;
    cursor: string | null;
};
export declare const getFrameworkRootSkillsPaged: (frameworkId: string, limit: number, cursorId?: string | null) => Promise<Paginated<FlatSkillType>>;
export declare const getChildrenForSkillInFrameworkPaged: (frameworkId: string, parentId: string, limit: number, cursorId?: string | null) => Promise<{
    records: (SkillType & {
        hasChildren: boolean;
    })[];
    hasMore: boolean;
    cursor: string | null;
}>;
export declare const searchSkillsInFramework: (frameworkId: string, searchQuery: SkillQuery, limit: number, cursorId?: string | null) => Promise<Paginated<FlatSkillType>>;
export declare const getSkillsByFramework: (frameworkId: string) => Promise<FlatSkillType[]>;
export declare const countSkillsInFramework: (frameworkId: string, skillId?: string, recursive?: boolean, onlyCountCompetencies?: boolean) => Promise<number>;
export declare const getFullSkillTree: (frameworkId: string) => Promise<FlatSkillType[]>;
export declare const getSkillsByIds: (skillIds: string[]) => Promise<FlatSkillType[]>;
export declare const getSkillsByIdsForFramework: (frameworkId: string, skillIds: string[]) => Promise<FlatSkillType[]>;
export declare const getSkillByFrameworkAndId: (frameworkId: string, skillId: string) => Promise<FlatSkillType | null>;
export declare const getSkillPath: (frameworkId: string, skillId: string) => Promise<SkillType[]>;
export type SkillEmbeddingSearchResult = {
    skill: FlatSkillType;
    score: number;
};
export declare const searchSkillsByEmbedding: (embedding: number[], limit: number, frameworkId?: string) => Promise<SkillEmbeddingSearchResult[]>;
export declare const getSkillsMissingEmbedding: (limit: number, cursorId?: string | null) => Promise<Paginated<FlatSkillType>>;
//# sourceMappingURL=read.d.ts.map