@waylis/core / MemoryDatabase
Class: MemoryDatabase
Defined in: src/database/memory/memory.ts:12
Simple in-memory database implementation.
Data is lost when the process exits.
Implements
Constructors
Constructor
new MemoryDatabase(): MemoryDatabase;
Returns
MemoryDatabase
Properties
Property | Type | Default value | Defined in |
---|---|---|---|
isOpen | boolean | false | src/database/memory/memory.ts:13 |
Methods
addChat()
addChat(chat: Chat): Promise<void>;
Defined in: src/database/memory/memory.ts:28
Add a new chat to the database.
Parameters
chat
Chat object to store.
Returns
Promise
<void
>
Implementation of
addConfirmedStep()
addConfirmedStep(step: ConfirmedStep): Promise<void>;
Defined in: src/database/memory/memory.ts:111
Store a confirmed step.
Parameters
step
Step to add.
Returns
Promise
<void
>
Implementation of
addFile()
addFile(data: FileMeta): Promise<void>;
Defined in: src/database/memory/memory.ts:129
Add file metadata to the database.
Parameters
data
File metadata to store.
Returns
Promise
<void
>
Implementation of
addMessage()
addMessage(msg: Message): Promise<void>;
Defined in: src/database/memory/memory.ts:74
Add a new message to the database.
Parameters
msg
Message to store.
Returns
Promise
<void
>
Implementation of
close()
close(): Promise<void>;
Defined in: src/database/memory/memory.ts:23
Returns
Promise
<void
>
Implementation of
countChatsByCreatorID()
countChatsByCreatorID(creatorID: string): Promise<number>;
Defined in: src/database/memory/memory.ts:47
Count how many chats were created by a user.
Parameters
creatorID
string
User identifier.
Returns
Promise
<number
>
Implementation of
Database
.countChatsByCreatorID
deleteChatByID()
deleteChatByID(id: string): Promise<null | Chat>;
Defined in: src/database/memory/memory.ts:65
Remove a chat by ID.
Parameters
id
string
Chat identifier.
Returns
Promise
<null
| Chat
>
Deleted chat or null if not found.
Implementation of
deleteFileByID()
deleteFileByID(id: string): Promise<null | FileMeta>;
Defined in: src/database/memory/memory.ts:144
Delete file metadata by ID.
Parameters
id
string
File identifier.
Returns
Promise
<null
| FileMeta
>
Deleted metadata or null if not found.
Implementation of
deleteMessagesByChatID()
deleteMessagesByChatID(chatID: string): Promise<number>;
Defined in: src/database/memory/memory.ts:104
Delete all messages belonging to a chat.
Parameters
chatID
string
Chat identifier.
Returns
Promise
<number
>
Number of deleted messages.
Implementation of
Database
.deleteMessagesByChatID
deleteOldConfirmedSteps()
deleteOldConfirmedSteps(maxDate: Date): Promise<number>;
Defined in: src/database/memory/memory.ts:122
Delete all confirmed steps created before a given date.
Parameters
maxDate
Date
Cutoff date.
Returns
Promise
<number
>
Number of deleted steps.
Implementation of
Database
.deleteOldConfirmedSteps
deleteOldFiles()
deleteOldFiles(maxDate: Date): Promise<string[]>;
Defined in: src/database/memory/memory.ts:152
Delete all files created before a given date.
Parameters
maxDate
Date
Cutoff date.
Returns
Promise
<string
[]>
List of deleted file IDs.
Implementation of
deleteOldMessages()
deleteOldMessages(maxDate: Date): Promise<number>;
Defined in: src/database/memory/memory.ts:98
Delete all messages created before a given date.
Parameters
maxDate
Date
Cutoff date.
Returns
Promise
<number
>
Number of deleted messages.
Implementation of
editChatByID()
editChatByID(id: string, updated: Partial<Chat>): Promise<null | Chat>;
Defined in: src/database/memory/memory.ts:51
Update a chat by ID.
Parameters
id
string
Chat identifier.
updated
Partial
<Chat
>
Partial fields to update.
Returns
Promise
<null
| Chat
>
Updated chat or null if not found.
Implementation of
getChatByID()
getChatByID(id: string): Promise<null | Chat>;
Defined in: src/database/memory/memory.ts:35
Retrieve a chat by its ID.
Parameters
id
string
Chat identifier.
Returns
Promise
<null
| Chat
>
Chat if found, otherwise null.
Implementation of
getChatsByCreatorID()
getChatsByCreatorID(
creatorID: string,
offset: number,
limit: number): Promise<Chat[]>;
Defined in: src/database/memory/memory.ts:39
Retrieve chats created by a specific user.
Parameters
creatorID
string
User identifier.
offset
number
Skip this many results.
limit
number
Maximum number of results.
Returns
Promise
<Chat
[]>
Implementation of
getConfirmedStepsByThreadID()
getConfirmedStepsByThreadID(threadID: string): Promise<ConfirmedStep[]>;
Defined in: src/database/memory/memory.ts:118
Retrieve all confirmed steps belonging to a thread.
Parameters
threadID
string
Thread identifier.
Returns
Promise
<ConfirmedStep
[]>
Implementation of
Database
.getConfirmedStepsByThreadID
getFileByID()
getFileByID(id: string): Promise<null | FileMeta>;
Defined in: src/database/memory/memory.ts:136
Retrieve file metadata by ID.
Parameters
id
string
File identifier.
Returns
Promise
<null
| FileMeta
>
Metadata if found, otherwise null.
Implementation of
getFilesByIDs()
getFilesByIDs(ids: string[]): Promise<FileMeta[]>;
Defined in: src/database/memory/memory.ts:140
Retrieve multiple files by IDs.
Parameters
ids
string
[]
List of file identifiers.
Returns
Promise
<FileMeta
[]>
Implementation of
getMessageByID()
getMessageByID(id: string): Promise<null | Message>;
Defined in: src/database/memory/memory.ts:81
Retrieve a message by its ID.
Parameters
id
string
Message identifier.
Returns
Promise
<null
| Message
>
Message if found, otherwise null.
Implementation of
getMessagesByChatID()
getMessagesByChatID(
chatID: string,
offset: number,
limit: number): Promise<Message[]>;
Defined in: src/database/memory/memory.ts:89
Retrieve messages from a chat.
Parameters
chatID
string
Chat identifier.
offset
number
Skip this many results.
limit
number
Maximum number of results.
Returns
Promise
<Message
[]>
Implementation of
getMessagesByIDs()
getMessagesByIDs(ids: string[]): Promise<Message[]>;
Defined in: src/database/memory/memory.ts:85
Retrieve multiple messages by IDs.
Parameters
ids
string
[]
List of message identifiers.
Returns
Promise
<Message
[]>
Implementation of
open()
open(): Promise<void>;
Defined in: src/database/memory/memory.ts:19
Returns
Promise
<void
>