Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting error TS2304: Cannot find name 'Buffer'

I am trying to do base64 encode in NodeJS using TypeScript.

Following code working fine in JavaScript.

When I am writing same thing in TypeScript and compiling, I am getting Buffer is not find error.

var base64Policy = new Buffer(stringPolicy, 'utf-8').toString('base64'); 

Can someone help me to do same thing in TypeScript.

like image 678
ayyappa maddi Avatar asked Aug 10 '16 13:08

ayyappa maddi


1 Answers

Add this line at top:

declare const Buffer 

and it should compile without errors.

Declarations is required to use node built in libraries or other global objects, you can manually declare it like above.

With new version of Typescript, you can also use official declaration files:

npm i -g typescript@next npm i --save-dev @types/node 

for other libraries, install @types/library_name.

more details: Improve Declaration File Acquisition, The Future of Declaration Files

like image 105
DarkKnight Avatar answered Sep 20 '22 05:09

DarkKnight