interface B { f(): B; (value: T): void; } var x: B; x(true); // was error