All the Microsoft documentation and samples about adding D3 typed definition files to a custom visual project use the typings utility. Here is what the instructions are on the Power BI Visuals repo in GitHub:
# First, install D3 v3.5.5 because Power BI does not yet support D3 v4
npm install d3@3.5.5 --save
# Next, install typings utility
npm install typings -g
# Next, install typings files for D3
typings install --save --global dt~d3 <- Error as it attempts install D3 v4 typings file
# In the GitHub issues list for the repo, I found that workaround that works
typings install --save --global dt~d3#0.0.0+20160907005744
While you can get this to work, I think it is safe to say the typings utility is now being phased out in general node.js and npm development and developers are now standardizing on using the regular npm install command to install typed definition files from the Definitely Typed project. Another important concern is that soon you will no longer be able to sit at the cool kids table if you keep using th typings utility
Here the steps that I think should start using to create a new custom visual project with support for D3 programming.
pbiviz new barchart
cd barchart
npm install d3@3 --save
npm install @types/d3@3 --save
Once you have one that, modify the externalJS setting in pbiviz.json file
"externalJS": [
"node_modules/d3/d3.js"
]
Then update the files section of the tsconfig.json file.
"files": [
".api/v1.5.0/PowerBI-visuals.d.ts",
"src/visual.ts",
"node_modules/@types/d3/index.d.ts"
]
It use to take me a while to configure all this and now it takes less than a minute.