import type { string_book } from './string_book'; /** * One explicit `FROM` commitment written in a book. * * @private utility of Agents Server inheritance resolution */ export type ExplicitFromCommitment = { /** * Zero-based index of the line the commitment was found on, within the scanned lines. */ readonly lineIndex: number; /** * Trimmed commitment content, empty string for a blank `FROM`. */ readonly content: string; }; /** * Collects every explicit single-line `FROM` commitment of one book. * * This lightweight parser is intentionally limited to the subset needed by inheritance * resolution so it stays safe to bundle into the Next.js proxy path. * * @param sourceLines - Book source already split into lines. * @returns Found `FROM` commitments in source order, empty when the book declares no parent. * * @private utility of Agents Server inheritance resolution */ export declare function collectExplicitFromCommitments(sourceLines: ReadonlyArray): ReadonlyArray; /** * Returns the effective explicit `FROM` commitment of one book. * * A book may repeat `FROM`, in which case the last one wins and overrides every earlier one. * * @param agentSource - Raw book source. * @returns The last explicit `FROM` commitment, or `undefined` when the book declares no parent. * * @private utility of Agents Server inheritance resolution */ export declare function getEffectiveExplicitFromCommitment(agentSource: string_book): ExplicitFromCommitment | undefined; /** * Returns the effective explicit `FROM` commitment content of one book. * * A book may repeat `FROM`, in which case the last one wins and overrides every earlier one. * * @param agentSource - Raw book source. * @returns Trimmed commitment content, empty string for a blank explicit `FROM`, or `undefined` when `FROM` is absent. * * @private utility of Agents Server inheritance resolution */ export declare function getExplicitFromCommitmentContent(agentSource: string_book): string | undefined; /** * Returns true when one book declares no parent at all and therefore implicitly inherits from `@Adam`. * * Writing no `FROM` commitment is equivalent to writing `FROM @Adam`, so only an explicit * `FROM @Null` / `FROM {Void}` turns the inheritance off. * * @param agentSource - Raw book source. * @returns True when the implicit `@Adam` ancestor applies to this book. * * @private utility of Agents Server inheritance resolution */ export declare function isImplicitAdamInheritance(agentSource: string_book): boolean;