从TypeScript定义文件导出模块
我正在尝试为Vogels库创建一个定义文件。此库包装了AWS SDK,因此它还包括一个导出整个AWS SDK的属性从TypeScript定义文件导出模块,typescript,definitelytyped,Typescript,Definitelytyped,我正在尝试为Vogels库创建一个定义文件。此库包装了AWS SDK,因此它还包括一个导出整个AWS SDK的属性 declare module "vogels" { import AWS = require('aws-sdk'); export function define(modelName: String, config: any): void; export var AWS: AWS; /* THIS LINE DOESN'T TRANSPILE */ } 此
declare module "vogels" {
import AWS = require('aws-sdk');
export function define(modelName: String, config: any): void;
export var AWS: AWS; /* THIS LINE DOESN'T TRANSPILE */
}
此库的使用方式如下:
import vogels = require('vogels');
vogels.AWS.config.update({region: region});
var model = vogels.define('test', {
..
}
});
不幸的是,从“vogels”模块导出AWS属性不起作用,因为AWS不被视为类型。如何在不复制模块中的整个AWS定义的情况下导出AWS属性?这似乎是导出整个AWS模块和
define
功能的方法:
declare module "vogels" {
import AWS = require('aws-sdk');
function define(modelName: String, config: any): void;
export = { AWS, define }
}
一个模块中只能有一个export=
,因此所有导出的变量都应该在该行中(当然,您可以将其拆分为多行)。不导出任何其他内容,只定义接口、变量。。。实际导出将在稍后完成