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 67 68 69 70 71 72 73 74 75 76 77 78
|
//// [tests/cases/conformance/node/nodeModulesTripleSlashReferenceModeDeclarationEmit7.ts] ////
//// [package.json]
{
"name": "pkg",
"version": "0.0.1",
"exports": {
"import": "./import.js",
"require": "./require.js"
}
}
//// [import.d.ts]
export {};
declare global {
interface ImportInterface { _i: any; }
function getInterI(): ImportInterface;
}
//// [require.d.ts]
export {};
declare global {
interface RequireInterface { _r: any; }
function getInterR(): RequireInterface;
}
//// [uses.ts]
/// <reference types="pkg" />
export default getInterI();
//// [package.json]
{
"private": true,
"type": "module"
}
//// [uses.ts]
/// <reference types="pkg" />
export default getInterR();
//// [package.json]
{
"private": true,
"type": "commonjs"
}
//// [package.json]
{
"private": true,
"type": "module"
}
//// [index.ts]
// only an esm file can `import` both kinds of files
import obj1 from "./sub1/uses.js"
import obj2 from "./sub2/uses.js"
export default [obj1, obj2.default] as const;
//// [uses.js]
/// <reference types="pkg" />
export default getInterI();
//// [uses.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
/// <reference types="pkg" />
exports.default = getInterR();
//// [index.js]
// only an esm file can `import` both kinds of files
import obj1 from "./sub1/uses.js";
import obj2 from "./sub2/uses.js";
export default [obj1, obj2.default];
//// [uses.d.ts]
/// <reference types="pkg" />
declare const _default: ImportInterface;
export default _default;
//// [uses.d.ts]
/// <reference types="pkg" />
declare const _default: RequireInterface;
export default _default;
//// [index.d.ts]
/// <reference types="pkg" />
/// <reference types="pkg" resolution-mode="require"/>
declare const _default: readonly [ImportInterface, RequireInterface];
export default _default;
|