/** * @license * Copyright 2026 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import type { CountTokensParameters, CountTokensResponse, EmbedContentParameters, EmbedContentResponse, GenerateContentParameters, GenerateContentResponse } from '@google/genai'; import type { LlmRole } from '../telemetry/llmRole.js'; import type { Config } from '../config/config.js'; import type { UserTierId } from '../code_assist/types.js'; import type { ContentGenerator } from './contentGenerator.js'; /** * A decorator that wraps a ContentGenerator to add logging to API calls. */ export declare class LoggingContentGenerator implements ContentGenerator { private readonly wrapped; private readonly config; constructor(wrapped: ContentGenerator, config: Config); getWrapped(): ContentGenerator; get userTier(): UserTierId | undefined; get userTierName(): string | undefined; private logApiRequest; private _getEndpointUrl; private _logApiResponse; private _logApiError; generateContent(req: GenerateContentParameters, userPromptId: string, role: LlmRole): Promise; generateContentStream(req: GenerateContentParameters, userPromptId: string, role: LlmRole): Promise>; private loggingStreamWrapper; countTokens(req: CountTokensParameters): Promise; embedContent(req: EmbedContentParameters): Promise; }