I thought using the type Object would do it, but that still allows anything. I want something like this: 
function foo(arg: /* what goes here? */) { }
foo({})                        // should compile
foo({ something: 'anything'})  // should compile
foo(new Object())              // should compile
foo(7)                         // should not compile
foo('hello')                   // should not compile
