/**
 * MessageActionCreators shim — stub message action flows.
 * Real sends go through Convex; these no-ops keep the UI compiling
 * until each call site is rewired.
 */

import type { Attachment } from '../matrix-client';

export interface SendMessageArgs {
	channelId: string;
	body: string;
	formattedBody?: string;
	replyToId?: string | null;
	attachments?: Attachment[];
	mentions?: string[];
}

export const MessageActionCreators = {
	sendMessage: async (_args: SendMessageArgs): Promise<string> => '',
	editMessage: async (_channelId: string, _messageId: string, _body: string) => {},
	deleteMessage: async (_channelId: string, _messageId: string) => {},
	addReaction: async (_channelId: string, _messageId: string, _key: string) => {},
	removeReaction: async (_channelId: string, _messageId: string, _key: string) => {},
	markRead: async (_channelId: string, _messageId: string) => {},
	flushPendingAttachments: async (_channelId: string) => {},
	createPoll: async (_args: unknown) => {},
};

export default MessageActionCreators;
