function inferTypeLiteralType(node) {
  const types = new Set()
  for (const m of node.members) {
    switch (m.type) {
      case 'TSCallSignatureDeclaration':
      case 'TSConstructSignatureDeclaration': {
        types.add('Function')
        break
      }
      default: {
        types.add('Object')
      }
    }
  }
  return types.size > 0 ? [...types] : ['Object']
}
@param {import('@typescript-eslint/types').TSESTree.TSTypeLiteral} node
@returns {string[]}