@hauptsache.net/clickup-mcp
Version:
Search, create, and retrieve tasks, add comments, and track time through natural language commands.
71 lines • 2.73 kB
TypeScript
import Fuse from 'fuse.js';
/**
* Checks if a string looks like a valid ClickUp task ID
* Valid task IDs are 6-9 characters long and contain only alphanumeric characters
*/
export declare function isTaskId(str: string): boolean;
/**
* Get current authenticated user information from ClickUp API
* Caches the promise to prevent race conditions on concurrent calls
*/
export declare function getCurrentUser(): Promise<any>;
export { downloadImages } from "./image-processing";
/**
* Function to get space details, using a cache to avoid redundant fetches
*/
export declare function getSpaceDetails(spaceId: string): Promise<any>;
/**
* Get or create a task search index with specified filters
* Caches promises to prevent race conditions on concurrent calls
*/
export declare function getTaskSearchIndex(space_ids?: string[], list_ids?: string[], assignees?: string[]): Promise<Fuse<any> | null>;
/**
* Generate a ClickUp task URL from a task ID
*/
export declare function generateTaskUrl(taskId: string): string;
/**
* Generate a ClickUp list URL from a list ID
*/
export declare function generateListUrl(listId: string): string;
/**
* Generate a ClickUp space URL from a space ID
*/
export declare function generateSpaceUrl(spaceId: string): string;
/**
* Generate a ClickUp folder URL from a folder ID
*/
export declare function generateFolderUrl(folderId: string): string;
/**
* Generate a ClickUp document URL from a document ID and optional page ID
*/
export declare function generateDocumentUrl(docId: string, pageId?: string): string;
/**
* Format space content as tree structure
* Shared function used by both searchSpaces tool and space resources
*/
export declare function formatSpaceTree(space: any, lists: any[], folders: any[], documents: any[]): string;
/**
* Get or refresh the space search index
* Caches promise to prevent race conditions on concurrent calls
*/
export declare function getSpaceSearchIndex(): Promise<Fuse<any> | null>;
/**
* Get lists, folders, and documents for a specific space with caching
*/
export declare function getSpaceContent(spaceId: string): Promise<{
lists: any[];
folders: any[];
documents: any[];
}>;
/**
* Gets all team members from ClickUp API with caching
*/
export declare function getAllTeamMembers(): Promise<string[]>;
/**
* Performs multi-term search with aggressive boosting for items matching multiple terms
* @param searchIndex Fuse search index to search within
* @param terms Array of search terms
* @returns Array of items sorted by relevance (multi-term matches ranked higher)
*/
export declare function performMultiTermSearch<T>(searchIndex: Fuse<T>, terms: string[]): Promise<T[]>;
//# sourceMappingURL=utils.d.ts.map