export type TrackerProvider = "github" | "jira" | "gitlab" | "bitbucket"; export type TrackerAdapterTransport = "cli" | "mcp-skill"; export type TrackerIssueState = "open" | "in_progress" | "blocked" | "done"; export interface TrackerAdapterContract { tracker: TrackerProvider; nativeCli: string; mcpSkill: string; operations: Array<"issue-read" | "comment-upsert" | "close">; } export interface TrackerTransportSelection { tracker: TrackerProvider; transport: TrackerAdapterTransport; reason: string; } export interface NormalizedTrackerIssue { tracker: TrackerProvider; remoteId: string; url?: string; title: string; body?: string; state?: TrackerIssueState; labels: string[]; assignees: string[]; acceptanceCriteria: string[]; updatedAt?: string; } export interface TrackerSyncPlan { tracker: TrackerProvider; remoteId: string; taskId: string; action: "create" | "update" | "none" | "conflict"; conflicts: string[]; mappedFields: string[]; } export declare function listTrackerAdapterContracts(): TrackerAdapterContract[]; export declare function getTrackerAdapterContract(tracker: string): TrackerAdapterContract; export declare function selectTrackerTransport({ tracker, requestedTransport, cliAvailable, mcpSkillAvailable, }: { tracker: string; requestedTransport?: TrackerAdapterTransport; cliAvailable: boolean; mcpSkillAvailable: boolean; }): TrackerTransportSelection; export declare function normalizeTrackerIssue(input: { tracker: string; remoteId: string | number; url?: unknown; title: unknown; body?: unknown; state?: unknown; labels?: unknown; assignees?: unknown; acceptanceCriteria?: unknown; updatedAt?: unknown; }): NormalizedTrackerIssue; export declare function defaultTrackerTaskId(issue: NormalizedTrackerIssue): string; export declare function trackerIssueTaskFields(issue: NormalizedTrackerIssue): { title: string; backlogItem: string; goal?: string; acceptanceCriteria?: string[]; risks?: string[]; status?: "pending" | "in_progress" | "blocked" | "done"; }; export declare function planTrackerSync(input: { issue: NormalizedTrackerIssue; taskId?: string; existingTask?: { title: string; backlogItem?: string; }; }): TrackerSyncPlan;