import { default as WebSocketEngine } from '../websocket/commentWebsocket'; import { CommentPodcast } from './class/general/comment'; import { CommentMessage, CommentsConfig } from './class/config/commentsConfig'; import { Podcast } from './class/general/podcast'; export interface CommentUser { name: string | null; uuid: string | null; uuidHash: string | null; } interface CommentState { commentInitialized: boolean; commentWebsocketengine: WebSocketEngine | undefined; commentPodcastId?: number; commentQueueName?: string; commentEventToHandle: Array; commentUser?: CommentUser; commentsForPlayer: { [key: number]: Array; }; podcastsCommentsConfig: { [key: number]: CommentsConfig; }; } export declare const useCommentStore: import('pinia').StoreDefinition<"CommentStore", CommentState, {}, { fetchCommentsForPlayer(podcastId: number): Promise; digest(message: string): Promise; initCommentUser(): Promise; setCommentUser(name: string): void; getCommentsConfig(podcast: Podcast): Promise; resetPodcastsConfig(): void; updatePodcastsConfig(podcastId: number, config: CommentsConfig): void; getCanPostCommentAllowed(config: CommentsConfig, podcast: Podcast): boolean; getCanPostComment(config: CommentsConfig | undefined, podcast: Podcast | undefined, isAuth: boolean): boolean; getCanReportAbuse(config: CommentsConfig | undefined, isAuth: boolean): boolean; initialize(): Promise; unsubscribeToEvent(): void; subscribeToEvents(): void; initComments(podcastId: number, organisationId: string): Promise; unsubscribeComments(): Promise; commentEventHandled(): void; commentEventToHandleUpdate(eventToHandle: { comment: CommentPodcast; type: string; }): void; }>; export {};