From 8015333ea336953843fb70c2fc8d3cbd8079c0de Mon Sep 17 00:00:00 2001 From: Sagie Maoz Date: Thu, 17 Jan 2019 16:57:01 -0500 Subject: [PATCH] fix(@types/backbone-relational): Add toJSON options The Backbone-relational library allows passing in `options` to `RelationalModel.toJSON` [1], similar to the `Backbone.Model.toJSON` typing [2]. This applies the same signature from the Backbone.Model typing [2]. [1] https://github.com/PaulUithol/Backbone-relational/blob/6ce19db76bf4cf45048c8859982ebc3228379a54/backbone-relational.js#L1580 [2] https://github.com/DefinitelyTyped/DefinitelyTyped/blob/68c38a850c846788505bc8fd34398e19136983e0//types/backbone/index.d.ts#L127 --- types/backbone-relational/backbone-relational-tests.ts | 1 + types/backbone-relational/index.d.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/types/backbone-relational/backbone-relational-tests.ts b/types/backbone-relational/backbone-relational-tests.ts index 90433cd153..6e0135fcd9 100644 --- a/types/backbone-relational/backbone-relational-tests.ts +++ b/types/backbone-relational/backbone-relational-tests.ts @@ -74,6 +74,7 @@ paul.get('livesIn'); // === ourHouse // You can control which relations get serialized to JSON, using the 'includeInJSON' // property on a Relation. Also, each object will only get serialized once to prevent loops. alert(JSON.stringify(paul.get('user').toJSON(), null, '\t')); +alert(JSON.stringify(paul.get('user').toJSON({ option1: 'value1' }), null, '\t')); // Load occupants 'person-2' and 'person-5', which don't exist yet, from the server ourHouse.fetchRelated('occupants'); diff --git a/types/backbone-relational/index.d.ts b/types/backbone-relational/index.d.ts index 403759ac97..84406fb60a 100644 --- a/types/backbone-relational/index.d.ts +++ b/types/backbone-relational/index.d.ts @@ -34,7 +34,7 @@ declare module 'backbone' { fetchRelated(key:string, options?:any, update?:boolean):any; - toJSON():any; + toJSON(options?: any):any; static setup();