export interface LinkedCommit { sha: string; shortSha: string; message: string; relationship: 'fixes' | 'closes' | 'related' | 'reverts' | 'breaks' | 'implements'; linked_at: string; linked_by?: string; } export interface SentinelLinkCommitInput { projectId?: string; artifactId: string; commitSha: string; relationship?: LinkedCommit['relationship']; } export interface SentinelLinkCommitOutput { artifactId: string; artifactPath: string; commit: LinkedCommit; totalLinkedCommits: number; } export interface SentinelGetCommitsInput { projectId?: string; artifactId: string; } export interface SentinelGetCommitsOutput { artifactId: string; commits: LinkedCommit[]; } export interface GitFindIssueInput { projectId?: string; commitSha: string; } export interface GitFindIssueOutput { commitSha: string; linkedArtifacts: Array<{ id: string; type: 'issue' | 'epic'; title: string; relationship: string; }>; } export interface LinkError { error: string; details?: string; } export interface ParsedReference { artifactId: string; relationship: LinkedCommit['relationship']; } export interface AutoLinkInput { projectId?: string; commitSha?: string; } export interface AutoLinkOutput { commitSha: string; commitMessage: string; referencesFound: ParsedReference[]; linked: Array<{ artifactId: string; relationship: string; status: 'linked' | 'already_linked' | 'not_found'; }>; } export declare function sentinelLinkCommit(input: SentinelLinkCommitInput): Promise; export declare function sentinelGetLinkedCommits(input: SentinelGetCommitsInput): Promise; export declare function gitFindLinkedIssues(input: GitFindIssueInput): Promise; /** * Parse commit message for issue/epic references. * Supports patterns: * - ISS-0042, EPIC-0001 (standalone references -> 'related') * - fixes ISS-0042, closes EPIC-0001 (action + reference) * - fix: ISS-0042, close: EPIC-0001 (conventional commit style) * - implements EPIC-0001, reverts ISS-0042 */ export declare function parseCommitMessage(message: string): ParsedReference[]; export declare function autoLinkCommit(input: AutoLinkInput): Promise; export declare function isLinkError(result: unknown): result is LinkError; //# sourceMappingURL=git-sentinel.d.ts.map