diff --git a/packages/client/src/actions/account.ts b/packages/client/src/actions/account.ts index 42a68f5bd..6bc42a127 100644 --- a/packages/client/src/actions/account.ts +++ b/packages/client/src/actions/account.ts @@ -1,5 +1,7 @@ import type { Account, + AccountAvailable, + AccountBlocked, AccountFeedsStats, AccountFeedsStatsRequest, AccountGraphsFollowStats, @@ -7,24 +9,32 @@ import type { AccountRequest, AccountStats, AccountStatsRequest, + AccountsAvailableRequest, + AccountsBlockedRequest, CreateAccountWithUsernameRequest, CreateAccountWithUsernameResult, EnableSignlessResult, + MuteRequest, RemoveSignlessResult, SearchAccountsRequest, SetAccountMetadataRequest, SetAccountMetadataResult, + UnmuteRequest, } from '@lens-protocol/graphql'; import { AccountFeedsStatsQuery, AccountGraphsStatsQuery, AccountQuery, AccountStatsQuery, + AccountsAvailableQuery, + AccountsBlockedQuery, CreateAccountWithUsernameMutation, EnableSignlessMutation, + MuteAccountMutation, RemoveSignlessMutation, SearchAccountsQuery, SetAccountMetadataMutation, + UnmuteAccountMutation, } from '@lens-protocol/graphql'; import type { ResultAsync } from '@lens-protocol/types'; @@ -114,6 +124,44 @@ export function fetchAccountGraphStats( return client.query(AccountGraphsStatsQuery, { request }); } +/** + * Fetch Accounts Available. + * + * ```ts + * const result = await fetchAccountsAvailable(anyClient, { + * managedBy: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - Any Lens client. + * @param request - The query request. + * @returns The list of available accounts. + */ +export function fetchAccountsAvailable( + client: AnyClient, + request: AccountsAvailableRequest, +): ResultAsync | null, UnexpectedError> { + return client.query(AccountsAvailableQuery, { request }); +} + +/** + * Fetch Blocked Accounts. + * + * ```ts + * const result = await fetchAccountsBlocked(sessionClient); + * ``` + * + * @param client - The session client for the authenticated Account. + * @param request - The query request. + * @returns The list of blocked accounts. + */ +export function fetchAccountsBlocked( + client: SessionClient, + request: AccountsBlockedRequest, +): ResultAsync | null, UnexpectedError> { + return client.query(AccountsBlockedQuery, { request }); +} + /** * Search accounts. * @@ -210,3 +258,43 @@ export function removeSignless( ): ResultAsync { return client.mutation(RemoveSignlessMutation, {}); } + +/** + * Mute an account. + * + * ```ts + * const result = await muteAccount(sessionClient, { + * account: evmAddress("0xe5439696f4057aF073c0FB2dc6e5e755392922e1"); + * }); + * ``` + * + * @param client - The session client for the authenticated Account. + * @param request - The mutation request. + * @returns void. + */ +export function muteAccount( + client: SessionClient, + request: MuteRequest, +): ResultAsync { + return client.mutation(MuteAccountMutation, { request }); +} + +/** + * Unmute an account. + * + * ```ts + * const result = await unmuteAccount(sessionClient, { + * account: evmAddress("0xe5439696f4057aF073c0FB2dc6e5e755392922e1"); + * }); + * ``` + * + * @param client - The session client for the authenticated Account. + * @param request - The mutation request. + * @returns void. + */ +export function unmuteAccount( + client: SessionClient, + request: UnmuteRequest, +): ResultAsync { + return client.mutation(UnmuteAccountMutation, { request }); +} diff --git a/packages/client/src/actions/accountManager.ts b/packages/client/src/actions/accountManager.ts index 1d4dd8518..c35da732e 100644 --- a/packages/client/src/actions/accountManager.ts +++ b/packages/client/src/actions/accountManager.ts @@ -5,11 +5,14 @@ import type { AddAccountManagerResult, RemoveAccountManagerRequest, RemoveAccountManagerResult, + UpdateAccountManagerRequest, + UpdateAccountManagerResult, } from '@lens-protocol/graphql'; import { AccountManagersQuery, AddAccountManagerMutation, RemoveAccountManagerMutation, + UpdateAccountManagerMutation, } from '@lens-protocol/graphql'; import type { ResultAsync } from '@lens-protocol/types'; @@ -74,3 +77,29 @@ export function removeAccountManager( ): ResultAsync { return client.mutation(RemoveAccountManagerMutation, { request }); } + +/** + * Update permissions for an account manager. + * + * ```ts + * const result = await updateAccountManager(sessionClient, { + * permissions: { + * canSetMetadataUri: true; + * canTransferNative: false; + * canTransferTokens: true; + * canExecuteTransactions: false; + * }, + * manager: evmAddress("0xe5439696f4057aF073c0FB2dc6e5e755392922e1"); + * }); + * ``` + * + * @param client - Lens SessionClient. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function updateAccountManager( + client: SessionClient, + request: UpdateAccountManagerRequest, +): ResultAsync { + return client.mutation(UpdateAccountManagerMutation, { request }); +} diff --git a/packages/client/src/actions/app.ts b/packages/client/src/actions/app.ts index 7603024b6..d173ecad7 100644 --- a/packages/client/src/actions/app.ts +++ b/packages/client/src/actions/app.ts @@ -1,10 +1,56 @@ -import type { App } from '@lens-protocol/graphql'; -import { AppQuery } from '@lens-protocol/graphql'; +import type { + AddAppFeedsRequest, + AddAppFeedsResult, + AddAppGroupsRequest, + AddAppGroupsResult, + AddAppSignersRequest, + AddAppSignersResult, + App, + AppRequest, + CreateAppRequest, + CreateAppResult, + RemoveAppFeedsRequest, + RemoveAppFeedsResult, + RemoveAppGroupsRequest, + RemoveAppGroupsResult, + RemoveAppSignersRequest, + RemoveAppSignersResult, + SetAppGraphRequest, + SetAppGraphResult, + SetAppMetadataRequest, + SetAppMetadataResult, + SetAppSponsorshipRequest, + SetAppSponsorshipResult, + SetAppTreasuryRequest, + SetAppTreasuryResult, + SetAppUsernameNamespaceRequest, + SetAppUsernameNamespaceResult, + SetAppVerificationRequest, + SetAppVerificationResult, + SetDefaultAppFeedRequest, + SetDefaultAppFeedResult, +} from '@lens-protocol/graphql'; +import { + AddAppFeedsMutation, + AddAppGroupsMutation, + AddAppSignersMutation, + AppQuery, + CreateAppMutation, + RemoveAppFeedsMutation, + RemoveAppGroupsMutation, + RemoveAppSignersMutation, + SetAppGraphMutation, + SetAppMetadataMutation, + SetAppSponsorshipMutation, + SetAppTreasuryMutation, + SetAppUsernameNamespaceMutation, + SetAppVerificationMutation, + SetDefaultAppFeedMutation, +} from '@lens-protocol/graphql'; import type { ResultAsync } from '@lens-protocol/types'; -import type { AppRequest } from '@lens-protocol/graphql'; import type { AnyClient, SessionClient } from '../clients'; -import type { UnexpectedError } from '../errors'; +import type { UnauthenticatedError, UnexpectedError } from '../errors'; /** * Fetch an App. @@ -27,3 +73,296 @@ export function fetchApp( ): ResultAsync { return client.query(AppQuery, { request }); } + +/** + * Create an App + * + * ```ts + * const result = await createApp(sessionClient, { + * verification: true + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function createApp( + client: SessionClient, + request: CreateAppRequest, +): ResultAsync { + return client.mutation(CreateAppMutation, { request }); +} + +/** + * Add feeds to an App + * + * ```ts + * const result = await addAppFeeds(sessionClient, { + * feeds: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function addAppFeeds( + client: SessionClient, + request: AddAppFeedsRequest, +): ResultAsync { + return client.mutation(AddAppFeedsMutation, { request }); +} + +/** + * Add groups to an App + * + * ```ts + * const result = await addAppGroups(sessionClient, { + * groups: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function addAppGroups( + client: SessionClient, + request: AddAppGroupsRequest, +): ResultAsync { + return client.mutation(AddAppGroupsMutation, { request }); +} + +/** + * Add signers to an App + * + * ```ts + * const result = await addAppSigners(sessionClient, { + * signers: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function addAppSigners( + client: SessionClient, + request: AddAppSignersRequest, +): ResultAsync { + return client.mutation(AddAppSignersMutation, { request }); +} + +/** + * Remove feeds from an App + * + * ```ts + * const result = await removeAppFeeds(sessionClient, { + * feeds: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function removeAppFeeds( + client: SessionClient, + request: RemoveAppFeedsRequest, +): ResultAsync { + return client.mutation(RemoveAppFeedsMutation, { request }); +} + +/** + * Remove groups from an App + * + * ```ts + * const result = await removeAppGroups(sessionClient, { + * groups: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function removeAppGroups( + client: SessionClient, + request: RemoveAppGroupsRequest, +): ResultAsync { + return client.mutation(RemoveAppGroupsMutation, { request }); +} + +/** + * Remove signers from an App + * + * ```ts + * const result = await removeAppSigners(sessionClient, { + * signers: [evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5')], + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function removeAppSigners( + client: SessionClient, + request: RemoveAppSignersRequest, +): ResultAsync { + return client.mutation(RemoveAppSignersMutation, { request }); +} + +/** + * Set app Graph + * + * ```ts + * const result = await setAppGraph(sessionClient, { + * graph: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppGraph( + client: SessionClient, + request: SetAppGraphRequest, +): ResultAsync { + return client.mutation(SetAppGraphMutation, { request }); +} + +/** + * Set default Feed for app + * + * ```ts + * const result = await setDefaultAppFeed(sessionClient, { + * feed: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setDefaultAppFeed( + client: SessionClient, + request: SetDefaultAppFeedRequest, +): ResultAsync { + return client.mutation(SetDefaultAppFeedMutation, { request }); +} + +/** + * Set metadata for app + * + * ```ts + * const result = await setAppMetadata(sessionClient, { + * metadataUri: 'https://example.com/metadata.json', + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppMetadata( + client: SessionClient, + request: SetAppMetadataRequest, +): ResultAsync { + return client.mutation(SetAppMetadataMutation, { request }); +} + +/** + * Set verification status for app + * + * ```ts + * const result = await setAppVerification(sessionClient, { + * enabled: true, + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppVerification( + client: SessionClient, + request: SetAppVerificationRequest, +): ResultAsync { + return client.mutation(SetAppVerificationMutation, { request }); +} + +/** + * Set sponsorship for app + * + * ```ts + * const result = await setAppSponsorship(sessionClient, { + * sponsorship: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppSponsorship( + client: SessionClient, + request: SetAppSponsorshipRequest, +): ResultAsync { + return client.mutation(SetAppSponsorshipMutation, { request }); +} + +/** + * Set treasury for app + * + * ```ts + * const result = await setAppTreasury(sessionClient, { + * treasury: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppTreasury( + client: SessionClient, + request: SetAppTreasuryRequest, +): ResultAsync { + return client.mutation(SetAppTreasuryMutation, { request }); +} + +/** + * Set username namespace for app + * + * ```ts + * const result = await setAppUsernameNamespace(sessionClient, { + * usernameNamespace: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * app: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - The session client logged as a builder. + * @param request - The mutation request. + * @returns Tiered transaction result. + */ +export function setAppUsernameNamespace( + client: SessionClient, + request: SetAppUsernameNamespaceRequest, +): ResultAsync { + return client.mutation(SetAppUsernameNamespaceMutation, { request }); +} diff --git a/packages/client/src/actions/follow.ts b/packages/client/src/actions/follow.ts index 0f429b13d..c4cc15ed2 100644 --- a/packages/client/src/actions/follow.ts +++ b/packages/client/src/actions/follow.ts @@ -4,11 +4,26 @@ import type { FollowResult, UnfollowResult, } from '@lens-protocol/graphql'; -import { FollowMutation, UnfollowMutation } from '@lens-protocol/graphql'; +import { + FollowMutation, + FollowStatusQuery, + FollowersQuery, + FollowersYouKnowQuery, + FollowingQuery, + UnfollowMutation, +} from '@lens-protocol/graphql'; import type { ResultAsync } from '@lens-protocol/types'; -import type { SessionClient } from '../clients'; +import type { FollowersRequest } from '@lens-protocol/graphql'; +import type { Follower } from '@lens-protocol/graphql'; +import type { FollowingRequest } from '@lens-protocol/graphql'; +import type { Following } from '@lens-protocol/graphql'; +import type { FollowersYouKnowRequest } from '@lens-protocol/graphql'; +import type { FollowStatusRequest } from '@lens-protocol/graphql'; +import type { FollowStatusResult } from '@lens-protocol/graphql'; +import type { AnyClient, SessionClient } from '../clients'; import type { UnauthenticatedError, UnexpectedError } from '../errors'; +import type { Paginated } from '../types'; /** * Follow an Account @@ -49,3 +64,85 @@ export function unfollow( ): ResultAsync { return client.mutation(UnfollowMutation, { request }); } + +/** + * Fetch followers accounts. + * + * ```ts + * const result = await fetchFollowers(anyClient, { + * account: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - Any Lens client. + * @param request - The query request. + * @returns List of followers accounts. + */ +export function fetchFollowers( + client: AnyClient, + request: FollowersRequest, +): ResultAsync, UnexpectedError> { + return client.query(FollowersQuery, { request }); +} + +/** + * Fetch accounts following. + * + * ```ts + * const result = await fetchFollowing(anyClient, { + * account: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * }); + * ``` + * + * @param client - Any Lens client. + * @param request - The query request. + * @returns List of accounts following. + */ +export function fetchFollowing( + client: AnyClient, + request: FollowingRequest, +): ResultAsync, UnexpectedError> { + return client.query(FollowingQuery, { request }); +} + +/** + * Fetch accounts following. + * + * ```ts + * const result = await fetchFollowersYouKnow(anyClient, { + * observer: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * target: evmAddress('0xe5439696f4057aF073c0FB2dc6e5e755392922e1'), + * }); + * ``` + * + * @param client - Any Lens client. + * @param request - The query request. + * @returns List of accounts following. + */ +export function fetchFollowersYouKnow( + client: AnyClient, + request: FollowersYouKnowRequest, +): ResultAsync, UnexpectedError> { + return client.query(FollowersYouKnowQuery, { request }); +} + +/** + * Fetch follow status. + * + * ```ts + * const result = await fetchFollowStatus(anyClient, { + * account: evmAddress('0xe2f2a5C287993345a840db3B0845fbc70f5935a5'), + * follower: evmAddress('0xe5439696f4057aF073c0FB2dc6e5e755392922e1'), + * }); + * ``` + * + * @param client - Any Lens client. + * @param request - The query request. + * @returns Status of the follow action. + */ +export function fetchFollowStatus( + client: AnyClient, + request: FollowStatusRequest, +): ResultAsync { + return client.query(FollowStatusQuery, { request }); +} diff --git a/packages/client/src/actions/health.ts b/packages/client/src/actions/health.ts index da90d7344..bf59d1e69 100644 --- a/packages/client/src/actions/health.ts +++ b/packages/client/src/actions/health.ts @@ -4,8 +4,7 @@ import type { AnyClient } from '../clients'; import type { UnexpectedError } from '../errors'; /** - * Health checks. - * + * Health check query. * * ```ts * const result = await health(anyClient); diff --git a/packages/client/src/actions/index.ts b/packages/client/src/actions/index.ts index 1b75820d1..5e63918ab 100644 --- a/packages/client/src/actions/index.ts +++ b/packages/client/src/actions/index.ts @@ -6,3 +6,5 @@ export * from './post'; export * from './posts'; export * from './transactions'; export * from './username'; +export * from './timeline'; + diff --git a/packages/client/src/actions/notifications.ts b/packages/client/src/actions/notifications.ts new file mode 100644 index 000000000..4ec4c0822 --- /dev/null +++ b/packages/client/src/actions/notifications.ts @@ -0,0 +1,25 @@ +import type { Notification, NotificationsRequest } from '@lens-protocol/graphql'; +import { NotificationsQuery } from '@lens-protocol/graphql'; +import type { ResultAsync } from '@lens-protocol/types'; + +import type { SessionClient } from '../clients'; +import type { UnexpectedError } from '../errors'; +import type { Paginated } from '../types'; + +/** + * Fetch notifications for the authenticated Account. + * + * ```ts + * const result = await fetchNotifications(sessionClient); + * ``` + * + * @param client - The session client for the authenticated Account. + * @param request - The query request. + * @returns Paginated notifications. + */ +export function fetchNotifications( + client: SessionClient, + request: NotificationsRequest, +): ResultAsync, UnexpectedError> { + return client.query(NotificationsQuery, { request }); +} diff --git a/packages/graphql/schema.graphql b/packages/graphql/schema.graphql index 8b44394e0..cbb52b231 100644 --- a/packages/graphql/schema.graphql +++ b/packages/graphql/schema.graphql @@ -2062,6 +2062,12 @@ input FollowingRequest { orderBy: FollowingOrderBy! = DESC } +enum ForYouSource { + FOLLOWING + CURATED + POPULAR +} + type ForbiddenError { reason: String! } @@ -3096,6 +3102,47 @@ type MintMetadata { content: Encryptable! } +input MlaccountRecommendationsRequest { + """The page size.""" + pageSize: PageSize! = FIFTY + + """The cursor.""" + cursor: Cursor + + """The account to get recommendations for.""" + account: EvmAddress! + + """Shuffle the recommendations.""" + shuffle: Boolean! = false +} + +input MlexplorePostsFilter { + since: Int +} + +input MlexplorePostsRequest { + """The page size.""" + pageSize: PageSize! = FIFTY + + """The cursor.""" + cursor: Cursor + filter: MlexplorePostsFilter +} + +input MlpostsForYouRequest { + """The page size.""" + pageSize: PageSize! = FIFTY + + """The cursor.""" + cursor: Cursor + + """The account to get for you for.""" + account: EvmAddress! + + """Shuffle the for you posts.""" + shuffle: Boolean! = false +} + type Mutation { """ Create a new app @@ -3759,6 +3806,11 @@ type PaginatedPostTagsResult { pageInfo: PaginatedResultInfo! } +type PaginatedPostsForYouResult { + items: [PostForYou!]! + pageInfo: PaginatedResultInfo! +} + type PaginatedPostsResult { items: [Post!]! pageInfo: PaginatedResultInfo! @@ -3903,6 +3955,11 @@ input PostEditsRequest { cursor: Cursor } +type PostForYou { + post: Post! + source: ForYouSource! +} + scalar PostId union PostMetadata = ArticleMetadata | AudioMetadata | CheckingInMetadata | EmbedMetadata | EventMetadata | ImageMetadata | LinkMetadata | LivestreamMetadata | MintMetadata | SpaceMetadata | StoryMetadata | TextOnlyMetadata | ThreeDMetadata | TransactionMetadata | VideoMetadata @@ -4269,6 +4326,9 @@ type Query { You MUST be authenticated to use this query. """ notifications(request: NotificationRequest!): PaginatedNotificationResult! + mlAccountRecommendations(request: MlaccountRecommendationsRequest!): PaginatedAccountsResult! + mlPostsForYou(request: MlpostsForYouRequest!): PaginatedPostsForYouResult! + mlPostsExplore(request: MlexplorePostsRequest!): PaginatedPostsResult """Get the status of a transaction by its hash.""" transactionStatus(request: TransactionStatusRequest!): TransactionStatusResult! diff --git a/packages/graphql/src/accounts/account.ts b/packages/graphql/src/accounts/account.ts index 00ced6725..dbca0e189 100644 --- a/packages/graphql/src/accounts/account.ts +++ b/packages/graphql/src/accounts/account.ts @@ -1,6 +1,8 @@ import type { FragmentOf } from 'gql.tada'; import { Account, + AccountAvailable, + AccountBlocked, PaginatedResultInfo, SelfFundedTransactionRequest, SponsoredTransactionRequest, @@ -79,7 +81,6 @@ export const SetAccountMetadataMutation = graphql( }`, [SetAccountMetadataResult], ); - export type SetAccountMetadataRequest = RequestOf; const CreateAccountResponse = graphql( @@ -197,3 +198,49 @@ export const AccountGraphsStatsQuery = graphql( ); export type AccountGraphsStatsRequest = RequestOf; + +export const AccountsAvailableQuery = graphql( + `query AccountsAvailable($request: AccountsAvailableRequest!) { + value: accountsAvailable(request: $request) { + items{ + ...AccountAvailable + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [AccountAvailable, PaginatedResultInfo], +); + +export type AccountsAvailableRequest = RequestOf; + +export const AccountsBlockedQuery = graphql( + `query AccountsBlocked($request: AccountsBlockedRequest!) { + value: accountsBlocked(request: $request) { + items{ + ...AccountBlocked + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [AccountBlocked, PaginatedResultInfo], +); + +export type AccountsBlockedRequest = RequestOf; + +export const MuteAccountMutation = graphql( + `mutation Mute($request: MuteRequest!) { + value: mute(request: $request) + }`, +); +export type MuteRequest = RequestOf; + +export const UnmuteAccountMutation = graphql( + `mutation Unmute($request: MuteRequest!) { + value: unmute(request: $request) + }`, +); +export type UnmuteRequest = RequestOf; diff --git a/packages/graphql/src/accounts/managers.ts b/packages/graphql/src/accounts/managers.ts index c653219ce..b8c85cc1c 100644 --- a/packages/graphql/src/accounts/managers.ts +++ b/packages/graphql/src/accounts/managers.ts @@ -1,5 +1,6 @@ import type { FragmentOf } from 'gql.tada'; import { + AccountManager, PaginatedResultInfo, SelfFundedTransactionRequest, SponsoredTransactionRequest, @@ -7,22 +8,6 @@ import { } from '../fragments'; import { type RequestOf, graphql } from '../graphql'; -const AccountManager = graphql( - `fragment AccountManager on AccountManager { - __typename - addedAt - manager - isLensManager - permissions { - canExecuteTransactions - canSetMetadataUri - canTransferNative - canTransferTokens - } - }`, -); -export type AccountManager = FragmentOf; - export const AccountManagersQuery = graphql( `query AccountManagers($request: AccountManagersRequest!) { value: accountManagers(request: $request) { @@ -90,3 +75,29 @@ export const RemoveAccountManagerMutation = graphql( [RemoveAccountManagerResult], ); export type RemoveAccountManagerRequest = RequestOf; + +const UpdateAccountManagerResult = graphql( + `fragment UpdateAccountManagerResult on UpdateAccountManagerResult{ + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SelfFundedTransactionRequest, SponsoredTransactionRequest, TransactionWillFail], +); +export type UpdateAccountManagerResult = FragmentOf; + +export const UpdateAccountManagerMutation = graphql( + `mutation RemoveAccountManager($request: UpdateAccountManagerRequest!) { + value: updateAccountManager(request: $request) { + ...UpdateAccountManagerResult + } + }`, + [UpdateAccountManagerResult], +); +export type UpdateAccountManagerRequest = RequestOf; diff --git a/packages/graphql/src/app.ts b/packages/graphql/src/app.ts index 65600fdf4..126ce4df2 100644 --- a/packages/graphql/src/app.ts +++ b/packages/graphql/src/app.ts @@ -1,4 +1,10 @@ -import { App } from './fragments'; +import type { FragmentOf } from 'gql.tada'; +import { + App, + SelfFundedTransactionRequest, + SponsoredTransactionRequest, + TransactionWillFail, +} from './fragments'; import { type RequestOf, graphql } from './graphql'; export const AppQuery = graphql( @@ -10,3 +16,375 @@ export const AppQuery = graphql( [App], ); export type AppRequest = RequestOf; + +const CreateAppResponse = graphql( + `fragment CreateAppResponse on CreateAppResponse { + __typename + hash + }`, +); +export type CreateAppResponse = FragmentOf; + +const CreateAppResult = graphql( + `fragment CreateAppResult on CreateAppResult { + ...on CreateAppResponse { + ...CreateAppResponse + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [CreateAppResponse, SelfFundedTransactionRequest, TransactionWillFail], +); +export type CreateAppResult = FragmentOf; + +export const CreateAppMutation = graphql( + `mutation CreateApp($request: CreateAppRequest!) { + value: createApp(request: $request) { + ...CreateAppResult + } + }`, + [CreateAppResult], +); +export type CreateAppRequest = RequestOf; + +const AddAppFeedsResult = graphql( + `fragment AddAppFeedsResult on AddAppFeedsResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type AddAppFeedsResult = FragmentOf; + +export const AddAppFeedsMutation = graphql( + `mutation AddAppFeeds($request: AddAppFeedsRequest!) { + value: addAppFeeds(request: $request) { + ...AddAppFeedsResult + } + }`, + [AddAppFeedsResult], +); +export type AddAppFeedsRequest = RequestOf; + +const AddAppGroupsResult = graphql( + `fragment AddAppGroupsResult on AddAppGroupsResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type AddAppGroupsResult = FragmentOf; + +export const AddAppGroupsMutation = graphql( + `mutation AddAppGroups($request: AddAppGroupsRequest!) { + value: addAppGroups(request: $request) { + ...AddAppGroupsResult + } + }`, + [AddAppGroupsResult], +); +export type AddAppGroupsRequest = RequestOf; + +const AddAppSignersResult = graphql( + `fragment AddAppSignersResult on AddAppSignersResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type AddAppSignersResult = FragmentOf; + +export const AddAppSignersMutation = graphql( + `mutation AddAppSigners($request: AddAppSignersRequest!) { + value: addAppSigners(request: $request) { + ...AddAppSignersResult + } + }`, + [AddAppSignersResult], +); +export type AddAppSignersRequest = RequestOf; + +const RemoveAppFeedsResult = graphql( + `fragment RemoveAppFeedsResult on RemoveAppFeedsResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type RemoveAppFeedsResult = FragmentOf; + +export const RemoveAppFeedsMutation = graphql( + `mutation RemoveAppFeeds($request: RemoveAppFeedsRequest!) { + value: removeAppFeeds(request: $request) { + ...RemoveAppFeedsResult + } + }`, + [RemoveAppFeedsResult], +); +export type RemoveAppFeedsRequest = RequestOf; + +const RemoveAppGroupsResult = graphql( + `fragment RemoveAppGroupsResult on RemoveAppGroupsResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type RemoveAppGroupsResult = FragmentOf; + +export const RemoveAppGroupsMutation = graphql( + `mutation RemoveAppGroups($request: RemoveAppGroupsRequest!) { + value: removeAppGroups(request: $request) { + ...RemoveAppGroupsResult + } + }`, + [RemoveAppGroupsResult], +); +export type RemoveAppGroupsRequest = RequestOf; + +const RemoveAppSignersResult = graphql( + `fragment RemoveAppSignersResult on RemoveAppSignersResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type RemoveAppSignersResult = FragmentOf; + +export const RemoveAppSignersMutation = graphql( + `mutation RemoveAppSigners($request: RemoveAppSignersRequest!) { + value: removeAppSigners(request: $request) { + ...RemoveAppSignersResult + } + }`, + [RemoveAppSignersResult], +); +export type RemoveAppSignersRequest = RequestOf; + +const SetAppGraphResult = graphql( + `fragment SetAppGraphResult on SetAppGraphResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppGraphResult = FragmentOf; + +export const SetAppGraphMutation = graphql( + `mutation SetAppGraph($request: SetAppGraphRequest!) { + value: setAppGraph(request: $request) { + ...SetAppGraphResult + } + }`, + [SetAppGraphResult], +); +export type SetAppGraphRequest = RequestOf; + +const SetDefaultAppFeedResult = graphql( + `fragment SetDefaultAppFeedResult on SetDefaultAppFeedResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetDefaultAppFeedResult = FragmentOf; + +export const SetDefaultAppFeedMutation = graphql( + `mutation SetDefaultAppFeed($request: SetDefaultAppFeedRequest!) { + value: setDefaultAppFeed(request: $request) { + ...SetDefaultAppFeedResult + } + }`, + [SetDefaultAppFeedResult], +); +export type SetDefaultAppFeedRequest = RequestOf; + +const SetAppMetadataResult = graphql( + `fragment SetAppMetadataResult on SetAppMetadataResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppMetadataResult = FragmentOf; + +export const SetAppMetadataMutation = graphql( + `mutation SetAppMetadata($request: SetAppMetadataRequest!) { + value: setAppMetadata(request: $request) { + ...SetAppMetadataResult + } + }`, + [SetAppMetadataResult], +); +export type SetAppMetadataRequest = RequestOf; + +const SetAppVerificationResult = graphql( + `fragment SetAppVerificationResult on SetAppVerificationResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppVerificationResult = FragmentOf; + +export const SetAppVerificationMutation = graphql( + `mutation SetAppVerification($request: SetAppVerificationRequest!) { + value: setAppVerification(request: $request) { + ...SetAppVerificationResult + } + }`, + [SetAppVerificationResult], +); +export type SetAppVerificationRequest = RequestOf; + +const SetAppSponsorshipResult = graphql( + `fragment SetAppSponsorshipResult on SetAppSponsorshipResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppSponsorshipResult = FragmentOf; + +export const SetAppSponsorshipMutation = graphql( + `mutation SetAppSponsorship($request: SetAppSponsorshipRequest!) { + value: setAppSponsorship(request: $request) { + ...SetAppSponsorshipResult + } + }`, + [SetAppSponsorshipResult], +); +export type SetAppSponsorshipRequest = RequestOf; + +const SetAppTreasuryResult = graphql( + `fragment SetAppTreasuryResult on SetAppTreasuryResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppTreasuryResult = FragmentOf; + +export const SetAppTreasuryMutation = graphql( + `mutation SetAppTreasury($request: SetAppTreasuryRequest!) { + value: setAppTreasury(request: $request) { + ...SetAppTreasuryResult + } + }`, + [SetAppTreasuryResult], +); +export type SetAppTreasuryRequest = RequestOf; + +const SetAppUsernameNamespaceResult = graphql( + `fragment SetAppUsernameNamespaceResult on SetAppUsernameNamespaceResult { + ...on SponsoredTransactionRequest { + ...SponsoredTransactionRequest + } + ...on SelfFundedTransactionRequest { + ...SelfFundedTransactionRequest + } + ...on TransactionWillFail { + ...TransactionWillFail + } + }`, + [SponsoredTransactionRequest, SelfFundedTransactionRequest, TransactionWillFail], +); +export type SetAppUsernameNamespaceResult = FragmentOf; + +export const SetAppUsernameNamespaceMutation = graphql( + `mutation SetAppUsernameNamespace($request: SetAppUsernameNamespaceRequest!) { + value: setAppUsernameNamespace(request: $request) { + ...SetAppUsernameNamespaceResult + } + }`, + [SetAppUsernameNamespaceResult], +); +export type SetAppUsernameNamespaceRequest = RequestOf; diff --git a/packages/graphql/src/follow.ts b/packages/graphql/src/follow.ts index 61b3c1cc7..22f6c88de 100644 --- a/packages/graphql/src/follow.ts +++ b/packages/graphql/src/follow.ts @@ -1,6 +1,9 @@ import type { FragmentOf } from 'gql.tada'; import { + Account, + BooleanValue, + PaginatedResultInfo, SelfFundedTransactionRequest, SponsoredTransactionRequest, TransactionWillFail, @@ -85,3 +88,99 @@ export const UnfollowMutation = graphql( [UnfollowResult], ); export type CreateUnfollowRequest = RequestOf; + +const Follower = graphql( + `fragment Follower on Follower { + __typename + follower { + ...Account + } + followedOn + }`, + [Account], +); +export type Follower = FragmentOf; + +const Following = graphql( + `fragment Following on Following { + __typename + following { + ...Account + } + followedOn + }`, + [Account], +); +export type Following = FragmentOf; + +export const FollowersQuery = graphql( + `query Followers ($request: FollowersRequest!) { + value: followers(request: $request) { + __typename + items { + ...Follower + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [Follower, PaginatedResultInfo], +); +export type FollowersRequest = RequestOf; + +export const FollowingQuery = graphql( + `query Following ($request: FollowingRequest!) { + value: following(request: $request) { + __typename + items { + ...Following + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [Following, PaginatedResultInfo], +); +export type FollowingRequest = RequestOf; + +export const FollowersYouKnowQuery = graphql( + `query FollowersYouKnow ($request: FollowersYouKnowRequest!) { + value: followersYouKnow(request: $request) { + __typename + items { + ...Follower + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [Follower, PaginatedResultInfo], +); +export type FollowersYouKnowRequest = RequestOf; + +const FollowStatusResult = graphql( + `fragment FollowStatusResult on FollowStatusResult { + __typename + graph + follower + account + isFollowing { + ...BooleanValue + } + }`, + [BooleanValue], +); +export type FollowStatusResult = FragmentOf; + +export const FollowStatusQuery = graphql( + `query FollowStatus ($request: FollowStatusRequest!) { + value: followStatus(request: $request) { + ...FollowStatusResult + } + }`, + [FollowStatusResult], +); +export type FollowStatusRequest = RequestOf; diff --git a/packages/graphql/src/fragments/account.ts b/packages/graphql/src/fragments/account.ts index 7fdf48ce3..85ba76490 100644 --- a/packages/graphql/src/fragments/account.ts +++ b/packages/graphql/src/fragments/account.ts @@ -58,3 +58,72 @@ export const FullAccount = graphql( [AccountMetadata, LoggedInAccountOperations, Username], ); export type FullAccount = FragmentOf; + +const AccountManagerPermissions = graphql( + `fragment AccountManagerPermissions on AccountManagerPermissions { + __typename + canExecuteTransactions + canSetMetadataUri + canTransferNative + canTransferTokens + }`, +); +export type AccountManagerPermissions = FragmentOf; + +export const AccountManager = graphql( + `fragment AccountManager on AccountManager { + __typename + addedAt + manager + isLensManager + permissions { + ...AccountManagerPermissions + } + }`, +); +export type AccountManager = FragmentOf; + +const AccountManaged = graphql( + `fragment AccountManaged on AccountManaged { + __typename + addedAt + account { + ...Account + } + permissions { + ...AccountManagerPermissions + } + }`, + [AccountManagerPermissions, Account], +); +export type AccountManaged = FragmentOf; + +export const AccountAvailable = graphql( + `fragment AccountAvailable on AccountAvailable { + __typename + ... on AccountManaged { + ...AccountManaged + } + ... on AccountOwned { + __typename + addedAt + account { + ...Account + } + } + }`, + [Account, AccountManaged], +); +export type AccountAvailable = FragmentOf; + +export const AccountBlocked = graphql( + `fragment AccountBlocked on AccountBlocked { + __typename + blockedAt + account { + ...Account + } + }`, + [Account], +); +export type AccountBlocked = FragmentOf; diff --git a/packages/graphql/src/graphql-env.d.ts b/packages/graphql/src/graphql-env.d.ts index 1f6b444b7..2722b39a0 100644 --- a/packages/graphql/src/graphql-env.d.ts +++ b/packages/graphql/src/graphql-env.d.ts @@ -192,6 +192,7 @@ export type introspection_types = { 'Following': { kind: 'OBJECT'; name: 'Following'; fields: { 'followedOn': { name: 'followedOn'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; }; } }; 'following': { name: 'following'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Account'; ofType: null; }; } }; }; }; 'FollowingOrderBy': { name: 'FollowingOrderBy'; enumValues: 'DESC' | 'ASC' | 'ACCOUNT_SCORE'; }; 'FollowingRequest': { kind: 'INPUT_OBJECT'; name: 'FollowingRequest'; isOneOf: false; inputFields: [{ name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }, { name: 'account'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; defaultValue: null }, { name: 'forGraphs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; }; }; defaultValue: "[\"0x9e7085a6cc3A02F6026817997cE44B26Ba4Df557\"]" }, { name: 'orderBy'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'FollowingOrderBy'; ofType: null; }; }; defaultValue: "DESC" }]; }; + 'ForYouSource': { name: 'ForYouSource'; enumValues: 'FOLLOWING' | 'CURATED' | 'POPULAR'; }; 'ForbiddenError': { kind: 'OBJECT'; name: 'ForbiddenError'; fields: { 'reason': { name: 'reason'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'String'; ofType: null; }; } }; }; }; 'GeneratedNotificationId': unknown; 'Graph': { kind: 'OBJECT'; name: 'Graph'; fields: { 'address': { name: 'address'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; } }; 'createdAt': { name: 'createdAt'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; }; } }; 'metadata': { name: 'metadata'; type: { kind: 'OBJECT'; name: 'GraphMetadata'; ofType: null; } }; 'owner': { name: 'owner'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; } }; 'rules': { name: 'rules'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'GraphRulesConfig'; ofType: null; }; } }; }; }; @@ -262,6 +263,10 @@ export type introspection_types = { 'MetadataId': unknown; 'MetadataLicenseType': { name: 'MetadataLicenseType'; enumValues: 'CCO' | 'CC_BY' | 'CC_BY_ND' | 'CC_BY_NC' | 'TBNL_CD_PL_LEGAL' | 'TBNL_C_DT_PL_LEGAL' | 'TBNL_C_ND_PL_LEGAL' | 'TBNL_CD_NPL_LEGAL' | 'TBNL_C_DT_NPL_LEGAL' | 'TBNL_C_DTSA_PL_LEGAL' | 'TBNL_C_DTSA_NPL_LEGAL' | 'TBNL_C_ND_NPL_LEGAL' | 'TBNL_CD_PL_LEDGER' | 'TBNL_C_DT_PL_LEDGER' | 'TBNL_C_ND_PL_LEDGER' | 'TBNL_CD_NPL_LEDGER' | 'TBNL_C_DT_NPL_LEDGER' | 'TBNL_C_DTSA_PL_LEDGER' | 'TBNL_C_DTSA_NPL_LEDGER' | 'TBNL_C_ND_NPL_LEDGER' | 'TBNL_NC_D_PL_LEGAL' | 'TBNL_NC_DT_PL_LEGAL' | 'TBNL_NC_ND_PL_LEGAL' | 'TBNL_NC_D_NPL_LEGAL' | 'TBNL_NC_DT_NPL_LEGAL' | 'TBNL_NC_DTSA_PL_LEGAL' | 'TBNL_NC_DTSA_NPL_LEGAL' | 'TBNL_NC_ND_NPL_LEGAL' | 'TBNL_NC_D_PL_LEDGER' | 'TBNL_NC_DT_PL_LEDGER' | 'TBNL_NC_ND_PL_LEDGER' | 'TBNL_NC_D_NPL_LEDGER' | 'TBNL_NC_DT_NPL_LEDGER' | 'TBNL_NC_DTSA_PL_LEDGER' | 'TBNL_NC_DTSA_NPL_LEDGER' | 'TBNL_NC_ND_NPL_LEDGER'; }; 'MintMetadata': { kind: 'OBJECT'; name: 'MintMetadata'; fields: { 'attachments': { name: 'attachments'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AnyMedia'; ofType: null; }; }; }; } }; 'attributes': { name: 'attributes'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'MetadataAttribute'; ofType: null; }; }; }; } }; 'content': { name: 'content'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Encryptable'; ofType: null; }; } }; 'contentWarning': { name: 'contentWarning'; type: { kind: 'ENUM'; name: 'ContentWarning'; ofType: null; } }; 'encryptedWith': { name: 'encryptedWith'; type: { kind: 'UNION'; name: 'EncryptionStrategy'; ofType: null; } }; 'id': { name: 'id'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'MetadataId'; ofType: null; }; } }; 'locale': { name: 'locale'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Locale'; ofType: null; }; } }; 'mainContentFocus': { name: 'mainContentFocus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'MainContentFocus'; ofType: null; }; } }; 'mintLink': { name: 'mintLink'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Encryptable'; ofType: null; }; } }; 'tags': { name: 'tags'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Tag'; ofType: null; }; }; } }; }; }; + 'MlaccountRecommendationsRequest': { kind: 'INPUT_OBJECT'; name: 'MlaccountRecommendationsRequest'; isOneOf: false; inputFields: [{ name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }, { name: 'account'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; defaultValue: null }, { name: 'shuffle'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; }; defaultValue: "false" }]; }; + 'MlexplorePostsFilter': { kind: 'INPUT_OBJECT'; name: 'MlexplorePostsFilter'; isOneOf: false; inputFields: [{ name: 'since'; type: { kind: 'SCALAR'; name: 'Int'; ofType: null; }; defaultValue: null }]; }; + 'MlexplorePostsRequest': { kind: 'INPUT_OBJECT'; name: 'MlexplorePostsRequest'; isOneOf: false; inputFields: [{ name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }, { name: 'filter'; type: { kind: 'INPUT_OBJECT'; name: 'MlexplorePostsFilter'; ofType: null; }; defaultValue: null }]; }; + 'MlpostsForYouRequest': { kind: 'INPUT_OBJECT'; name: 'MlpostsForYouRequest'; isOneOf: false; inputFields: [{ name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }, { name: 'account'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; defaultValue: null }, { name: 'shuffle'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; }; defaultValue: "false" }]; }; 'Mutation': { kind: 'OBJECT'; name: 'Mutation'; fields: { 'addAccountManager': { name: 'addAccountManager'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddAccountManagerResult'; ofType: null; }; } }; 'addAdmins': { name: 'addAdmins'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddAdminsResult'; ofType: null; }; } }; 'addAppAuthorizationEndpoint': { name: 'addAppAuthorizationEndpoint'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'addAppFeeds': { name: 'addAppFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddAppFeedsResult'; ofType: null; }; } }; 'addAppGroups': { name: 'addAppGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddAppGroupsResult'; ofType: null; }; } }; 'addAppSigners': { name: 'addAppSigners'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddAppSignersResult'; ofType: null; }; } }; 'addReaction': { name: 'addReaction'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AddReactionResult'; ofType: null; }; } }; 'appRefreshServerApiKey': { name: 'appRefreshServerApiKey'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'ServerAPIKey'; ofType: null; }; } }; 'assignUsernameToAccount': { name: 'assignUsernameToAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AssignUsernameToAccountResult'; ofType: null; }; } }; 'authenticate': { name: 'authenticate'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'AuthenticationResult'; ofType: null; }; } }; 'block': { name: 'block'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'BlockResult'; ofType: null; }; } }; 'bookmarkPost': { name: 'bookmarkPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'challenge': { name: 'challenge'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AuthenticationChallenge'; ofType: null; }; } }; 'createAccountWithUsername': { name: 'createAccountWithUsername'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateAccountWithUsernameResult'; ofType: null; }; } }; 'createApp': { name: 'createApp'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateAppResult'; ofType: null; }; } }; 'createFeed': { name: 'createFeed'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateFeedResult'; ofType: null; }; } }; 'createGraph': { name: 'createGraph'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateGraphResult'; ofType: null; }; } }; 'createGroup': { name: 'createGroup'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateGroupResult'; ofType: null; }; } }; 'createUsername': { name: 'createUsername'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateUsernameResult'; ofType: null; }; } }; 'createUsernameNamespace': { name: 'createUsernameNamespace'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'CreateUsernameNamespaceResult'; ofType: null; }; } }; 'deletePost': { name: 'deletePost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'DeletePostResult'; ofType: null; }; } }; 'editPost': { name: 'editPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'PostResult'; ofType: null; }; } }; 'enableSignless': { name: 'enableSignless'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'EnableSignlessResult'; ofType: null; }; } }; 'follow': { name: 'follow'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'FollowResult'; ofType: null; }; } }; 'hideManagedAccount': { name: 'hideManagedAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'hideReply': { name: 'hideReply'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'joinGroup': { name: 'joinGroup'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'JoinGroupResult'; ofType: null; }; } }; 'leaveGroup': { name: 'leaveGroup'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'LeaveGroupResult'; ofType: null; }; } }; 'legacyRolloverRefresh': { name: 'legacyRolloverRefresh'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RefreshResult'; ofType: null; }; } }; 'mute': { name: 'mute'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'post': { name: 'post'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'PostResult'; ofType: null; }; } }; 'recommendAccount': { name: 'recommendAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'refresh': { name: 'refresh'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RefreshResult'; ofType: null; }; } }; 'removeAccountManager': { name: 'removeAccountManager'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveAccountManagerResult'; ofType: null; }; } }; 'removeAdmins': { name: 'removeAdmins'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveAdminsResult'; ofType: null; }; } }; 'removeAppFeeds': { name: 'removeAppFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveAppFeedsResult'; ofType: null; }; } }; 'removeAppGroups': { name: 'removeAppGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveAppGroupsResult'; ofType: null; }; } }; 'removeAppSigners': { name: 'removeAppSigners'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveAppSignersResult'; ofType: null; }; } }; 'removeSignless': { name: 'removeSignless'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'RemoveSignlessResult'; ofType: null; }; } }; 'reportAccount': { name: 'reportAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'reportPost': { name: 'reportPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'repost': { name: 'repost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'PostResult'; ofType: null; }; } }; 'revokeAuthentication': { name: 'revokeAuthentication'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'setAccountMetadata': { name: 'setAccountMetadata'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAccountMetadataResult'; ofType: null; }; } }; 'setAppGraph': { name: 'setAppGraph'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppGraphResult'; ofType: null; }; } }; 'setAppMetadata': { name: 'setAppMetadata'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppMetadataResult'; ofType: null; }; } }; 'setAppSponsorship': { name: 'setAppSponsorship'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppSponsorshipResult'; ofType: null; }; } }; 'setAppTreasury': { name: 'setAppTreasury'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppTreasuryResult'; ofType: null; }; } }; 'setAppUsernameNamespace': { name: 'setAppUsernameNamespace'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppUsernameNamespaceResult'; ofType: null; }; } }; 'setAppVerification': { name: 'setAppVerification'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetAppVerificationResult'; ofType: null; }; } }; 'setDefaultAppFeed': { name: 'setDefaultAppFeed'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SetDefaultAppFeedResult'; ofType: null; }; } }; 'switchAccount': { name: 'switchAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'SwitchAccountResult'; ofType: null; }; } }; 'unassignUsernameFromAccount': { name: 'unassignUsernameFromAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'UnassignUsernameToAccountResult'; ofType: null; }; } }; 'unblock': { name: 'unblock'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'UnblockResult'; ofType: null; }; } }; 'undoBookmarkPost': { name: 'undoBookmarkPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'undoReaction': { name: 'undoReaction'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'UndoReactionResult'; ofType: null; }; } }; 'undoRecommendedAccount': { name: 'undoRecommendedAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'unfollow': { name: 'unfollow'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'UnfollowResult'; ofType: null; }; } }; 'unhideManagedAccount': { name: 'unhideManagedAccount'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'unhideReply': { name: 'unhideReply'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'unmute': { name: 'unmute'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Void'; ofType: null; }; } }; 'updateAccountManager': { name: 'updateAccountManager'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'UpdateAccountManagerResult'; ofType: null; }; } }; }; }; 'MuteRequest': { kind: 'INPUT_OBJECT'; name: 'MuteRequest'; isOneOf: false; inputFields: [{ name: 'account'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; defaultValue: null }]; }; 'NestedPost': { kind: 'UNION'; name: 'NestedPost'; fields: {}; possibleTypes: 'Post' | 'PostReference'; }; @@ -300,6 +305,7 @@ export type introspection_types = { 'PaginatedPostEditsResult': { kind: 'OBJECT'; name: 'PaginatedPostEditsResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PostEdit'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; 'PaginatedPostReactionsResult': { kind: 'OBJECT'; name: 'PaginatedPostReactionsResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountPostReaction'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; 'PaginatedPostTagsResult': { kind: 'OBJECT'; name: 'PaginatedPostTagsResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Tag'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; + 'PaginatedPostsForYouResult': { kind: 'OBJECT'; name: 'PaginatedPostsForYouResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PostForYou'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; 'PaginatedPostsResult': { kind: 'OBJECT'; name: 'PaginatedPostsResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Post'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; 'PaginatedResultInfo': { kind: 'OBJECT'; name: 'PaginatedResultInfo'; fields: { 'next': { name: 'next'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; } }; 'prev': { name: 'prev'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; } }; }; }; 'PaginatedTimelineResult': { kind: 'OBJECT'; name: 'PaginatedTimelineResult'; fields: { 'items': { name: 'items'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'TimelineItem'; ofType: null; }; }; }; } }; 'pageInfo': { name: 'pageInfo'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedResultInfo'; ofType: null; }; } }; }; }; @@ -319,6 +325,7 @@ export type introspection_types = { 'PostBookmarksRequest': { kind: 'INPUT_OBJECT'; name: 'PostBookmarksRequest'; isOneOf: false; inputFields: [{ name: 'forFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; }; }; defaultValue: "[\"0x83C8D9e96Da13aaD12E068F48C639C7671D2a5C7\"]" }, { name: 'filter'; type: { kind: 'INPUT_OBJECT'; name: 'PostBookmarksFilter'; ofType: null; }; defaultValue: null }, { name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }]; }; 'PostEdit': { kind: 'OBJECT'; name: 'PostEdit'; fields: { 'metadata': { name: 'metadata'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'PostMetadata'; ofType: null; }; } }; 'timestamp': { name: 'timestamp'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'DateTime'; ofType: null; }; } }; }; }; 'PostEditsRequest': { kind: 'INPUT_OBJECT'; name: 'PostEditsRequest'; isOneOf: false; inputFields: [{ name: 'post'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'PostId'; ofType: null; }; }; defaultValue: null }, { name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }]; }; + 'PostForYou': { kind: 'OBJECT'; name: 'PostForYou'; fields: { 'post': { name: 'post'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Post'; ofType: null; }; } }; 'source': { name: 'source'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ForYouSource'; ofType: null; }; } }; }; }; 'PostId': unknown; 'PostMetadata': { kind: 'UNION'; name: 'PostMetadata'; fields: {}; possibleTypes: 'ArticleMetadata' | 'AudioMetadata' | 'CheckingInMetadata' | 'EmbedMetadata' | 'EventMetadata' | 'ImageMetadata' | 'LinkMetadata' | 'LivestreamMetadata' | 'MintMetadata' | 'SpaceMetadata' | 'StoryMetadata' | 'TextOnlyMetadata' | 'ThreeDMetadata' | 'TransactionMetadata' | 'VideoMetadata'; }; 'PostMetadataContentWarningFilter': { kind: 'INPUT_OBJECT'; name: 'PostMetadataContentWarningFilter'; isOneOf: false; inputFields: [{ name: 'oneOf'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'ContentWarning'; ofType: null; }; }; }; }; defaultValue: null }]; }; @@ -348,7 +355,7 @@ export type introspection_types = { 'PostsFilterRequest': { kind: 'INPUT_OBJECT'; name: 'PostsFilterRequest'; isOneOf: false; inputFields: [{ name: 'authors'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; }; defaultValue: null }, { name: 'postTypes'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PostType'; ofType: null; }; }; }; defaultValue: null }, { name: 'metadata'; type: { kind: 'INPUT_OBJECT'; name: 'PostMetadataFilter'; ofType: null; }; defaultValue: null }, { name: 'apps'; type: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; }; defaultValue: null }]; }; 'PostsRequest': { kind: 'INPUT_OBJECT'; name: 'PostsRequest'; isOneOf: false; inputFields: [{ name: 'forFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; }; }; defaultValue: "[\"0x83C8D9e96Da13aaD12E068F48C639C7671D2a5C7\"]" }, { name: 'filter'; type: { kind: 'INPUT_OBJECT'; name: 'PostsFilterRequest'; ofType: null; }; defaultValue: null }, { name: 'pageSize'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'ENUM'; name: 'PageSize'; ofType: null; }; }; defaultValue: "FIFTY" }, { name: 'cursor'; type: { kind: 'SCALAR'; name: 'Cursor'; ofType: null; }; defaultValue: null }]; }; 'ProfileOwnershipCondition': { kind: 'OBJECT'; name: 'ProfileOwnershipCondition'; fields: { 'profileId': { name: 'profileId'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'LegacyProfileId'; ofType: null; }; } }; 'type': { name: 'type'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'String'; ofType: null; }; } }; }; }; - 'Query': { kind: 'OBJECT'; name: 'Query'; fields: { '_service': { name: '_service'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: '_Service'; ofType: null; }; } }; 'account': { name: 'account'; type: { kind: 'OBJECT'; name: 'Account'; ofType: null; } }; 'accountFeedsStats': { name: 'accountFeedsStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountFeedsStats'; ofType: null; }; } }; 'accountGraphsStats': { name: 'accountGraphsStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountGraphsFollowStats'; ofType: null; }; } }; 'accountManagers': { name: 'accountManagers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountManagersResult'; ofType: null; }; } }; 'accountStats': { name: 'accountStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountStats'; ofType: null; }; } }; 'accounts': { name: 'accounts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Account'; ofType: null; }; }; }; } }; 'accountsAvailable': { name: 'accountsAvailable'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsAvailableResult'; ofType: null; }; } }; 'accountsBlocked': { name: 'accountsBlocked'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsBlockedResult'; ofType: null; }; } }; 'adminsFor': { name: 'adminsFor'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAdminsResult'; ofType: null; }; } }; 'app': { name: 'app'; type: { kind: 'OBJECT'; name: 'App'; ofType: null; } }; 'appFeeds': { name: 'appFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppFeedsResult'; ofType: null; }; } }; 'appGroups': { name: 'appGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'appServerApiKey': { name: 'appServerApiKey'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'ServerAPIKey'; ofType: null; }; } }; 'appSigners': { name: 'appSigners'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppSignersResult'; ofType: null; }; } }; 'appUsers': { name: 'appUsers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppUsersResult'; ofType: null; }; } }; 'apps': { name: 'apps'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppsResult'; ofType: null; }; } }; 'authenticatedSessions': { name: 'authenticatedSessions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedActiveAuthenticationsResult'; ofType: null; }; } }; 'currentSession': { name: 'currentSession'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AuthenticatedSession'; ofType: null; }; } }; 'debugMetadata': { name: 'debugMetadata'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'DebugPostMetadataResult'; ofType: null; }; } }; 'debugTransactionStatusFailed': { name: 'debugTransactionStatusFailed'; type: { kind: 'OBJECT'; name: 'DebugTransactionStatusResult'; ofType: null; } }; 'feed': { name: 'feed'; type: { kind: 'OBJECT'; name: 'Feed'; ofType: null; } }; 'followStatus': { name: 'followStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'FollowStatusResult'; ofType: null; }; }; }; } }; 'followers': { name: 'followers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowersResult'; ofType: null; }; } }; 'followersYouKnow': { name: 'followersYouKnow'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowersResult'; ofType: null; }; } }; 'following': { name: 'following'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowingResult'; ofType: null; }; } }; 'graph': { name: 'graph'; type: { kind: 'OBJECT'; name: 'Graph'; ofType: null; } }; 'group': { name: 'group'; type: { kind: 'OBJECT'; name: 'Group'; ofType: null; } }; 'groupMembers': { name: 'groupMembers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'groupStats': { name: 'groupStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'GroupStatsResponse'; ofType: null; }; } }; 'groups': { name: 'groups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'health': { name: 'health'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; } }; 'lastLoggedInAccount': { name: 'lastLoggedInAccount'; type: { kind: 'OBJECT'; name: 'Account'; ofType: null; } }; 'managedApps': { name: 'managedApps'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppsResult'; ofType: null; }; } }; 'managedFeeds': { name: 'managedFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFeedsResult'; ofType: null; }; } }; 'managedGraphs': { name: 'managedGraphs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGraphsResult'; ofType: null; }; } }; 'managedGroups': { name: 'managedGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'managedNamespaces': { name: 'managedNamespaces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedUsernameNamespacesResult'; ofType: null; }; } }; 'me': { name: 'me'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'MeResult'; ofType: null; }; } }; 'notifications': { name: 'notifications'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedNotificationResult'; ofType: null; }; } }; 'post': { name: 'post'; type: { kind: 'UNION'; name: 'AnyPost'; ofType: null; } }; 'postActions': { name: 'postActions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedActions'; ofType: null; }; } }; 'postBookmarks': { name: 'postBookmarks'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'postEdits': { name: 'postEdits'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostEditsResult'; ofType: null; }; } }; 'postReactionStatus': { name: 'postReactionStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PostReactionStatus'; ofType: null; }; }; }; } }; 'postReactions': { name: 'postReactions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostReactionsResult'; ofType: null; }; } }; 'postReferences': { name: 'postReferences'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'postTags': { name: 'postTags'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostTagsResult'; ofType: null; }; } }; 'posts': { name: 'posts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'searchAccounts': { name: 'searchAccounts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'searchGroups': { name: 'searchGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'searchPosts': { name: 'searchPosts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'timeline': { name: 'timeline'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedTimelineResult'; ofType: null; }; } }; 'timelineHighlights': { name: 'timelineHighlights'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostsResult'; ofType: null; }; } }; 'transactionStatus': { name: 'transactionStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'TransactionStatusResult'; ofType: null; }; } }; 'username': { name: 'username'; type: { kind: 'OBJECT'; name: 'Username'; ofType: null; } }; 'usernameNamespace': { name: 'usernameNamespace'; type: { kind: 'OBJECT'; name: 'UsernameNamespace'; ofType: null; } }; 'usernames': { name: 'usernames'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedUsernamesResult'; ofType: null; }; } }; 'whoActedOnPost': { name: 'whoActedOnPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'whoReferencedPost': { name: 'whoReferencedPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; }; }; + 'Query': { kind: 'OBJECT'; name: 'Query'; fields: { '_service': { name: '_service'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: '_Service'; ofType: null; }; } }; 'account': { name: 'account'; type: { kind: 'OBJECT'; name: 'Account'; ofType: null; } }; 'accountFeedsStats': { name: 'accountFeedsStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountFeedsStats'; ofType: null; }; } }; 'accountGraphsStats': { name: 'accountGraphsStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountGraphsFollowStats'; ofType: null; }; } }; 'accountManagers': { name: 'accountManagers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountManagersResult'; ofType: null; }; } }; 'accountStats': { name: 'accountStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AccountStats'; ofType: null; }; } }; 'accounts': { name: 'accounts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Account'; ofType: null; }; }; }; } }; 'accountsAvailable': { name: 'accountsAvailable'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsAvailableResult'; ofType: null; }; } }; 'accountsBlocked': { name: 'accountsBlocked'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsBlockedResult'; ofType: null; }; } }; 'adminsFor': { name: 'adminsFor'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAdminsResult'; ofType: null; }; } }; 'app': { name: 'app'; type: { kind: 'OBJECT'; name: 'App'; ofType: null; } }; 'appFeeds': { name: 'appFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppFeedsResult'; ofType: null; }; } }; 'appGroups': { name: 'appGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'appServerApiKey': { name: 'appServerApiKey'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'ServerAPIKey'; ofType: null; }; } }; 'appSigners': { name: 'appSigners'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppSignersResult'; ofType: null; }; } }; 'appUsers': { name: 'appUsers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppUsersResult'; ofType: null; }; } }; 'apps': { name: 'apps'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppsResult'; ofType: null; }; } }; 'authenticatedSessions': { name: 'authenticatedSessions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedActiveAuthenticationsResult'; ofType: null; }; } }; 'currentSession': { name: 'currentSession'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'AuthenticatedSession'; ofType: null; }; } }; 'debugMetadata': { name: 'debugMetadata'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'DebugPostMetadataResult'; ofType: null; }; } }; 'debugTransactionStatusFailed': { name: 'debugTransactionStatusFailed'; type: { kind: 'OBJECT'; name: 'DebugTransactionStatusResult'; ofType: null; } }; 'feed': { name: 'feed'; type: { kind: 'OBJECT'; name: 'Feed'; ofType: null; } }; 'followStatus': { name: 'followStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'FollowStatusResult'; ofType: null; }; }; }; } }; 'followers': { name: 'followers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowersResult'; ofType: null; }; } }; 'followersYouKnow': { name: 'followersYouKnow'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowersResult'; ofType: null; }; } }; 'following': { name: 'following'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFollowingResult'; ofType: null; }; } }; 'graph': { name: 'graph'; type: { kind: 'OBJECT'; name: 'Graph'; ofType: null; } }; 'group': { name: 'group'; type: { kind: 'OBJECT'; name: 'Group'; ofType: null; } }; 'groupMembers': { name: 'groupMembers'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'groupStats': { name: 'groupStats'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'GroupStatsResponse'; ofType: null; }; } }; 'groups': { name: 'groups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'health': { name: 'health'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Boolean'; ofType: null; }; } }; 'lastLoggedInAccount': { name: 'lastLoggedInAccount'; type: { kind: 'OBJECT'; name: 'Account'; ofType: null; } }; 'managedApps': { name: 'managedApps'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAppsResult'; ofType: null; }; } }; 'managedFeeds': { name: 'managedFeeds'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedFeedsResult'; ofType: null; }; } }; 'managedGraphs': { name: 'managedGraphs'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGraphsResult'; ofType: null; }; } }; 'managedGroups': { name: 'managedGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'managedNamespaces': { name: 'managedNamespaces'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedUsernameNamespacesResult'; ofType: null; }; } }; 'me': { name: 'me'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'MeResult'; ofType: null; }; } }; 'mlAccountRecommendations': { name: 'mlAccountRecommendations'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'mlPostsExplore': { name: 'mlPostsExplore'; type: { kind: 'OBJECT'; name: 'PaginatedPostsResult'; ofType: null; } }; 'mlPostsForYou': { name: 'mlPostsForYou'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostsForYouResult'; ofType: null; }; } }; 'notifications': { name: 'notifications'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedNotificationResult'; ofType: null; }; } }; 'post': { name: 'post'; type: { kind: 'UNION'; name: 'AnyPost'; ofType: null; } }; 'postActions': { name: 'postActions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedActions'; ofType: null; }; } }; 'postBookmarks': { name: 'postBookmarks'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'postEdits': { name: 'postEdits'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostEditsResult'; ofType: null; }; } }; 'postReactionStatus': { name: 'postReactionStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PostReactionStatus'; ofType: null; }; }; }; } }; 'postReactions': { name: 'postReactions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostReactionsResult'; ofType: null; }; } }; 'postReferences': { name: 'postReferences'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'postTags': { name: 'postTags'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostTagsResult'; ofType: null; }; } }; 'posts': { name: 'posts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'searchAccounts': { name: 'searchAccounts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'searchGroups': { name: 'searchGroups'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedGroupsResult'; ofType: null; }; } }; 'searchPosts': { name: 'searchPosts'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAnyPostsResult'; ofType: null; }; } }; 'timeline': { name: 'timeline'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedTimelineResult'; ofType: null; }; } }; 'timelineHighlights': { name: 'timelineHighlights'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedPostsResult'; ofType: null; }; } }; 'transactionStatus': { name: 'transactionStatus'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'UNION'; name: 'TransactionStatusResult'; ofType: null; }; } }; 'username': { name: 'username'; type: { kind: 'OBJECT'; name: 'Username'; ofType: null; } }; 'usernameNamespace': { name: 'usernameNamespace'; type: { kind: 'OBJECT'; name: 'UsernameNamespace'; ofType: null; } }; 'usernames': { name: 'usernames'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedUsernamesResult'; ofType: null; }; } }; 'whoActedOnPost': { name: 'whoActedOnPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; 'whoReferencedPost': { name: 'whoReferencedPost'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'PaginatedAccountsResult'; ofType: null; }; } }; }; }; 'QuoteNotification': { kind: 'OBJECT'; name: 'QuoteNotification'; fields: { 'id': { name: 'id'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'GeneratedNotificationId'; ofType: null; }; } }; 'quote': { name: 'quote'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Post'; ofType: null; }; } }; }; }; 'ReactionNotification': { kind: 'OBJECT'; name: 'ReactionNotification'; fields: { 'id': { name: 'id'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'GeneratedNotificationId'; ofType: null; }; } }; 'post': { name: 'post'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'Post'; ofType: null; }; } }; 'reactions': { name: 'reactions'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'LIST'; name: never; ofType: { kind: 'NON_NULL'; name: never; ofType: { kind: 'OBJECT'; name: 'NotificationAccountPostReaction'; ofType: null; }; }; }; } }; }; }; 'RecipientDataInput': { kind: 'INPUT_OBJECT'; name: 'RecipientDataInput'; isOneOf: false; inputFields: [{ name: 'recipient'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'EvmAddress'; ofType: null; }; }; defaultValue: null }, { name: 'split'; type: { kind: 'NON_NULL'; name: never; ofType: { kind: 'SCALAR'; name: 'Float'; ofType: null; }; }; defaultValue: null }]; }; diff --git a/packages/graphql/src/index.ts b/packages/graphql/src/index.ts index 76234a115..510341bac 100644 --- a/packages/graphql/src/index.ts +++ b/packages/graphql/src/index.ts @@ -6,6 +6,7 @@ export * from './follow'; export * from './fragments'; export * from './graphql'; export * from './health'; +export * from './notifications'; export * from './post'; export * from './timeline'; export * from './transactions'; diff --git a/packages/graphql/src/notifications.ts b/packages/graphql/src/notifications.ts new file mode 100644 index 000000000..75a81d5c0 --- /dev/null +++ b/packages/graphql/src/notifications.ts @@ -0,0 +1,143 @@ +import type { FragmentOf } from 'gql.tada'; +import { Account, PaginatedResultInfo, Post } from './fragments'; +import { type RequestOf, graphql } from './graphql'; + +const FollowNotification = graphql( + `fragment FollowNotification on FollowNotification { + __typename + id + followers { + account { + ...Account + } + followedAt + } + }`, + [Account], +); +export type FollowNotification = FragmentOf; + +const ReactionNotification = graphql( + `fragment ReactionNotification on ReactionNotification { + __typename + id + reactions { + account { + ...Account + } + reactions { + reactedAt + reaction + } + } + post { + ...Post + } + }`, + [Account, Post], +); +export type ReactionNotification = FragmentOf; + +const CommentNotification = graphql( + `fragment CommentNotification on CommentNotification { + __typename + id + comment { + ...Post + } + }`, + [Post], +); +export type CommentNotification = FragmentOf; + +const RepostNotification = graphql( + `fragment RepostNotification on RepostNotification { + __typename + id + reposts { + repostId + account { + ...Account + } + repostedAt + } + post { + ...Post + } + }`, + [Account], +); +export type RepostNotification = FragmentOf; + +const QuoteNotification = graphql( + `fragment QuoteNotification on QuoteNotification { + __typename + id + quote { + ...Post + } + }`, + [Post], +); +export type QuoteNotification = FragmentOf; + +const MentionNotification = graphql( + `fragment MentionNotification on MentionNotification { + __typename + id + post { + ...Post + } + }`, + [Post], +); +export type MentionNotification = FragmentOf; + +const Notification = graphql( + `fragment Notification on Notification { + __typename + ... on FollowNotification { + ...FollowNotification + } + ... on ReactionNotification { + ...ReactionNotification + } + ... on CommentNotification { + ...CommentNotification + } + ... on RepostNotification { + ...RepostNotification + } + ... on QuoteNotification { + ...QuoteNotification + } + ... on MentionNotification { + ...MentionNotification + } + }`, + [ + FollowNotification, + ReactionNotification, + CommentNotification, + RepostNotification, + QuoteNotification, + MentionNotification, + ], +); +export type Notification = FragmentOf; + +export const NotificationsQuery = graphql( + `query Notifications($request: NotificationRequest!) { + value: notifications(request: $request) { + __typename + items { + ...Notification + } + pageInfo { + ...PaginatedResultInfo + } + } + }`, + [Notification, PaginatedResultInfo], +); +export type NotificationsRequest = RequestOf;