import type { Relay } from '@coveo/relay'; import type { AnalyticsClientSendEventHook } from 'coveo.analytics'; import type { Logger } from 'pino'; import type { GeneratedAnswerAPIClient } from '../api/generated-answer/generated-answer-client.js'; import { type PreprocessRequest } from '../api/preprocess-request.js'; import { validatePayloadAndThrow } from '../utils/validate-payload.js'; import type { EngineConfiguration } from './engine-configuration.js'; import type { NavigatorContext } from './navigator-context-provider.js'; export interface ClientThunkExtraArguments extends ThunkExtraArguments { apiClient: T; streamingClient?: K; relay: Relay; navigatorContext: NavigatorContext; } export interface ThunkExtraArguments { preprocessRequest?: PreprocessRequest; analyticsClientMiddleware: AnalyticsClientSendEventHook; logger: Logger; validatePayload: typeof validatePayloadAndThrow; } export declare function buildThunkExtraArguments(configuration: EngineConfiguration, logger: Logger): ThunkExtraArguments;