UNPKG

@monsoft/mcp-github-project-manager

Version:

A Model Context Protocol GitHub Project Manager implementation

113 lines (112 loc) 3.63 kB
import { CreateMilestoneParams, UpdateMilestoneParams, ListMilestonesParams, GetMilestoneParams } from '../types/index.js'; /** * Service for managing GitHub milestones */ export declare class GitHubMilestoneService { private octokit; /** * Create a new GitHub Milestone Service * @param token GitHub API token */ constructor(token: string); /** * Create a new milestone in a GitHub repository * @param params Milestone creation parameters * @returns The created milestone */ createMilestone(params: CreateMilestoneParams): Promise<{ url: string; html_url: string; labels_url: string; id: number; node_id: string; number: number; state: "open" | "closed"; title: string; description: string | null; creator: import("@octokit/openapi-types").components["schemas"]["nullable-simple-user"]; open_issues: number; closed_issues: number; created_at: string; updated_at: string; closed_at: string | null; due_on: string | null; }>; /** * Update an existing milestone in a GitHub repository * @param params Milestone update parameters * @returns The updated milestone */ updateMilestone(params: UpdateMilestoneParams): Promise<{ url: string; html_url: string; labels_url: string; id: number; node_id: string; number: number; state: "open" | "closed"; title: string; description: string | null; creator: import("@octokit/openapi-types").components["schemas"]["nullable-simple-user"]; open_issues: number; closed_issues: number; created_at: string; updated_at: string; closed_at: string | null; due_on: string | null; }>; /** * Get a milestone from a GitHub repository * @param params Milestone retrieval parameters * @returns The requested milestone */ getMilestone(params: GetMilestoneParams): Promise<{ url: string; html_url: string; labels_url: string; id: number; node_id: string; number: number; state: "open" | "closed"; title: string; description: string | null; creator: import("@octokit/openapi-types").components["schemas"]["nullable-simple-user"]; open_issues: number; closed_issues: number; created_at: string; updated_at: string; closed_at: string | null; due_on: string | null; }>; /** * List milestones in a GitHub repository * @param params Milestone listing parameters * @returns List of milestones */ listMilestones(params: ListMilestonesParams): Promise<{ url: string; html_url: string; labels_url: string; id: number; node_id: string; number: number; state: "open" | "closed"; title: string; description: string | null; creator: import("@octokit/openapi-types").components["schemas"]["nullable-simple-user"]; open_issues: number; closed_issues: number; created_at: string; updated_at: string; closed_at: string | null; due_on: string | null; }[]>; /** * Delete a milestone from a GitHub repository * @param owner Repository owner * @param repo Repository name * @param milestone_number Milestone number * @returns void */ deleteMilestone(owner: string, repo: string, milestone_number: number): Promise<void>; }