mirror of
https://github.com/github/codeql.git
synced 2025-12-18 18:10:39 +01:00
62 lines
1.2 KiB
TypeScript
62 lines
1.2 KiB
TypeScript
declare class Foobar {
|
|
method(foo: number): string;
|
|
method(foo: number): number; // $ Alert
|
|
|
|
types1<T>(): T[]
|
|
types1(): any[] // $ Alert
|
|
|
|
types2(): any[]
|
|
types2<T>(): T[]
|
|
|
|
types3<T extends Array<T>>(t: T): number;
|
|
types3<T extends string>(t: T): number
|
|
|
|
on(event: string, fn?: (event?: any, ...args: any[]) => void): Function;
|
|
on(event: string, fn?: (event?: any, ...args: any[]) => void): Function; // $ Alert
|
|
|
|
foo(this: string): string;
|
|
foo(this: number): number;
|
|
|
|
bar(this: number): string;
|
|
bar(this: number): number; // $ Alert
|
|
|
|
}
|
|
|
|
declare class Base {
|
|
method(foo: number): string;
|
|
method(foo: number): number; // $ Alert
|
|
|
|
overRiddenInSub(): string;
|
|
overRiddenInSub(): number;
|
|
|
|
existsInBase(): string;
|
|
}
|
|
|
|
|
|
declare class Sub extends Base {
|
|
overRiddenInSub(): string;
|
|
overRiddenInSub(): number;
|
|
|
|
existsInBase(): string;
|
|
existsInBase(): number;
|
|
}
|
|
|
|
interface Base1 {
|
|
method(): "foo";
|
|
}
|
|
|
|
interface Base2 {
|
|
method(): "bar";
|
|
}
|
|
|
|
|
|
interface MultiInheritanceI extends Base1, Base2 {
|
|
method(): "foo";
|
|
method(): "bar";
|
|
}
|
|
|
|
|
|
declare class MultiInheritanceC implements Base1, Base2 {
|
|
method(): "foo";
|
|
method(): "bar";
|
|
} |