package incheon.uis.gisu.service;
import incheon.uis.gisu.vo.GisuDownloadCheckResult;
import incheon.uis.gisu.vo.GisuLayerVO;
import incheon.uis.gisu.vo.GisuUseVO;
import incheon.uis.gisu.vo.TaskLayerVO;

import java.nio.file.Path;
import java.util.List;
import java.util.Map;

public interface GisuService {

    List<GisuUseVO> getMyGisuList(String userUnqId);

    Map<String, Object> getMyGisuListWithPaging(String userUnqId, int pageIndex, int pageSize);

    List<TaskLayerVO> getAvailableTaskLayers();

    Long registerGisu(String userUnqId, String usePurps, List<String> taskLyrList);

    Path createZipForApprovedGisu(Long idn, String userUnqId);

    GisuDownloadCheckResult checkDownloadAvailable(Long idn, String userUnqId);

    List<TaskLayerVO> getGisuLayers(Long idn);

}
