import { type SignalDispatch } from "document-model";
import type { SendMessageAction, EditMessageAction, DeleteMessageAction, PinMessageAction, UnpinMessageAction, AddReactionAction, RemoveReactionAction } from "./actions.js";
import type { ChatState } from "../types.js";
export interface ChatMessagesOperations {
    sendMessageOperation: (state: ChatState, action: SendMessageAction, dispatch?: SignalDispatch) => void;
    editMessageOperation: (state: ChatState, action: EditMessageAction, dispatch?: SignalDispatch) => void;
    deleteMessageOperation: (state: ChatState, action: DeleteMessageAction, dispatch?: SignalDispatch) => void;
    pinMessageOperation: (state: ChatState, action: PinMessageAction, dispatch?: SignalDispatch) => void;
    unpinMessageOperation: (state: ChatState, action: UnpinMessageAction, dispatch?: SignalDispatch) => void;
    addReactionOperation: (state: ChatState, action: AddReactionAction, dispatch?: SignalDispatch) => void;
    removeReactionOperation: (state: ChatState, action: RemoveReactionAction, dispatch?: SignalDispatch) => void;
}
//# sourceMappingURL=operations.d.ts.map