type Query { hello: String helloByName(name: String!): String fetchUsers: [User]! fetchAccounts: [Account]! fetchExpenses(filter: ExpenseFilter, pageNumber: Int, pageSize: Int) : ExpensePage } type Subscription { hello: Int fetchAccounts: [Account] } type Mutation { login(username: String!, password: String!): LoginResponse createUser(input: UserInput): User! changeUserPassword(input: UserChangePasswordInput): User! openAccount(input: AccountInput): Account! }