import type { CommentableType, CommentTemplate, CommentId } from "../types/comment.js"; import type { NoticeType } from "../types/common.js"; import type { ApiRequestHandler } from "../types/auth-layer-api-options.js"; import type { IdField } from "./common.js"; export interface CommentsParams { commentable_id: number; commentable_type: CommentableType; page?: number; limit?: number; desc?: 1 | 0; } export interface CommentsCreateParams { comment?: CommentTemplate; frontend?: boolean; broadcast?: boolean; } export interface CommentsUpdateParams { id: CommentId; comment?: { body: string; }; frontend?: boolean; } /** * Комментарии * @param methods */ export declare class CommentsApi { constructor(request: ApiRequestHandler); /** * Список комментариев * @param params */ readonly list: (params: CommentsParams) => Promise; /** * Получить комментарий по `CommentId` * @param params */ readonly byId: ({ id }: IdField) => Promise; /** * Создать комментарий * @param params */ readonly create: (params: CommentsCreateParams) => Promise; /** * Обновить комментарий * @param params */ readonly update: ({ id, ...params }: CommentsUpdateParams) => Promise; /** * Удалить комментарий * @param params */ readonly destroy: ({ id }: IdField) => Promise; }