diff --git a/src/media-understanding/types.ts b/src/media-understanding/types.ts index a74c79757..078c59082 100644 --- a/src/media-understanding/types.ts +++ b/src/media-understanding/types.ts @@ -20,6 +20,33 @@ export type MediaUnderstandingOutput = { model?: string; }; +export type MediaUnderstandingDecisionOutcome = + | "success" + | "skipped" + | "disabled" + | "no-attachment" + | "scope-deny"; + +export type MediaUnderstandingModelDecision = { + provider?: string; + model?: string; + type: "provider" | "cli"; + outcome: "success" | "skipped" | "failed"; + reason?: string; +}; + +export type MediaUnderstandingAttachmentDecision = { + attachmentIndex: number; + attempts: MediaUnderstandingModelDecision[]; + chosen?: MediaUnderstandingModelDecision; +}; + +export type MediaUnderstandingDecision = { + capability: MediaUnderstandingCapability; + outcome: MediaUnderstandingDecisionOutcome; + attachments: MediaUnderstandingAttachmentDecision[]; +}; + export type AudioTranscriptionRequest = { buffer: Buffer; fileName: string;