2015-09-03 4 views
1

Я хотел был бы импортировать PromiseT от sequelize. Я в настоящее время этот оператор импорта:Можно ли импортировать общее обещание в машинопись?

import { sequelize, Instance, Model, DataTypes, Base } from './sequelize'; 

я обнаружил, что это не работает:

let p: sequelize.PromiseT<MyModel[]>; 

я могу импортировать весь пакет:

import s = require('sequelize'); 
let p: s.PromiseT<UserInstance[]>; 

Есть ли синтаксис только импорт PromiseT? Ниже приводятся соответствующие декларации от sequelize.dts:

declare module "sequelize" 
{ 
    ... 
    module sequelize { 
     ... 
     interface PromiseT<T> extends Promise { ... }; 
     ... 
    } 

    var sequelize: sequelize.SequelizeStatic; 

    export = sequelize; 
} 

Спасибо!

+0

Невозможно _import_ что-то, что не _exported_. Если результат 'var sequelize: sequelize.SequelizeStatic' содержит некоторое свойство, которое ссылается на' PromiseT', у вас не будет доступа к нему. – sdgluck

+0

Спасибо! Я забыл проверить это. – Joseph

ответ

0

Да, возможно - он работает как любой другой тип. Вышеуказанное не работает, потому что оно не было экспортировано, как указано выше sdgluck.