{
  "metadata": {
    "toolPackage": "@microsoft/api-extractor",
    "toolVersion": "7.58.7",
    "schemaVersion": 1011,
    "oldestForwardsCompatibleVersion": 1001,
    "tsdocConfig": {
      "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json",
      "noStandardTags": true,
      "tagDefinitions": [
        {
          "tagName": "@alpha",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@beta",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@defaultValue",
          "syntaxKind": "block"
        },
        {
          "tagName": "@decorator",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@deprecated",
          "syntaxKind": "block"
        },
        {
          "tagName": "@eventProperty",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@example",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@experimental",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@inheritDoc",
          "syntaxKind": "inline"
        },
        {
          "tagName": "@internal",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@label",
          "syntaxKind": "inline"
        },
        {
          "tagName": "@link",
          "syntaxKind": "inline",
          "allowMultiple": true
        },
        {
          "tagName": "@override",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@packageDocumentation",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@param",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@privateRemarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@public",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@readonly",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@remarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@returns",
          "syntaxKind": "block"
        },
        {
          "tagName": "@sealed",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@see",
          "syntaxKind": "block"
        },
        {
          "tagName": "@throws",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@typeParam",
          "syntaxKind": "block",
          "allowMultiple": true
        },
        {
          "tagName": "@virtual",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@jsx",
          "syntaxKind": "block"
        },
        {
          "tagName": "@jsxRuntime",
          "syntaxKind": "block"
        },
        {
          "tagName": "@jsxFrag",
          "syntaxKind": "block"
        },
        {
          "tagName": "@jsxImportSource",
          "syntaxKind": "block"
        },
        {
          "tagName": "@betaDocumentation",
          "syntaxKind": "modifier"
        },
        {
          "tagName": "@internalRemarks",
          "syntaxKind": "block"
        },
        {
          "tagName": "@preapproved",
          "syntaxKind": "modifier"
        }
      ],
      "supportForTags": {
        "@alpha": true,
        "@beta": true,
        "@defaultValue": true,
        "@decorator": true,
        "@deprecated": true,
        "@eventProperty": true,
        "@example": true,
        "@experimental": true,
        "@inheritDoc": true,
        "@internal": true,
        "@label": true,
        "@link": true,
        "@override": true,
        "@packageDocumentation": true,
        "@param": true,
        "@privateRemarks": true,
        "@public": true,
        "@readonly": true,
        "@remarks": true,
        "@returns": true,
        "@sealed": true,
        "@see": true,
        "@throws": true,
        "@typeParam": true,
        "@virtual": true,
        "@betaDocumentation": true,
        "@internalRemarks": true,
        "@preapproved": true
      },
      "reportUnsupportedHtmlElements": false
    }
  },
  "projectFolderUrl": "https://github.com/case-contract-testing/contract-case/tree/main/packages/case-definition-dsl",
  "kind": "Package",
  "canonicalReference": "@contract-case/case-definition-dsl!",
  "docComment": "/**\n * These are the {@link https://case.contract-testing.io/docs/reference/example-types | mock types}, test {@link https://case.contract-testing.io/docs/reference/matchers | equivalence matcher types} and the {@link https://case.contract-testing.io/docs/defining-contracts/state-definitions | state descriptors} for CaseExamples.\n *\n * @remarks\n *\n * Use the mock definitions to describe the interactions that you want to test.\n *\n * Use the state descriptions to describe the provider states (if any) that those tests require.\n *\n * Use the Test Equivalence Matchers to generalise your tests, avoiding the need to depend on specific data during verification. It's not about defining the whole type system, the idea is that you are saying \"any message that matches this Test Equivalence Matcher is considered covered by this test\".\n *\n * For more information, see {@link https://case.contract-testing.io/docs/defining-contracts/relaxing-tests | advice on relaxing tests} or {@link https://case.contract-testing.io | the full documentation}\n *\n * @packageDocumentation\n */\n",
  "name": "@contract-case/case-definition-dsl",
  "preserveMemberOrder": false,
  "members": [
    {
      "kind": "EntryPoint",
      "canonicalReference": "@contract-case/case-definition-dsl!",
      "name": "",
      "preserveMemberOrder": false,
      "members": [
        {
          "kind": "Namespace",
          "canonicalReference": "@contract-case/case-definition-dsl!interactions:namespace",
          "docComment": "",
          "excerptTokens": [],
          "fileUrlPath": "src/index-api-extractor.ts",
          "releaseTag": "None",
          "name": "interactions",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!interactions.base:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/interactions/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "base",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class",
                  "docComment": "/**\n * The base class for all ContractCase Mock Descriptors. Extend this if you are implementing your own mock type.\n *\n * If you are using the included example types from ContractCase (or any extension libraries), you do not need to read the documentation for this class.\n *\n * Mock description type strings beginning with `_case:` are reserved for the default ContractCase matchers. Only use a types prefixed with `_case:` if you wish to create a DSL for a special case for a matching behaviour that is already provided by a core ContractCase mock.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare abstract class AnyInteractionDescriptor "
                    }
                  ],
                  "fileUrlPath": "src/interactions/base/AnyInteractionDescriptor.ts",
                  "releaseTag": "Public",
                  "isAbstract": true,
                  "name": "AnyInteractionDescriptor",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:constructor(1)",
                      "docComment": "/**\n * The base class for all ContractCase Mock Descriptors. Extend this if you are implementing your own mock type.\n *\n * If you are using the included example types from ContractCase (or any extension libraries), you do not need to read the documentation for this class.\n *\n * Mock description type strings beginning with `_case:` are reserved for the default ContractCase matchers. Only use a types prefixed with `_case:` if you wish to create a DSL for a special case for a matching behaviour that is already provided by a core ContractCase mock.\n *\n * @param mockType - The type string for this mock description (see [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework) for a description of these strings).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(mockType: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", setup: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ContractCaseCoreSetup",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreSetup:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "mockType",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "setup",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor#stringify:member(1)",
                      "docComment": "/**\n * This method returns the entire example as a JSON string, as a convenience so that wrapper libraries don't need to figure out how to walk a tree of example objects.\n *\n * You shouldn't need to override this method.\n *\n * @returns A JSON string representation of this mock.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "stringify(): "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "stringify"
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor#toJSON:member(1)",
                      "docComment": "/**\n * Only override this method if you are writing a matcher in a language other than TypeScript.\n *\n * It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n *\n * It isn't called by any implementation directly, it's used on the javascript side by `JSON.stringify()`.\n *\n * Calling it from a wrapper library will return unhelpful results, as JSii can't map all objects that it returns.\n *\n * WARNING: Do not return a string from this method. You must instead return an object that can be serialised to JSON following the matcher format described in [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework).\n *\n * @returns An object in the matcher format described [in the Extending ContractCase documentation](https://case.contract-testing.io/docs/reference/plugin-framework).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour:interface",
                  "docComment": "/**\n * This type defines the core behaviour that ContractCase has with this mock.\n *\n * If you are using the included example types from ContractCase (or any extension libraries), you do not need to use this class (or understand this documentation).\n *\n * This documentation is only necessary for people extending ContractCase to include new mock types.\n *\n * See the definitions in the case-entities-internal package for more details.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface ContractCaseCoreBehaviour "
                    }
                  ],
                  "fileUrlPath": "src/interactions/base/AnyInteractionDescriptor.ts",
                  "releaseTag": "Public",
                  "name": "ContractCaseCoreBehaviour",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour#mockType:member",
                      "docComment": "/**\n * The type of this mock. Usually this is inverted on read vs write, for example, a written MOCK_HTTP_CLIENT might become a MOCK_HTTP_SERVER during reading.\n *\n * This will almost always be the same as the top level type for your mock during read - but if it is different, ContractCase will respect this value.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly mockType: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "mockType",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour#stateVariables:member",
                      "docComment": "/**\n * Whether or not this mock mode will invoke state handlers. If set to `\"default\"` then ContractCase will not invoke or require the state handlers and will use the default values for all state variables. If set to `\"state\"`, then ContractCase will invoke the state handlers and require the expected variables to be returned.\n *\n * All other values are errors.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly stateVariables: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "stateVariables",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour#triggers:member",
                      "docComment": "/**\n * Whether or not this mock mode needs to be triggered by user-provided code. If `\"provided\"` then ContractCase will require the user to provide a trigger and a test function (eg, for testing an HTTP Client, code that will invoke it must be provided). If `\"generated\"`, then ContractCase will not require user provided triggers as it will generate them (eg, if the system under test is an HTTP server, ContractCase will generate client calls).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly triggers: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "triggers",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreSetup:interface",
                  "docComment": "/**\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface ContractCaseCoreSetup "
                    }
                  ],
                  "fileUrlPath": "src/interactions/base/AnyInteractionDescriptor.ts",
                  "releaseTag": "Public",
                  "name": "ContractCaseCoreSetup",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreSetup#read:member",
                      "docComment": "/**\n * Defines how the ContractCase core will behave when reading (ie, verifying) a interaction of this type.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly read: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ContractCaseCoreBehaviour",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "read",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreSetup#write:member",
                      "docComment": "/**\n * Defines how the ContractCase core will behave when writing (ie, defining) an interaction of this type.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly write: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ContractCaseCoreBehaviour",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.ContractCaseCoreBehaviour:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "write",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/interactions/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "functions",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample:interface",
                  "docComment": "/**\n * Interaction descriptor for a function execution which returns successfully\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface FunctionExecutionExample "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/types.ts",
                  "releaseTag": "Public",
                  "name": "FunctionExecutionExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample#arguments:member",
                      "docComment": "/**\n * An array of expected function arguments (or test equivalence matchers for those arguments)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly arguments: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": "[]"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "arguments",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 3
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample#functionName:member",
                      "docComment": "/**\n * The name of the function to be executed. Doubles as the handle used by registerFunction.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample#invocationName:member",
                      "docComment": "/**\n * A name for this specific combination of arguments - must be unique in this contract.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly invocationName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "invocationName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample#responseName:member",
                      "docComment": "/**\n * A name for this specific return value - must be unique in this contract.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly responseName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "responseName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample#returnValue:member",
                      "docComment": "/**\n * A test equivalence matcher for the return value from this function\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly returnValue: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "returnValue",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample:interface",
                  "docComment": "/**\n * Interaction descriptor for a function execution that throws an error\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface ThrowingFunctionExecutionExample "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/types.ts",
                  "releaseTag": "Public",
                  "name": "ThrowingFunctionExecutionExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#arguments:member",
                      "docComment": "/**\n * An array of expected function arguments (or test equivalence matchers for those arguments)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly arguments: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": "[]"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "arguments",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 3
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#errorClassName:member",
                      "docComment": "/**\n * A test equivalence matcher for the class name of this exception\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly errorClassName: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "errorClassName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#functionName:member",
                      "docComment": "/**\n * The name of the function to be executed. Doubles as the handle used by registerFunction.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#invocationName:member",
                      "docComment": "/**\n * A name for this specific combination of arguments - must be unique in this contract.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly invocationName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "invocationName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#message:member",
                      "docComment": "/**\n * A test equivalence matcher for the message from this exception. In general, it's best to rely on the class of the exception instead of the specific error message\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly message?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "message",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample#responseName:member",
                      "docComment": "/**\n * A name for this specific exception, must be unique in this\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly responseName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "responseName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallFunction:class",
                  "docComment": "/**\n * Defines an example that executes a registered function with specific arguments\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillCallFunction extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/MockFunctionExecution.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillCallFunction",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallFunction:constructor(1)",
                      "docComment": "/**\n * Defines an interaction that executes a registered function with specific arguments, expecting that interaction to return successfully\n *\n * @param example - a {@link mocks.functions.FunctionExecutionExample}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "FunctionExecutionExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallFunction#functionName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallFunction#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallFunction#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallThrowingFunction:class",
                  "docComment": "/**\n * Defines an interaction that executes a registered function with specific arguments, expecting that function to throw an error\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillCallThrowingFunction extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/MockFunctionFailure.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillCallThrowingFunction",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallThrowingFunction:constructor(1)",
                      "docComment": "/**\n * Defines an example that executes a registered function with specific arguments\n *\n * @param example - a {@link mocks.functions.FunctionExecutionExample}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ThrowingFunctionExecutionExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallThrowingFunction#functionName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallThrowingFunction#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillCallThrowingFunction#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCall:class",
                  "docComment": "/**\n * Defines an example that expects a function to be called with specific arguments\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillReceiveFunctionCall extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/MockFunctionCall.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillReceiveFunctionCall",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCall:constructor(1)",
                      "docComment": "/**\n * Defines an example that expects a function to be called with specific arguments\n *\n * @param example - a {@link mocks.functions.FunctionExecutionExample}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "FunctionExecutionExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.FunctionExecutionExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCall#functionName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCall#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCall#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCallAndThrow:class",
                  "docComment": "/**\n * Defines an example that expects a function to be called with specific arguments\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillReceiveFunctionCallAndThrow extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/functions/MockFunctionFailingCall.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillReceiveFunctionCallAndThrow",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCallAndThrow:constructor(1)",
                      "docComment": "/**\n * Defines an example that expects a function to be called with specific arguments\n *\n * @param example - a {@link mocks.functions.FunctionExecutionExample}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ThrowingFunctionExecutionExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.ThrowingFunctionExecutionExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCallAndThrow#functionName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly functionName: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "functionName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCallAndThrow#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.functions.WillReceiveFunctionCallAndThrow#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!interactions.http:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/interactions/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "http",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.HttpExample:interface",
                  "docComment": "/**\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface HttpExample "
                    }
                  ],
                  "fileUrlPath": "src/interactions/http/types.ts",
                  "releaseTag": "Public",
                  "name": "HttpExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.HttpExample#request:member",
                      "docComment": "/**\n * A test equivalence matcher that will match an HTTP request (recommended: the Test Equivalence Matcher `HttpRequest`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.HttpExample#response:member",
                      "docComment": "/**\n * A test equivalence matcher that will match an HTTP response (recommended: the Test Equivalence Matcher `HttpResponse`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillReceiveHttpRequest:class",
                  "docComment": "/**\n * Defines an example that expects to receive an HTTP request. Use this to define a contract at an HTTP client.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillReceiveHttpRequest extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/http/WillReceiveHttpRequest.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillReceiveHttpRequest",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillReceiveHttpRequest:constructor(1)",
                      "docComment": "/**\n * Defines an example that expects to receive an HTTP request. Use this to define a contract at an HTTP client.\n *\n * @param httpExample - an {@link mocks.http.HttpExample}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(httpExample: "
                        },
                        {
                          "kind": "Reference",
                          "text": "HttpExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.HttpExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "httpExample",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillReceiveHttpRequest#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillReceiveHttpRequest#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillSendHttpRequest:class",
                  "docComment": "/**\n * Defines an example that expects to send an HTTP request. Use this to test HTTP servers.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WillSendHttpRequest extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyInteractionDescriptor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.base.AnyInteractionDescriptor:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/interactions/http/WillSendHttpRequest.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WillSendHttpRequest",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillSendHttpRequest:constructor(1)",
                      "docComment": "/**\n * Defines an example that expects to send an HTTP request. Use this to test HTTP servers.\n *\n * @param httpExample - \n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(httpExample: "
                        },
                        {
                          "kind": "Reference",
                          "text": "HttpExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.HttpExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "httpExample",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillSendHttpRequest#request:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly request: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "request",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!interactions.http.WillSendHttpRequest#response:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly response: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "response",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            }
          ]
        },
        {
          "kind": "Namespace",
          "canonicalReference": "@contract-case/case-definition-dsl!matchers:namespace",
          "docComment": "",
          "excerptTokens": [],
          "fileUrlPath": "src/index-api-extractor.ts",
          "releaseTag": "None",
          "name": "matchers",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "arrays",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayContains:class",
                  "docComment": "/**\n * Matches an Array which contains elements that match the given matchers - note that two different matchers may be satisfied by the same item in the array.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ArrayContains extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayContains.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ArrayContains",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayContains:constructor(1)",
                      "docComment": "/**\n * Matches an Array which contains elements that match the given matchers - note that two different matchers may be satisfied by the same item in the array.\n *\n * @param matchers - any number of matchers, each of which must be found inside the array.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matchers: "
                        },
                        {
                          "kind": "Reference",
                          "text": "Array",
                          "canonicalReference": "!Array:interface"
                        },
                        {
                          "kind": "Content",
                          "text": "<"
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ">"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matchers",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 5
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayContains#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatches:class",
                  "docComment": "/**\n * Matches an array where each element matches the provided matcher.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ArrayEachEntryMatches extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayEachEntryMatches.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ArrayEachEntryMatches",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatches:constructor(1)",
                      "docComment": "/**\n * Matches an array where each element matches the provided matcher.\n *\n * @param matcher - The matcher for each entry in the array\n *\n * @param example - An optional example of the whole array to return\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcher: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcher",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatches#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatchesWithExample:class",
                  "docComment": "/**\n * Matches an array where each element matches the provided matcher, but with a custom example for the whole array. This example must still pass the provided matcher\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ArrayEachEntryMatchesWithExample extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayEachEntryMatchesWithExample.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ArrayEachEntryMatchesWithExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatchesWithExample:constructor(1)",
                      "docComment": "/**\n * Matches an array where each element matches the provided matcher, but with a custom example for the whole array. This example must still pass the provided matcher\n *\n * @param matcher - The matcher for each entry in the array\n *\n * @param example - An optional example of the whole array to return\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcher: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ", example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "Array",
                          "canonicalReference": "!Array:interface"
                        },
                        {
                          "kind": "Content",
                          "text": "<"
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ">"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcher",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 7
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayEachEntryMatchesWithExample#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLength:class",
                  "docComment": "/**\n * Matches an Array whose length is within the specified range (or 1-infinity if not specified).\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ArrayLength extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayLength.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ArrayLength",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLength:constructor(1)",
                      "docComment": "/**\n * Matches an Array whose length is within the specified range (or 1-infinity if not specified).\n *\n * @param options - An `ArrayLengthOptions` object with optional minLength (default 1) and maxLength (default infinity) properties.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(options: "
                        },
                        {
                          "kind": "Reference",
                          "text": "ArrayLengthOptions",
                          "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLengthOptions:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "options",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLength#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLengthOptions:interface",
                  "docComment": "/**\n * Options for the `ArrayLength` matcher\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface ArrayLengthOptions "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayLength.ts",
                  "releaseTag": "Public",
                  "name": "ArrayLengthOptions",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLengthOptions#maxLength:member",
                      "docComment": "/**\n * The maximum length for the array - must be greater than minimum length\n *\n * Default infinity.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly maxLength?: "
                        },
                        {
                          "kind": "Content",
                          "text": "number"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "maxLength",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayLengthOptions#minLength:member",
                      "docComment": "/**\n * The minimum length for the array - must be greater than zero, otherwise empty arrays pass and you wouldn't be testing the array contents.\n *\n * Default 1.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly minLength?: "
                        },
                        {
                          "kind": "Content",
                          "text": "number"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "minLength",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayStartsWith:class",
                  "docComment": "/**\n * Matches an Array which starts with the provided array of matchers - any additional elements in the array are ignored.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ArrayStartsWith extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/arrays/ArrayStartsWith.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ArrayStartsWith",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayStartsWith:constructor(1)",
                      "docComment": "/**\n * Matches an Array which starts with the provided array of matchers - any additional elements in the array are ignored.\n *\n * @param matchers - An array of matchers that describes the start of the array. Additional elements in the actual array are ignored.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matchers: "
                        },
                        {
                          "kind": "Reference",
                          "text": "Array",
                          "canonicalReference": "!Array:interface"
                        },
                        {
                          "kind": "Content",
                          "text": "<"
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ">"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matchers",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 5
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.arrays.ArrayStartsWith#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.base:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "base",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcher:class",
                  "docComment": "/**\n * The base class for all Test Equivalence Matchers. Extend this if you don't have an example in your Matcher. Otherwise, use `AnyMatcherWithExample`\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare abstract class AnyMatcher "
                    }
                  ],
                  "fileUrlPath": "src/matchers/base/AnyMatcher.ts",
                  "releaseTag": "Public",
                  "isAbstract": true,
                  "name": "AnyMatcher",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcher:constructor(1)",
                      "docComment": "/**\n * The base class for all Test Equivalence Matchers. Extend this if you don't have an example in your Matcher. Otherwise, use {@link matchers.internals.AnyMatcherWithExample} Matcher strings beginning with `_case:` are reserved for the default ContractCase matchers.\n *\n * Only use a types prefixed with `_case:` if you wish to create a special case for a matching behaviour that is already provided by a core ContractCase matcher.\n *\n * @param matcherType - The type string for this matcher (see {@link https://case.contract-testing.io/docs/reference/plugin-framework | Extending ContractCase} for a description of these strings).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcherType: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcherType",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcher#toJSON:member(1)",
                      "docComment": "/**\n * Only override this method if you are writing a matcher in a language other than TypeScript.\n *\n * It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n *\n * WARNING: Do not return a string from this method. You must instead return an object that can be serialised to JSON following the matcher format described in {@link https://case.contract-testing.io/docs/reference/plugin-framework | Extending ContractCase}.\n *\n * @returns An object in the matcher format described {@link https://case.contract-testing.io/docs/reference/plugin-framework | in the Extending ContractCase documentation}\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcherWithExample:class",
                  "docComment": "/**\n * The base class for all Test Equivalence Matchers that have examples provided. Extend this if your matcher knows what the example will be. Otherwise, use `matchers.AnyMatcher`\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare abstract class AnyMatcherWithExample extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/base/AnyMatcher.ts",
                  "releaseTag": "Public",
                  "isAbstract": true,
                  "name": "AnyMatcherWithExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcherWithExample:constructor(1)",
                      "docComment": "/**\n * The base class for all Test Equivalence Matchers that have examples provided. Extend this if your matcher knows what the example will be. Otherwise, use `matchers.AnyMatcher`\n *\n * Only use a type prefixed with `_case:` if you wish to create a special case for a matching behaviour that is already provided by a core ContractCase matcher.\n *\n * @param matcherType - The type string for this matcher (see {@link https://case.contract-testing.io/docs/reference/plugin-framework | Extending ContractCase} for a description of these strings).\n *\n * @param example - The data that will be used as the example for this matcher\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcherType: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", example: "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcherType",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.AnyMatcherWithExample#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.CascadingContextMatcher:class",
                  "docComment": "/**\n * This is a passthrough matcher that does nothing except call the child matcher with the current actual data.\n *\n * It's useful for taking advantage of the context cascading available on all matchers without needing to write you own matcher. Extend it if you want to make a matcher that only changes the context object. If you don't know what this means, you don't need to extend this matcher.\n *\n * Due to limitations with JSii, extending implementations MUST NOT override `toJSON`, or MUST return the result of `super.toJSON()` as part of their toJSON method.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare abstract class CascadingContextMatcher extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/base/CascadingContextMatcher.ts",
                  "releaseTag": "Public",
                  "isAbstract": true,
                  "name": "CascadingContextMatcher",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.CascadingContextMatcher:constructor(1)",
                      "docComment": "/**\n * This is a passthrough matcher that does nothing except call the child matcher with the current actual data.\n *\n * It's useful for taking advantage of the context cascading available on all matchers without needing to write you own matcher. Extend it if you want to make a matcher that only changes the context object. If you don't know what this means, you don't need to extend this matcher.\n *\n * Due to limitations with JSii, extending implementations MUST NOT override `toJSON`, or MUST return the result of `super.toJSON()` as part of their toJSON method.\n *\n * @param child - The matcher to apply these context changes to\n *\n * @param contextModifiers - a map of properties to add to the context object\n *\n * @param currentRunModifiers - a map of properties to add to the current run object.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ", contextModifiers: "
                        },
                        {
                          "kind": "Reference",
                          "text": "Record",
                          "canonicalReference": "!Record:type"
                        },
                        {
                          "kind": "Content",
                          "text": "<string, string>"
                        },
                        {
                          "kind": "Content",
                          "text": ", currentRunModifiers: "
                        },
                        {
                          "kind": "Reference",
                          "text": "Record",
                          "canonicalReference": "!Record:type"
                        },
                        {
                          "kind": "Content",
                          "text": "<string, string>"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "contextModifiers",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 5
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "currentRunModifiers",
                          "parameterTypeTokenRange": {
                            "startIndex": 6,
                            "endIndex": 8
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base.CascadingContextMatcher#toJSON:member(1)",
                      "docComment": "/**\n * If extending this class, do not override this method (or if you do, make sure you call `super.toJSON()`).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "convenience",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.And:class",
                  "docComment": "/**\n * Matches all of the provided matchers. Useful for combining restrictions provided by different matchers, or creating new matchers without needing plugins.\n *\n * For best results, wrap the And matcher in a WithExample matcher.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class And extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/And.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "And",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.And:constructor(1)",
                      "docComment": "/**\n * Matches all of the provided matchers. Useful for combining restrictions provided by different matchers, or creating new matchers without needing plugins.\n *\n * For best results, wrap the And matcher in a WithExample matcher.\n *\n * @param matchers - An array of the matchers to run against this particular spot in the tree\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matchers: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": "[]"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matchers",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 3
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.And#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ChangeLogLevel:class",
                  "docComment": "/**\n * Alters the ContractCase log level below this matcher. Useful for debugging.\n *\n * This has no effect on matching.\n *\n * Note that this log level matcher will be saved into the contract, so it will also affect the log level during verification. Usually you will want to remove the use of this matcher before saving the contract.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ChangeLogLevel extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "CascadingContextMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.CascadingContextMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/ChangeLogLevel.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ChangeLogLevel",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ChangeLogLevel:constructor(1)",
                      "docComment": "/**\n * Alters the ContractCase log level below this matcher. Useful for debugging.\n *\n * This has no effect on matching.\n *\n * Note that this log level matcher will be saved into the contract, so it will also affect the log level during verification. Usually you will want to remove the use of this matcher before saving the contract.\n *\n * @param logLevel - The new LogLevel. One of \"none\" | \"error\" | \"warn\" | \"debug\" | \"maintainerDebug\" | \"deepMaintainerDebug\". see [LogLevel](https://case.contract-testing.io/docs/reference/configuring#loglevel-none--error--warn--debug--maintainerdebug) for details\n *\n * @param child - The next matcher in the tree.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(logLevel: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "logLevel",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ChangeLogLevel#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.NamedMatch:class",
                  "docComment": "/**\n * Saves the matcher below it with a unique name that can be used with lookups in tests after this one. Lookups can be made with {@link matchers.convenience.ReferenceMatch}.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class NamedMatch extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/NamedMatch.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "NamedMatch",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.NamedMatch:constructor(1)",
                      "docComment": "/**\n * Saves the matcher below it with a unique name that can be used with lookups in tests after this one. Lookups can be made with {@link matchers.convenience.ReferenceMatch}.\n *\n * @param name - The name you can use to lookup this matcher later\n *\n * @param child - The content of this named match. If omitted or undefined, the content will be looked up in a previously named match\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(name: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "name",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.NamedMatch#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ReferenceMatch:class",
                  "docComment": "/**\n * Matches a named matcher created with {@link matchers.convenience.NamedMatch}.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ReferenceMatch extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/ReferenceMatch.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ReferenceMatch",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ReferenceMatch:constructor(1)",
                      "docComment": "/**\n * Matches a named matcher created with {@link matchers.convenience.NamedMatch}.\n *\n * @param name - The name you gave to a previous call of `NamedMatch`\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(name: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "name",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.ReferenceMatch#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.StateVariable:class",
                  "docComment": "/**\n * Matches the content of a variable that comes from a state. See {@link https://case.contract-testing.io/docs/defining-contracts/state-definitions | state\n * definitions} and {@link https://case.contract-testing.io/docs/reference/state-handlers | state handlers} for more details.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class StateVariable extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/StateVariable.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "StateVariable",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.StateVariable:constructor(1)",
                      "docComment": "/**\n * Matches the content of a variable that comes from a state. See {@link https://case.contract-testing.io/docs/defining-contracts/state-definitions | state definitions} and {@link https://case.contract-testing.io/docs/reference/state-handlers | state handlers} for more details.\n *\n * @param name - The name of the variable\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(name: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "name",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.StateVariable#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.WithExample:class",
                  "docComment": "/**\n * Adds an example to the provided matcher. Useful when you have a complicated set of constraints and ContractCase can't figure out what the best example should be.\n *\n * Note that providing any example will override examples provided further down the tree.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class WithExample extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "CascadingContextMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.CascadingContextMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/convenience/WithExample.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "WithExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.WithExample:constructor(1)",
                      "docComment": "/**\n * Adds an example to the provided matcher. Useful when you have a complicated set of {@link matchers.convenience.And} constraints and ContractCase can't figure out what the best example should be.\n *\n * Note that providing any example will override examples provided further down the tree.\n *\n * @param matcher - Any matcher to add an example to\n *\n * @param example - The example to use when stripping the matchers\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcher: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ", example: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcher",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.convenience.WithExample#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.functions:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "functions",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.functions.FunctionArguments:class",
                  "docComment": "/**\n * Matches function arguments, for use with a MockFunctionCall / MockFunctionExecution.\n *\n * Usually you don't need to use this matcher directly, the mock creates it for you.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class FunctionArguments extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/functions/FunctionArguments.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "FunctionArguments",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.functions.FunctionArguments:constructor(1)",
                      "docComment": "/**\n * Matches function arguments, for use with a FunctionExecutionMock\n *\n * @param expectedArguments - an array where each entry will be matched against the arguments\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(expectedArguments: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": "[]"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "expectedArguments",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 3
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.functions.FunctionArguments#arguments:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "arguments: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": "[]"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": false,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "arguments",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 3
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.functions.FunctionArguments#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.http:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "http",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BasicAuthHeaderValue:class",
                  "docComment": "/**\n * Matches the value part of a basic auth header with the supplied username and password - useful in conjunction with the StateVariable matcher\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class BasicAuthHeaderValue extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "StringPrefix",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringPrefix:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/BasicAuthHeaderValue.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "BasicAuthHeaderValue",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BasicAuthHeaderValue:constructor(1)",
                      "docComment": "/**\n * Constructs a new instance of the `BasicAuthHeaderValue` class\n *\n * @param username - The username for this basic auth header\n *\n * @param password - The password for this basic auth password\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(username: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ", password: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "username",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "password",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BasicAuthHeaderValue#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BearerTokenHeaderValue:class",
                  "docComment": "/**\n * Matches the value part of a OIDC or OAuth header with the supplied token - useful in conjunction with the StateVariable matcher\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class BearerTokenHeaderValue extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "StringPrefix",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringPrefix:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/BearerTokenHeaderValue.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "BearerTokenHeaderValue",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BearerTokenHeaderValue:constructor(1)",
                      "docComment": "/**\n * Matches the value part of a OIDC or OAuth header with the supplied token - useful in conjunction with the StateVariable matcher\n *\n * @param token - A string or string matcher for a Bearer auth token\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(token: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "token",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.BearerTokenHeaderValue#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest:class",
                  "docComment": "/**\n * Matches any HTTP Request with the provided properties\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class HttpRequest extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/HttpRequest.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "HttpRequest",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest:constructor(1)",
                      "docComment": "/**\n * Matches any HTTP Request with the provided properties\n *\n * @param requestExample - An HttpResponseExample that describes the response\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(requestExample: "
                        },
                        {
                          "kind": "Reference",
                          "text": "HttpRequestExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!matchers.http_2.HttpRequestExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "requestExample",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#body:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly body?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "body",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#headers:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly headers?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "headers",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#method:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly method: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "method",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#path:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly path: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "path",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#query:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly query?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "query",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequest#uniqueName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly uniqueName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "uniqueName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample:interface",
                  "docComment": "/**\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface HttpRequestExample "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/HttpRequest.ts",
                  "releaseTag": "Public",
                  "name": "HttpRequestExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#body:member",
                      "docComment": "/**\n * A test equivalence matcher or json object that describes the body for this response. If not provided, no body matching is performed.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly body?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "body",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#headers:member",
                      "docComment": "/**\n * A Map of header names and associated test-equivalence matcher values accepted by this example. If not provided, no header matching is performed\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly headers?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "headers",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#method:member",
                      "docComment": "/**\n * A string or string matcher that matches the method used for this example (eg `\"GET\"` or `\"POST\"`). Case insensitive. Note that DELETE, GET and HEAD requests should not have bodies - see the HTTP RFCs for details.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly method: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "method",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#path:member",
                      "docComment": "/**\n * A string or string matcher that matches the path of this example. Note that any query parameters must be in the query, not in the path.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly path: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "path",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#query:member",
                      "docComment": "/**\n * A test-equivalence matcher for the query. Usually this is a Map of test-equivalence matchers to match the parsed query string, keyed by parameter name. Repeated parameters are collated and put in an array in this map.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly query?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "query",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpRequestExample#uniqueName:member",
                      "docComment": "/**\n * What unique name, if any, to give to this request\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly uniqueName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "uniqueName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse:class",
                  "docComment": "/**\n * Matches any HTTP Response with the provided properties\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class HttpResponse extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/HttpResponse.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "HttpResponse",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse:constructor(1)",
                      "docComment": "/**\n * Matches any HTTP Response with the provided properties\n *\n * @param responseExample - An HttpResponseExample that describes the response\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(responseExample: "
                        },
                        {
                          "kind": "Reference",
                          "text": "HttpResponseExample",
                          "canonicalReference": "@contract-case/case-definition-dsl!matchers.http_2.HttpResponseExample:interface"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "responseExample",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse#body:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly body?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "body",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse#headers:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly headers?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "headers",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse#status:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly status: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "status",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    },
                    {
                      "kind": "Property",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponse#uniqueName:member",
                      "docComment": "",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly uniqueName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "uniqueName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isStatic": false,
                      "isProtected": false,
                      "isAbstract": false
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Interface",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponseExample:interface",
                  "docComment": "/**\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export interface HttpResponseExample "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/HttpResponse.ts",
                  "releaseTag": "Public",
                  "name": "HttpResponseExample",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponseExample#body:member",
                      "docComment": "/**\n * A test equivalence matcher or json object that describes the body for this response. If not provided, no body matching is performed.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly body?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "body",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponseExample#headers:member",
                      "docComment": "/**\n * A Map of header names and associated test-equivalence matcher values accepted by this example. If not provided, no header matching is performed\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly headers?: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "headers",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponseExample#status:member",
                      "docComment": "/**\n * Any test-equivalence matcher, string, or number for the HTTP status code accepted by this example (Recommended: Use the `HttpStatusCode` matcher)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly status: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": false,
                      "releaseTag": "Public",
                      "name": "status",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    },
                    {
                      "kind": "PropertySignature",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpResponseExample#uniqueName:member",
                      "docComment": "/**\n * What unique name, if any, to give to this response\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "readonly uniqueName?: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isReadonly": true,
                      "isOptional": true,
                      "releaseTag": "Public",
                      "name": "uniqueName",
                      "propertyTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      }
                    }
                  ],
                  "extendsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpStatusCode:class",
                  "docComment": "/**\n * Matches an HTTP status code\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class HttpStatusCode extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/HttpStatusCode/HttpStatusCode.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "HttpStatusCode",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpStatusCode:constructor(1)",
                      "docComment": "/**\n * Matches an HTTP status code\n *\n * Matching can be relaxed with `X`, eg `\"4XX\"` or `\"5XX\"`. This is useful for error handling.\n *\n * If you need to match multiple specific statues, you can provide an array of string or numbers. This behaviour is provided so that you can offer flexibility to the implementation if the code path for multiple status codes is exactly the same. It is not appropriate to use multiple status codes if the code paths are intended to be different. For more context, see {@link https://case.contract-testing.io/docs/faq#how-do-i-tell-contractcase-that-a-field-is-optional | the section on optional values in the documentation} for more details.\n *\n * @param statusCode - The http status code to match, expressed as a number or string (eg `200`, `\"404\"` or `\"4XX\"`).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(statusCode: "
                        },
                        {
                          "kind": "Content",
                          "text": "string | string[]"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "statusCode",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.HttpStatusCode#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.UriEncodedString:class",
                  "docComment": "/**\n * Convenience matcher to treat the string as a uri encoded string - useful in `path` segments.\n *\n * During matching, the actual value is decoded with `decodeUriComponent()` and passed to the child matcher.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class UriEncodedString extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/http/UriEncodedString.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "UriEncodedString",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.UriEncodedString:constructor(1)",
                      "docComment": "/**\n * Convenience matcher to treat the string as a uri encoded string - useful in `path` segments.\n *\n * During matching, the actual value is decoded with `decodeUriComponent()` and passed to the child matcher.\n *\n * @param child - Any string matcher or literal string\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.http.UriEncodedString#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "modifiers",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ExactlyLike:class",
                  "docComment": "/**\n * Everything inside this matcher will be matched exactly, unless overridden with a generic matcher (eg `AnyString` or` ShapedLike`). Use this to switch out of `shapedLike` and back to the default exact matching.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ExactlyLike extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "CascadingContextMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.CascadingContextMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/modifiers/ExactlyLike.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ExactlyLike",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ExactlyLike:constructor(1)",
                      "docComment": "/**\n * Everything inside this matcher will be matched exactly, unless overridden with a generic matcher (eg `AnyString` or` ShapedLike`). Use this to switch out of `shapedLike` and back to the default exact matching.\n *\n * @param content - The object, array, primitive or matcher to match exactly\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(content: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "content",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ExactlyLike#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ShapedLike:class",
                  "docComment": "/**\n * Everything inside this matcher will be matched on the shape of the data (ie, type alone), unless overridden with other matchers. Use this to switch out of the default `exactlyLike` matching.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ShapedLike extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "CascadingContextMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.CascadingContextMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/modifiers/ShapedLike.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ShapedLike",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ShapedLike:constructor(1)",
                      "docComment": "/**\n * Everything inside this matcher will be matched on the shape of the data (ie, type alone), unless overridden with other matchers. Use this to switch out of the default `exactlyLike` matching.\n *\n * @param content - The object, array, primitive or matcher to match the shape against\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(content: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "content",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.modifiers.ShapedLike#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "objects",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachKeyMatches:class",
                  "docComment": "/**\n * Matches an object where each key matches the provided matcher.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ObjectEachKeyMatches extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/objects/ObjectEachKeyMatches.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ObjectEachKeyMatches",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachKeyMatches:constructor(1)",
                      "docComment": "/**\n * Matches an object where each key matches the provided matcher.\n *\n * @param matcher - The matcher that all keys must pass\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcher: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcher",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachKeyMatches#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachValueMatches:class",
                  "docComment": "/**\n * Matches an object where each value matches the provided matcher.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class ObjectEachValueMatches extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/objects/ObjectEachValueMatches.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "ObjectEachValueMatches",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachValueMatches:constructor(1)",
                      "docComment": "/**\n * Matches an object where each value matches the provided matcher.\n *\n * @param matcher - The matcher that all values must pass\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(matcher: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "matcher",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.objects.ObjectEachValueMatches#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "primitives",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyBoolean:class",
                  "docComment": "/**\n * Matches any Boolean.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class AnyBoolean extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/primitives/AnyBoolean.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "AnyBoolean",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyBoolean:constructor(1)",
                      "docComment": "/**\n * Matches any Boolean.\n *\n * @param example - An example boolean\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Content",
                          "text": "boolean"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyBoolean#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyInteger:class",
                  "docComment": "/**\n * Matches any whole integer number.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class AnyInteger extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/primitives/AnyInteger.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "AnyInteger",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyInteger:constructor(1)",
                      "docComment": "/**\n * Matches any whole integer number.\n *\n * @param example - Any floating point number, not infinity, not NaN.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Content",
                          "text": "number"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyInteger#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNull:class",
                  "docComment": "/**\n * Matches `null` (useful for languages like Java where `body: null` means no body, but you want to match a eg a json document that has the body `\"null\"`).\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class AnyNull extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/primitives/AnyNull.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "AnyNull",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNull:constructor(1)",
                      "docComment": "/**\n * Matches `null` (useful for languages like Java where `body: null` means no body, but you want to match a eg a json document that has the body `\"null\"`).\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor();"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": []
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNull#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNumber:class",
                  "docComment": "/**\n * Matches a number following [RFC 8259 JSON](https://www.rfc-editor.org/rfc/rfc8259).\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class AnyNumber extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/primitives/AnyNumber.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "AnyNumber",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNumber:constructor(1)",
                      "docComment": "/**\n * Matches a number following {@link https://www.rfc-editor.org/rfc/rfc8259 | RFC 8259 JSON}.\n *\n * @param example - An example number\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Content",
                          "text": "number"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.primitives.AnyNumber#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            },
            {
              "kind": "Namespace",
              "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings:namespace",
              "docComment": "",
              "excerptTokens": [],
              "fileUrlPath": "src/matchers/index-api-extractor.ts",
              "releaseTag": "None",
              "name": "strings",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.AnyString:class",
                  "docComment": "/**\n * Matches any string.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class AnyString extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/AnyString.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "AnyString",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.AnyString:constructor(1)",
                      "docComment": "/**\n * Matches any string.\n *\n * @param example - An example string\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(example: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.AnyString#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.Base64Encoded:class",
                  "docComment": "/**\n * Transformation matcher that matches a base64 encoded version of the given string or string matcher\n *\n * WARNING: Since many strings are accidentally decodable as base64, this matcher is best combined with a more restrictive string matcher (eg `StringifiedJson`).\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class Base64Encoded extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/Base64Encoded.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "Base64Encoded",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.Base64Encoded:constructor(1)",
                      "docComment": "/**\n * Transformation matcher that matches a base64 encoded version of the given string or string matcher\n *\n * WARNING: Since many strings are accidentally decodable as base64, this matcher is best combined with a more restrictive string matcher (eg `StringifiedJson`).\n *\n * @param child - The string or string matcher that would match the decoded string\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.Base64Encoded#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringContaining:class",
                  "docComment": "/**\n * Matches any string that contains the given substring.\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class StringContaining extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherWithExample",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcherWithExample:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/StringContaining.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "StringContaining",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringContaining:constructor(1)",
                      "docComment": "/**\n * Matches any string that contains the given substring.\n *\n * @param substring - The substring that the matcher must contain\n *\n * @param example - An example string that passes this matcher\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(substring: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", example: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "substring",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "example",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringContaining#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringifiedJson:class",
                  "docComment": "/**\n * Transformation matcher that matches a JSON.stringify()ed version of the given object.\n *\n * For example, if the actual data is the string:\n * ```ts\n * \"{\\\"foo\\\":2}\"\n * ```\n *\n * then you could match it with:\n * ```ts\n * StringifiedJson({\n *   \"foo\": 2\n * })\n * ```\n *\n * or\n * ```ts\n * StringifiedJson({\n *   \"foo\": AnyNumber(2)\n * })\n * ```\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class StringifiedJson extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/StringifiedJson.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "StringifiedJson",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringifiedJson:constructor(1)",
                      "docComment": "/**\n * Transformation matcher that matches a JSON.stringify()ed version of the given object.\n *\n * For example, if the actual data is the string:\n * ```ts\n * \"{\\\"foo\\\":2}\"\n * ```\n *\n * then you could match it with:\n * ```ts\n * StringifiedJson({\n *   \"foo\": 2\n * })\n * ```\n *\n * or\n * ```ts\n * StringifiedJson({\n *   \"foo\": AnyNumber(2)\n * })\n * ```\n *\n * @param child - The object or matcher that matches the decoded\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(child: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyMatcherOrData",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "child",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringifiedJson#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringPrefix:class",
                  "docComment": "/**\n * Matches any string that begins with the given constant string prefix, and ends with a matchable suffix.\n *\n * At match time, the actual string is checked for the constant prefix, and then the rest of the string is passed to the suffix matcher..\n *\n * The suffix matcher must be expecting a string.\n *\n * See also {@link matchers.strings.StringSuffix | StringSuffix}\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class StringPrefix extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/StringPrefix.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "StringPrefix",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringPrefix:constructor(1)",
                      "docComment": "/**\n * Matches any string that begins with the given constant string prefix, and ends with a matchable suffix.\n *\n * At match time, the actual string is checked for the constant prefix, and then the rest of the string is passed to the suffix matcher..\n *\n * The suffix matcher must be expecting a string.\n *\n * See also {@link matchers.strings.StringSuffix | StringSuffix}\n *\n * @param prefix - The prefix string. Must be a string and not a matcher\n *\n * @param suffix - A string or matcher to match against the suffix.\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(prefix: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ", suffix: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "prefix",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "suffix",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringPrefix#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                },
                {
                  "kind": "Class",
                  "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringSuffix:class",
                  "docComment": "/**\n * Matches any string that begins with a matchable prefix, and ends with a constant suffix.\n *\n * At match time, the actual string is checked for the expected constant suffix, and then the beginning of the string is passed to the prefix matcher.\n *\n * The prefix matcher must be expecting a string.\n *\n * See also {@link matchers.strings.StringPrefix | StringPrefix}\n *\n * @public\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "export declare class StringSuffix extends "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcher",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.base_2.AnyMatcher:class"
                    },
                    {
                      "kind": "Content",
                      "text": " "
                    }
                  ],
                  "fileUrlPath": "src/matchers/strings/StringSuffix.ts",
                  "releaseTag": "Public",
                  "isAbstract": false,
                  "name": "StringSuffix",
                  "preserveMemberOrder": false,
                  "members": [
                    {
                      "kind": "Constructor",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringSuffix:constructor(1)",
                      "docComment": "/**\n * Constructs a new instance of the `StringSuffix` class\n *\n * @param prefix - A string or matcher to match against the prefix. If you don't mind what the prefix is, pass null / undefined\n *\n * @param suffix - The suffix for the matched string. Must be a string and not a matcher\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "constructor(prefix: "
                        },
                        {
                          "kind": "Reference",
                          "text": "AnyStringMatcher",
                          "canonicalReference": "@contract-case/case-definition-dsl!~AnyStringMatcher:type"
                        },
                        {
                          "kind": "Content",
                          "text": ", suffix: "
                        },
                        {
                          "kind": "Content",
                          "text": "string"
                        },
                        {
                          "kind": "Content",
                          "text": ");"
                        }
                      ],
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [
                        {
                          "parameterName": "prefix",
                          "parameterTypeTokenRange": {
                            "startIndex": 1,
                            "endIndex": 2
                          },
                          "isOptional": false
                        },
                        {
                          "parameterName": "suffix",
                          "parameterTypeTokenRange": {
                            "startIndex": 3,
                            "endIndex": 4
                          },
                          "isOptional": false
                        }
                      ]
                    },
                    {
                      "kind": "Method",
                      "canonicalReference": "@contract-case/case-definition-dsl!matchers.strings.StringSuffix#toJSON:member(1)",
                      "docComment": "/**\n * For non-TypeScript implementations (see `AnyMatcher.toJSON`)\n */\n",
                      "excerptTokens": [
                        {
                          "kind": "Content",
                          "text": "toJSON(): "
                        },
                        {
                          "kind": "Content",
                          "text": "unknown"
                        },
                        {
                          "kind": "Content",
                          "text": ";"
                        }
                      ],
                      "isStatic": false,
                      "returnTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "releaseTag": "Public",
                      "isProtected": false,
                      "overloadIndex": 1,
                      "parameters": [],
                      "isOptional": false,
                      "isAbstract": false,
                      "name": "toJSON"
                    }
                  ],
                  "extendsTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "implementsTokenRanges": []
                }
              ]
            }
          ]
        },
        {
          "kind": "Namespace",
          "canonicalReference": "@contract-case/case-definition-dsl!states:namespace",
          "docComment": "",
          "excerptTokens": [],
          "fileUrlPath": "src/index-api-extractor.ts",
          "releaseTag": "None",
          "name": "states",
          "preserveMemberOrder": false,
          "members": [
            {
              "kind": "Class",
              "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState:class",
              "docComment": "/**\n * The base class for all ContractCase State Descriptors. You shouldn't need to extend this.\n *\n * You don't need to read the documentation for this class unless you are working on a wrapper for ContractCase.\n *\n * @public\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "export declare abstract class AnyState "
                }
              ],
              "fileUrlPath": "src/states/AnyState.ts",
              "releaseTag": "Public",
              "isAbstract": true,
              "name": "AnyState",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Constructor",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState:constructor(1)",
                  "docComment": "/**\n * The base class for all ContractCase State Descriptors. You shouldn't need to extend this.\n *\n * You don't need to read the documentation for this class unless you are working on a wrapper for ContractCase.\n *\n * @param stateName - The name of the state used by this example. This must match one of the state handlers provided in the configuration during the example run.\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "constructor(stateType: "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ", stateName: "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ");"
                    }
                  ],
                  "releaseTag": "Public",
                  "isProtected": false,
                  "overloadIndex": 1,
                  "parameters": [
                    {
                      "parameterName": "stateType",
                      "parameterTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isOptional": false
                    },
                    {
                      "parameterName": "stateName",
                      "parameterTypeTokenRange": {
                        "startIndex": 3,
                        "endIndex": 4
                      },
                      "isOptional": false
                    }
                  ]
                },
                {
                  "kind": "Property",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState#stateName:member",
                  "docComment": "/**\n * The name of this state, used to determine which state handler to run\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "readonly stateName: "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ";"
                    }
                  ],
                  "isReadonly": true,
                  "isOptional": false,
                  "releaseTag": "Public",
                  "name": "stateName",
                  "propertyTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "isStatic": false,
                  "isProtected": false,
                  "isAbstract": false
                },
                {
                  "kind": "Method",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState#stringify:member(1)",
                  "docComment": "/**\n * You shouldn't need to override this method. You don't need to call this method, unless working on a wrapper for ContractCase.\n *\n * This method returns the entire state descriptor as a JSON string, as a convenience so that wrapper libraries don't need to figure out how to walk a tree of example objects.\n *\n * @returns A JSON string representation of this state.\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "stringify(): "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ";"
                    }
                  ],
                  "isStatic": false,
                  "returnTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "releaseTag": "Public",
                  "isProtected": false,
                  "overloadIndex": 1,
                  "parameters": [],
                  "isOptional": false,
                  "isAbstract": false,
                  "name": "stringify"
                },
                {
                  "kind": "Method",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState#toJSON:member(1)",
                  "docComment": "/**\n * You shouldn't need to override or call this method.\n *\n * It exists because the ContractCase matcher format is not legal in all languages that ContractCase supports.\n *\n * It isn't called by any implementation directly, it's used on the javascript side by `JSON.stringify()`.\n *\n * Calling it from a wrapper library will return unhelpful results, as JSii can't map all objects that it returns.\n *\n * WARNING: Do not return a string from this method. You must instead return an object that can be serialised to JSON following the matcher format described in [Extending ContractCase](https://case.contract-testing.io/docs/reference/plugin-framework).\n *\n * @returns An object in the matcher format described [in the Extending ContractCase documentation](https://case.contract-testing.io/docs/reference/plugin-framework).\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "toJSON(): "
                    },
                    {
                      "kind": "Content",
                      "text": "unknown"
                    },
                    {
                      "kind": "Content",
                      "text": ";"
                    }
                  ],
                  "isStatic": false,
                  "returnTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 2
                  },
                  "releaseTag": "Public",
                  "isProtected": false,
                  "overloadIndex": 1,
                  "parameters": [],
                  "isOptional": false,
                  "isAbstract": false,
                  "name": "toJSON"
                }
              ],
              "implementsTokenRanges": []
            },
            {
              "kind": "Class",
              "canonicalReference": "@contract-case/case-definition-dsl!states.InState:class",
              "docComment": "/**\n * A state descriptor for configuring an example that needs to run in a particular named state.\n *\n * @public\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "export declare class InState extends "
                },
                {
                  "kind": "Reference",
                  "text": "AnyState",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState:class"
                },
                {
                  "kind": "Content",
                  "text": " "
                }
              ],
              "fileUrlPath": "src/states/InState.ts",
              "releaseTag": "Public",
              "isAbstract": false,
              "name": "InState",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Constructor",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.InState:constructor(1)",
                  "docComment": "/**\n * A state descriptor for configuring an example that needs to run in a particular named state.\n *\n * @param stateName - The name of the state used by this example. This must match one of the state handlers provided in the configuration during the example run.\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "constructor(stateName: "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ");"
                    }
                  ],
                  "releaseTag": "Public",
                  "isProtected": false,
                  "overloadIndex": 1,
                  "parameters": [
                    {
                      "parameterName": "stateName",
                      "parameterTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isOptional": false
                    }
                  ]
                }
              ],
              "extendsTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "implementsTokenRanges": []
            },
            {
              "kind": "Class",
              "canonicalReference": "@contract-case/case-definition-dsl!states.InStateWithVariables:class",
              "docComment": "/**\n * A state descriptor for configuring an example that needs to run in a particular named state, and with variables provided by the framework.\n *\n * @public\n */\n",
              "excerptTokens": [
                {
                  "kind": "Content",
                  "text": "export declare class InStateWithVariables extends "
                },
                {
                  "kind": "Reference",
                  "text": "AnyState",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.AnyState:class"
                },
                {
                  "kind": "Content",
                  "text": " "
                }
              ],
              "fileUrlPath": "src/states/InStateWithVariables.ts",
              "releaseTag": "Public",
              "isAbstract": false,
              "name": "InStateWithVariables",
              "preserveMemberOrder": false,
              "members": [
                {
                  "kind": "Constructor",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.InStateWithVariables:constructor(1)",
                  "docComment": "/**\n * A state descriptor for configuring an example that needs to run in a particular named state, and with variables provided by the framework.\n *\n * @param stateName - The name of the state used by this example. This must match one of the state handlers provided in the configuration during the example run.\n *\n * @param variables - A object where the keys are variable names, mapped to any data or matcher objects.\n */\n",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "constructor(stateName: "
                    },
                    {
                      "kind": "Content",
                      "text": "string"
                    },
                    {
                      "kind": "Content",
                      "text": ", variables: "
                    },
                    {
                      "kind": "Reference",
                      "text": "Record",
                      "canonicalReference": "!Record:type"
                    },
                    {
                      "kind": "Content",
                      "text": "<string, "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherOrData",
                      "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                    },
                    {
                      "kind": "Content",
                      "text": ">"
                    },
                    {
                      "kind": "Content",
                      "text": ");"
                    }
                  ],
                  "releaseTag": "Public",
                  "isProtected": false,
                  "overloadIndex": 1,
                  "parameters": [
                    {
                      "parameterName": "stateName",
                      "parameterTypeTokenRange": {
                        "startIndex": 1,
                        "endIndex": 2
                      },
                      "isOptional": false
                    },
                    {
                      "parameterName": "variables",
                      "parameterTypeTokenRange": {
                        "startIndex": 3,
                        "endIndex": 7
                      },
                      "isOptional": false
                    }
                  ]
                },
                {
                  "kind": "Property",
                  "canonicalReference": "@contract-case/case-definition-dsl!states.InStateWithVariables#variables:member",
                  "docComment": "",
                  "excerptTokens": [
                    {
                      "kind": "Content",
                      "text": "readonly variables: "
                    },
                    {
                      "kind": "Reference",
                      "text": "Record",
                      "canonicalReference": "!Record:type"
                    },
                    {
                      "kind": "Content",
                      "text": "<string, "
                    },
                    {
                      "kind": "Reference",
                      "text": "AnyMatcherOrData",
                      "canonicalReference": "@contract-case/case-definition-dsl!~AnyMatcherOrData:type"
                    },
                    {
                      "kind": "Content",
                      "text": ">"
                    },
                    {
                      "kind": "Content",
                      "text": ";"
                    }
                  ],
                  "isReadonly": true,
                  "isOptional": false,
                  "releaseTag": "Public",
                  "name": "variables",
                  "propertyTypeTokenRange": {
                    "startIndex": 1,
                    "endIndex": 5
                  },
                  "isStatic": false,
                  "isProtected": false,
                  "isAbstract": false
                }
              ],
              "extendsTokenRange": {
                "startIndex": 1,
                "endIndex": 2
              },
              "implementsTokenRanges": []
            }
          ]
        }
      ]
    }
  ]
}
