type Query {
  projects(filter: projects_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [projects!]!
  projects_by_id(id: ID!): projects
  projects_aggregated(groupBy: [String], filter: projects_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [projects_aggregated!]!
  todos(filter: todos_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [todos!]!
  todos_by_id(id: ID!): todos
  todos_aggregated(groupBy: [String], filter: todos_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [todos_aggregated!]!
  bookmarks(filter: bookmarks_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [bookmarks!]!
  bookmarks_by_id(id: ID!): bookmarks
  bookmarks_aggregated(groupBy: [String], filter: bookmarks_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [bookmarks_aggregated!]!
}

type Mutation {
  create_projects_items(filter: projects_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_projects_input!]): [projects!]!
  create_projects_item(data: create_projects_input!): projects
  create_todos_items(filter: todos_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_todos_input!]): [todos!]!
  create_todos_item(data: create_todos_input!): todos
  create_bookmarks_items(filter: bookmarks_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_bookmarks_input!]): [bookmarks!]!
  create_bookmarks_item(data: create_bookmarks_input!): bookmarks
  update_projects_items(filter: projects_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_projects_input!): [projects!]!
  update_projects_batch(filter: projects_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_projects_input!]): [projects!]!
  update_projects_item(id: ID!, data: update_projects_input!): projects
  update_todos_items(filter: todos_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_todos_input!): [todos!]!
  update_todos_batch(filter: todos_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_todos_input!]): [todos!]!
  update_todos_item(id: ID!, data: update_todos_input!): todos
  update_bookmarks_items(filter: bookmarks_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_bookmarks_input!): [bookmarks!]!
  update_bookmarks_batch(filter: bookmarks_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_bookmarks_input!]): [bookmarks!]!
  update_bookmarks_item(id: ID!, data: update_bookmarks_input!): bookmarks
  delete_projects_items(ids: [ID]!): delete_many
  delete_projects_item(id: ID!): delete_one
  delete_todos_items(ids: [ID]!): delete_many
  delete_todos_item(id: ID!): delete_one
  delete_bookmarks_items(ids: [ID]!): delete_many
  delete_bookmarks_item(id: ID!): delete_one
}

type Subscription {
  projects_mutated(event: EventEnum): projects_mutated
  todos_mutated(event: EventEnum): todos_mutated
  directus_dashboards_mutated(event: EventEnum): directus_dashboards_mutated
  directus_activity_mutated(event: EventEnum): directus_activity_mutated
  directus_notifications_mutated(event: EventEnum): directus_notifications_mutated
  directus_flows_mutated(event: EventEnum): directus_flows_mutated
  directus_folders_mutated(event: EventEnum): directus_folders_mutated
  directus_files_mutated(event: EventEnum): directus_files_mutated
  directus_panels_mutated(event: EventEnum): directus_panels_mutated
  directus_roles_mutated(event: EventEnum): directus_roles_mutated
  directus_presets_mutated(event: EventEnum): directus_presets_mutated
  directus_revisions_mutated(event: EventEnum): directus_revisions_mutated
  directus_settings_mutated(event: EventEnum): directus_settings_mutated
  directus_operations_mutated(event: EventEnum): directus_operations_mutated
  directus_permissions_mutated(event: EventEnum): directus_permissions_mutated
  directus_translations_mutated(event: EventEnum): directus_translations_mutated
  directus_users_mutated(event: EventEnum): directus_users_mutated
  directus_shares_mutated(event: EventEnum): directus_shares_mutated
  directus_webhooks_mutated(event: EventEnum): directus_webhooks_mutated
  bookmarks_mutated(event: EventEnum): bookmarks_mutated
}

"""The `Boolean` scalar type represents `true` or `false`."""
scalar Boolean

"""ISO8601 Date values"""
scalar Date

"""
The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).
"""
scalar Float

"""BigInt value"""
scalar GraphQLBigInt

"""A Float or a String"""
scalar GraphQLStringOrFloat

