import { gql } from '@apollo/client'; export type Maybe = T | null; export type InputMaybe = Maybe; export type Exact = { [K in keyof T]: T[K] }; export type MakeOptional = Omit & { [SubKey in K]?: Maybe }; export type MakeMaybe = Omit & { [SubKey in K]: Maybe }; /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: string; String: string; Boolean: boolean; Int: number; Float: number; DateTime: any; JSON: any; Upload: any; }; export type Account = { __typename?: 'Account'; createdAt: Scalars['DateTime']; email: Scalars['String']; id: Scalars['String']; token: Scalars['String']; updatedAt: Scalars['DateTime']; }; export type AuthResponse = Response & { __typename?: 'AuthResponse'; data?: Maybe; exp?: Maybe; message?: Maybe; status: Scalars['Boolean']; token?: Maybe; }; export type Comment = { __typename?: 'Comment'; author?: Maybe; authorId: Scalars['String']; createdAt?: Maybe; id: Scalars['Int']; message?: Maybe; parentId?: Maybe; project?: Maybe; projectId?: Maybe; updatedAt?: Maybe; }; export type CommentResponse = Response & { __typename?: 'CommentResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; }; export type CommentSubscriptionResponse = { __typename?: 'CommentSubscriptionResponse'; data?: Maybe; message?: Maybe; type?: Maybe; }; export type CommentsInput = { projectId: Scalars['String']; }; export type CommentsResponse = Response & { __typename?: 'CommentsResponse'; data?: Maybe>>; message?: Maybe; status: Scalars['Boolean']; }; export type CreateCommentInput = { mentions?: InputMaybe>>; message?: InputMaybe; parentId?: InputMaybe; projectId: Scalars['String']; }; export type CreatePageViewInput = { ip: Scalars['String']; }; export type CreateProjectInput = { content?: InputMaybe; description?: InputMaybe; file?: InputMaybe; tags?: InputMaybe>>; title?: InputMaybe; }; export type DeleteCommentInput = { commentId: Scalars['Int']; }; export type DeleteProjectInput = { projectId: Scalars['String']; }; export type GithubAuthInput = { code?: InputMaybe; }; export type GoogleAuthInput = { authuser?: InputMaybe; code?: InputMaybe; prompt?: InputMaybe; scope?: InputMaybe; }; export type MentionsInput = { email?: InputMaybe; userId?: InputMaybe; }; export type Mutation = { __typename?: 'Mutation'; createComment: CommentResponse; createProject: ProjectResponse; deleteComment: CommentResponse; deleteProject: ProjectResponse; forgotPassword: SimpleAuthResponse; githubOauth: AuthResponse; googleOauth: AuthResponse; login: AuthResponse; register: AuthResponse; resetPassword: ResetPasswordResponse; toggleVote: VoteResponse; updateComment: CommentResponse; updateProfile: UserResponse; updateProject: ProjectResponse; uploadFile: UploadResponse; verifyUser: AuthResponse; viewNotification?: Maybe; }; export type MutationCreateCommentArgs = { input: CreateCommentInput; }; export type MutationCreateProjectArgs = { input: CreateProjectInput; }; export type MutationDeleteCommentArgs = { input: DeleteCommentInput; }; export type MutationDeleteProjectArgs = { input: DeleteProjectInput; }; export type MutationForgotPasswordArgs = { input: UserForgotPasswordInput; }; export type MutationGithubOauthArgs = { input: GithubAuthInput; }; export type MutationGoogleOauthArgs = { input: GoogleAuthInput; }; export type MutationLoginArgs = { input: UserLoginInput; }; export type MutationRegisterArgs = { input: UserRegisterInput; }; export type MutationResetPasswordArgs = { input: UserResetPasswordInput; }; export type MutationToggleVoteArgs = { input?: InputMaybe; }; export type MutationUpdateCommentArgs = { input: UpdateCommentInput; }; export type MutationUpdateProfileArgs = { input?: InputMaybe; }; export type MutationUpdateProjectArgs = { input: UpdateProjectInput; }; export type MutationUploadFileArgs = { input: UploadInput; }; export type MutationVerifyUserArgs = { input: UserVerifyInput; }; export type MutationViewNotificationArgs = { input: ViewNotificationInput; }; export type Notification = { __typename?: 'Notification'; content?: Maybe; createdAt?: Maybe; id: Scalars['Int']; projectId?: Maybe; projectSlug?: Maybe; receiverId?: Maybe; sender?: Maybe; senderId?: Maybe; type?: Maybe; updatedAt?: Maybe; viewed?: Maybe; }; export type NotificationInput = { limit?: InputMaybe; offset?: InputMaybe; userId?: InputMaybe; }; export type NotificationResponse = Response & { __typename?: 'NotificationResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; }; export type NotificationsResponse = Response & { __typename?: 'NotificationsResponse'; data?: Maybe>>; message?: Maybe; status: Scalars['Boolean']; }; export type PageView = { __typename?: 'PageView'; createdAt?: Maybe; id: Scalars['Int']; ip: Scalars['String']; updatedAt?: Maybe; }; export type PageViewResponse = { __typename?: 'PageViewResponse'; data?: Maybe>>; message?: Maybe; status: Scalars['Boolean']; }; export type Project = { __typename?: 'Project'; _count?: Maybe; author?: Maybe; comments?: Maybe>>; content?: Maybe; createdAt?: Maybe; description?: Maybe; files?: Maybe>>; hasvoted?: Maybe; id: Scalars['String']; isProjectOwner?: Maybe; rank?: Maybe; slug?: Maybe; tags?: Maybe>>; title?: Maybe; updatedAt?: Maybe; votes?: Maybe>>; }; export type ProjectCountPayload = { __typename?: 'ProjectCountPayload'; comments?: Maybe; votes?: Maybe; }; export type ProjectInput = { id: Scalars['String']; vote_limit?: InputMaybe; vote_offset?: InputMaybe; }; export type ProjectResponse = Response & { __typename?: 'ProjectResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; }; export type ProjectsInput = { limit?: InputMaybe; offset?: InputMaybe; }; export type ProjectsResponse = Response & { __typename?: 'ProjectsResponse'; data: Array; message?: Maybe; status: Scalars['Boolean']; }; export enum PushNotificationType { Comment = 'COMMENT', Mention = 'MENTION', Reply = 'REPLY', Upvote = 'UPVOTE' } export type Query = { __typename?: 'Query'; comments?: Maybe; me?: Maybe; mostActiveUsers?: Maybe; notifications?: Maybe; pageViews?: Maybe; project?: Maybe; projects?: Maybe; tags?: Maybe; user?: Maybe; users?: Maybe; usersWhoComment?: Maybe; }; export type QueryCommentsArgs = { input: CommentsInput; }; export type QueryNotificationsArgs = { input: NotificationInput; }; export type QueryProjectArgs = { input: ProjectInput; }; export type QueryProjectsArgs = { input: ProjectsInput; }; export type QueryUserArgs = { input: UserInput; }; export type QueryUsersArgs = { input: UsersInput; }; export type QueryUsersWhoCommentArgs = { input: ProjectInput; }; export type ResetPasswordResponse = Response & { __typename?: 'ResetPasswordResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; }; export type Response = { message?: Maybe; status: Scalars['Boolean']; }; export type SimpleAuthResponse = Response & { __typename?: 'SimpleAuthResponse'; message?: Maybe; status: Scalars['Boolean']; }; export type Subscription = { __typename?: 'Subscription'; commentCreated?: Maybe; mentionCreated?: Maybe; replyCreated?: Maybe; upvoteCreated?: Maybe; }; export type Tag = { __typename?: 'Tag'; id: Scalars['Int']; projects?: Maybe>>; value: Scalars['String']; }; export type TagInput = { id?: InputMaybe; value: Scalars['String']; }; export type TagsResponse = Response & { __typename?: 'TagsResponse'; data?: Maybe>; message?: Maybe; status: Scalars['Boolean']; }; export type ToggleVoteInput = { id: Scalars['String']; }; export type UpdateCommentInput = { commentId: Scalars['Int']; message?: InputMaybe; }; export type UpdateProfileInput = { banner?: InputMaybe; bio?: InputMaybe; country?: InputMaybe; file?: InputMaybe; firstname?: InputMaybe; id: Scalars['String']; jobTitle?: InputMaybe; lastname?: InputMaybe; showProfession?: InputMaybe; username?: InputMaybe; website?: InputMaybe; }; export type UpdateProjectInput = { content?: InputMaybe; description?: InputMaybe; file?: InputMaybe; projectId: Scalars['String']; tags?: InputMaybe>>; title?: InputMaybe; }; export type UploadInput = { file?: InputMaybe; }; export type UploadResponse = Response & { __typename?: 'UploadResponse'; message?: Maybe; status: Scalars['Boolean']; url?: Maybe; }; export type UpvoteSubscriptionResponse = { __typename?: 'UpvoteSubscriptionResponse'; data?: Maybe; message?: Maybe; type?: Maybe; }; export type User = { __typename?: 'User'; avatar?: Maybe; banner?: Maybe; bio?: Maybe; country?: Maybe; createdAt?: Maybe; email: Scalars['String']; firstname?: Maybe; id: Scalars['String']; jobTitle?: Maybe; lastname?: Maybe; projects?: Maybe>>; showProfession?: Maybe; updatedAt?: Maybe; username: Scalars['String']; verifiedAt?: Maybe; votes?: Maybe>>; website?: Maybe; }; export type UserForgotPasswordInput = { email: Scalars['String']; }; export type UserInput = { username: Scalars['String']; }; export type UserLoginInput = { email: Scalars['String']; password: Scalars['String']; }; export type UserRegisterInput = { email: Scalars['String']; password: Scalars['String']; username: Scalars['String']; }; export type UserResetPasswordInput = { password: Scalars['String']; token: Scalars['String']; }; export type UserResponse = Response & { __typename?: 'UserResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; }; export type UserVerifyInput = { token: Scalars['String']; }; export type UsersInput = { limit?: InputMaybe; offset?: InputMaybe; }; export type UsersResponse = Response & { __typename?: 'UsersResponse'; data?: Maybe>>; message?: Maybe; status: Scalars['Boolean']; }; export type ViewNotificationInput = { notificationId: Scalars['Int']; }; export type Vote = { __typename?: 'Vote'; author?: Maybe; createdAt?: Maybe; id: Scalars['Int']; project?: Maybe; updatedAt?: Maybe; }; export type VoteResponse = Response & { __typename?: 'VoteResponse'; data?: Maybe; message?: Maybe; status: Scalars['Boolean']; };