/** * SmartyMeet Dev03 API REST * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.1 * Contact: developer@smartymeet.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import type { CommentResponseDocument, CommentsResponseDocument, CreateCommentRequestSchema, UpdateCommentRequestSchema } from '../models/index'; export interface CreateCommentRequest { createCommentRequestSchema: CreateCommentRequestSchema; } export interface DeleteCommentRequest { commentId: string; permanentDelete?: DeleteCommentPermanentDeleteEnum; } export interface ListCommentsRequest { filterTargetType?: ListCommentsFilterTargetTypeEnum; filterTargetId?: string; filterAuthorId?: string; filterIsResolved?: boolean; include?: string; filterCreatedFrom?: Date; filterCreatedTo?: Date; filterModifiedFrom?: Date; filterModifiedTo?: Date; pageSize?: number; pageNumber?: number; pageAfter?: string; pageBefore?: string; sort?: ListCommentsSortEnum; } export interface ShowCommentRequest { commentId: string; include?: string; } export interface UpdateCommentRequest { commentId: string; updateCommentRequestSchema: UpdateCommentRequestSchema; } /** * */ export declare class CommentsApi extends runtime.BaseAPI { /** * Creates request options for createComment without sending the request */ createCommentRequestOpts(requestParameters: CreateCommentRequest): Promise; /** * Creates a new comment. The author is taken from the API Gateway authorizer (`userId`). `targetType` + `targetId` are required. Each entry in `mentionedUserIds` triggers a NOTIFICATION_USER_PUSH to that user (live WebSocket + notification row) - cap at 10. Self-mentions silently dropped. * Create Comment */ createCommentRaw(requestParameters: CreateCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Creates a new comment. The author is taken from the API Gateway authorizer (`userId`). `targetType` + `targetId` are required. Each entry in `mentionedUserIds` triggers a NOTIFICATION_USER_PUSH to that user (live WebSocket + notification row) - cap at 10. Self-mentions silently dropped. * Create Comment */ createComment(requestParameters: CreateCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Creates request options for deleteComment without sending the request */ deleteCommentRequestOpts(requestParameters: DeleteCommentRequest): Promise; /** * Soft-delete (status=archived) by default. Hard-delete with `?permanentDelete=true`. Only the author OR a tenant admin/owner can delete; others get 403. Idempotent: archiving an already- archived comment is a 204 no-op. Decrements per-target counter via aggregate service so FE badge stays in sync. * Delete Comment */ deleteCommentRaw(requestParameters: DeleteCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Soft-delete (status=archived) by default. Hard-delete with `?permanentDelete=true`. Only the author OR a tenant admin/owner can delete; others get 403. Idempotent: archiving an already- archived comment is a 204 no-op. Decrements per-target counter via aggregate service so FE badge stays in sync. * Delete Comment */ deleteComment(requestParameters: DeleteCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Creates request options for listComments without sending the request */ listCommentsRequestOpts(requestParameters: ListCommentsRequest): Promise; /** * Returns comments scoped to the current tenant. Use `filterTargetType` + `filterTargetId` to fetch all comments on a specific call/chat/job/etc. (collapses internally to a single `TargetIndex` GSI query). `?include=author` sideloads the user row for each unique author in the page (deduped). * List Comments */ listCommentsRaw(requestParameters: ListCommentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Returns comments scoped to the current tenant. Use `filterTargetType` + `filterTargetId` to fetch all comments on a specific call/chat/job/etc. (collapses internally to a single `TargetIndex` GSI query). `?include=author` sideloads the user row for each unique author in the page (deduped). * List Comments */ listComments(requestParameters?: ListCommentsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Creates request options for showComment without sending the request */ showCommentRequestOpts(requestParameters: ShowCommentRequest): Promise; /** * Get a single comment. `?include=author` sideloads the user row. * Show Comment */ showCommentRaw(requestParameters: ShowCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Get a single comment. `?include=author` sideloads the user row. * Show Comment */ showComment(requestParameters: ShowCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; /** * Creates request options for updateComment without sending the request */ updateCommentRequestOpts(requestParameters: UpdateCommentRequest): Promise; /** * Patch `body`, `isResolved`, or `mentionedUserIds`. Only the author OR a tenant admin/owner can update; others get 403. First PATCH of `body` flips `isEdited` to true. New entries in `mentionedUserIds` (vs the row\'s previous list) trigger a notification; re-mentioning an existing user does NOT re-notify. * Update Comment */ updateCommentRaw(requestParameters: UpdateCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise>; /** * Patch `body`, `isResolved`, or `mentionedUserIds`. Only the author OR a tenant admin/owner can update; others get 403. First PATCH of `body` flips `isEdited` to true. New entries in `mentionedUserIds` (vs the row\'s previous list) trigger a notification; re-mentioning an existing user does NOT re-notify. * Update Comment */ updateComment(requestParameters: UpdateCommentRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise; } /** * @export */ export declare const DeleteCommentPermanentDeleteEnum: { readonly True: "true"; readonly False: "false"; }; export type DeleteCommentPermanentDeleteEnum = typeof DeleteCommentPermanentDeleteEnum[keyof typeof DeleteCommentPermanentDeleteEnum]; /** * @export */ export declare const ListCommentsFilterTargetTypeEnum: { readonly Calls: "calls"; readonly Chats: "chats"; readonly Emails: "emails"; readonly Candidates: "candidates"; readonly Jobs: "jobs"; readonly Talents: "talents"; readonly Briefs: "briefs"; readonly Tasks: "tasks"; }; export type ListCommentsFilterTargetTypeEnum = typeof ListCommentsFilterTargetTypeEnum[keyof typeof ListCommentsFilterTargetTypeEnum]; /** * @export */ export declare const ListCommentsSortEnum: { readonly Created: "-created"; readonly Created2: "created"; readonly Modified: "-modified"; readonly Modified2: "modified"; }; export type ListCommentsSortEnum = typeof ListCommentsSortEnum[keyof typeof ListCommentsSortEnum]; //# sourceMappingURL=CommentsApi.d.ts.map