Setup pinned messages types and table

Co-authored-by: trevor-signal <131492920+trevor-signal@users.noreply.github.com>
This commit is contained in:
Jamie
2025-11-19 11:12:29 -08:00
committed by GitHub
parent 710a54d43f
commit 7c12a1d3de
8 changed files with 206 additions and 2 deletions

View File

@@ -65,6 +65,11 @@ import type { DonationReceipt } from '../types/Donations.std.js';
import type { InsertOrUpdateCallLinkFromSyncResult } from './server/callLinks.node.js';
import type { ChatFolderId, ChatFolder } from '../types/ChatFolder.std.js';
import type { CurrentChatFolder } from '../types/CurrentChatFolders.std.js';
import type {
PinnedMessage,
PinnedMessageId,
PinnedMessageParams,
} from '../types/PinnedMessage.std.js';
export type ReadableDB = Database & { __readable_db: never };
export type WritableDB = ReadableDB & { __writable_db: never };
@@ -965,6 +970,11 @@ type ReadableInterface = {
hasAllChatsChatFolder: () => boolean;
getOldestDeletedChatFolder: () => ChatFolder | null;
getPinnedMessagesForConversation: (
conversationId: string
) => ReadonlyArray<PinnedMessage>;
getNextExpiringPinnedMessageAcrossConversations: () => PinnedMessage | null;
getMessagesNeedingUpgrade: (
limit: number,
options: { maxVersion: number }
@@ -1324,6 +1334,14 @@ type WritableInterface = {
messageQueueTime: number
) => ReadonlyArray<ChatFolderId>;
createPinnedMessage: (
pinnedMessageParams: PinnedMessageParams
) => PinnedMessage;
deletePinnedMessage: (pinnedMessageId: PinnedMessageId) => void;
deleteAllExpiredPinnedMessagesBefore: (
beforeTimestamp: number
) => ReadonlyArray<PinnedMessageId>;
removeAll: () => void;
removeAllConfiguration: () => void;
eraseStorageServiceState: () => void;