/**
 * Stream Splitter Utilities
 *
 * Provides markdown-aware splitting for streaming content to reduce flickering.
 *
 * Approach:
 * - Find safe split points at paragraph boundaries (\n\n)
 * - Protect code blocks from being split mid-block
 * - Allow progressive finalization during streaming
 */
/**
 * Find the last safe split point in the content.
 *
 * Safe split points are:
 * 1. After paragraph breaks (\n\n) that are not inside code blocks
 * 2. Before code blocks if we're inside one
 *
 * Returns the index to split at, or content.length if no split is needed.
 */
export declare function findLastSafeSplitPoint(content: string): number;
/**
 * Find the last newline that's not inside a code block.
 * Used for line-based batching.
 */
export declare function findLastSafeNewline(content: string): number;
/**
 * Determines if content should be split for progressive finalization.
 *
 * Strategy:
 * 1. First try paragraph splits (\n\n) for clean breaks
 * 2. If content exceeds MAX_PENDING_LENGTH with no paragraph break,
 *    fall back to line-based splits (\n) to prevent flickering
 *
 * Returns:
 * - { shouldSplit: false } if no split needed
 * - { shouldSplit: true, splitIndex, before, after } if split found
 */
export declare function checkForSplit(content: string): {
    shouldSplit: boolean;
    splitIndex?: number;
    before?: string;
    after?: string;
};
//# sourceMappingURL=streamSplitter.d.ts.map