input FloatExpression {
  contained_in:String!
  contains:[Float!]!
  eq:Float!
  equals:Float!
  greater_or_equals:Float!
  greater_than:Float!
  gt:Float!
  gte:Float!
  has_key:Float!
  has_key_all:[Float!]!
  has_key_any:[Float!]!
  ilike:String!
  in:[Float!]!
  is_null:Boolean!
  lesser_or_equals:Float!
  lesser_than:Float!
  like:String!
  lt:Float!
  lte:Float!
  neq:Float!
  nilike:String!
  nin:[Float!]!
  nlike:String!
  not_equals:Float!
  not_ilike:String!
  not_in:[Float!]!
  not_like:String!
  not_similar:String!
  nsimilar:String!
  similar:String!
}
input IntExpression {
  contained_in:String!
  contains:[Int!]!
  eq:Int!
  equals:Int!
  greater_or_equals:Int!
  greater_than:Int!
  gt:Int!
  gte:Int!
  has_key:Int!
  has_key_all:[Int!]!
  has_key_any:[Int!]!
  ilike:String!
  in:[Int!]!
  is_null:Boolean!
  lesser_or_equals:Int!
  lesser_than:Int!
  like:String!
  lt:Int!
  lte:Int!
  neq:Int!
  nilike:String!
  nin:[Int!]!
  nlike:String!
  not_equals:Int!
  not_ilike:String!
  not_in:[Int!]!
  not_like:String!
  not_similar:String!
  nsimilar:String!
  similar:String!
}
type Mutation {
  line_item(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:line_itemOrderBy!, where:line_itemExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:line_itemInput, update:line_itemInput, upsert:line_itemInput
  ):line_itemOutput
  line_items(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:line_itemOrderBy!, where:line_itemExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:line_itemInput, update:line_itemInput, upsert:line_itemInput, inserts:[line_itemInput!]!, updates:[line_itemInput!]!, upserts:[line_itemInput!]!
  ):line_itemOutput
  product(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:productOrderBy!, where:productExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:productInput, update:productInput, upsert:productInput
  ):productOutput
  products(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:productOrderBy!, where:productExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:productInput, update:productInput, upsert:productInput, inserts:[productInput!]!, updates:[productInput!]!, upserts:[productInput!]!
  ):productOutput
  user(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:userOrderBy!, where:userExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:userInput, update:userInput, upsert:userInput
  ):userOutput
  users(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:userOrderBy!, where:userExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!, insert:userInput, update:userInput, upsert:userInput, inserts:[userInput!]!, updates:[userInput!]!, upserts:[userInput!]!
  ):userOutput
}
enum OrderDirection {
  asc
  desc
}
type Query {
  line_item(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:line_itemOrderBy!, where:line_itemExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):line_itemOutput
  line_items(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:line_itemOrderBy!, where:line_itemExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):[line_itemOutput!]!
  product(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:productOrderBy!, where:productExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):productOutput
  products(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:productOrderBy!, where:productExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):[productOutput!]!
  user(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:userOrderBy!, where:userExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):userOutput
  users(  
    "To sort or ordering results just use the order_by argument. This can be combined with where, search, etc to build complex queries to fit you needs."
    order_by:userOrderBy!, where:userExpression!, limit:Int!, offset:Int!, first:Int!, last:Int!, before:String, after:String,   
    "Finds the record by the primary key"
    id:Int!
  ):[userOutput!]!
}
input StringExpression {
  contained_in:String!
  contains:[String!]!
  eq:String!
  equals:String!
  greater_or_equals:String!
  greater_than:String!
  gt:String!
  gte:String!
  has_key:String!
  has_key_all:[String!]!
  has_key_any:[String!]!
  ilike:String!
  in:[String!]!
  is_null:Boolean!
  lesser_or_equals:String!
  lesser_than:String!
  like:String!
  lt:String!
  lte:String!
  neq:String!
  nilike:String!
  nin:[String!]!
  nlike:String!
  not_equals:String!
  not_ilike:String!
  not_in:[String!]!
  not_like:String!
  not_similar:String!
  nsimilar:String!
  similar:String!
}
input line_itemExpression {
  and:line_itemExpression!
  id:IntExpression!
  not:line_itemExpression!
  or:line_itemExpression!
  price:FloatExpression!
  product:IntExpression!
  quantity:IntExpression!
}
input line_itemInput {
  id:Int!
  price:Float
  product:Int
  quantity:Int
}
input line_itemOrderBy {
  id:OrderDirection!
  price:OrderDirection!
  product:OrderDirection!
  quantity:OrderDirection!
}
type line_itemOutput {
  avg_id:Int!
  avg_price:Float
  avg_product:Int
  avg_quantity:Int
  count_id:Int!
  count_price:Float
  count_product:Int
  count_quantity:Int
  id:Int!
  max_id:Int!
  max_price:Float
  max_product:Int
  max_quantity:Int
  min_id:Int!
  min_price:Float
  min_product:Int
  min_quantity:Int
  price:Float
  product:Int
  quantity:Int
  stddev_id:Int!
  stddev_pop_id:Int!
  stddev_pop_price:Float
  stddev_pop_product:Int
  stddev_pop_quantity:Int
  stddev_price:Float
  stddev_product:Int
  stddev_quantity:Int
  stddev_samp_id:Int!
  stddev_samp_price:Float
  stddev_samp_product:Int
  stddev_samp_quantity:Int
  var_pop_id:Int!
  var_pop_price:Float
  var_pop_product:Int
  var_pop_quantity:Int
  var_samp_id:Int!
  var_samp_price:Float
  var_samp_product:Int
  var_samp_quantity:Int
  variance_id:Int!
  variance_price:Float
  variance_product:Int
  variance_quantity:Int
}
input productExpression {
  and:productExpression!
  id:IntExpression!
  name:StringExpression!
  not:productExpression!
  or:productExpression!
  weight:FloatExpression!
}
input productInput {
  id:Int!
  name:String
  weight:Float
}
input productOrderBy {
  id:OrderDirection!
  name:OrderDirection!
  weight:OrderDirection!
}
type productOutput {
  avg_id:Int!
  avg_weight:Float
  count_id:Int!
  count_weight:Float
  id:Int!
  max_id:Int!
  max_weight:Float
  min_id:Int!
  min_weight:Float
  name:String
  stddev_id:Int!
  stddev_pop_id:Int!
  stddev_pop_weight:Float
  stddev_samp_id:Int!
  stddev_samp_weight:Float
  stddev_weight:Float
  var_pop_id:Int!
  var_pop_weight:Float
  var_samp_id:Int!
  var_samp_weight:Float
  variance_id:Int!
  variance_weight:Float
  weight:Float
}
input userExpression {
  and:userExpression!
  full_name:StringExpression!
  id:IntExpression!
  not:userExpression!
  or:userExpression!
}
input userInput {
  full_name:String
  id:Int!
}
input userOrderBy {
  full_name:OrderDirection!
  id:OrderDirection!
}
type userOutput {
  avg_id:Int!
  count_id:Int!
  full_name:String
  id:Int!
  max_id:Int!
  min_id:Int!
  stddev_id:Int!
  stddev_pop_id:Int!
  stddev_samp_id:Int!
  var_pop_id:Int!
  var_samp_id:Int!
  variance_id:Int!
}
schema {
  mutation: Mutation
  query: Query
}