1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
//// [tests/cases/compiler/declarationsForIndirectTypeAliasReference.ts] ////
//// [b.ts]
export {
Hash,
StringHash, StringHash2
};
interface Hash<T> {
[key: string]: T;
}
type StringHash = Hash<string>;
interface StringHash2 extends Hash<string> {}
//// [a.ts]
import {StringHash, StringHash2} from "./b";
export {
doSome
}
const MAP: StringHash = {
a: "a"
};
const MAP2: StringHash2 = {
a: "a"
};
function doSome(arg1: string,
arg2 = MAP,
arg3 = MAP2) {
}
//// [b.js]
"use strict";
exports.__esModule = true;
//// [a.js]
"use strict";
exports.__esModule = true;
var MAP = {
a: "a"
};
var MAP2 = {
a: "a"
};
function doSome(arg1, arg2, arg3) {
if (arg2 === void 0) { arg2 = MAP; }
if (arg3 === void 0) { arg3 = MAP2; }
}
exports.doSome = doSome;
//// [b.d.ts]
export { Hash, StringHash, StringHash2 };
interface Hash<T> {
[key: string]: T;
}
declare type StringHash = Hash<string>;
interface StringHash2 extends Hash<string> {
}
//// [a.d.ts]
import { StringHash2 } from "./b";
export { doSome };
declare function doSome(arg1: string, arg2?: import("./b").Hash<string>, arg3?: StringHash2): void;
|