package com.kospo.talk.service;

import com.kospo.talk.model.TalkMember;
import com.kospo.talk.payload.TalkMemberDto;
import com.kospo.talk.payload.ITalkMemberDto;
import jakarta.transaction.Transactional;

import java.util.List;

public interface TalkMemberService {
    @Transactional
    List<ITalkMemberDto> findBySabun(String sabun);

    List<String> findBySabunGroupBySabun(String sabun);

    @Transactional
    List<ITalkMemberDto> findByTalkId(String talkId);

    List<TalkMember> findAllByTalkId(String talkId);

    void saveAll(List<TalkMember> talkMembers);

    void save(TalkMemberDto talkMemberDto);

    boolean updateMark(String talkId, String sabun);

    boolean updateDelete(String talkId, String sabun);

    List<ITalkMemberDto> findTalkOnlineYnInSabun(String sabun);

    List<TalkMember> findDeleteTarget(String talkId);

    void deleteMember(String talkId, String sabun);

    void disableTalkId(String talkId);

    void enableTalkIdAndSabun(String talkId, String sabun);
}
