import { TodoistApi } from '@doist/todoist-api-typescript';
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { z } from 'zod';
import { TodoistTool } from './todoist-tool.js';
/**
 * Supported feature names that modify tool behavior.
 *
 * Currently supported:
 * - `'strip_emails'`: Strips email addresses from collaborator tool outputs
 *   (affects: find-project-collaborators, find-completed-tasks). Useful for
 *   clients like ChatGPT that should not have access to user emails.
 */
declare const FEATURE_NAMES: {
    /**
     * Strips email addresses from tool outputs that expose user data.
     * Affects: find-project-collaborators, find-completed-tasks
     */
    readonly STRIP_EMAILS: "strip_emails";
};
/**
 * Valid feature name values.
 * @see FEATURE_NAMES for available options with documentation.
 */
type FeatureName = (typeof FEATURE_NAMES)[keyof typeof FEATURE_NAMES];
/**
 * A feature that modifies tool behavior.
 */
type Feature = {
    /**
     * The feature name. Use {@link FEATURE_NAMES} for available options with intellisense.
     */
    name: FeatureName;
};
/**
 * Array of features to enable when creating the MCP server.
 */
type Features = Feature[];
/**
 * Recursively strips email fields from an object structure.
 * Used to remove sensitive email data from tool outputs for certain clients.
 */
declare function stripEmailsFromObject<T>(obj: T): T;
/**
 * Strips email patterns from text content.
 * Replaces email addresses with [email hidden] placeholder.
 */
declare function stripEmailsFromText(text: string): string;
/**
 * Register a Todoist tool in an MCP server.
 */
declare function registerTool<Params extends z.ZodRawShape, Output extends z.ZodRawShape = z.ZodRawShape>({ tool, server, client, features, }: {
    tool: TodoistTool<Params, Output>;
    server: McpServer;
    client: TodoistApi;
    features?: Features;
}): void;
export { FEATURE_NAMES, type Feature, type FeatureName, type Features, registerTool, stripEmailsFromObject, stripEmailsFromText, };
//# sourceMappingURL=mcp-helpers.d.ts.map