import ImportedInterface from './ImportedInterface__';
import type Variable from './Variable__';
import type Logic from './Logic__';
import type Param from './Param__';
import type Return from './Return__';
import type BindAttribute from './BindAttribute__';
/**
* MCP接口
*/
export declare class McpInterface extends ImportedInterface {
/** 类名 */
static readonly ConceptName: string;
/**
* 是否为抽象类
* 抽象类不能产生 concept: string
*/
static isAbstract: boolean;
/** 继承链 */
static readonly inheritanceChain: string[];
/**
* 产品概念
*/
readonly concept: 'McpInterface';
/**
* 接口标识
*/
name: string;
/**
* 接口名称
*/
title: string;
/**
* 接口描述
*/
description: string;
/**
* 导出的来源
*/
originLogicName: string;
/**
* 接口参数列表
*/
params: Array;
/**
* 输出参数列表
*/
returns: Array;
/**
* @param source 需要合并的部分参数
*/
constructor(source?: Partial);
static from(source: any, parentNode?: any, parentKey?: string): McpInterface;
/**
* 设置接口标识
*/
setName(name: string): void;
/**
* 设置接口名称
*/
setTitle(title: string): void;
/**
* 设置接口描述
*/
setDescription(description: string): void;
getParamUniqueName(name?: string): string;
/**
* 插入输入参数
* @internal
* @param name 输入参数名称,如果不填会自动生成一个唯一名称
*/
_insertParamAt(name: string, index: number): Param;
/**
* 插入输入参数
* @internal
* @param paramOptions 输入参数参数
*/
_insertParamAt(paramOptions: Partial, index: number): Param;
/**
* 插入输入参数
* @internal
* @param param 已有的输入参数实例
*/
_insertParamAt(param: Param, index: number): Param;
/**
* 插入输入参数
* @param name 输入参数名称,如果不填会自动生成一个唯一名称
*/
insertParamAt(name: string, index: number): Param;
/**
* 插入输入参数
* @param paramOptions 输入参数参数
*/
insertParamAt(paramOptions: Partial, index: number): Param;
/**
* 插入输入参数
* @param param 已有的输入参数实例
*/
insertParamAt(param: Param, index: number): Param;
/**
* 添加输入参数
* @internal
* @param name 输入参数名称,如果不填会自动生成一个唯一名称
*/
_addParam(name?: string): Param;
/**
* 添加输入参数
* @internal
* @param paramOptions 输入参数参数
*/
_addParam(paramOptions: Partial): Param;
/**
* 添加输入参数
* @internal
* @param param 已有的输入参数实例
*/
_addParam(param: Param): Param;
/**
* 添加输入参数
* @internal
* @param name 输入参数名称,如果不填会自动生成一个唯一名称
*/
addParam(name?: string): Param;
/**
* 添加输入参数
* @param paramOptions 输入参数参数
*/
addParam(paramOptions: Partial): Param;
/**
* 添加输入参数
* @param param 已有的输入参数实例
*/
addParam(param: Param): Param;
/**
* 删除输入参数
* @param name 输入参数名称
*/
removeParam(name: string): void;
/**
* 删除输入参数
* @param param 已有的输入参数实例
*/
removeParam(param: Param): void;
get calleewholeKey(): string;
get variables(): Variable[];
get virtualParams(): Param[];
get protocolParams(): Param[];
get validation(): BindAttribute | undefined;
get originLogic(): Logic | undefined;
toService(): {};
toMockService(): {};
getVarExistingNames(excludedList?: Array): string[];
/**
* 生成宿主语言的文件路径
* @param name 一般不用传,用于 rename
*/
getEmbeddedFilePath(name?: string): string;
delete(): void;
/**
* 设置逻辑名称
*/
setOriginLogicName(originLogicName: string): void;
getNamespace(): string;
}
export default McpInterface;
//# sourceMappingURL=McpInterface__.d.ts.map