export declare const TURN_MODEL_PROVENANCE_KEY = "github-copilot-turn-model-provenance"; export interface RecordedModel { readonly provider: string; readonly model: string; } export interface TurnModelProvenance { readonly routes: readonly RecordedModel[]; readonly incomplete: boolean; readonly ended: boolean; } interface State { readonly turn: number; readonly hasStart: boolean; readonly openSteps: readonly number[]; readonly value: TurnModelProvenance; } interface Match { readonly event: unknown; } interface Context { readonly state?: State; readonly matches: readonly Match[]; } interface LocationData { readonly kind: 'turn'; readonly turn: number; readonly key: typeof TURN_MODEL_PROVENANCE_KEY; readonly value: TurnModelProvenance; } export declare function isTurnModelProvenance(value: unknown): value is TurnModelProvenance; /** Read provenance only; native Core retains attempt accounting and token totals. */ export declare const turnModelProvenanceDefinition: { kind: string; match(event: unknown): { id: string; role: "start" | "update"; } | null; start(_context: Context, match: Match): State; update(context: Context & { readonly state: State; }, match: Match): State; buildLocationData(context: Context, scope: string, previous: LocationData | null): LocationData | null; }; export {}; //# sourceMappingURL=turn-model-provenance.d.ts.map