UNPKG

portkey-ai

Version:
109 lines (108 loc) 4.2 kB
import { ChatCompletionMessageToolCall, ChatCompletionStreamOptions, ChatCompletionTokenLogprob } from 'openai/resources/chat/completions'; import { APIResponseType, ApiClientInterface } from '../_types/generalTypes'; import { ModelParams } from '../_types/portkeyConstructs'; import { ApiResource } from '../apiResource'; import { APIPromise, RequestOptions } from '../baseClient'; import { Stream } from '../streaming'; import { Metadata, CursorPageParams } from '../_types/sharedTypes'; export declare class Chat extends ApiResource { completions: ChatCompletions; } declare class ChatCompletions extends ApiResource { messages: ChatCompletionsMessages; create(_body: ChatCompletionsBodyNonStreaming, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<ChatCompletion>; create(_body: ChatCompletionsBodyStreaming, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<Stream<ChatCompletion>>; create(_body: ChatCompletionsBodyBase, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<Stream<ChatCompletion> | ChatCompletion>; retrieve(completionId: string, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<ChatCompletion>; update(completionId: string, _body: ChatCompletionUpdateParams, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<ChatCompletion>; list(query?: ChatCompletionListParams, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<ChatCompletionListResponse>; del(completionId: string, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<ChatCompletion>; } export declare class ChatCompletionsMessages extends ApiResource { list(completionId: string, query?: MessageListParams, params?: ApiClientInterface, opts?: RequestOptions): APIPromise<any>; } export interface ChatCompletionsBodyBase extends ModelParams { messages?: Array<Message>; response_format?: object; audio?: any | null; modalities?: Array<any> | null; prediction?: any | null; reasoning_effort?: any; store?: boolean | null; metadata?: Record<string, string> | null; max_completion_tokens?: number | null; } export interface ChatCompletionsBodyStreaming extends ChatCompletionsBodyBase { stream?: true; stream_options?: ChatCompletionStreamOptions; } export interface ChatCompletionsBodyNonStreaming extends ChatCompletionsBodyBase { stream?: false; } export type ChatCompletionCreateParams = ChatCompletionsBodyNonStreaming | ChatCompletionsBodyStreaming; export interface Usage { prompt_tokens?: number; completion_tokens?: number; total_tokens?: number; [key: string]: any; } export interface Message { role: string; content: string | Array<any>; refusal?: string; function_call?: any; tool_calls?: Array<ChatCompletionMessageToolCall>; tool_call_id?: string; [key: string]: any; } export interface Logprobs { content: Array<ChatCompletionTokenLogprob> | null; refusal: Array<ChatCompletionTokenLogprob> | null; [key: string]: any; } export interface Choices { index?: number; message?: Message; delta?: Message; finish_reason?: string; logprobs?: Logprobs; [key: string]: any; } export interface ChatCompletion extends APIResponseType { id: string; object: string; created: number; model: string; choices: Array<Choices>; usage: Usage; service_tier?: string; system_fingerprint?: string; [key: string]: any; } export interface ChatCompletionResponse { id: string; object: string; created: number; model: string; choices: Array<Choices>; usage: Usage; service_tier?: string; system_fingerprint?: string; [key: string]: any; } export interface ChatCompletionUpdateParams { metadata: Metadata | null; } export interface ChatCompletionListParams extends CursorPageParams { metadata?: Metadata | null; model?: string; order?: 'asc' | 'desc'; } export interface ChatCompletionListResponse extends APIResponseType { data: Array<ChatCompletion>; object: string; } export interface MessageListParams extends CursorPageParams { order?: 'asc' | 'desc'; } export {};