Jo David
Jo David

Reputation: 1746

Blob in TypeScript

I am trying to write a file downloader in TypeScript using the FileSystem API.

When I'm trying to create a new Blob object:

var blob: Blob = new Blob(xhr.response, JSON.stringify(mime));

I'm getting the error:

Supplied parameters do not match any signature of call target

It's possible to create a Blob without any parameters:

var blob: Blob = new Blob();

But that doesn't help.

The (deprecated) fall back for Blob is the BlobBuilder object but TypeScript (VS 2012 Plugin) only offers the MSBlobBuilder object.

What am I doing wrong? Or does TypeScript not know about the Blob constructor?

Upvotes: 14

Views: 53871

Answers (1)

Fenton
Fenton

Reputation: 251102

The definition for Blob in the lib.d.ts library only includes an empty constructor:

declare var Blob: {
    prototype: Blob;
    new (): Blob;
}

If this is incorrect, you could submit back the corrected version, or override it in your code. Here is a rough guess at what the original declaration should look like.

declare var Blob: {
    prototype: Blob;
    new (): Blob;
    new (request: any, mime: string): Blob;
}

I haven't specified the type for the first parameter and the names may be wrong - but as you know what Blob is up to, you can adjust these as required.

Upvotes: 10

Related Questions