organ-ai-zer
Version:
AI-powered file organizer CLI tool
121 lines • 4.73 kB
TypeScript
import { ConversationConfig, ConversationMessage } from "../types";
export declare class ConversationContext {
protected id: string;
protected subject: string;
protected state: 'active' | 'paused' | 'complete' | 'failed';
protected messages: ConversationMessage[];
protected config: ConversationConfig;
protected createdAt: Date;
protected updatedAt: Date;
protected turnCount: number;
constructor(subject: string, config?: Partial<ConversationConfig>);
/**
* Retrieves the unique identifier associated with the current instance.
*
* @returns {string} The unique identifier as a string.
*/
getId(): string;
/**
* Retrieves the subject associated with the current conversation context.
*
* @returns {string} The subject of the conversation.
*/
getSubject(): string;
/**
* Updates the subject of the conversation context and sets the updated timestamp.
*
* @param subject - The new subject to set for the conversation context.
*/
setSubject(subject: string): void;
/**
* Retrieves the current state of the conversation context.
*
* @returns {'active' | 'paused' | 'complete' | 'failed'} The current state, which can be one of the following:
* - `'active'`: Indicates the conversation is ongoing.
* - `'paused'`: Indicates the conversation is temporarily halted.
* - `'complete'`: Indicates the conversation has successfully concluded.
* - `'failed'`: Indicates the conversation encountered an error or was unsuccessful.
*/
getState(): 'active' | 'paused' | 'complete' | 'failed';
/**
* Updates the state of the conversation context and sets the updated timestamp.
*
* @param state - The new state to set for the conversation context.
* Must be one of the following values: 'active', 'paused', 'complete', or 'failed'.
*/
setState(state: 'active' | 'paused' | 'complete' | 'failed'): void;
/**
* Retrieves the list of conversation messages.
*
* @returns {ConversationMessage[]} An array of conversation messages.
*/
getMessages(): ConversationMessage[];
setMessages(messages: ConversationMessage[] | []): void;
/**
* Retrieves the conversation configuration.
*
* @returns {ConversationConfig} The current conversation configuration.
*/
getConfig(): ConversationConfig;
/**
* Updates the conversation configuration with the provided settings.
*
* @param config - A partial configuration object to update the conversation settings.
* This can include properties like maxTurns, keepFullHistory, maxContextSize, and temperature.
*/
setConfig(config: Partial<ConversationConfig>): void;
/**
* Retrieves the creation date of the current context.
*
* @returns {Date} The date and time when the context was created.
*/
getCreatedAt(): Date;
/**
* Retrieves the last updated date of the current context.
*
* @returns {Date} The date and time when the context was last updated.
*/
getUpdatedAt(): Date;
/**
* Retrieves the current turn count for the conversation.
*
* @returns {number} The number of turns that have occurred in the conversation.
*/
getTurnCount(): number;
/**
* Increments the turn count by one.
* This method is used to track the number of turns in a conversation context.
*/
incrementTurnCount(): void;
/**
* Resets the turn count to zero and updates the timestamp indicating
* the last modification. This method is typically used to restart
* the conversation context or initialize the turn count for a new session.
*/
resetTurnCount(): void;
/**
* Add a message to the conversation
* @param role - The role of the message sender ('user', 'assistant', 'system')
* @param content - The content of the message
*/
addMessage(role: 'user' | 'assistant' | 'system', content: string): void;
/**
* Adds a user message to the conversation context.
*
* @param content - The content of the message to be added.
*/
addUserMessage(content: string): void;
/**
* Adds a message from the assistant to the conversation context.
*
* @param content - The content of the assistant's message to be added.
*/
addAssistantMessage(content: string): void;
/**
* Adds a system message to the conversation context.
*
* @param content - The content of the system message to be added.
*/
addSystemMessage(content: string): void;
}
//# sourceMappingURL=conversation-context.d.ts.map