query BrowseFeatures(
  $featureName: String
  $featureFullName: String
  $therapyName: String
  $featureAlias: String
  $diseaseName: String
  $featureType: FeatureInstanceTypes
  $sortBy: FeaturesSort
  $first: Int
  $last: Int
  $before: String
  $after: String
) {
  browseFeatures(
    featureName: $featureName
    featureFullName: $featureFullName
    therapyName: $therapyName
    featureAlias: $featureAlias
    diseaseName: $diseaseName
    featureType: $featureType
    sortBy: $sortBy
    first: $first
    last: $last
    before: $before
    after: $after
  ) {
    edges {
      cursor
      node {
        ...BrowseFeaturesFields
      }
    }
    pageInfo {
      startCursor
      endCursor
      hasPreviousPage
      hasNextPage
    }
    lastUpdated
    totalCount
    filteredCount
    pageCount
  }
}

fragment BrowseFeaturesFields on BrowseFeature {
  id
  name
  fullName
  link
  deprecated
  flagged
  featureAliases
  diseases {
    name
    id
    link
    deprecated
  }
  therapies {
    name
    id
    link
    deprecated
  }
  variantCount
  evidenceItemCount
  assertionCount
  molecularProfileCount
  featureInstanceType
}
