{
  "classes": [
    {
      "constants": [],
      "types": [
        {
          "lua_type": "type Cookie = {\n    name: string,\n    value: string,\n    domain: string,\n    path: string,\n    expires: number?,\n    secure: boolean,\n    httpOnly: boolean,\n    sameSite: string?,\n}",
          "name": "Cookie",
          "tags": [],
          "source": {
            "path": "",
            "line": 6
          },
          "fields": [
            {
              "lua_type": "name: string",
              "name": "name",
              "desc": ""
            },
            {
              "lua_type": "value: string",
              "name": "value",
              "desc": ""
            },
            {
              "lua_type": "domain: string",
              "name": "domain",
              "desc": ""
            },
            {
              "lua_type": "path: string",
              "name": "path",
              "desc": ""
            },
            {
              "lua_type": "expires: number?",
              "name": "expires",
              "desc": ""
            },
            {
              "lua_type": "secure: boolean",
              "name": "secure",
              "desc": ""
            },
            {
              "lua_type": "httpOnly: boolean",
              "name": "httpOnly",
              "desc": ""
            },
            {
              "lua_type": "sameSite: string?",
              "name": "sameSite",
              "desc": ""
            }
          ],
          "desc": "A single HTTP cookie with its attributes.\n"
        }
      ],
      "name": "@eryx/http/cookies",
      "tags": [],
      "functions": [
        {
          "source": {
            "path": "",
            "line": 20
          },
          "is_method": false,
          "signature": "cookies.parseCookie(setCookieStr: string, requestHost: string, requestPath: string) → Cookie?",
          "owner": "cookies",
          "desc": "Parse a Set-Cookie header value into a Cookie table.\n`requestHost` and `requestPath` provide defaults when the cookie\ndoes not specify Domain or Path.",
          "tags": [],
          "name": "parseCookie",
          "return_str": "Cookie?",
          "function_type": "Function",
          "returns": [
            {
              "lua_type": "Cookie?",
              "desc": ""
            }
          ],
          "params": [
            {
              "lua_type": "string",
              "name": "setCookieStr",
              "desc": ""
            },
            {
              "lua_type": "string",
              "name": "requestHost",
              "desc": ""
            },
            {
              "lua_type": "string",
              "name": "requestPath",
              "desc": ""
            }
          ]
        },
        {
          "source": {
            "path": "",
            "line": 94
          },
          "is_method": false,
          "signature": "cookies.domainMatches(cookieDomain: string, requestHost: string) → boolean",
          "owner": "cookies",
          "desc": "Check if a cookie's domain matches the request host.\nPer RFC 6265 §5.1.3: exact match or host ends with \".domain\".",
          "tags": [],
          "name": "domainMatches",
          "return_str": "boolean",
          "function_type": "Function",
          "returns": [
            {
              "lua_type": "boolean",
              "desc": ""
            }
          ],
          "params": [
            {
              "lua_type": "string",
              "name": "cookieDomain",
              "desc": ""
            },
            {
              "lua_type": "string",
              "name": "requestHost",
              "desc": ""
            }
          ]
        },
        {
          "source": {
            "path": "",
            "line": 109
          },
          "is_method": false,
          "signature": "cookies.pathMatches(cookiePath: string, requestPath: string) → boolean",
          "owner": "cookies",
          "desc": "Check if a cookie's path matches the request path.\nPer RFC 6265 §5.1.4.",
          "tags": [],
          "name": "pathMatches",
          "return_str": "boolean",
          "function_type": "Function",
          "returns": [
            {
              "lua_type": "boolean",
              "desc": ""
            }
          ],
          "params": [
            {
              "lua_type": "string",
              "name": "cookiePath",
              "desc": ""
            },
            {
              "lua_type": "string",
              "name": "requestPath",
              "desc": ""
            }
          ]
        }
      ],
      "properties": [],
      "source": {
        "path": "",
        "line": 0
      },
      "desc": ""
    }
  ]
}