返回 AiToEarn
ai.service.ts
1 import { Injectable } from '@nestjs/common'
2 import { AxiosRequestConfig } from 'axios'
3 import {
4 CreateDraftGenerationResponse,
5 CreateDraftV2Request,
6 CreateImageTextDraftRequest,
7 DraftGenerationTaskResponse,
8 GetDraftTaskRequest,
9 } from '../interfaces'
10 import { BaseService } from './base.service'
11
12 @Injectable()
13 export class AiService extends BaseService {
14 async createDraftV2(data: CreateDraftV2Request): Promise<CreateDraftGenerationResponse> {
15 const url = `/internal/ai/draft-generation/v2`
16 const config: AxiosRequestConfig = {
17 method: 'POST',
18 data,
19 }
20 return this.request<CreateDraftGenerationResponse>(url, config)
21 }
22
23 async createImageTextDraft(data: CreateImageTextDraftRequest): Promise<CreateDraftGenerationResponse> {
24 const url = `/internal/ai/draft-generation/image-text`
25 const config: AxiosRequestConfig = {
26 method: 'POST',
27 data,
28 }
29 return this.request<CreateDraftGenerationResponse>(url, config)
30 }
31
32 async getDraftTask(data: GetDraftTaskRequest): Promise<DraftGenerationTaskResponse> {
33 const url = `/internal/ai/draft-generation/task`
34 const config: AxiosRequestConfig = {
35 method: 'POST',
36 data,
37 }
38 return this.request<DraftGenerationTaskResponse>(url, config)
39 }
40 }
41
41 lines TYPESCRIPT