{
    "use_snake_file_names": true,
    "use_title_case_methods": true,

    "protocol": {
        "package": "headless/lib/browser/protocol",
        "output": "lib/browser/protocol",
        "namespace": ["headless", "protocol"],
        "export_macro": "HEADLESS_EXPORT",
        "export_header": "headless/public/headless_export.h",
        "file_name_prefix": "dp_",
        "options": [
            {
                "domain": "Target",
                "include": ["createTarget", "closeTarget", "getBrowserContexts", "createBrowserContext", "disposeBrowserContext"],
                "include_events": []
            },
            {
                "domain": "Browser",
                "include": ["close", "getWindowForTarget", "getWindowBounds", "setWindowBounds" ],
                "include_events": []
            },
            {
                "domain": "HeadlessExperimental",
                "async": ["beginFrame"]
            },
            {
                "domain": "Network",
                "include": ["emulateNetworkConditions", "disable"],
                "include_events": []
            },
            {
                "domain": "Page",
                "include": ["printToPDF"],
                "async": ["printToPDF"],
                "include_events": []
            }
        ]
    },

    "lib": {
        "package": "headless/lib/browser/protocol",
        "output": "lib/browser/protocol",
        "string_header": "headless/lib/browser/protocol/protocol_string.h",
        "export_macro": "HEADLESS_EXPORT",
        "export_header": "headless/public/headless_export.h"
    }
}
