import { CORE_MCP_TOOLS, MCP_PROFILE_GROUPS, MCP_TOOL_GROUPS, shouldRegisterToolForProfile } from "./mcp/token-utils.js";
export type TodosMcpStability = "stable" | "experimental";
export interface CreateMcpManifestOptions {
    version?: string;
    generatedAt?: string;
}
export interface GetMcpToolNamesOptions {
    profile?: string;
    groups?: string;
}
export interface TodosMcpPackageSource {
    packageName: "@hasna/todos";
    repository: "hasna/todos";
    version: string;
}
export interface TodosMcpToolContract {
    name: string;
    groups: string[];
    profiles: string[];
    core: boolean;
    stability: TodosMcpStability;
}
export interface TodosMcpManifest {
    schemaVersion: 1;
    generatedAt: string;
    package: TodosMcpPackageSource;
    server: {
        name: "todos";
        binary: "todos-mcp";
        transport: "stdio";
        profileEnvironmentVariable: "TODOS_PROFILE";
        groupEnvironmentVariable: "TODOS_TOOL_GROUPS";
    };
    groups: Record<string, readonly string[]>;
    profiles: Record<string, readonly string[]>;
    tools: TodosMcpToolContract[];
}
export { CORE_MCP_TOOLS, MCP_PROFILE_GROUPS, MCP_TOOL_GROUPS, shouldRegisterToolForProfile, };
export declare function getMcpToolNames(options?: GetMcpToolNamesOptions): string[];
export declare function createMcpManifest(options?: CreateMcpManifestOptions): TodosMcpManifest;
export declare const TODOS_MCP_MANIFEST: TodosMcpManifest;
//# sourceMappingURL=mcp.d.ts.map