export interface SkillCandidateToolCall { name: string; input: Record; failed: boolean; } export interface SkillCandidateTeachingMeta { preAnnotations?: Array<{ argsDigest?: string; toolName?: string; why?: string; concept?: string; pitfalls?: string[]; }>; postAnnotations?: Array<{ toolCallId?: string; toolName?: string; verifyHint?: string; confidence?: string; confidenceReason?: string; nextStepIfFails?: string; rollbackSupported?: boolean; rollbackHint?: string; failureCard?: { cause?: string; actions?: string[]; stopWhen?: string; rollbackAvailable?: boolean; }; }>; annotatedToolNames?: string[]; eligibleToolNames?: string[]; annotationCoverage?: number; } export interface SkillCandidateEvidence { candidateId: string; sourceKind: 'conversation'; createdAt: number; sourceSessionKey: string; turnHash: string; gate: 'strict' | 'intent' | 'legacy'; toolCalls: SkillCandidateToolCall[]; toolNames: string[]; userMessage: string; assistantText: string; teachingMeta?: SkillCandidateTeachingMeta; runMeta: { completionKind: 'complete' | 'partial' | 'cancelled' | 'failed'; model: string; totalElapsedMs: number; stopReason?: string; }; customSlug?: string; } export interface CandidateStoreResult { candidateId: string; path: string; isNew: boolean; dedupedFrom?: string; } export declare function isUnsafeCandidateId(candidateId: string): boolean; export declare function writeSkillCandidate(input: { workspaceDir: string; sessionKey: string; turnHash: string; gate: 'strict' | 'intent' | 'legacy'; toolCalls: SkillCandidateToolCall[]; userMessage: string; assistantText: string; teachingMeta?: SkillCandidateTeachingMeta; runMeta: SkillCandidateEvidence['runMeta']; customSlug?: string; }): Promise; export declare function listCandidates(workspaceDir: string, filters?: { gate?: string; toolName?: string; minCreatedAt?: number; }): Promise; export declare function removeCandidate(workspaceDir: string, candidateId: string): Promise; export declare function getCandidatesRoot(workspaceDir: string): string; //# sourceMappingURL=skill-candidate-store.d.ts.map