functionAndInterfaceWithSeparateErrors.ts(1,10): error TS2394: This overload signature is not compatible with its implementation signature.
functionAndInterfaceWithSeparateErrors.ts(1,10): error TS7010: 'Foo', which lacks return-type annotation, implicitly has an 'any' return type.
functionAndInterfaceWithSeparateErrors.ts(6,5): error TS2411: Property 'prop' of type 'number' is not assignable to 'string' index type 'string'.


==== functionAndInterfaceWithSeparateErrors.ts (3 errors) ====
    function Foo(s: string);
             ~~~
!!! error TS2394: This overload signature is not compatible with its implementation signature.
!!! related TS2750 functionAndInterfaceWithSeparateErrors.ts:2:10: The implementation signature is declared here.
             ~~~
!!! error TS7010: 'Foo', which lacks return-type annotation, implicitly has an 'any' return type.
    function Foo(n: number) { }
    
    interface Foo {
        [s: string]: string;
        prop: number;
        ~~~~
!!! error TS2411: Property 'prop' of type 'number' is not assignable to 'string' index type 'string'.
    }