import { AxiosResponse } from 'axios'; import { AnyObject } from '../../types'; import { IGenerate, IGenerateGroupedResultMessages, IGenerateGroupedResultTask, IGenerateSingleResultMessages, IGenerateSingleResultPrompt } from '../filters/interfaces/Generate.interface'; import { GetQueryGenerativeGroupedResult, GetQueryGenerativeSingleResult, GetQueryResult } from '../Unbody'; import { QueryBuilder } from './QueryBuilder'; export interface GenerateQuery>> { (type: 'singleResult', prompt: Required>['singleResult']['prompt']): Omit & { exec: >>() => Promise>; }; (type: 'singleResult', args: IGenerateSingleResultPrompt): Omit & { exec: >>() => Promise>; }; (type: 'singleResult', args: IGenerateSingleResultMessages): Omit & { exec: >>() => Promise>; }; (type: 'groupedResult', prompt: IGenerateGroupedResultTask): Omit & { exec: >>() => Promise>; }; (type: 'groupedResult', prompt: IGenerateGroupedResultMessages): Omit & { exec: >>() => Promise>; }; (type: 'groupedResult', prompt: Required>['groupedResult']['task'], properties?: Required>['groupedResult']['properties']): Omit & { exec: >>() => Promise>; }; (type: 'groupedResult' | 'singleResult', prompt: Required>['groupedResult']['task'] | Required>['singleResult']['prompt'] | IGenerateSingleResultPrompt | IGenerateSingleResultMessages | IGenerateGroupedResultTask | IGenerateGroupedResultMessages, properties?: Required>['groupedResult']['properties']): Omit & { exec: > | GetQueryGenerativeGroupedResult>>() => Promise>; }; fromOne(prompt: string): Omit & { exec: >>() => Promise>; }; fromOne(prompt: IGenerateSingleResultPrompt): Omit & { exec: >>() => Promise>; }; fromOne(prompt: IGenerateSingleResultMessages): Omit & { exec: >>() => Promise>; }; fromOne(prompt: string | IGenerateSingleResultPrompt | IGenerateSingleResultMessages): Omit & { exec: >>() => Promise>; }; fromMany(task: IGenerateGroupedResultTask): Omit & { exec: >>() => Promise>; }; fromMany(task: IGenerateGroupedResultMessages): Omit & { exec: >>() => Promise>; }; fromMany(task: string, properties?: Required>['groupedResult']['properties']): Omit & { exec: >>() => Promise>; }; } export declare const createGenerateQuery: >(queryBuilder: Q) => GenerateQuery; //# sourceMappingURL=GenerateQuery.d.ts.map