import { type RuntimeAiSubmitScenarioJobRequestInput } from '../runtime/browser.js';
import { type AiRoutePolicy } from '../types/index.js';
import { type NimiArtifact, type RuntimeDefaults, type RuntimeForAiProvider } from './types.js';
import { type ScenarioArtifact, type ScenarioOutput } from '../runtime/generated/runtime/v1/ai.js';
type ScenarioJobExecution = {
    artifacts: NimiArtifact[];
    traceId: string;
    routeDecision: AiRoutePolicy;
    modelResolved: string;
    output?: ScenarioOutput;
};
export declare function executeScenarioJob(runtime: RuntimeForAiProvider, defaults: RuntimeDefaults, request: RuntimeAiSubmitScenarioJobRequestInput, timeoutMs: number, signal?: AbortSignal): Promise<ScenarioJobExecution>;
export declare function collectArtifacts(stream: AsyncIterable<unknown>): Promise<NimiArtifact[]>;
export declare function toEmbeddingVectors(vectors: unknown): number[][];
export declare function toEmbeddingVectorsFromScenarioOutput(output: ScenarioOutput | undefined): number[][];
export declare function toSpeechTranscriptionFromScenarioOutput(output: ScenarioOutput | undefined): {
    text: string;
    artifacts: ScenarioArtifact[];
};
export declare function toSpeechSynthesisArtifactsFromScenarioOutput(output: ScenarioOutput | undefined): ScenarioArtifact[];
export declare function normalizeProviderError(error: unknown): import("../index.js").NimiError;
export {};
//# sourceMappingURL=helpers-scenario.d.ts.map