2014-07-19 03:11:04 +02:00
|
|
|
// @module: commonjs
|
2014-07-13 01:04:16 +02:00
|
|
|
class privateClass {
|
|
|
|
}
|
|
|
|
|
|
|
|
export class publicClass {
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface publicInterfaceWithPrivateTypeParameters {
|
|
|
|
// TypeParameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_type_1
|
|
|
|
new <T extends privateClass>(): privateClass;
|
|
|
|
|
|
|
|
// TypeParameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_type_1
|
|
|
|
<T extends privateClass>(): privateClass;
|
|
|
|
|
|
|
|
// TypeParameter_0_of_method_from_exported_interface_has_or_is_using_private_type_1
|
|
|
|
myMethod<T extends privateClass>(): privateClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface publicInterfaceWithPublicTypeParameters {
|
|
|
|
new <T extends publicClass>(): publicClass;
|
|
|
|
<T extends publicClass>(): publicClass;
|
|
|
|
myMethod<T extends publicClass>(): publicClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface privateInterfaceWithPrivateTypeParameters {
|
|
|
|
new <T extends privateClass>(): privateClass;
|
|
|
|
<T extends privateClass>(): privateClass;
|
|
|
|
myMethod<T extends privateClass>(): privateClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface privateInterfaceWithPublicTypeParameters {
|
|
|
|
new <T extends publicClass>(): publicClass;
|
|
|
|
<T extends publicClass>(): publicClass;
|
|
|
|
myMethod<T extends publicClass>(): publicClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
export class publicClassWithWithPrivateTypeParameters {
|
|
|
|
// TypeParameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_type_1
|
|
|
|
static myPublicStaticMethod<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T extends privateClass>() { // No error
|
|
|
|
}
|
|
|
|
// TypeParameter_0_of_public_method_from_exported_class_has_or_is_using_private_type_1
|
|
|
|
myPublicMethod<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T extends privateClass>() { // No error
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export class publicClassWithWithPublicTypeParameters {
|
|
|
|
static myPublicStaticMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
myPublicMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class privateClassWithWithPrivateTypeParameters {
|
|
|
|
static myPublicStaticMethod<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T extends privateClass>() { // No error
|
|
|
|
}
|
|
|
|
myPublicMethod<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T extends privateClass>() { // No error
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class privateClassWithWithPublicTypeParameters {
|
|
|
|
static myPublicStaticMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
myPublicMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// TypeParameter_0_of_exported_function_has_or_is_using_private_type_1
|
|
|
|
export function publicFunctionWithPrivateTypeParameters<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
|
|
|
|
export function publicFunctionWithPublicTypeParameters<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
|
|
|
|
function privateFunctionWithPrivateTypeParameters<T extends privateClass>() {
|
|
|
|
}
|
|
|
|
|
|
|
|
function privateFunctionWithPublicTypeParameters<T extends publicClass>() {
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface publicInterfaceWithPublicTypeParametersWithoutExtends {
|
|
|
|
new <T>(): publicClass;
|
|
|
|
<T>(): publicClass;
|
|
|
|
myMethod<T>(): publicClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
interface privateInterfaceWithPublicTypeParametersWithoutExtends {
|
|
|
|
new <T>(): publicClass;
|
|
|
|
<T>(): publicClass;
|
|
|
|
myMethod<T>(): publicClass;
|
|
|
|
}
|
|
|
|
|
|
|
|
export class publicClassWithWithPublicTypeParametersWithoutExtends {
|
|
|
|
static myPublicStaticMethod<T>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T>() {
|
|
|
|
}
|
|
|
|
myPublicMethod<T>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T>() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
class privateClassWithWithPublicTypeParametersWithoutExtends {
|
|
|
|
static myPublicStaticMethod<T>() {
|
|
|
|
}
|
|
|
|
private static myPrivateStaticMethod<T>() {
|
|
|
|
}
|
|
|
|
myPublicMethod<T>() {
|
|
|
|
}
|
|
|
|
private myPrivateMethod<T>() {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export function publicFunctionWithPublicTypeParametersWithoutExtends<T>() {
|
|
|
|
}
|
|
|
|
|
|
|
|
function privateFunctionWithPublicTypeParametersWithoutExtends<T>() {
|
|
|
|
}
|