import { OrNil } from "../utils/declaration"; import { SdinModule, SdinModuleParams } from './module'; import { SdinTesting, SdinTestingParams } from './testing'; import { SdinPlaying, SdinPlayingParams } from './playing'; import { SdinAbstractProject, SdinAbstractProjectParams } from './abstract-project'; export interface SdinProjectDatas extends Record { SDIN_PROJECT_NAME: string; SDIN_PROJECT_VERSION: string; SDIN_PROJECT_DESCRIPTION: string; SDIN_PROJECT_AUTHOR_NAME: string; SDIN_PROJECT_AUTHOR_EMAIL: string; } /** * Sdin 项目配置参数 */ export interface SdinProjectParams extends SdinAbstractProjectParams { /** 模块列表 */ modules: OrNil[]; /** 测试配置 */ testing?: SdinTestingParams; /** 演示配置 */ playing?: SdinPlayingParams; } /** * Sdin 配置 */ export declare class SdinProject extends SdinAbstractProject { /** 数据宏定义 */ readonly datas: SdinProjectDatas; /** 模块列表 */ readonly modules: SdinModule[]; /** 测试配置 */ readonly testing?: SdinTesting; /** 演示配置 */ readonly playing?: SdinPlaying; constructor(params: SdinProjectParams); private createModules; private createModule; initialize(): Promise; validate(): Promise; }