# ------------------------------------------------------ # THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY) # ------------------------------------------------------ type UserType { id: ID! """ User name """ name: String! """ User email """ email: String! """ User avatar url """ avatarUrl: String """ User created date """ createdAt: DateTime token: TokenType! } """ A date-time string at UTC, such as 2019-12-03T09:54:33Z, compliant with the date-time format. """ scalar DateTime type TokenType { token: String! refresh: String! } type WorkspaceType { id: ID! """ is Public workspace """ public: Boolean! """ Workspace created date """ createdAt: DateTime! """ Permission of current signed in user in workspace """ permission: Permission! """ member count of workspace """ memberCount: Int! """ Owner of workspace """ owner: UserType! """ Members of workspace """ members: [UserType!]! } """ User permission in workspace """ enum Permission { Read Write Admin Owner } type Query { """ Get all accessible workspaces for current user """ workspaces: [WorkspaceType!]! """ Get workspace by id """ workspace(id: String!): WorkspaceType! """ Get user by email """ user(email: String!): UserType! } type Mutation { register(name: String!, email: String!, password: String!): UserType! signIn(email: String!, password: String!): UserType! """ Create a new workspace """ createWorkspace(init: Upload!): WorkspaceType! """ Update workspace """ updateWorkspace(input: UpdateWorkspaceInput!): WorkspaceType! deleteWorkspace(id: String!): Boolean! invite( workspaceId: String! email: String! permission: Permission! ): Boolean! revoke(workspaceId: String!, userId: String!): Boolean! acceptInvite(workspaceId: String!): Boolean! leaveWorkspace(workspaceId: String!): Boolean! uploadBlob(workspaceId: String!, blob: Upload!): String! """ Upload user avatar """ uploadAvatar(id: String!, avatar: Upload!): UserType! } """ The `Upload` scalar type represents a file upload. """ scalar Upload input UpdateWorkspaceInput { """ is Public workspace """ public: Boolean id: ID! }