import type { LanguageModelV4StreamPart } from "@ai-sdk/provider"; export type ModelStreamPartClass = /** * Output that `emitAiSdkEvents()` converts into `AgentModelEvent`s and * that therefore reaches the assistant message. A turn containing any of * these is not empty. */ "converted-content" /** * Real model output that Cline does not (yet) convert into agent events. * The model responded, so retrying would waste billable requests and * likely reproduce the same output — never retried. If a turn contains * ONLY unsupported output the assistant message can still come out * empty; that is an explicit contract gap of this bucket, preferred over * silently re-billing a turn the model did answer. */ | "unsupported-output" /** Markers and metadata that do not constitute model output. */ | "structural" /** `stream-start` — carries warnings; one per attempt. */ | "stream-start" /** Terminal accounting part — carries usage and the finish reason. */ | "finish" /** An upstream error surfaced as a stream part. */ | "error"; export declare function classifyModelStreamPart(part: LanguageModelV4StreamPart): ModelStreamPartClass; /** * Whether a completed attempt that contained only parts for which this * returns `false` (plus `stream-start`/`finish`) counts as a genuinely empty * turn. Both converted and unsupported output mean "the model responded". */ export declare function isModelOutputPart(part: LanguageModelV4StreamPart): boolean; //# sourceMappingURL=stream-part-classification.d.ts.map