import { ApiResponse } from "./common"; import { CreateMovieProjectV2Request, CreateMovieProjectResponse, MovieStartDTO, StoryAnalysisTask, MovieStoryTaskDetail, CreateMovieProjectV3Request, GeminiTextToImageRequest, GeminiTextToImageResponse, TextToImageRequest, TextToImageResponse, } from "./DTO/movie_start_dto"; import { get, post } from "./request"; import { StoryTemplateEntity, } from "@/app/service/domain/Entities"; /** * 获取故事模板列表 */ export const getTemplateStoryList = async (page?: number, per_page?: number) => { return await post>("/movie_template/story-template-list",{ page, per_page, }); }; /** * AI分析图片,生成分析结果 */ export const AIGenerateImageStory = async (request: { image_url: string; user_text: string; }) => { return await post>( "/movie_story/generate", request ); }; /** * 创建电影项目V2 * @param request - 创建项目请求参数 * @returns Promise> */ export const createMovieProjectV2 = async ( request: CreateMovieProjectV2Request ) => { return post>( "/movie/create_movie_project_v2", request ); }; /** * 创建电影项目V3 * @param request - 创建项目请求参数 * @returns Promise> */ export const createMovieProjectV3 = async ( request: CreateMovieProjectV3Request ) => { return post>( "/movie/create_movie_project_v3", request ); }; /** * 获取电影故事任务详情 * @param taskId - 任务ID * @returns Promise> */ export const getMovieStoryTask = async (taskId: string) => { return await get>( `/movie_story/task/${taskId}` ); }; /** * Gemini文本转图像生成 * @param request - 文本转图像请求参数 * @returns Promise */ export const generateGeminiTextToImage = async ( request: GeminiTextToImageRequest ): Promise => { return await post( "/gemini-text-to-image/generate", request ); }; /** * 文本转图像生成 * @param request - 文本转图像请求参数 * @returns Promise */ export const generateTextToImage = async ( request: TextToImageRequest ): Promise => { return await post( "/text-to-image/draw", request ); };