@edicarlos.lds/businessmap-mcp
Version:
Model Context Protocol server for BusinessMap (Kanbanize) integration
99 lines • 6.84 kB
TypeScript
import { BoardFilters } from './modules/board-client.js';
import { BoardClient, CardClient, CardFilters, UserClient, WorkspaceClient } from './modules/index.js';
import { BusinessMapConfig, CreateCommentParams, CreateTagParams, UpdateCommentParams } from '../types/index.js';
export declare class BusinessMapClient {
private readonly http;
private readonly config;
private isInitialized;
private readonly workspaceClient;
private readonly boardClient;
private readonly cardClient;
private readonly userClient;
private readonly customFieldClient;
private readonly utilityClient;
private readonly workflowClient;
constructor(config: BusinessMapConfig);
/**
* Initialize the client by verifying the connection to the BusinessMap API
*/
initialize(): Promise<void>;
/**
* Check if the client has been initialized
*/
get initialized(): boolean;
private transformError;
getWorkspaces(): Promise<import("../types/workspace.js").Workspace[]>;
getWorkspace(workspaceId: number): Promise<import("../types/workspace.js").Workspace>;
createWorkspace(params: Parameters<WorkspaceClient['createWorkspace']>[0]): Promise<import("../types/workspace.js").Workspace>;
updateWorkspace(workspaceId: number, params: Parameters<WorkspaceClient['updateWorkspace']>[1]): Promise<import("../types/workspace.js").Workspace>;
deleteWorkspace(workspaceId: number): Promise<void>;
getBoards(filters?: BoardFilters): Promise<import("../types/board.js").Board[]>;
getBoard(boardId: number): Promise<import("../types/board.js").Board>;
createBoard(params: Parameters<BoardClient['createBoard']>[0]): Promise<import("../types/board.js").Board>;
updateBoard(boardId: number, params: Parameters<BoardClient['updateBoard']>[1]): Promise<import("../types/board.js").Board>;
deleteBoard(boardId: number): Promise<void>;
getBoardStructure(boardId: number): Promise<any>;
getColumns(boardId: number): Promise<import("../types/board.js").Column[]>;
getLanes(boardId: number): Promise<import("../types/lane.js").Lane[]>;
getLane(laneId: number): Promise<import("../types/lane.js").Lane>;
createLane(params: Parameters<BoardClient['createLane']>[0]): Promise<import("../types/lane.js").Lane>;
getCurrentBoardStructure(boardId: number): Promise<import("../types/board.js").CurrentBoardStructure>;
createColumn(boardId: number, params: Parameters<BoardClient['createColumn']>[1]): Promise<import("../types/board.js").Column>;
updateColumn(boardId: number, columnId: number, params: Parameters<BoardClient['updateColumn']>[2]): Promise<import("../types/board.js").Column>;
deleteColumn(boardId: number, columnId: number): Promise<void>;
getCards(boardId: number, filters?: CardFilters): Promise<import("../types/card.js").Card[]>;
getCard(cardId: number): Promise<import("../types/card.js").Card>;
createCard(params: Parameters<CardClient['createCard']>[0]): Promise<import("../types/card.js").Card>;
updateCard(params: Parameters<CardClient['updateCard']>[0]): Promise<import("../types/card.js").Card>;
moveCard(cardId: number, columnId: number, laneId?: number, position?: number): Promise<import("../types/card.js").Card>;
deleteCard(cardId: number): Promise<void>;
getCardComments(cardId: number): Promise<import("../types/card.js").Comment[]>;
getCardComment(cardId: number, commentId: number): Promise<import("../types/card.js").Comment>;
getCardCustomFields(cardId: number): Promise<import("../types/card.js").CardCustomField[]>;
getCardTypes(): Promise<import("../types/card.js").CardType[]>;
getCardHistory(cardId: number, outcomeId: number): Promise<import("../types/card.js").CardHistoryItem[]>;
getCardOutcomes(cardId: number): Promise<import("../types/card.js").Outcome[]>;
getCardLinkedCards(cardId: number): Promise<import("../types/card.js").LinkedCardItem[]>;
getCardSubtasks(cardId: number): Promise<import("../types/card.js").Subtask[]>;
getCardSubtask(cardId: number, subtaskId: number): Promise<import("../types/card.js").Subtask>;
createCardSubtask(cardId: number, params: Parameters<CardClient['createCardSubtask']>[1]): Promise<import("../types/card.js").Subtask>;
getCardParents(cardId: number): Promise<import("../types/card.js").ParentCardItem[]>;
getCardParent(cardId: number, parentCardId: number): Promise<{
position: number;
}>;
addCardParent(cardId: number, parentCardId: number): Promise<{
position: number;
}>;
removeCardParent(cardId: number, parentCardId: number): Promise<void>;
getCardParentGraph(cardId: number): Promise<import("../types/card.js").ParentGraphItem[]>;
getCardChildren(cardId: number): Promise<import("../types/card.js").ChildCardItem[]>;
blockCard(cardId: number, reason: string): Promise<void>;
unblockCard(cardId: number): Promise<void>;
createCardComment(cardId: number, params: CreateCommentParams): Promise<import("../types/card.js").Comment>;
updateCardComment(cardId: number, commentId: number, params: UpdateCommentParams): Promise<import("../types/card.js").Comment>;
deleteCardComment(cardId: number, commentId: number): Promise<void>;
createTag(params: CreateTagParams): Promise<import("../types/card.js").Tag>;
addTagToCard(cardId: number, tagId: number): Promise<void>;
removeTagFromCard(cardId: number, tagId: number): Promise<void>;
addStickerToCard(cardId: number, stickerId: number): Promise<import("../types/card.js").CardStickerItem>;
removeStickerFromCard(cardId: number, stickerCardId: number): Promise<void>;
addPredecessor(cardId: number, predecessorCardId: number, params?: Parameters<CardClient['addPredecessor']>[2]): Promise<void>;
removePredecessor(cardId: number, predecessorCardId: number): Promise<void>;
getUsers(): Promise<import("../types/user.js").User[]>;
getUser(userId: number): Promise<import("../types/user.js").User>;
getCurrentUser(): Promise<import("../types/user.js").CurrentUser>;
inviteUser(params: Parameters<UserClient['inviteUser']>[0]): Promise<import("../types/user.js").InvitedUser>;
getCustomField(customFieldId: number): Promise<import("../types/custom-field.js").CustomField>;
getWorkflowCycleTimeColumns(boardId: number, workflowId: number): Promise<import("../types/workflow.js").WorkflowCycleTimeColumn[]>;
getWorkflowEffectiveCycleTimeColumns(boardId: number, workflowId: number): Promise<import("../types/workflow.js").WorkflowCycleTimeColumn[]>;
healthCheck(): Promise<boolean>;
getApiInfo(): Promise<{
message: string;
endpoint: string;
status: string;
note: string;
api_version: string;
documentation: string;
}>;
}
//# sourceMappingURL=businessmap-client.d.ts.map