import { TodoistApi } from '@doist/todoist-sdk'; /** Value that tells `add-comments` to post without notifying anyone. */ export declare const NO_NOTIFY_KEYWORD = "none"; export type CommentTarget = { taskId: string; projectId?: never; } | { projectId: string; taskId?: never; }; /** Whether a `notifyUsers` list is the explicit "notify nobody" opt-out. */ export declare function isNoNotifyList(notifyUsers: string[]): boolean; /** * Work out who Todoist's own clients would notify about a new comment. * * The API notifies exactly the people it is handed and derives nobody itself, * so a comment posted without recipients notifies no one — and, because a reply * takes its recipients from the comment before it, silences the next comment in * the thread too. Mirroring the clients here keeps that chain intact: * * - replying to an existing thread notifies the previous comment's participants * - the first comment on a task notifies its assignee, assigner and creator * - the first comment on a project notifies nobody, as a project has no assignee * * The comment's own author is never a recipient. * * @param client - Todoist API client * @param target - The task or project being commented on * @param currentUserId - The authenticated user, excluded from the result * @returns User IDs to notify, deduplicated */ export declare function getDefaultCommentRecipients(client: TodoistApi, target: CommentTarget, currentUserId: string): Promise; //# sourceMappingURL=comment-recipients.d.ts.map