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