import { z, ZodRawShape } from 'zod'; import { McpServer, ToolCallback } from '@modelcontextprotocol/sdk/server/mcp.js'; export type AuthMethod = 'loginToken' | 'componentCall' | 'signedToken'; export interface SessionUser { did: string; role: string; provider: string; method?: AuthMethod; [key: string]: unknown; } export type AccessPolicy = { allow?: { dids?: string[]; roles?: string[]; providers?: string[]; methods?: AuthMethod[]; }; deny?: { dids?: string[]; roles?: string[]; providers?: string[]; methods?: AuthMethod[]; }; }; interface RegisteredToolWithAuth { description?: string; inputSchema?: z.ZodObject; callback: ToolCallback; accessPolicy?: AccessPolicy; } export declare class McpServerWithAuth extends McpServer { protected _registeredTools: { [name: string]: RegisteredToolWithAuth; }; checkPermissions(user?: SessionUser, policy?: AccessPolicy): boolean; tool(name: string, cb: ToolCallback, accessPolicy?: AccessPolicy): void; tool(name: string, description: string, cb: ToolCallback, accessPolicy?: AccessPolicy): void; tool(name: string, paramsSchema: Args, cb: ToolCallback, accessPolicy?: AccessPolicy): void; tool(name: string, description: string, paramsSchema: Args, cb: ToolCallback, accessPolicy?: AccessPolicy): void; } export {}; //# sourceMappingURL=simple.d.ts.map