@mastra/core
Version:
Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.
35 lines • 1.75 kB
TypeScript
import type { LanguageModelV2StreamPart } from '@ai-sdk/provider-v5';
import { MastraBase } from '../../base.js';
import type { ChunkType, CreateStream, OnResult } from '../types.js';
/**
* Safely enqueue a chunk into a ReadableStreamDefaultController.
* Returns true if the enqueue succeeded, false if the controller was already closed/errored.
*
* Prefer this over checking desiredSize before enqueue, because desiredSize === 0
* indicates backpressure (queue full, stream still open) — not closure.
* Guarding on desiredSize would silently drop chunks under normal backpressure.
*/
export declare function safeEnqueue<T>(controller: ReadableStreamDefaultController<T>, chunk: T): boolean;
/**
* Safely close a ReadableStreamDefaultController.
* Returns true if the close succeeded, false if the controller was already closed/errored.
*/
export declare function safeClose(controller: ReadableStreamDefaultController<any>): boolean;
/**
* Safely signal an error on a ReadableStreamDefaultController.
* Returns true if the error succeeded, false if the controller was already closed/errored.
*/
export declare function safeError(controller: ReadableStreamDefaultController<any>, error: unknown): boolean;
export declare abstract class MastraModelInput extends MastraBase {
abstract transform({ runId, stream, controller, }: {
runId: string;
stream: ReadableStream<LanguageModelV2StreamPart | Record<string, unknown>>;
controller: ReadableStreamDefaultController<ChunkType>;
}): Promise<void>;
initialize({ runId, createStream, onResult }: {
createStream: CreateStream;
runId: string;
onResult: OnResult;
}): ReadableStream<ChunkType>;
}
//# sourceMappingURL=input.d.ts.map