package com.cyksj.service.midjourney;

import com.cyksj.model.dto.BlendDimensions;
import com.cyksj.model.entity.MidjourneyUser;
import com.cyksj.model.entity.MidjourneyUserConversation;

import java.util.List;

/**
 * @author zwhui
 * @date 2024/4/23 15:44
 */
public interface MidjourneyService {
    MidjourneyUserConversation submitImagine(MidjourneyUser user, String prompt, List<String> base64Array) throws Exception;

    MidjourneyUserConversation submitDescribe(MidjourneyUser user, String base64) throws Exception;

    MidjourneyUserConversation submitBlend(MidjourneyUser user, BlendDimensions dimensions, List<String> base64Array) throws Exception;

    MidjourneyUserConversation submitModal(MidjourneyUser user, Long taskId, String prompt, String maskBase64) throws Exception;

    MidjourneyUserConversation submitShorten(MidjourneyUser user, String prompt) throws Exception;

    List<MidjourneyUserConversation> listConversationByIds(Integer mode, List<Long> ids) throws Exception;

    MidjourneyUserConversation submitAction(MidjourneyUser user, Long taskId, String customId) throws Exception;

    MidjourneyUserConversation cancelConversation(MidjourneyUser user, Long id);
}
