package com.bio.bio_backend.domain.base.member.repository;

import com.bio.bio_backend.domain.base.member.entity.Member;
import java.util.Optional;

/**
 * QueryDSL을 활용한 커스텀 쿼리 메서드들을 정의하는 인터페이스
 * 복잡한 쿼리나 동적 쿼리가 필요한 경우 이 인터페이스를 구현하여 사용합니다.
 */
public interface MemberRepositoryCustom {

    /**
     * 활성화된 사용자 중에서 사용자 ID로 검색하여 조회합니다.
     *
     * @param userId 사용자 ID
     * @return Optional<Member> 회원 정보 (없으면 empty)
     */
    Optional<Member> findActiveMemberByUserId(String userId);
}
