package com.kospo.talk.service;

import com.kospo.talk.model.User;
import com.kospo.talk.payload.UserDto;
import jakarta.transaction.Transactional;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UsernameNotFoundException;

import java.util.List;

public interface UserService {
    UserDetails loadUserByUsername(String sabun) throws UsernameNotFoundException;

    UserDto findByUserid(String sabun);

    @Transactional
    UserDto findSmByUserid(String sabun);

    @Transactional
    UserDto findClientByUserid(String sabun);

    void save(User user);

    List<User> findAllSD();

    List<User> findSM(String workId);

    User findByWorkIdAndSabun(String workId, String sabun);

    void allOffline();
}
