import { Task, Comment, Config, CreateTaskParams, CreateTaskResult, FetchTasksOptions } from '../types';
import { TaskProvider } from './base';
export declare class ClickUpProvider implements TaskProvider {
    private apiKey;
    private teamId;
    private tag;
    private assigneeTag;
    private listId;
    private pendingStatus;
    private openStatus;
    private inReviewStatus;
    constructor(config: Config);
    private request;
    private buildAuthHeaders;
    private static readonly IN_PROGRESS_STATUS;
    private fetchTaggedTeamTasks;
    private mapRawTasks;
    private mapRawTaskSync;
    private fetchTaskAttachments;
    private fetchTeamTasksByStatus;
    fetchBoardTasks(options?: FetchTasksOptions): Promise<Task[]>;
    fetchTaskById(taskId: string, options?: FetchTasksOptions): Promise<Task | null>;
    fetchTasks(options?: FetchTasksOptions): Promise<Task[]>;
    fetchTasksByStatus(statuses: string[], options?: FetchTasksOptions): Promise<Task[]>;
    postComment(taskId: string, text: string): Promise<void>;
    getComments(taskId: string): Promise<Comment[]>;
    fetchAvailableStatuses(): Promise<string[]>;
    updateStatus(taskId: string, status: string): Promise<void>;
    removeTag(taskId: string, tag: string): Promise<void>;
    addTag(taskId: string, tag: string): Promise<void>;
    createTask(params: CreateTaskParams): Promise<CreateTaskResult>;
}
//# sourceMappingURL=clickup.d.ts.map