@aichatkit/types
Version:
Shared TypeScript types for Hypermode ChatKit
70 lines (68 loc) • 1.31 kB
text/typescript
/**
* Core message type definitions for the chat application
*/
/**
* Represents a single chat message
*/
interface Message {
/**
* Unique identifier for the message
*/
id: string | number;
/**
* Content of the message
*/
content: string;
/**
* Role of the message sender
*/
role: 'user' | 'assistant';
/**
* Optional timestamp of when the message was sent
*/
timestamp?: string;
}
/**
* Represents a conversation consisting of multiple messages
*/
interface Conversation {
/**
* Unique identifier for the conversation
*/
id: string;
/**
* Title of the conversation
*/
title: string;
/**
* Messages in the conversation
*/
messages: Message[];
}
/**
* Response from the chat API
*/
interface ChatResponse {
/**
* The message text returned by the assistant
*/
message: string;
/**
* JSON string representation of the conversation history
*/
history: string;
}
/**
* Simple message structure to handle chat history
*/
interface ChatMessage {
/**
* Role of the message sender
*/
role: string;
/**
* Content of the message
*/
content: string;
}
export type { ChatMessage, ChatResponse, Conversation, Message };