| [ |
| { |
| "namespace": "objects", |
| "description": "The objects API.", |
| "types": [ |
| { |
| "id": "firstState", |
| "type": "string", |
| "enum": ["foo", "bar", "baz"] |
| }, |
| { |
| "id": "secondState", |
| "type": "string", |
| "enum": ["spam", "ham", "eggs"] |
| } |
| ], |
| "functions": [ |
| { |
| "name": "objectParam", |
| "type": "function", |
| "description": "Takes an object.", |
| "parameters": [ |
| { |
| "name": "info", |
| "type": "object", |
| "properties": { |
| "strings": { |
| "type": "array", |
| "items": {"type": "string"} |
| }, |
| "integer": { |
| "type": "integer" |
| }, |
| "boolean": { |
| "type": "boolean" |
| } |
| } |
| }, |
| { |
| "name": "callback", |
| "type": "function", |
| "parameters": [] |
| } |
| ] |
| }, |
| { |
| "name": "returnsObject", |
| "description": "Returns an object.", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "callback", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "info", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "firstState" |
| } |
| } |
| } |
| ] |
| } |
| ] |
| }, |
| { |
| "name": "returnsTwoObjects", |
| "description": "Return two objects.", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "callback", |
| "type": "function", |
| "parameters": [ |
| { |
| "name": "firstInfo", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "firstState" |
| } |
| } |
| }, |
| { |
| "name": "secondInfo", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "secondState" |
| } |
| } |
| } |
| ] |
| } |
| ] |
| } |
| ], |
| "events": [ |
| { |
| "name": "onObjectFired", |
| "type": "function", |
| "description": "Fired when an object is ready.", |
| "parameters": [ |
| { |
| "name": "someObject", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "firstState" |
| } |
| } |
| } |
| ] |
| }, |
| { |
| "name": "onTwoObjectsFired", |
| "type": "function", |
| "description": "Fired when two objects are ready.", |
| "parameters": [ |
| { |
| "name": "firstObject", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "firstState" |
| } |
| } |
| }, |
| { |
| "name": "secondObject", |
| "type": "object", |
| "properties": { |
| "state": { |
| "$ref": "secondState" |
| } |
| } |
| } |
| ] |
| } |
| ] |
| } |
| ] |
| |