import type { ExtensionType } from "@agentxm/extension-model/unstable/extensions/common"; import type { TelemetryProperties } from "../telemetry/client.js"; export type CommandOutcome = "applied" | "previewed" | "no-op" | "cancelled" | "partial" | "failed" | "blocked" | "interrupted"; /** * What a command acted on, for telemetry and JSON output. Derived from the * extension type table so a new type is named here automatically, plus two * aggregate markers that are not types. */ export type SubjectType = ExtensionType | "mixed" | "unknown"; export type SourceKind = "registry" | "git" | "local" | "workspace" | "mixed" | "unknown"; export interface CommandOutcomeSummary { readonly outcome?: CommandOutcome; readonly subjectType?: SubjectType; readonly sourceKind?: SourceKind; readonly appliedCount?: number; readonly failedCount?: number; readonly blockedCount?: number; } /** * Maps a structured plan resolution outcome to standardized `cli.*` telemetry * properties. Only defined fields are included in the output record; undefined * fields are omitted entirely. */ export declare const summarizeCommandOutcome: (summary: CommandOutcomeSummary) => TelemetryProperties; //# sourceMappingURL=command-summary.d.ts.map