docs: def find_schemas(self, schema_path, schema_type=SCHEMA_TYPE_PROCESS, verbosity=1):
          """Find schemas in packages that match filters."""
          schema_matches = []
  
          if not os.path.isdir(schema_path):
              if verbosity > 0:
                  self.stdout.write("Invalid path {}".format(schema_path))
              return
  
          if schema_type not in [SCHEMA_TYPE_PROCESS, SCHEMA_TYPE_DESCRIPTOR]:
              raise ValueError('Invalid schema type')
  
          for root, _, files in os.walk(schema_path):
              for schema_file in [os.path.join(root, fn) for fn in files]:
                  schemas = None
                  if schema_type == SCHEMA_TYPE_DESCRIPTOR:
                      # Discover descriptors.
                      schemas = self.find_descriptor_schemas(schema_file)
                  elif schema_type == SCHEMA_TYPE_PROCESS:
                      # Perform process discovery for all supported execution engines.
                      schemas = []
                      for execution_engine in manager.execution_engines.values():
                          schemas.extend(execution_engine.discover_process(schema_file))
  
                  for schema in schemas:
                      schema_matches.append(schema)
  
          return schema_matches