Skip to content

@waylis/core


@waylis/core / MemoryDatabase

Class: MemoryDatabase ​

Defined in: database/memory/memory.ts:12

Simple in-memory database implementation.

Data is lost when the process exits.

Implements ​

Constructors ​

Constructor ​

ts
new MemoryDatabase(): MemoryDatabase;

Returns ​

MemoryDatabase

Properties ​

PropertyTypeDefault valueDefined in
isOpenbooleanfalsedatabase/memory/memory.ts:13

Methods ​

addChat() ​

ts
addChat(chat: Chat): Promise<void>;

Defined in: database/memory/memory.ts:28

Add a new chat to the database.

Parameters ​

chat ​

Chat

Chat object to store.

Returns ​

Promise<void>

Implementation of ​

Database.addChat


addConfirmedStep() ​

ts
addConfirmedStep(step: ConfirmedStep): Promise<void>;

Defined in: database/memory/memory.ts:111

Store a confirmed step.

Parameters ​

step ​

ConfirmedStep

Step to add.

Returns ​

Promise<void>

Implementation of ​

Database.addConfirmedStep


addFile() ​

ts
addFile(data: FileMeta): Promise<void>;

Defined in: database/memory/memory.ts:129

Add file metadata to the database.

Parameters ​

data ​

FileMeta

File metadata to store.

Returns ​

Promise<void>

Implementation of ​

Database.addFile


addMessage() ​

ts
addMessage(msg: Message): Promise<void>;

Defined in: database/memory/memory.ts:74

Add a new message to the database.

Parameters ​

msg ​

Message

Message to store.

Returns ​

Promise<void>

Implementation of ​

Database.addMessage


close() ​

ts
close(): Promise<void>;

Defined in: database/memory/memory.ts:23

Returns ​

Promise<void>

Implementation of ​

Database.close


countChatsByCreatorID() ​

ts
countChatsByCreatorID(creatorID: string): Promise<number>;

Defined in: 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() ​

ts
deleteChatByID(id: string): Promise<null | Chat>;

Defined in: 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 ​

Database.deleteChatByID


deleteFileByID() ​

ts
deleteFileByID(id: string): Promise<null | FileMeta>;

Defined in: 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 ​

Database.deleteFileByID


deleteMessagesByChatID() ​

ts
deleteMessagesByChatID(chatID: string): Promise<number>;

Defined in: 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() ​

ts
deleteOldConfirmedSteps(maxDate: Date): Promise<number>;

Defined in: 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() ​

ts
deleteOldFiles(maxDate: Date): Promise<string[]>;

Defined in: 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 ​

Database.deleteOldFiles


deleteOldMessages() ​

ts
deleteOldMessages(maxDate: Date): Promise<number>;

Defined in: 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 ​

Database.deleteOldMessages


editChatByID() ​

ts
editChatByID(id: string, updated: Partial<Chat>): Promise<null | Chat>;

Defined in: 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 ​

Database.editChatByID


getChatByID() ​

ts
getChatByID(id: string): Promise<null | Chat>;

Defined in: 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 ​

Database.getChatByID


getChatsByCreatorID() ​

ts
getChatsByCreatorID(
   creatorID: string, 
   offset: number, 
limit: number): Promise<Chat[]>;

Defined in: 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 ​

Database.getChatsByCreatorID


getConfirmedStepsByThreadID() ​

ts
getConfirmedStepsByThreadID(threadID: string): Promise<ConfirmedStep[]>;

Defined in: 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() ​

ts
getFileByID(id: string): Promise<null | FileMeta>;

Defined in: 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 ​

Database.getFileByID


getFilesByIDs() ​

ts
getFilesByIDs(ids: string[]): Promise<FileMeta[]>;

Defined in: database/memory/memory.ts:140

Retrieve multiple files by IDs.

Parameters ​

ids ​

string[]

List of file identifiers.

Returns ​

Promise<FileMeta[]>

Implementation of ​

Database.getFilesByIDs


getMessageByID() ​

ts
getMessageByID(id: string): Promise<null | Message>;

Defined in: 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 ​

Database.getMessageByID


getMessagesByChatID() ​

ts
getMessagesByChatID(
   chatID: string, 
   offset: number, 
limit: number): Promise<Message[]>;

Defined in: 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 ​

Database.getMessagesByChatID


getMessagesByIDs() ​

ts
getMessagesByIDs(ids: string[]): Promise<Message[]>;

Defined in: database/memory/memory.ts:85

Retrieve multiple messages by IDs.

Parameters ​

ids ​

string[]

List of message identifiers.

Returns ​

Promise<Message[]>

Implementation of ​

Database.getMessagesByIDs


open() ​

ts
open(): Promise<void>;

Defined in: database/memory/memory.ts:19

Returns ​

Promise<void>

Implementation of ​

Database.open

Released under the MIT License.