[
    {
        "type": "interface",
        "name": "Point",
        "partial": false,
        "members": [
            {
                "type": "attribute",
                "static": false,
                "stringifier": false,
                "inherit": false,
                "readonly": false,
                "idlType": {
                    "type": "attribute-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "float"
                },
                "name": "x",
                "extAttrs": []
            },
            {
                "type": "attribute",
                "static": false,
                "stringifier": false,
                "inherit": false,
                "readonly": false,
                "idlType": {
                    "type": "attribute-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "float"
                },
                "name": "y",
                "extAttrs": []
            }
        ],
        "inheritance": null,
        "extAttrs": []
    },
    {
        "type": "typedef",
        "idlType": {
            "type": "typedef-type",
            "sequence": true,
            "generic": "sequence",
            "nullable": false,
            "union": false,
            "idlType": {
                "type": "typedef-type",
                "sequence": false,
                "generic": null,
                "nullable": false,
                "union": false,
                "idlType": "Point"
            }
        },
        "name": "PointSequence",
        "extAttrs": []
    },
    {
        "type": "interface",
        "name": "Rect",
        "partial": false,
        "members": [
            {
                "type": "attribute",
                "static": false,
                "stringifier": false,
                "inherit": false,
                "readonly": false,
                "idlType": {
                    "type": "attribute-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "Point"
                },
                "name": "topleft",
                "extAttrs": []
            },
            {
                "type": "attribute",
                "static": false,
                "stringifier": false,
                "inherit": false,
                "readonly": false,
                "idlType": {
                    "type": "attribute-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "Point"
                },
                "name": "bottomright",
                "extAttrs": []
            }
        ],
        "inheritance": null,
        "extAttrs": []
    },
    {
        "type": "interface",
        "name": "Widget",
        "partial": false,
        "members": [
            {
                "type": "attribute",
                "static": false,
                "stringifier": false,
                "inherit": false,
                "readonly": true,
                "idlType": {
                    "type": "attribute-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "Rect"
                },
                "name": "bounds",
                "extAttrs": []
            },
            {
                "type": "operation",
                "getter": false,
                "setter": false,
                "deleter": false,
                "static": false,
                "stringifier": false,
                "idlType": {
                    "type": "return-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "boolean"
                },
                "name": "pointWithinBounds",
                "arguments": [
                    {
                        "optional": false,
                        "variadic": false,
                        "extAttrs": [],
                        "idlType": {
                            "type": "argument-type",
                            "sequence": false,
                            "generic": null,
                            "nullable": false,
                            "union": false,
                            "idlType": "Point"
                        },
                        "name": "p"
                    }
                ],
                "extAttrs": []
            },
            {
                "type": "operation",
                "getter": false,
                "setter": false,
                "deleter": false,
                "static": false,
                "stringifier": false,
                "idlType": {
                    "type": "return-type",
                    "sequence": false,
                    "generic": null,
                    "nullable": false,
                    "union": false,
                    "idlType": "boolean"
                },
                "name": "allPointsWithinBounds",
                "arguments": [
                    {
                        "optional": false,
                        "variadic": false,
                        "extAttrs": [],
                        "idlType": {
                            "type": "argument-type",
                            "sequence": false,
                            "generic": null,
                            "nullable": false,
                            "union": false,
                            "idlType": "PointSequence"
                        },
                        "name": "ps"
                    }
                ],
                "extAttrs": []
            }
        ],
        "inheritance": null,
        "extAttrs": []
    },
    {
        "type": "typedef",
        "idlType": {
            "type": "typedef-type",
            "sequence": false,
            "generic": null,
            "nullable": false,
            "union": false,
            "idlType": "octet",
            "extAttrs": [
                {
                    "name": "Clamp",
                    "arguments": null,
                    "type": "extended-attribute",
                    "rhs": null
                }
            ]
        },
        "name": "value",
        "extAttrs": []
    }
]
