import { BaseApiClient, ApiClientOptions, RequestOptions } from "@edifice.io/rest-client-base"; import { CreateDiscussionDto, DiscussionDto, SearchDiscussionDto, SearchDiscussionResponseDto, CountDiscussionsDto, CreateMessageDto, MessageDto, PaginationQueryDto, ListMessagesResponseDto, CountDiscussionMessagesDto } from "../dtos"; export declare class DiscussionClient extends BaseApiClient { constructor(options?: ApiClientOptions); createDiscussion(communityId: number, createDto: CreateDiscussionDto, options?: RequestOptions): Promise; listDiscussions(communityId: number, query?: SearchDiscussionDto, options?: RequestOptions): Promise; countDiscussions(communityId: number, createdAfter?: Date, options?: RequestOptions): Promise; getDiscussion(communityId: number, discussionId: number, options?: RequestOptions): Promise; updateDiscussion(communityId: number, discussionId: number, updateDto: CreateDiscussionDto, options?: RequestOptions): Promise; setHideDiscussion(communityId: number, discussionId: number, hidden: boolean, options?: RequestOptions): Promise; setLockDiscussion(communityId: number, discussionId: number, locked: boolean, options?: RequestOptions): Promise; deleteDiscussion(communityId: number, discussionId: number, options?: RequestOptions): Promise; createMessage(communityId: number, discussionId: number, createDto: CreateMessageDto, options?: RequestOptions): Promise; listMessages(communityId: number, discussionId: number, query: PaginationQueryDto, options?: RequestOptions): Promise; countMessages(communityId: number, discussionId: number, postedAfter?: Date, options?: RequestOptions): Promise; updateMessage(communityId: number, discussionId: number, messageId: number, updateDto: CreateMessageDto, options?: RequestOptions): Promise; deleteMessage(communityId: number, discussionId: number, messageId: number, options?: RequestOptions): Promise; }