Action: Immutable<{
    type: "INVITATION_REMOVED";
    userId: string;
} | {
    type: "INVITATION";
    userId: string;
} | {
    muted: boolean;
    type: "MUTE_CHANGE";
    userId: string;
} | {
    status: "GONE" | "HOLD" | "IN_CALL";
    type: "PARTICIPANT_CHANGE";
    userId: string;
} | {
    isTalking: boolean;
    type: "SPEAKER_CHANGE";
    userId: string;
} | {
    isLocal: boolean;
    mediaTypes: MediaTypes;
    stream: MediaStream;
    type: "STREAM_ADDED";
    userId: string;
} | {
    stream: MediaStream;
    type: "STREAM_REMOVED";
    userId: string;
}>