/** * 语言静态元数据 * 定义语言的基础属性(图标、Monaco ID、文件扩展名等) */ export interface LanguageMetadata { /** 语言唯一标识 */ id: string; /** 显示名称 */ name: string; /** Monaco Editor 语言 ID */ monacoId: string; /** 图标 emoji(可选) */ icon?: string; /** 文件扩展名列表 */ extensions: string[]; /** * 默认代码模板(可选,用于向后兼容) * 当外部未提供题目配置时使用 */ fallbackTemplate?: string; /** * 是否可运行 * 标记该语言是否支持代码执行 */ canRun?: boolean; } /** * 语言配置(包含运行时信息) * 合并了静态元数据和动态配置后的完整语言配置 */ export interface LanguageConfig extends LanguageMetadata { /** 运行方式类型 */ runnerType?: "browser" | "wasm" | "remote"; /** 当前使用的代码模板(运行时确定) */ currentTemplate?: string; } //# sourceMappingURL=language.d.ts.map