import type { NativePortableAcceptanceState, NativePortableState } from './native-portable-types.js'; export declare const NATIVE_CHILDREN_FILE = "children.yaml"; export declare const NATIVE_CHILDREN_SCHEMA: "comet.native.children.v1"; export declare const NATIVE_CHILDREN_V2_SCHEMA: "comet.native.children.v2"; export declare const NATIVE_CHILDREN_SCHEMA_V2: "comet.native.children.v2"; export interface NativeChildDefinition { name: string; summary: string | null; depends_on: string[]; covers: string[]; } export interface NativeChildAcceptanceIndexEntry { source: string; text: string; } export interface NativeChildrenContract { schema: typeof NATIVE_CHILDREN_SCHEMA | typeof NATIVE_CHILDREN_SCHEMA_V2; acceptance_index?: Record; children: NativeChildDefinition[]; } export interface NativeChildrenDocument { contract: NativeChildrenContract; hash: string; size: number; drift: NativeChildrenIndexDrift | null; } export declare function nativeChildrenIndexDrift(contract: NativeChildrenContract, acceptanceIds: readonly string[] | undefined, options: NativeChildrenValidationOptions): NativeChildrenIndexDrift | null; export interface NativeChildrenValidationOptions { acceptanceCatalog?: readonly Pick[]; requiredAcceptanceIds?: readonly string[]; allowedAcceptanceIds?: readonly string[]; /** * Advisory parsing keeps the same structural checks but reports acceptance-index * drift through NativeChildrenDocument.drift instead of throwing, so read-only * projections can render a stale contract as "confirmation required". */ policy?: 'strict' | 'advisory'; } export interface NativeChildrenIndexDrift { missing: string[]; extra: string[]; mismatched: string[]; uncovered: string[]; unknownCovers: string[]; } type NativeChildrenAcceptanceState = Pick & { acceptance: readonly Pick[]; }; export declare function nativeChildrenAcceptanceValidation(state: NativeChildrenAcceptanceState): NativeChildrenValidationOptions; export declare function parseNativeChildrenContract(source: string, acceptanceIds?: readonly string[], options?: NativeChildrenValidationOptions): NativeChildrenContract; export declare function readNativeChildrenContract(options: { changeDir: string; acceptanceIds?: readonly string[]; validation?: NativeChildrenValidationOptions; policy?: 'strict' | 'advisory'; }): Promise; export {}; //# sourceMappingURL=native-children-contract.d.ts.map