import gql from 'graphql-tag' 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 } export type AuthResult = { error?: Maybe info?: Maybe token?: Maybe user?: Maybe } export type Author = { bio?: Maybe caption?: Maybe links?: Maybe>> name: Scalars['String'] slug: Scalars['String'] userpic?: Maybe } export type Chat = { createdAt: Scalars['DateTime'] createdBy: User description?: Maybe id: Scalars['Int'] messages?: Maybe>> title?: Maybe updatedAt: Scalars['DateTime'] users: Array> } export type ChatResult = { createdAt: Scalars['DateTime'] createdBy?: Maybe error?: Maybe members: Array> messages?: Maybe>> title?: Maybe } export type ChatUpdatedResult = { error?: Maybe message?: Maybe status?: Maybe } export type Collab = { authors: Array> body?: Maybe createdAt: Scalars['DateTime'] invites?: Maybe>> title?: Maybe } export type Collection = { amount?: Maybe createdAt: Scalars['DateTime'] createdBy: User desc?: Maybe publishedAt?: Maybe slug: Scalars['String'] title: Scalars['String'] } export type CollectionInput = { desc?: InputMaybe pic?: InputMaybe title: Scalars['String'] } export type Community = { createdAt: Scalars['DateTime'] createdBy: User desc?: Maybe name: Scalars['String'] pic: Scalars['String'] slug: Scalars['String'] } export type CommunityInput = { desc?: InputMaybe pic?: InputMaybe title: Scalars['String'] } export type CreateChatResult = { chatId?: Maybe error?: Maybe } export type EnterChatResult = { chat?: Maybe error?: Maybe messages?: Maybe>> } export enum FollowingEntity { Author = 'AUTHOR', Community = 'COMMUNITY', Reactions = 'REACTIONS', Topic = 'TOPIC' } export type Message = { author: Scalars['String'] body: Scalars['String'] chatRoom: Scalars['Int'] createdAt: Scalars['DateTime'] id: Scalars['Int'] replyTo?: Maybe updatedAt: Scalars['DateTime'] visibleForUsers: Array> } export type MessageResult = { error?: Maybe message?: Maybe } export enum MessageStatus { Deleted = 'DELETED', New = 'NEW', Updated = 'UPDATED' } export type Mutation = { confirmEmail: AuthResult createChat: CreateChatResult createCollection: Result createCommunity: Result createMessage: MessageResult createReaction: Result createShout: Result createTopic: Result deleteCollection: Result deleteCommunity: Result deleteMessage: Result deleteReaction: Result deleteShout: Result destroyTopic: Result follow: Result incrementView: Result inviteAuthor: Result inviteChat: Result markAsRead: Result rateUser: Result refreshSession: AuthResult registerUser: User removeAuthor: Result sendLink: Result unfollow: Result updateCollection: Result updateCommunity: Result updateMessage: MessageResult updateProfile: Result updateReaction: Result updateShout: Result updateTopic: Result } export type MutationConfirmEmailArgs = { code: Scalars['String'] } export type MutationCreateChatArgs = { description?: InputMaybe } export type MutationCreateCollectionArgs = { collection: CollectionInput } export type MutationCreateCommunityArgs = { community: CommunityInput } export type MutationCreateMessageArgs = { body: Scalars['String'] chatId: Scalars['String'] replyTo?: InputMaybe } export type MutationCreateReactionArgs = { reaction: ReactionInput } export type MutationCreateShoutArgs = { input: ShoutInput } export type MutationCreateTopicArgs = { input: TopicInput } export type MutationDeleteCollectionArgs = { slug: Scalars['String'] } export type MutationDeleteCommunityArgs = { slug: Scalars['String'] } export type MutationDeleteMessageArgs = { chatId: Scalars['String'] id: Scalars['Int'] } export type MutationDeleteReactionArgs = { id: Scalars['Int'] } export type MutationDeleteShoutArgs = { slug: Scalars['String'] } export type MutationDestroyTopicArgs = { slug: Scalars['String'] } export type MutationFollowArgs = { slug: Scalars['String'] what: FollowingEntity } export type MutationIncrementViewArgs = { shout: Scalars['String'] } export type MutationInviteAuthorArgs = { author: Scalars['String'] shout: Scalars['String'] } export type MutationInviteChatArgs = { chatId: Scalars['String'] userslug: Scalars['String'] } export type MutationMarkAsReadArgs = { chatId: Scalars['String'] ids: Array> } export type MutationRateUserArgs = { slug: Scalars['String'] value: Scalars['Int'] } export type MutationRegisterUserArgs = { email: Scalars['String'] password?: InputMaybe username?: InputMaybe } export type MutationRemoveAuthorArgs = { author: Scalars['String'] shout: Scalars['String'] } export type MutationSendLinkArgs = { email: Scalars['String'] } export type MutationUnfollowArgs = { slug: Scalars['String'] what: FollowingEntity } export type MutationUpdateCollectionArgs = { collection: CollectionInput } export type MutationUpdateCommunityArgs = { community: CommunityInput } export type MutationUpdateMessageArgs = { body: Scalars['String'] chatId: Scalars['String'] id: Scalars['Int'] } export type MutationUpdateProfileArgs = { profile: ProfileInput } export type MutationUpdateReactionArgs = { reaction: ReactionInput } export type MutationUpdateShoutArgs = { input: ShoutInput } export type MutationUpdateTopicArgs = { input: TopicInput } export type Notification = { kind: Scalars['String'] template: Scalars['String'] variables?: Maybe>> } export type Operation = { id: Scalars['Int'] name: Scalars['String'] } export type Permission = { operation_id: Scalars['Int'] resource_id: Scalars['Int'] } export type ProfileInput = { bio?: InputMaybe links?: InputMaybe>> name?: InputMaybe userpic?: InputMaybe } export type Query = { authorsAll: Array> collectionsAll: Array> enterChat: ChatResult getCollabs: Array> getCommunities: Array> getCommunity: Community getShoutBySlug: Shout getUserCollections: Array> getUserRoles: Array> getUsersBySlugs: Array> isEmailUsed: Scalars['Boolean'] loadChat: Array> myChats: Array> reactionsByAuthor: Array> reactionsByShout: Array> reactionsForShouts: Array> recentAll: Array> recentCandidates: Array> recentCommented: Array> recentPublished: Array> recentReacted: Array> searchQuery?: Maybe>> shoutsByAuthors: Array> shoutsByCollection: Array> shoutsByCommunities: Array> shoutsByTopics: Array> shoutsForFeed: Array> signIn: AuthResult signOut: AuthResult topAuthors: Array> topCommented: Array> topMonth: Array> topOverall: Array> topPublished: Array> topicsAll: Array> topicsByAuthor: Array> topicsByCommunity: Array> topicsRandom: Array> userFollowedAuthors: Array> userFollowedCommunities: Array> userFollowedTopics: Array> userFollowers: Array> userReactedShouts: Array> } export type QueryEnterChatArgs = { chatId: Scalars['String'] } export type QueryGetCommunityArgs = { slug?: InputMaybe } export type QueryGetShoutBySlugArgs = { slug: Scalars['String'] } export type QueryGetUserCollectionsArgs = { author: Scalars['String'] } export type QueryGetUserRolesArgs = { slug: Scalars['String'] } export type QueryGetUsersBySlugsArgs = { slugs: Array> } export type QueryIsEmailUsedArgs = { email: Scalars['String'] } export type QueryLoadChatArgs = { chatId: Scalars['String'] page: Scalars['Int'] size: Scalars['Int'] } export type QueryReactionsByAuthorArgs = { limit: Scalars['Int'] offset: Scalars['Int'] slug: Scalars['String'] } export type QueryReactionsByShoutArgs = { limit: Scalars['Int'] offset: Scalars['Int'] slug: Scalars['String'] } export type QueryReactionsForShoutsArgs = { limit: Scalars['Int'] offset: Scalars['Int'] shouts: Array> } export type QueryRecentAllArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryRecentCandidatesArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryRecentCommentedArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryRecentPublishedArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryRecentReactedArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QuerySearchQueryArgs = { limit: Scalars['Int'] offset: Scalars['Int'] q?: InputMaybe } export type QueryShoutsByAuthorsArgs = { limit: Scalars['Int'] offset: Scalars['Int'] slugs: Array> } export type QueryShoutsByCollectionArgs = { collection: Scalars['String'] limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryShoutsByCommunitiesArgs = { limit: Scalars['Int'] offset: Scalars['Int'] slugs: Array> } export type QueryShoutsByTopicsArgs = { limit: Scalars['Int'] offset: Scalars['Int'] slugs: Array> } export type QueryShoutsForFeedArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QuerySignInArgs = { email: Scalars['String'] password?: InputMaybe } export type QueryTopAuthorsArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryTopCommentedArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryTopMonthArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryTopOverallArgs = { limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryTopPublishedArgs = { daysago: Scalars['Int'] limit: Scalars['Int'] offset: Scalars['Int'] } export type QueryTopicsByAuthorArgs = { author: Scalars['String'] } export type QueryTopicsByCommunityArgs = { community: Scalars['String'] } export type QueryTopicsRandomArgs = { amount?: InputMaybe } export type QueryUserFollowedAuthorsArgs = { slug: Scalars['String'] } export type QueryUserFollowedCommunitiesArgs = { slug: Scalars['String'] } export type QueryUserFollowedTopicsArgs = { slug: Scalars['String'] } export type QueryUserFollowersArgs = { slug: Scalars['String'] } export type QueryUserReactedShoutsArgs = { slug: Scalars['String'] } export type Rating = { rater: Scalars['String'] value: Scalars['Int'] } export type Reaction = { body?: Maybe createdAt: Scalars['DateTime'] createdBy: User deletedAt?: Maybe deletedBy?: Maybe id: Scalars['Int'] kind: ReactionKind old_id?: Maybe old_thread?: Maybe range?: Maybe replyTo?: Maybe shout: Shout stat?: Maybe updatedAt?: Maybe } export type ReactionInput = { body?: InputMaybe kind: Scalars['Int'] range?: InputMaybe replyTo?: InputMaybe shout: Scalars['String'] } export enum ReactionKind { Accept = 'ACCEPT', Agree = 'AGREE', Ask = 'ASK', Comment = 'COMMENT', Disagree = 'DISAGREE', Dislike = 'DISLIKE', Disproof = 'DISPROOF', Like = 'LIKE', Proof = 'PROOF', Propose = 'PROPOSE', Quote = 'QUOTE', Reject = 'REJECT' } export enum ReactionStatus { Changed = 'CHANGED', Deleted = 'DELETED', Explained = 'EXPLAINED', New = 'NEW', Updated = 'UPDATED' } export type ReactionUpdating = { error?: Maybe reaction?: Maybe status?: Maybe } export type Resource = { id: Scalars['Int'] name: Scalars['String'] } export type Result = { author?: Maybe authors?: Maybe>> communities?: Maybe>> community?: Maybe error?: Maybe reaction?: Maybe reactions?: Maybe>> shout?: Maybe shouts?: Maybe>> topic?: Maybe topics?: Maybe>> } export type Role = { community: Scalars['String'] desc?: Maybe id: Scalars['Int'] name: Scalars['String'] permissions: Array } export type SessionInfo = { authors?: Maybe>> communities?: Maybe>> reactions?: Maybe>> topics?: Maybe>> unread?: Maybe } export type Shout = { authors?: Maybe>> body: Scalars['String'] community?: Maybe cover?: Maybe createdAt: Scalars['DateTime'] deletedAt?: Maybe deletedBy?: Maybe draft?: Maybe id: Scalars['Int'] lang?: Maybe layout?: Maybe mainTopic?: Maybe publishedAt?: Maybe publishedBy?: Maybe slug: Scalars['String'] stat?: Maybe subtitle?: Maybe title?: Maybe topics?: Maybe>> updatedAt?: Maybe updatedBy?: Maybe versionOf?: Maybe visibleFor?: Maybe>> } export type ShoutInput = { body: Scalars['String'] community: Scalars['String'] mainTopic?: InputMaybe slug: Scalars['String'] subtitle?: InputMaybe title?: InputMaybe topic_slugs?: InputMaybe>> versionOf?: InputMaybe visibleForRoles?: InputMaybe>> visibleForUsers?: InputMaybe>> } export type Stat = { commented?: Maybe ranking?: Maybe rating?: Maybe reacted?: Maybe viewed?: Maybe } export type Subscription = { chatUpdated: ChatUpdatedResult onlineUpdated: Array reactionUpdated: ReactionUpdating shoutUpdated: Shout userUpdated: User } export type SubscriptionChatUpdatedArgs = { chatId: Scalars['String'] } export type SubscriptionReactionUpdatedArgs = { shout: Scalars['String'] } export type Token = { createdAt: Scalars['DateTime'] expiresAt?: Maybe id: Scalars['Int'] ownerId: Scalars['Int'] usedAt?: Maybe value: Scalars['String'] } export type Topic = { body?: Maybe children?: Maybe>> community: Community oid?: Maybe parents?: Maybe>> pic?: Maybe slug: Scalars['String'] stat?: Maybe title?: Maybe } export type TopicInput = { body?: InputMaybe children?: InputMaybe>> community: Scalars['String'] parents?: InputMaybe>> pic?: InputMaybe slug: Scalars['String'] title?: InputMaybe } export type TopicStat = { authors: Scalars['Int'] commented?: Maybe followers: Scalars['Int'] rating?: Maybe reacted: Scalars['Int'] shouts: Scalars['Int'] viewed: Scalars['Int'] } export type User = { bio?: Maybe communities?: Maybe>> createdAt: Scalars['DateTime'] email?: Maybe emailConfirmed?: Maybe id: Scalars['Int'] lastSeen?: Maybe links?: Maybe>> muted?: Maybe name?: Maybe notifications?: Maybe>> oauth?: Maybe oid?: Maybe password?: Maybe ratings?: Maybe>> slug: Scalars['String'] updatedAt?: Maybe username: Scalars['String'] userpic?: Maybe wasOnlineAt?: Maybe } export type UserNotification = { id: Scalars['Int'] kind: Scalars['String'] user: Scalars['Int'] values?: Maybe>> }