import { Chat, ChatLogType } from './index.js';
import { MessageChunker, AgentVariables } from '../../index.js';
import { AgentContext } from '../../agent/index.js';
export type MsgIdx = number;
export type ChunkIdx = number;
export type MessageChunk = {
    json: string;
    tokens: number;
    chunkIdx: ChunkIdx;
    msgIdx: MsgIdx;
};
export declare class ContextualizedChat {
    private _rawChat;
    private _chunker;
    private _variables;
    private _chunks;
    private _rags;
    private _functionCallResultFirstChunks;
    private _lastTwoMsgs;
    constructor(_context: AgentContext, _rawChat: Chat, _chunker: MessageChunker, _variables: AgentVariables);
    get rawChat(): Chat;
    contextualize(contextVector: number[], tokenLimits: Record<ChatLogType, number>): Promise<Chat>;
    private _processNewMessages;
    private _processNewMessagesByType;
    private _processNewMessage;
}