"""Hashed string values"""
scalar Hash

"""
The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID.
"""
scalar ID

"""
The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
"""
scalar Int

"""
The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
"""
scalar JSON

"""
The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
"""
scalar String

enum EventEnum {
  create
  update
  delete
}

type bookmarks {
  id: ID!
  status: String
  sort: Int
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_created: Date
  date_created_func: datetime_functions
  user_updated(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_updated: Date
  date_updated_func: datetime_functions
  url: String
  name: String
  tags: JSON
  tags_func: count_functions
}

type bookmarks_aggregated {
  group: JSON
  countAll: Int
  count: bookmarks_aggregated_count
  countDistinct: bookmarks_aggregated_count
  avg: bookmarks_aggregated_fields
  sum: bookmarks_aggregated_fields
  avgDistinct: bookmarks_aggregated_fields
  sumDistinct: bookmarks_aggregated_fields
  min: bookmarks_aggregated_fields
  max: bookmarks_aggregated_fields
}

type bookmarks_aggregated_count {
  id: Int
  status: Int
  sort: Int
  user_created: Int
  date_created: Int
  user_updated: Int
  date_updated: Int
  url: Int
  name: Int
  tags: Int
}

type bookmarks_aggregated_fields {
  sort: Float
}

type bookmarks_mutated {
  key: ID!
  event: EventEnum
  data: bookmarks
}

type count_functions {
  count: Int
}

type datetime_functions {
  year: Int
  month: Int
  week: Int
  day: Int
  weekday: Int
  hour: Int
  minute: Int
  second: Int
}

type delete_many {
  ids: [ID]!
}

type delete_one {
  id: ID!
}

type directus_activity {
  id: ID!
  action: String!
  user(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  timestamp: Date
  timestamp_func: datetime_functions
  ip: String
  user_agent: String
  collection: String!
  item: String!
  comment: String
  origin: String
  revisions(filter: directus_revisions_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [directus_revisions]
  revisions_func: count_functions
}

type directus_activity_mutated {
  key: ID!
  event: EventEnum
  data: directus_activity
}

type directus_dashboards {
  id: ID!
  name: String!
  icon: String
  note: String
  date_created: Date
  date_created_func: datetime_functions
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  color: String
  panels(filter: directus_panels_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [directus_panels]
  panels_func: count_functions
}

type directus_dashboards_mutated {
  key: ID!
  event: EventEnum
  data: directus_dashboards
}

type directus_files {
  id: ID!
  storage: String!
  filename_disk: String
  filename_download: String!
  title: String
  type: String
  folder(filter: directus_folders_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_folders
  uploaded_by(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  uploaded_on: Date
  uploaded_on_func: datetime_functions
  modified_by(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  modified_on: Date
  modified_on_func: datetime_functions
  charset: String
  filesize: GraphQLBigInt
  width: Int
  height: Int
  duration: Int
  embed: String
  description: String
  location: String
  tags: JSON
  tags_func: count_functions
  metadata: JSON
  metadata_func: count_functions
}

type directus_files_mutated {
  key: ID!
  event: EventEnum
  data: directus_files
}

type directus_flows {
  id: ID!
  name: String!
  icon: String
  color: String
  description: String
  status: String
  trigger: String
  accountability: String
  options: JSON
  options_func: count_functions
  operation(filter: directus_operations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_operations
  date_created: Date
  date_created_func: datetime_functions
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  operations(filter: directus_operations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [directus_operations]
  operations_func: count_functions
}

type directus_flows_mutated {
  key: ID!
  event: EventEnum
  data: directus_flows
}

type directus_folders {
  id: ID!
  name: String!
  parent(filter: directus_folders_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_folders
}

type directus_folders_mutated {
  key: ID!
  event: EventEnum
  data: directus_folders
}

type directus_notifications {
  id: ID!
  timestamp: Date
  timestamp_func: datetime_functions
  status: String
  recipient(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  sender(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  subject: String!
  message: String
  collection: String
  item: String
}

type directus_notifications_mutated {
  key: ID!
  event: EventEnum
  data: directus_notifications
}

type directus_operations {
  id: ID!
  name: String
  key: String!
  type: String!
  position_x: Int!
  position_y: Int!
  options: JSON
  options_func: count_functions
  resolve(filter: directus_operations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_operations
  reject(filter: directus_operations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_operations
  flow(filter: directus_flows_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_flows
  date_created: Date
  date_created_func: datetime_functions
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
}

type directus_operations_mutated {
  key: ID!
  event: EventEnum
  data: directus_operations
}

type directus_panels {
  id: ID!
  dashboard(filter: directus_dashboards_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_dashboards
  name: String
  icon: String
  color: String
  show_header: Boolean!
  note: String
  type: String!
  position_x: Int!
  position_y: Int!
  width: Int!
  height: Int!
  options: JSON
  options_func: count_functions
  date_created: Date
  date_created_func: datetime_functions
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
}

type directus_panels_mutated {
  key: ID!
  event: EventEnum
  data: directus_panels
}

type directus_permissions {
  id: ID!
  role(filter: directus_roles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_roles
  collection: String!
  action: String!
  permissions: JSON
  permissions_func: count_functions
  validation: JSON
  validation_func: count_functions
  presets: JSON
  presets_func: count_functions
  fields: [String]
}

type directus_permissions_mutated {
  key: ID!
  event: EventEnum
  data: directus_permissions
}

type directus_presets {
  id: ID!
  bookmark: String
  user(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  role(filter: directus_roles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_roles
  collection: String
  search: String
  layout: String
  layout_query: JSON
  layout_query_func: count_functions
  layout_options: JSON
  layout_options_func: count_functions
  refresh_interval: Int
  filter: JSON
  filter_func: count_functions
  icon: String
  color: String
}

type directus_presets_mutated {
  key: ID!
  event: EventEnum
  data: directus_presets
}

type directus_revisions {
  id: ID!
  activity(filter: directus_activity_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_activity
  collection: String!
  item: String!
  data: JSON
  data_func: count_functions
  delta: JSON
  delta_func: count_functions
  parent(filter: directus_revisions_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_revisions
}

type directus_revisions_mutated {
  key: ID!
  event: EventEnum
  data: directus_revisions
}

type directus_roles {
  id: ID!
  name: String!
  icon: String
  description: String
  ip_access: [String]
  enforce_tfa: Boolean!
  admin_access: Boolean!
  app_access: Boolean
  users(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [directus_users]
  users_func: count_functions
}

type directus_roles_mutated {
  key: ID!
  event: EventEnum
  data: directus_roles
}

type directus_settings {
  id: ID!
  project_name: String
  project_url: String

  """$t:field_options.directus_settings.project_color_note"""
  project_color: String
  project_logo(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files
  public_foreground(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files
  public_background(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files
  public_note: String
  auth_login_attempts: Int
  auth_password_policy: String
  storage_asset_transform: String
  storage_asset_presets: JSON
  storage_asset_presets_func: count_functions
  custom_css: String
  storage_default_folder(filter: directus_folders_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_folders
  basemaps: JSON
  basemaps_func: count_functions
  mapbox_key: String
  module_bar: JSON
  module_bar_func: count_functions
  project_descriptor: String
  default_language: String
  custom_aspect_ratios: JSON
  custom_aspect_ratios_func: count_functions
}

type directus_settings_mutated {
  key: ID!
  event: EventEnum
  data: directus_settings
}

type directus_shares {
  id: ID!
  name: String
  collection: String!
  item: String!
  role(filter: directus_roles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_roles

  """$t:shared_leave_blank_for_passwordless_access"""
  password: Hash
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_created: Date
  date_created_func: datetime_functions

  """$t:shared_leave_blank_for_unlimited"""
  date_start: Date
  date_start_func: datetime_functions

  """$t:shared_leave_blank_for_unlimited"""
  date_end: Date
  date_end_func: datetime_functions
  times_used: Int

  """$t:shared_leave_blank_for_unlimited"""
  max_uses: Int
}

type directus_shares_mutated {
  key: ID!
  event: EventEnum
  data: directus_shares
}

type directus_translations {
  id: ID!
  language: String!
  key: String!
  value: String!
}

type directus_translations_mutated {
  key: ID!
  event: EventEnum
  data: directus_translations
}

type directus_users {
  id: ID!
  first_name: String
  last_name: String
  email: String
  password: Hash
  location: String
  title: String
  description: String
  tags: JSON
  tags_func: count_functions
  avatar(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files
  language: String
  theme: String
  tfa_secret: Hash
  status: String
  role(filter: directus_roles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_roles
  token: Hash
  last_access: Date
  last_access_func: datetime_functions
  last_page: String
  provider: String
  external_identifier: String
  auth_data: JSON
  auth_data_func: count_functions
  email_notifications: Boolean
}

type directus_users_mutated {
  key: ID!
  event: EventEnum
  data: directus_users
}

type directus_webhooks {
  id: ID!
  name: String!
  method: String
  url: String!
  status: String
  data: Boolean
  actions: [String]!
  collections: [String]!
  headers: JSON
  headers_func: count_functions
}

type directus_webhooks_mutated {
  key: ID!
  event: EventEnum
  data: directus_webhooks
}

type projects {
  id: ID!
  sort: Int
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_created: Date
  date_created_func: datetime_functions
  user_updated(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_updated: Date
  date_updated_func: datetime_functions
  text: String
}

type projects_aggregated {
  group: JSON
  countAll: Int
  count: projects_aggregated_count
  countDistinct: projects_aggregated_count
  avg: projects_aggregated_fields
  sum: projects_aggregated_fields
  avgDistinct: projects_aggregated_fields
  sumDistinct: projects_aggregated_fields
  min: projects_aggregated_fields
  max: projects_aggregated_fields
}

type projects_aggregated_count {
  id: Int
  sort: Int
  user_created: Int
  date_created: Int
  user_updated: Int
  date_updated: Int
  text: Int
}

type projects_aggregated_fields {
  sort: Float
}

type projects_mutated {
  key: ID!
  event: EventEnum
  data: projects
}

type todos {
  id: ID!
  status: String
  sort: Int
  user_created(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_created: Date
  date_created_func: datetime_functions
  user_updated(filter: directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_users
  date_updated: Date
  date_updated_func: datetime_functions
  task: String
}

type todos_aggregated {
  group: JSON
  countAll: Int
  count: todos_aggregated_count
  countDistinct: todos_aggregated_count
  avg: todos_aggregated_fields
  sum: todos_aggregated_fields
  avgDistinct: todos_aggregated_fields
  sumDistinct: todos_aggregated_fields
  min: todos_aggregated_fields
  max: todos_aggregated_fields
}

type todos_aggregated_count {
  id: Int
  status: Int
  sort: Int
  user_created: Int
  date_created: Int
  user_updated: Int
  date_updated: Int
  task: Int
}

type todos_aggregated_fields {
  sort: Float
}

type todos_mutated {
  key: ID!
  event: EventEnum
  data: todos
}

input bookmarks_filter {
  id: string_filter_operators
  status: string_filter_operators
  sort: number_filter_operators
  user_created: directus_users_filter
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_updated: directus_users_filter
  date_updated: date_filter_operators
  date_updated_func: datetime_function_filter_operators
  url: string_filter_operators
  name: string_filter_operators
  tags: string_filter_operators
  tags_func: count_function_filter_operators
  _and: [bookmarks_filter]
  _or: [bookmarks_filter]
}

input boolean_filter_operators {
  _eq: Boolean
  _neq: Boolean
  _null: Boolean
  _nnull: Boolean
}

input count_function_filter_operators {
  count: number_filter_operators
}

input create_bookmarks_input {
  id: ID
  status: String
  sort: Int
  user_created: create_directus_users_input
  date_created: Date
  user_updated: create_directus_users_input
  date_updated: Date
  url: String
  name: String
  tags: JSON
}

input create_directus_files_input {
  id: ID
  storage: String!
  filename_disk: String
  filename_download: String!
  title: String
  type: String
  folder: create_directus_folders_input
  uploaded_by: create_directus_users_input
  uploaded_on: Date
  modified_by: create_directus_users_input
  modified_on: Date
  charset: String
  filesize: GraphQLBigInt
  width: Int
  height: Int
  duration: Int
  embed: String
  description: String
  location: String
  tags: JSON
  metadata: JSON
}

input create_directus_folders_input {
  id: ID
  name: String!
  parent: create_directus_folders_input
}

input create_directus_roles_input {
  id: ID
  name: String!
  icon: String
  description: String
  ip_access: [String]
  enforce_tfa: Boolean!
  admin_access: Boolean!
  app_access: Boolean
  users: [create_directus_users_input]
}

input create_directus_users_input {
  id: ID
  first_name: String
  last_name: String
  email: String
  password: Hash
  location: String
  title: String
  description: String
  tags: JSON
  avatar: create_directus_files_input
  language: String
  theme: String
  tfa_secret: Hash
  status: String
  role: create_directus_roles_input
  token: Hash
  last_access: Date
  last_page: String
  provider: String
  external_identifier: String
  auth_data: JSON
  email_notifications: Boolean
}

input create_projects_input {
  id: ID
  sort: Int
  user_created: create_directus_users_input
  date_created: Date
  user_updated: create_directus_users_input
  date_updated: Date
  text: String
}

input create_todos_input {
  id: ID
  status: String
  sort: Int
  user_created: create_directus_users_input
  date_created: Date
  user_updated: create_directus_users_input
  date_updated: Date
  task: String
}

input date_filter_operators {
  _eq: String
  _neq: String
  _gt: String
  _gte: String
  _lt: String
  _lte: String
  _null: Boolean
  _nnull: Boolean
  _in: [String]
  _nin: [String]
  _between: [GraphQLStringOrFloat]
  _nbetween: [GraphQLStringOrFloat]
}

input datetime_function_filter_operators {
  year: number_filter_operators
  month: number_filter_operators
  week: number_filter_operators
  day: number_filter_operators
  weekday: number_filter_operators
  hour: number_filter_operators
  minute: number_filter_operators
  second: number_filter_operators
}

input directus_activity_filter {
  id: number_filter_operators
  action: string_filter_operators
  user: directus_users_filter
  timestamp: date_filter_operators
  timestamp_func: datetime_function_filter_operators
  ip: string_filter_operators
  user_agent: string_filter_operators
  collection: string_filter_operators
  item: string_filter_operators
  comment: string_filter_operators
  origin: string_filter_operators
  revisions: directus_revisions_filter
  revisions_func: count_function_filter_operators
  _and: [directus_activity_filter]
  _or: [directus_activity_filter]
}

input directus_dashboards_filter {
  id: string_filter_operators
  name: string_filter_operators
  icon: string_filter_operators
  note: string_filter_operators
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_created: directus_users_filter
  color: string_filter_operators
  panels: directus_panels_filter
  panels_func: count_function_filter_operators
  _and: [directus_dashboards_filter]
  _or: [directus_dashboards_filter]
}

input directus_files_filter {
  id: string_filter_operators
  storage: string_filter_operators
  filename_disk: string_filter_operators
  filename_download: string_filter_operators
  title: string_filter_operators
  type: string_filter_operators
  folder: directus_folders_filter
  uploaded_by: directus_users_filter
  uploaded_on: date_filter_operators
  uploaded_on_func: datetime_function_filter_operators
  modified_by: directus_users_filter
  modified_on: date_filter_operators
  modified_on_func: datetime_function_filter_operators
  charset: string_filter_operators
  filesize: number_filter_operators
  width: number_filter_operators
  height: number_filter_operators
  duration: number_filter_operators
  embed: string_filter_operators
  description: string_filter_operators
  location: string_filter_operators
  tags: string_filter_operators
  tags_func: count_function_filter_operators
  metadata: string_filter_operators
  metadata_func: count_function_filter_operators
  _and: [directus_files_filter]
  _or: [directus_files_filter]
}

input directus_flows_filter {
  id: string_filter_operators
  name: string_filter_operators
  icon: string_filter_operators
  color: string_filter_operators
  description: string_filter_operators
  status: string_filter_operators
  trigger: string_filter_operators
  accountability: string_filter_operators
  options: string_filter_operators
  options_func: count_function_filter_operators
  operation: directus_operations_filter
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_created: directus_users_filter
  operations: directus_operations_filter
  operations_func: count_function_filter_operators
  _and: [directus_flows_filter]
  _or: [directus_flows_filter]
}

input directus_folders_filter {
  id: string_filter_operators
  name: string_filter_operators
  parent: directus_folders_filter
  _and: [directus_folders_filter]
  _or: [directus_folders_filter]
}

input directus_operations_filter {
  id: string_filter_operators
  name: string_filter_operators
  key: string_filter_operators
  type: string_filter_operators
  position_x: number_filter_operators
  position_y: number_filter_operators
  options: string_filter_operators
  options_func: count_function_filter_operators
  resolve: directus_operations_filter
  reject: directus_operations_filter
  flow: directus_flows_filter
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_created: directus_users_filter
  _and: [directus_operations_filter]
  _or: [directus_operations_filter]
}

input directus_panels_filter {
  id: string_filter_operators
  dashboard: directus_dashboards_filter
  name: string_filter_operators
  icon: string_filter_operators
  color: string_filter_operators
  show_header: boolean_filter_operators
  note: string_filter_operators
  type: string_filter_operators
  position_x: number_filter_operators
  position_y: number_filter_operators
  width: number_filter_operators
  height: number_filter_operators
  options: string_filter_operators
  options_func: count_function_filter_operators
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_created: directus_users_filter
  _and: [directus_panels_filter]
  _or: [directus_panels_filter]
}

input directus_revisions_filter {
  id: number_filter_operators
  activity: directus_activity_filter
  collection: string_filter_operators
  item: string_filter_operators
  data: string_filter_operators
  data_func: count_function_filter_operators
  delta: string_filter_operators
  delta_func: count_function_filter_operators
  parent: directus_revisions_filter
  _and: [directus_revisions_filter]
  _or: [directus_revisions_filter]
}

input directus_roles_filter {
  id: string_filter_operators
  name: string_filter_operators
  icon: string_filter_operators
  description: string_filter_operators
  ip_access: string_filter_operators
  enforce_tfa: boolean_filter_operators
  admin_access: boolean_filter_operators
  app_access: boolean_filter_operators
  users: directus_users_filter
  users_func: count_function_filter_operators
  _and: [directus_roles_filter]
  _or: [directus_roles_filter]
}

input directus_users_filter {
  id: string_filter_operators
  first_name: string_filter_operators
  last_name: string_filter_operators
  email: string_filter_operators
  password: hash_filter_operators
  location: string_filter_operators
  title: string_filter_operators
  description: string_filter_operators
  tags: string_filter_operators
  tags_func: count_function_filter_operators
  avatar: directus_files_filter
  language: string_filter_operators
  theme: string_filter_operators
  tfa_secret: hash_filter_operators
  status: string_filter_operators
  role: directus_roles_filter
  token: hash_filter_operators
  last_access: date_filter_operators
  last_access_func: datetime_function_filter_operators
  last_page: string_filter_operators
  provider: string_filter_operators
  external_identifier: string_filter_operators
  auth_data: string_filter_operators
  auth_data_func: count_function_filter_operators
  email_notifications: boolean_filter_operators
  _and: [directus_users_filter]
  _or: [directus_users_filter]
}

input hash_filter_operators {
  _null: Boolean
  _nnull: Boolean
  _empty: Boolean
  _nempty: Boolean
}

input number_filter_operators {
  _eq: GraphQLStringOrFloat
  _neq: GraphQLStringOrFloat
  _in: [GraphQLStringOrFloat]
  _nin: [GraphQLStringOrFloat]
  _gt: GraphQLStringOrFloat
  _gte: GraphQLStringOrFloat
  _lt: GraphQLStringOrFloat
  _lte: GraphQLStringOrFloat
  _null: Boolean
  _nnull: Boolean
  _between: [GraphQLStringOrFloat]
  _nbetween: [GraphQLStringOrFloat]
}

input projects_filter {
  id: string_filter_operators
  sort: number_filter_operators
  user_created: directus_users_filter
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_updated: directus_users_filter
  date_updated: date_filter_operators
  date_updated_func: datetime_function_filter_operators
  text: string_filter_operators
  _and: [projects_filter]
  _or: [projects_filter]
}

input string_filter_operators {
  _eq: String
  _neq: String
  _contains: String
  _icontains: String
  _ncontains: String
  _starts_with: String
  _nstarts_with: String
  _istarts_with: String
  _nistarts_with: String
  _ends_with: String
  _nends_with: String
  _iends_with: String
  _niends_with: String
  _in: [String]
  _nin: [String]
  _null: Boolean
  _nnull: Boolean
  _empty: Boolean
  _nempty: Boolean
}

input todos_filter {
  id: string_filter_operators
  status: string_filter_operators
  sort: number_filter_operators
  user_created: directus_users_filter
  date_created: date_filter_operators
  date_created_func: datetime_function_filter_operators
  user_updated: directus_users_filter
  date_updated: date_filter_operators
  date_updated_func: datetime_function_filter_operators
  task: string_filter_operators
  _and: [todos_filter]
  _or: [todos_filter]
}

input update_bookmarks_input {
  id: ID
  status: String
  sort: Int
  user_created: update_directus_users_input
  date_created: Date
  user_updated: update_directus_users_input
  date_updated: Date
  url: String
  name: String
  tags: JSON
}

input update_directus_files_input {
  id: ID
  storage: String
  filename_disk: String
  filename_download: String
  title: String
  type: String
  folder: update_directus_folders_input
  uploaded_by: update_directus_users_input
  uploaded_on: Date
  modified_by: update_directus_users_input
  modified_on: Date
  charset: String
  filesize: GraphQLBigInt
  width: Int
  height: Int
  duration: Int
  embed: String
  description: String
  location: String
  tags: JSON
  metadata: JSON
}

input update_directus_folders_input {
  id: ID
  name: String
  parent: update_directus_folders_input
}

input update_directus_roles_input {
  id: ID
  name: String
  icon: String
  description: String
  ip_access: [String]
  enforce_tfa: Boolean
  admin_access: Boolean
  app_access: Boolean
  users: [update_directus_users_input]
}

input update_directus_users_input {
  id: ID
  first_name: String
  last_name: String
  email: String
  password: Hash
  location: String
  title: String
  description: String
  tags: JSON
  avatar: update_directus_files_input
  language: String
  theme: String
  tfa_secret: Hash
  status: String
  role: update_directus_roles_input
  token: Hash
  last_access: Date
  last_page: String
  provider: String
  external_identifier: String
  auth_data: JSON
  email_notifications: Boolean
}

input update_projects_input {
  id: ID
  sort: Int
  user_created: update_directus_users_input
  date_created: Date
  user_updated: update_directus_users_input
  date_updated: Date
  text: String
}

input update_todos_input {
  id: ID
  status: String
  sort: Int
  user_created: update_directus_users_input
  date_created: Date
  user_updated: update_directus_users_input
  date_updated: Date
  task: String
}