/** Plugin-owned, Step-scoped provenance; never a model route or durable message. */ export declare const ASSISTANT_ORIGIN_KEY = "github-copilot-assistant-origin"; type Dispose = () => void; export interface AssistantOrigin { readonly seq: number; readonly provider: string; readonly model: string; } interface OriginState { readonly turn: number; readonly step: number; readonly origin: AssistantOrigin | undefined; } interface OriginMatch { readonly event: unknown; } interface OriginContext { readonly state?: OriginState | undefined; readonly matches: readonly OriginMatch[]; } interface OriginLocationData { readonly kind: 'step'; readonly turn: number; readonly step: number; readonly key: typeof ASSISTANT_ORIGIN_KEY; readonly value: AssistantOrigin; } /** Targetless Definition: registration rebuilds existing bindings, including cold history. */ export declare const assistantOriginDefinition: { kind: string; match(event: unknown): { id: string; role: "start" | "update"; } | null; start(_context: OriginContext, match: OriginMatch): OriginState; update(context: OriginContext & { readonly state: OriginState; }, match: OriginMatch): OriginState; buildLocationData(context: OriginContext, scope: string, previous: OriginLocationData | null): OriginLocationData | null; }; /** Shallow UI-only projection. Unchanged input retains its exact props identity. */ export declare function projectReasoningPresentation(props: Props, origin: unknown): Props; export interface ReasoningPresentationCapabilities { readonly slots: unknown; readonly uiConversation: unknown; /** Receives stable codes only, never message text, model payloads or error bodies. */ readonly diagnostic: (code: string) => void; } /** * Optional Client enhancement. The caller owns the returned disposer in its * dependency-scoped effect; missing older-Core seams leave native UI alone. */ export declare function installReasoningPresentation(capabilities: ReasoningPresentationCapabilities): Dispose; export {}; //# sourceMappingURL=reasoning-presentation.d.ts.map