Closed
Description
Bug Report
When you auto implement an interface, I would not expect TypeScript to suggest the any
type.
🔎 Search Terms
auto complete
💻 Code
interface OperatingSystem {
}
interface IPathService {
hasValidBasename(resource: string, basename?: string): Promise<boolean>;
hasValidBasename(resource: string, os: OperatingSystem, basename?: string): boolean;
}
class PathService implements IPathService {
// Let TS implement the interface!
}
🙁 Actual behavior
hasValidBasename(resource: string,basename?: string): Promise<boolean>;
hasValidBasename(resource: string,os: OperatingSystem,basename?: string): boolean;
hasValidBasename(resource: any,os?: any,basename?: any): boolean|Promise<boolean> {
throw new Error("Method not implemented.");
}
🙂 Expected behavior
hasValidBasename(resource: string,basename?: string): Promise<boolean>;
hasValidBasename(resource: string,os: OperatingSystem,basename?: string): boolean;
hasValidBasename(resource: string,os?: arg2: basename | OperatingSystem,basename?: string): boolean|Promise<boolean> {
throw new Error("Method not implemented.");
}
At the very minimum, put unknown
.