import type { ArkmeConversationWriteResult } from '../types.js'; import type { ArkmeExtensionReviewAvatarFallback, ArkmeExtensionReviewCreateInput, ArkmeExtensionReviewCreateResult, ArkmeExtensionReviewPage } from '../extensions/types.js'; import { ProfileService } from './profile-service.js'; import { ServiceRuntime } from './service.js'; export interface ArkmeExtensionAuthorProjection { displayName: string; arkmeId?: string; avatarRef?: string; avatarFallback?: ArkmeExtensionReviewAvatarFallback; } export interface ArkmeRecordWriter { createTextForConversation(recordUid: string, textContent: string): Promise; } export declare class ExtensionReviewService { private readonly runtime; private readonly profile; private readonly recordWriter; private readonly extensionReviewRefs; private readonly extensionReviewFlushes; constructor(runtime: ServiceRuntime, profile: ProfileService, recordWriter: ArkmeRecordWriter); dispose(): void; extensionAuthors(userIds: readonly number[], signal?: AbortSignal): Promise>; listExtensionReviews(extensionIdValue: string, options?: { limit?: number; offset?: number; signal?: AbortSignal; }): Promise; createExtensionReview(input: ArkmeExtensionReviewCreateInput, signal?: AbortSignal): Promise; private performExtensionReviewOperation; private flushPendingExtensionReviews; private normalizedExtensionReviewExtensionId; private extensionRatingSummary; private extensionReviewItem; private extensionReviewRef; private openExtensionReviewRef; private pruneExtensionReviewRefs; } //# sourceMappingURL=extension-review-service.d.ts.map