Читаю про объектные типы в спецификации на странцие 13, но не понятно из описания как устроен и ведёт себя следующий пример кода:
var f: { (): string; };
var sameType: () => string = f; // Ok
var nope: () => number = sameType; // Error: type mismatch