type Response = { message: { id: string; role: string; user: any; create_time: any; update_time: any; content: { content_type: string; parts: string[]; }; end_turn: any; weight: number; metadata: {}; recipient: string; }; conversation_id: string; error: any; }; type RefreshCallback = (updatedSession: { clearanceToken: string; sessionToken0: string; sessionToken1?: string; }) => void; export type ChatGPTOptions = { clearanceToken: string; sessionToken0: string; sessionToken1?: string; userAgent?: string; refreshIntervalMinutes?: number; onRefreshCallback?: RefreshCallback; }; export type ChatGPTLogger = (msg: string) => void; export declare class ChatGPTConversation { #private; constructor(ua: string, clearanceToken: string, bearerToken: string, refreshBearerToken: () => Promise, existingChatId?: string); reset(): void; /** * * @description conversationId can be null if the conversation has not been started yet with a call to chat first */ getConversationId(): string | null; chat(message: string): Promise; } export declare class ChatGPTClient { #private; /** * * @param {string} sessionToken0 __Secure-next-auth.session-token OR __Secure-next-auth.session-token.0 * @param {string} sessionToken1 __Secure-next-auth.session-token.1 * @param {number} refreshIntervalMinutes Defaults to 5 minutes */ constructor(options: ChatGPTOptions, logger?: ChatGPTLogger); getCurrentSession(): { clearanceToken: string; sessionToken0: string; sessionToken1?: string; }; /** * * @description this will force a refresh to update bearer token */ updateClientSession(clearanceToken: string, sessionToken0: string, sessionToken1?: string): void; startConversation(existingChatId?: string): Promise; } export {};