export type SkillSourceKind = "project" | "user" | "plugin" | "explicit"; export interface DiscoveredSkillBenchSkill { id: string; name: string; description: string; canonicalPath: string; skillFilePath: string; sourceUri: string; sourceKind: SkillSourceKind; fingerprint: string; provenance: { rootKind: SkillSourceKind; rootPath: string; discoveredFrom: string; }; } export interface RejectedSkillBenchSkill { path: string; reason: string; } export interface DiscoverSkillBenchSkillsOptions { projectRoots?: string[]; userRoots?: string[]; pluginRoots?: string[]; explicitPaths?: string[]; } export interface DiscoverSkillBenchSkillsResult { skills: DiscoveredSkillBenchSkill[]; rejected: RejectedSkillBenchSkill[]; } export type ModelCandidateSource = "history" | "configured" | "host-default" | "explicit" | "provider-snapshot"; export type ModelProbeStatus = "available" | "unavailable" | "unknown"; export interface ProviderModelSnapshot { url: string; date: string; modelIds: string[]; } export interface ModelCandidate { id: string; sources: ModelCandidateSource[]; probeStatus: ModelProbeStatus; selectable: boolean; unavailableReason?: string; } export interface ResolveModelCandidatesOptions { historyObservedIds?: string[]; configuredIds?: string[]; hostDefaultIds?: string[]; explicitIds?: string[]; providerSnapshots?: ProviderModelSnapshot[]; probe?: (id: string) => Promise<{ status: ModelProbeStatus | "timeout"; reason?: string; }>; } export interface ResolveModelCandidatesResult { candidates: ModelCandidate[]; completeEnumeration: false; enumerationProvenance: string[]; } export declare function discoverSkillBenchSkills(options: DiscoverSkillBenchSkillsOptions): DiscoverSkillBenchSkillsResult; export declare function resolveModelCandidates(options: ResolveModelCandidatesOptions): Promise;