声明描述

声明描述主要是用来扩展语法功能,任何类型、属性、函数都可以声明。声明描述一般定义在描述文件中,通常以“.d.es”后缀结尾,但也可以定义在代码块中(不推荐)。声明描述以 declare 关键字来定义,允许在顶级域或者包中(除declare module)定义。如果在项目根目录有“index.d.es”文件会自动先加载。否则需要在代码的开头使用 @Reference(path) 注解符来引用描述文件。

定义类描述

定义指定类的描述。对一个已存在的类添加成员描述,如果没有指定 package 默认为全局

语法:declare class identifier{}

package;
declare class Object{
    static assign<T,T1>(target:T,v1:T1):T &amp; T1;
       toString(): string;
}

定义接口描述

定义指定接口的描述。对一个已存在的类型添加成员描述,如果没有指定 package 默认为全局

语法:declare interface identifier{}

declare interface IObject{
    isObject(value):boolean
}

定义组合类型

在指定的对象(命名空间)定义组合类型。如果没有指定 package 默认为全局

语法:declare type identifier = Type

declare type Scalar = string | number | boolean

定义属性

在指定的对象(命名空间)定义属性。如果没有指定 package 默认为全局

语法:declare var|const identifier:Type 

declare const window:IWindow;