import { z } from 'zod';
/** One review-thread comment — the audit-anchored provenance the taxonomy reads. */
export declare const CorpusDispositionCommentSchema: z.ZodObject<{
    /** GitHub review-comment databaseId — the evidence-ref anchor (5d-iii links labels back to it). */
    commentId: z.ZodOptional<z.ZodNumber>;
    /** Comment author login; '' for a deleted/ghost account (coerced at the adapter, never dropped). */
    author: z.ZodString;
    body: z.ZodString;
}, "strip", z.ZodTypeAny, {
    author: string;
    body: string;
    commentId?: number | undefined;
}, {
    author: string;
    body: string;
    commentId?: number | undefined;
}>;
/**
 * One held-out review thread, span-anchored. `diffHunk` (the root comment's
 * unified-diff hunk) is the CONTENT span source the firing binds to; `line` /
 * `originalLine` are locator HINTS only (#709 #3 — never physical-line equality).
 */
export declare const CorpusDispositionThreadSchema: z.ZodObject<{
    /** GitHub review-thread node id — the audit anchor. Optional (older payloads). */
    threadId: z.ZodOptional<z.ZodString>;
    path: z.ZodString;
    /** Post-image anchored line — a locator HINT (binding keys on diffHunk content). `null` when GitHub has none. */
    line: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    /** Base-image anchored line — a locator HINT. */
    originalLine: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    /** The root comment's unified diff hunk — the content/invariant span the firing binds to. */
    diffHunk: z.ZodString;
    /** GitHub `reviewThreads.isResolved` — surfaced as disposition evidence, NOT a filter. */
    isResolved: z.ZodBoolean;
    /** GitHub `reviewThreads.isOutdated` — surfaced; an outdated hunk must still bind by content (5d-iii). */
    isOutdated: z.ZodBoolean;
    comments: z.ZodArray<z.ZodObject<{
        /** GitHub review-comment databaseId — the evidence-ref anchor (5d-iii links labels back to it). */
        commentId: z.ZodOptional<z.ZodNumber>;
        /** Comment author login; '' for a deleted/ghost account (coerced at the adapter, never dropped). */
        author: z.ZodString;
        body: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        author: string;
        body: string;
        commentId?: number | undefined;
    }, {
        author: string;
        body: string;
        commentId?: number | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    path: string;
    diffHunk: string;
    isResolved: boolean;
    isOutdated: boolean;
    comments: {
        author: string;
        body: string;
        commentId?: number | undefined;
    }[];
    line?: number | null | undefined;
    threadId?: string | undefined;
    originalLine?: number | null | undefined;
}, {
    path: string;
    diffHunk: string;
    isResolved: boolean;
    isOutdated: boolean;
    comments: {
        author: string;
        body: string;
        commentId?: number | undefined;
    }[];
    line?: number | null | undefined;
    threadId?: string | undefined;
    originalLine?: number | null | undefined;
}>;
/** One held-out CORPUS PR's dispositions (provenance for the answer key). */
export declare const CorpusDispositionSchema: z.ZodObject<{
    pr: z.ZodNumber;
    /** Lowercase 40-hex merge-commit SHA (lc is squash-merge). */
    mergeCommitSha: z.ZodString;
    threads: z.ZodArray<z.ZodObject<{
        /** GitHub review-thread node id — the audit anchor. Optional (older payloads). */
        threadId: z.ZodOptional<z.ZodString>;
        path: z.ZodString;
        /** Post-image anchored line — a locator HINT (binding keys on diffHunk content). `null` when GitHub has none. */
        line: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        /** Base-image anchored line — a locator HINT. */
        originalLine: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        /** The root comment's unified diff hunk — the content/invariant span the firing binds to. */
        diffHunk: z.ZodString;
        /** GitHub `reviewThreads.isResolved` — surfaced as disposition evidence, NOT a filter. */
        isResolved: z.ZodBoolean;
        /** GitHub `reviewThreads.isOutdated` — surfaced; an outdated hunk must still bind by content (5d-iii). */
        isOutdated: z.ZodBoolean;
        comments: z.ZodArray<z.ZodObject<{
            /** GitHub review-comment databaseId — the evidence-ref anchor (5d-iii links labels back to it). */
            commentId: z.ZodOptional<z.ZodNumber>;
            /** Comment author login; '' for a deleted/ghost account (coerced at the adapter, never dropped). */
            author: z.ZodString;
            body: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            author: string;
            body: string;
            commentId?: number | undefined;
        }, {
            author: string;
            body: string;
            commentId?: number | undefined;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }, {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    mergeCommitSha: string;
    pr: number;
    threads: {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }[];
}, {
    mergeCommitSha: string;
    pr: number;
    threads: {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }[];
}>;
/** The frozen `corpus-dispositions.json` payload — one entry per held-out corpus PR. */
export declare const CorpusDispositionsSchema: z.ZodArray<z.ZodObject<{
    pr: z.ZodNumber;
    /** Lowercase 40-hex merge-commit SHA (lc is squash-merge). */
    mergeCommitSha: z.ZodString;
    threads: z.ZodArray<z.ZodObject<{
        /** GitHub review-thread node id — the audit anchor. Optional (older payloads). */
        threadId: z.ZodOptional<z.ZodString>;
        path: z.ZodString;
        /** Post-image anchored line — a locator HINT (binding keys on diffHunk content). `null` when GitHub has none. */
        line: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        /** Base-image anchored line — a locator HINT. */
        originalLine: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        /** The root comment's unified diff hunk — the content/invariant span the firing binds to. */
        diffHunk: z.ZodString;
        /** GitHub `reviewThreads.isResolved` — surfaced as disposition evidence, NOT a filter. */
        isResolved: z.ZodBoolean;
        /** GitHub `reviewThreads.isOutdated` — surfaced; an outdated hunk must still bind by content (5d-iii). */
        isOutdated: z.ZodBoolean;
        comments: z.ZodArray<z.ZodObject<{
            /** GitHub review-comment databaseId — the evidence-ref anchor (5d-iii links labels back to it). */
            commentId: z.ZodOptional<z.ZodNumber>;
            /** Comment author login; '' for a deleted/ghost account (coerced at the adapter, never dropped). */
            author: z.ZodString;
            body: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            author: string;
            body: string;
            commentId?: number | undefined;
        }, {
            author: string;
            body: string;
            commentId?: number | undefined;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }, {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }>, "many">;
}, "strip", z.ZodTypeAny, {
    mergeCommitSha: string;
    pr: number;
    threads: {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }[];
}, {
    mergeCommitSha: string;
    pr: number;
    threads: {
        path: string;
        diffHunk: string;
        isResolved: boolean;
        isOutdated: boolean;
        comments: {
            author: string;
            body: string;
            commentId?: number | undefined;
        }[];
        line?: number | null | undefined;
        threadId?: string | undefined;
        originalLine?: number | null | undefined;
    }[];
}>, "many">;
export type CorpusDispositionComment = z.infer<typeof CorpusDispositionCommentSchema>;
export type CorpusDispositionThread = z.infer<typeof CorpusDispositionThreadSchema>;
export type CorpusDisposition = z.infer<typeof CorpusDispositionSchema>;
//# sourceMappingURL=corpus-dispositions.d.ts.map