lokalise-mcp
Version:
The Lokalise MCP Server brings Lokalise's localization power to Claude and AI assistants—manage projects, keys, and translations by chat.
75 lines (74 loc) • 4.13 kB
TypeScript
import type { ControllerResponse } from "../../shared/types/common.types.js";
import type { AddContributorsToolArgsType, GetContributorToolArgsType, GetCurrentUserToolArgsType, ListContributorsToolArgsType, RemoveContributorToolArgsType, UpdateContributorToolArgsType } from "./contributors.types.js";
/**
* @namespace ContributorsController
* @description Controller responsible for handling Lokalise Contributors API operations.
* It orchestrates calls to the contributors service, applies defaults,
* maps options, and formats the response using the formatter.
*/
/**
* @function listContributors
* @description Fetches a list of contributors from a Lokalise project.
* @memberof ContributorsController
* @param {ListContributorsToolArgsType} args - Arguments containing project ID and pagination options
* @returns {Promise<ControllerResponse>} A promise that resolves to the standard controller response containing the formatted contributors list in Markdown.
* @throws {McpError} Throws an McpError (handled by `handleControllerError`) if the service call fails or returns an error.
*/
declare function listContributors(args: ListContributorsToolArgsType): Promise<ControllerResponse>;
/**
* @function getContributor
* @description Fetches details of a specific contributor.
* @memberof ContributorsController
* @param {GetContributorToolArgsType} args - Arguments containing project ID and contributor ID
* @returns {Promise<ControllerResponse>} A promise that resolves to the formatted contributor details.
* @throws {McpError} Throws an McpError if the service call fails.
*/
declare function getContributor(args: GetContributorToolArgsType): Promise<ControllerResponse>;
/**
* @function addContributors
* @description Adds one or more contributors to a project.
* @memberof ContributorsController
* @param {AddContributorsToolArgsType} args - Arguments containing project ID and contributor data
* @returns {Promise<ControllerResponse>} A promise that resolves to the formatted result.
* @throws {McpError} Throws an McpError if the service call fails.
*/
declare function addContributors(args: AddContributorsToolArgsType): Promise<ControllerResponse>;
/**
* @function getCurrentUser
* @description Gets the current user's contributor profile for a project.
* @memberof ContributorsController
* @param {GetCurrentUserToolArgsType} args - Arguments containing project ID
* @returns {Promise<ControllerResponse>} A promise that resolves to the formatted current user details.
* @throws {McpError} Throws an McpError if the service call fails.
*/
declare function getCurrentUser(args: GetCurrentUserToolArgsType): Promise<ControllerResponse>;
/**
* @function updateContributor
* @description Updates a contributor's permissions in a project.
* @memberof ContributorsController
* @param {UpdateContributorToolArgsType} args - Arguments containing project ID, contributor ID and update data
* @returns {Promise<ControllerResponse>} A promise that resolves to the formatted update result.
* @throws {McpError} Throws an McpError if the service call fails.
*/
declare function updateContributor(args: UpdateContributorToolArgsType): Promise<ControllerResponse>;
/**
* @function removeContributor
* @description Removes a contributor from a project.
* @memberof ContributorsController
* @param {RemoveContributorToolArgsType} args - Arguments containing project ID and contributor ID
* @returns {Promise<ControllerResponse>} A promise that resolves to the formatted deletion result.
* @throws {McpError} Throws an McpError if the service call fails.
*/
declare function removeContributor(args: RemoveContributorToolArgsType): Promise<ControllerResponse>;
/**
* Export the controller functions
*/
declare const contributorsController: {
listContributors: typeof listContributors;
getContributor: typeof getContributor;
addContributors: typeof addContributors;
getCurrentUser: typeof getCurrentUser;
updateContributor: typeof updateContributor;
removeContributor: typeof removeContributor;
};
export default contributorsController;