xref: /expo/home/graphql/types.ts (revision 4dde4257)
1import { gql } from '@apollo/client';
2import * as Apollo from '@apollo/client';
3export type Maybe<T> = T | null;
4export type InputMaybe<T> = Maybe<T>;
5export type Exact<T extends { [key: string]: unknown }> = { [K in keyof T]: T[K] };
6export type MakeOptional<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]?: Maybe<T[SubKey]> };
7export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & { [SubKey in K]: Maybe<T[SubKey]> };
8const defaultOptions = {} as const;
9/** All built-in and custom scalars, mapped to their actual values */
10export type Scalars = {
11  ID: string;
12  String: string;
13  Boolean: boolean;
14  Int: number;
15  Float: number;
16  DateTime: any;
17  JSON: any;
18  JSONObject: any;
19};
20
21export type AcceptUserInvitationResult = {
22  __typename?: 'AcceptUserInvitationResult';
23  success: Scalars['Boolean'];
24};
25
26/** A method of authentication for an Actor */
27export type AccessToken = {
28  __typename?: 'AccessToken';
29  createdAt: Scalars['DateTime'];
30  id: Scalars['ID'];
31  lastUsedAt?: Maybe<Scalars['DateTime']>;
32  note?: Maybe<Scalars['String']>;
33  owner: Actor;
34  revokedAt?: Maybe<Scalars['DateTime']>;
35  updatedAt: Scalars['DateTime'];
36  visibleTokenPrefix: Scalars['String'];
37};
38
39export type AccessTokenMutation = {
40  __typename?: 'AccessTokenMutation';
41  /** Create an AccessToken for an Actor */
42  createAccessToken: CreateAccessTokenResponse;
43  /** Delete an AccessToken */
44  deleteAccessToken: DeleteAccessTokenResult;
45  /** Revoke an AccessToken */
46  setAccessTokenRevoked: AccessToken;
47};
48
49
50export type AccessTokenMutationCreateAccessTokenArgs = {
51  createAccessTokenData: CreateAccessTokenInput;
52};
53
54
55export type AccessTokenMutationDeleteAccessTokenArgs = {
56  id: Scalars['ID'];
57};
58
59
60export type AccessTokenMutationSetAccessTokenRevokedArgs = {
61  id: Scalars['ID'];
62  revoked?: InputMaybe<Scalars['Boolean']>;
63};
64
65/**
66 * An account is a container owning projects, credentials, billing and other organization
67 * data and settings. Actors may own and be members of accounts.
68 */
69export type Account = {
70  __typename?: 'Account';
71  /** @deprecated Legacy access tokens are deprecated */
72  accessTokens: Array<Maybe<AccessToken>>;
73  /** Coalesced project activity for all apps belonging to this account. */
74  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
75  appCount: Scalars['Int'];
76  appStoreConnectApiKeys: Array<AppStoreConnectApiKey>;
77  appleAppIdentifiers: Array<AppleAppIdentifier>;
78  appleDevices: Array<AppleDevice>;
79  appleDistributionCertificates: Array<AppleDistributionCertificate>;
80  appleProvisioningProfiles: Array<AppleProvisioningProfile>;
81  applePushKeys: Array<ApplePushKey>;
82  /** iOS credentials for account */
83  appleTeams: Array<AppleTeam>;
84  /** Apps associated with this account */
85  apps: Array<App>;
86  /** Paginated list of apps associated with this account. By default sorted by name. Use filter to adjust the sorting order. */
87  appsPaginated: AccountAppsConnection;
88  /** @deprecated Build packs are no longer supported */
89  availableBuilds?: Maybe<Scalars['Int']>;
90  /** Billing information. Only visible to members with the ADMIN or OWNER role. */
91  billing?: Maybe<Billing>;
92  billingPeriod: BillingPeriod;
93  /** Build Jobs associated with this account */
94  buildJobs: Array<BuildJob>;
95  /**
96   * Coalesced Build (EAS) or BuildJob (Classic) for all apps belonging to this account.
97   * @deprecated Use activityTimelineProjectActivities with filterTypes instead
98   */
99  buildOrBuildJobs: Array<BuildOrBuildJob>;
100  /** (EAS Build) Builds associated with this account */
101  builds: Array<Build>;
102  createdAt: Scalars['DateTime'];
103  /** Environment secrets for an account */
104  environmentSecrets: Array<EnvironmentSecret>;
105  /** GitHub App installations for an account */
106  githubAppInstallations: Array<GitHubAppInstallation>;
107  /** Android credentials for account */
108  googleServiceAccountKeys: Array<GoogleServiceAccountKey>;
109  id: Scalars['ID'];
110  isCurrent: Scalars['Boolean'];
111  name: Scalars['String'];
112  /** Offers set on this account */
113  offers?: Maybe<Array<Offer>>;
114  /** Owning User of this account if personal account */
115  owner?: Maybe<User>;
116  /** Owning UserActor of this account if personal account */
117  ownerUserActor?: Maybe<UserActor>;
118  pushSecurityEnabled: Scalars['Boolean'];
119  /** @deprecated Legacy access tokens are deprecated */
120  requiresAccessTokenForPushSecurity: Scalars['Boolean'];
121  /** Snacks associated with this account */
122  snacks: Array<Snack>;
123  /** SSO configuration for this account */
124  ssoConfiguration?: Maybe<AccountSsoConfiguration>;
125  /** Subscription info visible to members that have VIEWER role */
126  subscription?: Maybe<SubscriptionDetails>;
127  /** @deprecated No longer needed */
128  subscriptionChangesPending?: Maybe<Scalars['Boolean']>;
129  /** Coalesced project activity for an app using pagination */
130  timelineActivity: TimelineActivityConnection;
131  /** @deprecated See isCurrent */
132  unlimitedBuilds: Scalars['Boolean'];
133  updatedAt: Scalars['DateTime'];
134  /** Account query object for querying EAS usage metrics */
135  usageMetrics: AccountUsageMetrics;
136  /**
137   * Owning UserActor of this account if personal account
138   * @deprecated Deprecated in favor of ownerUserActor
139   */
140  userActorOwner?: Maybe<UserActor>;
141  /** Pending user invitations for this account */
142  userInvitations: Array<UserInvitation>;
143  /** Actors associated with this account and permissions they hold */
144  users: Array<UserPermission>;
145  /** @deprecated Build packs are no longer supported */
146  willAutoRenewBuilds?: Maybe<Scalars['Boolean']>;
147};
148
149
150/**
151 * An account is a container owning projects, credentials, billing and other organization
152 * data and settings. Actors may own and be members of accounts.
153 */
154export type AccountActivityTimelineProjectActivitiesArgs = {
155  createdBefore?: InputMaybe<Scalars['DateTime']>;
156  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
157  limit: Scalars['Int'];
158};
159
160
161/**
162 * An account is a container owning projects, credentials, billing and other organization
163 * data and settings. Actors may own and be members of accounts.
164 */
165export type AccountAppleAppIdentifiersArgs = {
166  bundleIdentifier?: InputMaybe<Scalars['String']>;
167};
168
169
170/**
171 * An account is a container owning projects, credentials, billing and other organization
172 * data and settings. Actors may own and be members of accounts.
173 */
174export type AccountAppleDevicesArgs = {
175  identifier?: InputMaybe<Scalars['String']>;
176  limit?: InputMaybe<Scalars['Int']>;
177  offset?: InputMaybe<Scalars['Int']>;
178};
179
180
181/**
182 * An account is a container owning projects, credentials, billing and other organization
183 * data and settings. Actors may own and be members of accounts.
184 */
185export type AccountAppleProvisioningProfilesArgs = {
186  appleAppIdentifierId?: InputMaybe<Scalars['ID']>;
187};
188
189
190/**
191 * An account is a container owning projects, credentials, billing and other organization
192 * data and settings. Actors may own and be members of accounts.
193 */
194export type AccountAppleTeamsArgs = {
195  appleTeamIdentifier?: InputMaybe<Scalars['String']>;
196  limit?: InputMaybe<Scalars['Int']>;
197  offset?: InputMaybe<Scalars['Int']>;
198};
199
200
201/**
202 * An account is a container owning projects, credentials, billing and other organization
203 * data and settings. Actors may own and be members of accounts.
204 */
205export type AccountAppsArgs = {
206  includeUnpublished?: InputMaybe<Scalars['Boolean']>;
207  limit: Scalars['Int'];
208  offset: Scalars['Int'];
209};
210
211
212/**
213 * An account is a container owning projects, credentials, billing and other organization
214 * data and settings. Actors may own and be members of accounts.
215 */
216export type AccountAppsPaginatedArgs = {
217  after?: InputMaybe<Scalars['String']>;
218  before?: InputMaybe<Scalars['String']>;
219  filter?: InputMaybe<AccountAppsFilterInput>;
220  first?: InputMaybe<Scalars['Int']>;
221  last?: InputMaybe<Scalars['Int']>;
222};
223
224
225/**
226 * An account is a container owning projects, credentials, billing and other organization
227 * data and settings. Actors may own and be members of accounts.
228 */
229export type AccountBillingPeriodArgs = {
230  date: Scalars['DateTime'];
231};
232
233
234/**
235 * An account is a container owning projects, credentials, billing and other organization
236 * data and settings. Actors may own and be members of accounts.
237 */
238export type AccountBuildJobsArgs = {
239  limit: Scalars['Int'];
240  offset: Scalars['Int'];
241  status?: InputMaybe<BuildJobStatus>;
242};
243
244
245/**
246 * An account is a container owning projects, credentials, billing and other organization
247 * data and settings. Actors may own and be members of accounts.
248 */
249export type AccountBuildOrBuildJobsArgs = {
250  createdBefore?: InputMaybe<Scalars['DateTime']>;
251  limit: Scalars['Int'];
252};
253
254
255/**
256 * An account is a container owning projects, credentials, billing and other organization
257 * data and settings. Actors may own and be members of accounts.
258 */
259export type AccountBuildsArgs = {
260  limit: Scalars['Int'];
261  offset: Scalars['Int'];
262  platform?: InputMaybe<AppPlatform>;
263  status?: InputMaybe<BuildStatus>;
264};
265
266
267/**
268 * An account is a container owning projects, credentials, billing and other organization
269 * data and settings. Actors may own and be members of accounts.
270 */
271export type AccountEnvironmentSecretsArgs = {
272  filterNames?: InputMaybe<Array<Scalars['String']>>;
273};
274
275
276/**
277 * An account is a container owning projects, credentials, billing and other organization
278 * data and settings. Actors may own and be members of accounts.
279 */
280export type AccountSnacksArgs = {
281  limit: Scalars['Int'];
282  offset: Scalars['Int'];
283};
284
285
286/**
287 * An account is a container owning projects, credentials, billing and other organization
288 * data and settings. Actors may own and be members of accounts.
289 */
290export type AccountTimelineActivityArgs = {
291  after?: InputMaybe<Scalars['String']>;
292  before?: InputMaybe<Scalars['String']>;
293  filter?: InputMaybe<TimelineActivityFilterInput>;
294  first?: InputMaybe<Scalars['Int']>;
295  last?: InputMaybe<Scalars['Int']>;
296};
297
298export type AccountAppsConnection = {
299  __typename?: 'AccountAppsConnection';
300  edges: Array<AccountAppsEdge>;
301  pageInfo: PageInfo;
302};
303
304export type AccountAppsEdge = {
305  __typename?: 'AccountAppsEdge';
306  cursor: Scalars['String'];
307  node: App;
308};
309
310export type AccountAppsFilterInput = {
311  sortByField: AccountAppsSortByField;
312};
313
314export enum AccountAppsSortByField {
315  LatestActivityTime = 'LATEST_ACTIVITY_TIME',
316  /**
317   * Name prefers the display name but falls back to full_name with @account/
318   * part stripped.
319   */
320  Name = 'NAME'
321}
322
323export type AccountDataInput = {
324  name: Scalars['String'];
325};
326
327export type AccountMutation = {
328  __typename?: 'AccountMutation';
329  /**
330   * Makes a one time purchase
331   * @deprecated Build packs are no longer supported
332   */
333  buyProduct?: Maybe<Account>;
334  /** Cancels all subscriptions immediately */
335  cancelAllSubscriptionsImmediately: Account;
336  /** Cancel scheduled subscription change */
337  cancelScheduledSubscriptionChange: Account;
338  /** Cancels the active subscription */
339  cancelSubscription: Account;
340  /** Upgrades or downgrades the active subscription to the newPlanIdentifier, which must be one of the EAS plans (i.e., Production or Enterprise). */
341  changePlan: Account;
342  /** Add specified account Permissions for Actor. Actor must already have at least one permission on the account. */
343  grantActorPermissions: Account;
344  /** Rename this account and the primary user's username if this account is a personal account */
345  rename: Account;
346  /** Requests a refund for the specified charge by requesting a manual refund from support */
347  requestRefund?: Maybe<Scalars['Boolean']>;
348  /** Revoke specified Permissions for Actor. Actor must already have at least one permission on the account. */
349  revokeActorPermissions: Account;
350  /**
351   * Update setting to purchase new build packs when the current one is consumed
352   * @deprecated Build packs are no longer supported
353   */
354  setBuildAutoRenew?: Maybe<Account>;
355  /** Set payment details */
356  setPaymentSource: Account;
357  /** Require authorization to send push notifications for experiences owned by this account */
358  setPushSecurityEnabled: Account;
359};
360
361
362export type AccountMutationBuyProductArgs = {
363  accountName: Scalars['ID'];
364  autoRenew?: InputMaybe<Scalars['Boolean']>;
365  paymentSource?: InputMaybe<Scalars['ID']>;
366  productId: Scalars['ID'];
367};
368
369
370export type AccountMutationCancelAllSubscriptionsImmediatelyArgs = {
371  accountID: Scalars['ID'];
372};
373
374
375export type AccountMutationCancelScheduledSubscriptionChangeArgs = {
376  accountID: Scalars['ID'];
377};
378
379
380export type AccountMutationCancelSubscriptionArgs = {
381  accountName: Scalars['ID'];
382};
383
384
385export type AccountMutationChangePlanArgs = {
386  accountID: Scalars['ID'];
387  couponCode?: InputMaybe<Scalars['String']>;
388  newPlanIdentifier: Scalars['String'];
389};
390
391
392export type AccountMutationGrantActorPermissionsArgs = {
393  accountID: Scalars['ID'];
394  actorID: Scalars['ID'];
395  permissions?: InputMaybe<Array<InputMaybe<Permission>>>;
396};
397
398
399export type AccountMutationRenameArgs = {
400  accountID: Scalars['ID'];
401  newName: Scalars['String'];
402};
403
404
405export type AccountMutationRequestRefundArgs = {
406  accountID: Scalars['ID'];
407  chargeID: Scalars['ID'];
408  description?: InputMaybe<Scalars['String']>;
409  reason?: InputMaybe<Scalars['String']>;
410};
411
412
413export type AccountMutationRevokeActorPermissionsArgs = {
414  accountID: Scalars['ID'];
415  actorID: Scalars['ID'];
416  permissions?: InputMaybe<Array<InputMaybe<Permission>>>;
417};
418
419
420export type AccountMutationSetBuildAutoRenewArgs = {
421  accountName: Scalars['ID'];
422  autoRenew?: InputMaybe<Scalars['Boolean']>;
423};
424
425
426export type AccountMutationSetPaymentSourceArgs = {
427  accountName: Scalars['ID'];
428  paymentSource: Scalars['ID'];
429};
430
431
432export type AccountMutationSetPushSecurityEnabledArgs = {
433  accountID: Scalars['ID'];
434  pushSecurityEnabled: Scalars['Boolean'];
435};
436
437export type AccountNotificationSubscriptionInput = {
438  accountId: Scalars['ID'];
439  event: NotificationEvent;
440  type: NotificationType;
441  userId: Scalars['ID'];
442};
443
444export type AccountQuery = {
445  __typename?: 'AccountQuery';
446  /** Query an Account by ID */
447  byId: Account;
448  /** Query an Account by name */
449  byName: Account;
450};
451
452
453export type AccountQueryByIdArgs = {
454  accountId: Scalars['String'];
455};
456
457
458export type AccountQueryByNameArgs = {
459  accountName: Scalars['String'];
460};
461
462/** Auth configuration data for an SSO account. */
463export type AccountSsoConfiguration = {
464  __typename?: 'AccountSSOConfiguration';
465  authEndpoint?: Maybe<Scalars['String']>;
466  authProtocol: AuthProtocolType;
467  authProviderIdentifier: Scalars['String'];
468  clientIdentifier: Scalars['String'];
469  clientSecret: Scalars['String'];
470  createdAt: Scalars['DateTime'];
471  endSessionEndpoint?: Maybe<Scalars['String']>;
472  id: Scalars['ID'];
473  issuer: Scalars['String'];
474  jwksEndpoint?: Maybe<Scalars['String']>;
475  revokeEndpoint?: Maybe<Scalars['String']>;
476  tokenEndpoint?: Maybe<Scalars['String']>;
477  updatedAt: Scalars['DateTime'];
478  userInfoEndpoint?: Maybe<Scalars['String']>;
479};
480
481export type AccountSsoConfigurationData = {
482  authEndpoint?: InputMaybe<Scalars['String']>;
483  authProtocol: AuthProtocolType;
484  authProviderIdentifier: Scalars['String'];
485  clientIdentifier: Scalars['String'];
486  clientSecret: Scalars['String'];
487  endSessionEndpoint?: InputMaybe<Scalars['String']>;
488  issuer: Scalars['String'];
489  jwksEndpoint?: InputMaybe<Scalars['String']>;
490  revokeEndpoint?: InputMaybe<Scalars['String']>;
491  tokenEndpoint?: InputMaybe<Scalars['String']>;
492  userInfoEndpoint?: InputMaybe<Scalars['String']>;
493};
494
495export type AccountSsoConfigurationMutation = {
496  __typename?: 'AccountSSOConfigurationMutation';
497  /** Create an AccountSSOConfiguration for an Account */
498  createAccountSSOConfiguration: AccountSsoConfiguration;
499  /** Delete an AccountSSOConfiguration */
500  deleteAccountSSOConfiguration: DeleteAccountSsoConfigurationResult;
501  /** Update an AccountSSOConfiguration */
502  updateAccountSSOConfiguration: AccountSsoConfiguration;
503};
504
505
506export type AccountSsoConfigurationMutationCreateAccountSsoConfigurationArgs = {
507  accountId: Scalars['ID'];
508  accountSSOConfigurationData: AccountSsoConfigurationData;
509};
510
511
512export type AccountSsoConfigurationMutationDeleteAccountSsoConfigurationArgs = {
513  id: Scalars['ID'];
514};
515
516
517export type AccountSsoConfigurationMutationUpdateAccountSsoConfigurationArgs = {
518  accountSSOConfigurationData: AccountSsoConfigurationData;
519  id: Scalars['ID'];
520};
521
522/** Public auth configuration data for an SSO account. */
523export type AccountSsoConfigurationPublicData = {
524  __typename?: 'AccountSSOConfigurationPublicData';
525  authEndpoint?: Maybe<Scalars['String']>;
526  authProtocol: AuthProtocolType;
527  authProviderIdentifier: Scalars['String'];
528  clientIdentifier: Scalars['String'];
529  endSessionEndpoint?: Maybe<Scalars['String']>;
530  id: Scalars['ID'];
531  issuer: Scalars['String'];
532  jwksEndpoint?: Maybe<Scalars['String']>;
533  revokeEndpoint?: Maybe<Scalars['String']>;
534  tokenEndpoint?: Maybe<Scalars['String']>;
535  userInfoEndpoint?: Maybe<Scalars['String']>;
536};
537
538export type AccountSsoConfigurationPublicDataQuery = {
539  __typename?: 'AccountSSOConfigurationPublicDataQuery';
540  /** Get AccountSSOConfiguration public data by account name */
541  publicDataByAccountName: AccountSsoConfigurationPublicData;
542};
543
544
545export type AccountSsoConfigurationPublicDataQueryPublicDataByAccountNameArgs = {
546  accountName: Scalars['String'];
547};
548
549export type AccountUsageEasBuildMetadata = {
550  __typename?: 'AccountUsageEASBuildMetadata';
551  billingResourceClass: EasBuildBillingResourceClass;
552  platform: AppPlatform;
553};
554
555export type AccountUsageMetadata = AccountUsageEasBuildMetadata;
556
557export type AccountUsageMetric = {
558  __typename?: 'AccountUsageMetric';
559  id: Scalars['ID'];
560  metricType: UsageMetricType;
561  serviceMetric: EasServiceMetric;
562  timestamp: Scalars['DateTime'];
563  value: Scalars['Float'];
564};
565
566export type AccountUsageMetrics = {
567  __typename?: 'AccountUsageMetrics';
568  byBillingPeriod: UsageMetricTotal;
569  metricsForServiceMetric: Array<AccountUsageMetric>;
570};
571
572
573export type AccountUsageMetricsByBillingPeriodArgs = {
574  date: Scalars['DateTime'];
575  service?: InputMaybe<EasService>;
576};
577
578
579export type AccountUsageMetricsMetricsForServiceMetricArgs = {
580  filterParams?: InputMaybe<Scalars['JSONObject']>;
581  granularity: UsageMetricsGranularity;
582  serviceMetric: EasServiceMetric;
583  timespan: UsageMetricsTimespan;
584};
585
586export type ActivityTimelineProjectActivity = {
587  activityTimestamp: Scalars['DateTime'];
588  actor?: Maybe<Actor>;
589  id: Scalars['ID'];
590};
591
592export enum ActivityTimelineProjectActivityType {
593  Build = 'BUILD',
594  BuildJob = 'BUILD_JOB',
595  Submission = 'SUBMISSION',
596  Update = 'UPDATE'
597}
598
599/** A regular user, SSO user, or robot that can authenticate with Expo services and be a member of accounts. */
600export type Actor = {
601  /** Access Tokens belonging to this actor */
602  accessTokens: Array<AccessToken>;
603  /** Associated accounts */
604  accounts: Array<Account>;
605  created: Scalars['DateTime'];
606  /**
607   * Best-effort human readable name for this actor for use in user interfaces during action attribution.
608   * For example, when displaying a sentence indicating that actor X created a build or published an update.
609   */
610  displayName: Scalars['String'];
611  /**
612   * Server feature gate values for this actor, optionally filtering by desired gates.
613   * Only resolves for the viewer.
614   */
615  featureGates: Scalars['JSONObject'];
616  firstName?: Maybe<Scalars['String']>;
617  id: Scalars['ID'];
618  isExpoAdmin: Scalars['Boolean'];
619};
620
621
622/** A regular user, SSO user, or robot that can authenticate with Expo services and be a member of accounts. */
623export type ActorFeatureGatesArgs = {
624  filter?: InputMaybe<Array<Scalars['String']>>;
625};
626
627export type ActorQuery = {
628  __typename?: 'ActorQuery';
629  /** Query an Actor by ID */
630  byId: Actor;
631};
632
633
634export type ActorQueryByIdArgs = {
635  id: Scalars['ID'];
636};
637
638export type AddUserInput = {
639  audience?: InputMaybe<MailchimpAudience>;
640  email: Scalars['String'];
641  tags?: InputMaybe<Array<MailchimpTag>>;
642};
643
644export type AddUserPayload = {
645  __typename?: 'AddUserPayload';
646  email_address?: Maybe<Scalars['String']>;
647  id?: Maybe<Scalars['String']>;
648  list_id?: Maybe<Scalars['String']>;
649  status?: Maybe<Scalars['String']>;
650  tags?: Maybe<Array<MailchimpTagPayload>>;
651  timestamp_signup?: Maybe<Scalars['String']>;
652};
653
654export type AddonDetails = {
655  __typename?: 'AddonDetails';
656  id: Scalars['ID'];
657  name: Scalars['String'];
658  nextInvoice?: Maybe<Scalars['DateTime']>;
659  planId: Scalars['String'];
660  willCancel?: Maybe<Scalars['Boolean']>;
661};
662
663export type Address = {
664  __typename?: 'Address';
665  city?: Maybe<Scalars['String']>;
666  country?: Maybe<Scalars['String']>;
667  line1?: Maybe<Scalars['String']>;
668  state?: Maybe<Scalars['String']>;
669  zip?: Maybe<Scalars['String']>;
670};
671
672export type AndroidAppBuildCredentials = {
673  __typename?: 'AndroidAppBuildCredentials';
674  androidKeystore?: Maybe<AndroidKeystore>;
675  id: Scalars['ID'];
676  isDefault: Scalars['Boolean'];
677  isLegacy: Scalars['Boolean'];
678  name: Scalars['String'];
679};
680
681/** @isDefault: if set, these build credentials will become the default for the Android app. All other build credentials will have their default status set to false. */
682export type AndroidAppBuildCredentialsInput = {
683  isDefault: Scalars['Boolean'];
684  keystoreId: Scalars['ID'];
685  name: Scalars['String'];
686};
687
688export type AndroidAppBuildCredentialsMutation = {
689  __typename?: 'AndroidAppBuildCredentialsMutation';
690  /** Create a set of build credentials for an Android app */
691  createAndroidAppBuildCredentials: AndroidAppBuildCredentials;
692  /** delete a set of build credentials for an Android app */
693  deleteAndroidAppBuildCredentials: DeleteAndroidAppBuildCredentialsResult;
694  /** Set the build credentials to be the default for the Android app */
695  setDefault: AndroidAppBuildCredentials;
696  /** Set the keystore to be used for an Android app */
697  setKeystore: AndroidAppBuildCredentials;
698  /** Set the name of a set of build credentials to be used for an Android app */
699  setName: AndroidAppBuildCredentials;
700};
701
702
703export type AndroidAppBuildCredentialsMutationCreateAndroidAppBuildCredentialsArgs = {
704  androidAppBuildCredentialsInput: AndroidAppBuildCredentialsInput;
705  androidAppCredentialsId: Scalars['ID'];
706};
707
708
709export type AndroidAppBuildCredentialsMutationDeleteAndroidAppBuildCredentialsArgs = {
710  id: Scalars['ID'];
711};
712
713
714export type AndroidAppBuildCredentialsMutationSetDefaultArgs = {
715  id: Scalars['ID'];
716  isDefault: Scalars['Boolean'];
717};
718
719
720export type AndroidAppBuildCredentialsMutationSetKeystoreArgs = {
721  id: Scalars['ID'];
722  keystoreId: Scalars['ID'];
723};
724
725
726export type AndroidAppBuildCredentialsMutationSetNameArgs = {
727  id: Scalars['ID'];
728  name: Scalars['String'];
729};
730
731export type AndroidAppCredentials = {
732  __typename?: 'AndroidAppCredentials';
733  /** @deprecated use androidAppBuildCredentialsList instead */
734  androidAppBuildCredentialsArray: Array<AndroidAppBuildCredentials>;
735  androidAppBuildCredentialsList: Array<AndroidAppBuildCredentials>;
736  androidFcm?: Maybe<AndroidFcm>;
737  app: App;
738  applicationIdentifier?: Maybe<Scalars['String']>;
739  googleServiceAccountKeyForSubmissions?: Maybe<GoogleServiceAccountKey>;
740  id: Scalars['ID'];
741  isLegacy: Scalars['Boolean'];
742};
743
744export type AndroidAppCredentialsFilter = {
745  applicationIdentifier?: InputMaybe<Scalars['String']>;
746  legacyOnly?: InputMaybe<Scalars['Boolean']>;
747};
748
749export type AndroidAppCredentialsInput = {
750  fcmId?: InputMaybe<Scalars['ID']>;
751  googleServiceAccountKeyForSubmissionsId?: InputMaybe<Scalars['ID']>;
752};
753
754export type AndroidAppCredentialsMutation = {
755  __typename?: 'AndroidAppCredentialsMutation';
756  /** Create a set of credentials for an Android app */
757  createAndroidAppCredentials: AndroidAppCredentials;
758  /** Delete a set of credentials for an Android app */
759  deleteAndroidAppCredentials: DeleteAndroidAppCredentialsResult;
760  /** Set the FCM push key to be used in an Android app */
761  setFcm: AndroidAppCredentials;
762  /** Set the Google Service Account Key to be used for submitting an Android app */
763  setGoogleServiceAccountKeyForSubmissions: AndroidAppCredentials;
764};
765
766
767export type AndroidAppCredentialsMutationCreateAndroidAppCredentialsArgs = {
768  androidAppCredentialsInput: AndroidAppCredentialsInput;
769  appId: Scalars['ID'];
770  applicationIdentifier: Scalars['String'];
771};
772
773
774export type AndroidAppCredentialsMutationDeleteAndroidAppCredentialsArgs = {
775  id: Scalars['ID'];
776};
777
778
779export type AndroidAppCredentialsMutationSetFcmArgs = {
780  fcmId: Scalars['ID'];
781  id: Scalars['ID'];
782};
783
784
785export type AndroidAppCredentialsMutationSetGoogleServiceAccountKeyForSubmissionsArgs = {
786  googleServiceAccountKeyId: Scalars['ID'];
787  id: Scalars['ID'];
788};
789
790export enum AndroidBuildType {
791  Apk = 'APK',
792  AppBundle = 'APP_BUNDLE',
793  /** @deprecated Use developmentClient option instead. */
794  DevelopmentClient = 'DEVELOPMENT_CLIENT'
795}
796
797export type AndroidBuilderEnvironmentInput = {
798  env?: InputMaybe<Scalars['JSONObject']>;
799  expoCli?: InputMaybe<Scalars['String']>;
800  image?: InputMaybe<Scalars['String']>;
801  ndk?: InputMaybe<Scalars['String']>;
802  node?: InputMaybe<Scalars['String']>;
803  yarn?: InputMaybe<Scalars['String']>;
804};
805
806export type AndroidFcm = {
807  __typename?: 'AndroidFcm';
808  account: Account;
809  createdAt: Scalars['DateTime'];
810  /**
811   * Legacy FCM: returns the Cloud Messaging token, parses to a String
812   * FCM v1: returns the Service Account Key file, parses to an Object
813   */
814  credential: Scalars['JSON'];
815  id: Scalars['ID'];
816  snippet: FcmSnippet;
817  updatedAt: Scalars['DateTime'];
818  version: AndroidFcmVersion;
819};
820
821export type AndroidFcmInput = {
822  credential: Scalars['String'];
823  version: AndroidFcmVersion;
824};
825
826export type AndroidFcmMutation = {
827  __typename?: 'AndroidFcmMutation';
828  /** Create an FCM credential */
829  createAndroidFcm: AndroidFcm;
830  /** Delete an FCM credential */
831  deleteAndroidFcm: DeleteAndroidFcmResult;
832};
833
834
835export type AndroidFcmMutationCreateAndroidFcmArgs = {
836  accountId: Scalars['ID'];
837  androidFcmInput: AndroidFcmInput;
838};
839
840
841export type AndroidFcmMutationDeleteAndroidFcmArgs = {
842  id: Scalars['ID'];
843};
844
845export enum AndroidFcmVersion {
846  Legacy = 'LEGACY',
847  V1 = 'V1'
848}
849
850export type AndroidJobBuildCredentialsInput = {
851  keystore: AndroidJobKeystoreInput;
852};
853
854export type AndroidJobInput = {
855  applicationArchivePath?: InputMaybe<Scalars['String']>;
856  /** @deprecated */
857  artifactPath?: InputMaybe<Scalars['String']>;
858  buildArtifactPaths?: InputMaybe<Array<Scalars['String']>>;
859  buildProfile?: InputMaybe<Scalars['String']>;
860  buildType?: InputMaybe<AndroidBuildType>;
861  builderEnvironment?: InputMaybe<AndroidBuilderEnvironmentInput>;
862  cache?: InputMaybe<BuildCacheInput>;
863  customBuildConfig?: InputMaybe<CustomBuildConfigInput>;
864  developmentClient?: InputMaybe<Scalars['Boolean']>;
865  experimental?: InputMaybe<Scalars['JSONObject']>;
866  gradleCommand?: InputMaybe<Scalars['String']>;
867  mode?: InputMaybe<BuildMode>;
868  projectArchive: ProjectArchiveSourceInput;
869  projectRootDirectory: Scalars['String'];
870  releaseChannel?: InputMaybe<Scalars['String']>;
871  secrets?: InputMaybe<AndroidJobSecretsInput>;
872  triggeredBy?: InputMaybe<BuildTrigger>;
873  type: BuildWorkflow;
874  updates?: InputMaybe<BuildUpdatesInput>;
875  username?: InputMaybe<Scalars['String']>;
876  version?: InputMaybe<AndroidJobVersionInput>;
877};
878
879export type AndroidJobKeystoreInput = {
880  dataBase64: Scalars['String'];
881  keyAlias: Scalars['String'];
882  keyPassword?: InputMaybe<Scalars['String']>;
883  keystorePassword: Scalars['String'];
884};
885
886export type AndroidJobOverridesInput = {
887  applicationArchivePath?: InputMaybe<Scalars['String']>;
888  /** @deprecated */
889  artifactPath?: InputMaybe<Scalars['String']>;
890  buildArtifactPaths?: InputMaybe<Array<Scalars['String']>>;
891  buildProfile?: InputMaybe<Scalars['String']>;
892  buildType?: InputMaybe<AndroidBuildType>;
893  builderEnvironment?: InputMaybe<AndroidBuilderEnvironmentInput>;
894  cache?: InputMaybe<BuildCacheInput>;
895  developmentClient?: InputMaybe<Scalars['Boolean']>;
896  experimental?: InputMaybe<Scalars['JSONObject']>;
897  gradleCommand?: InputMaybe<Scalars['String']>;
898  mode?: InputMaybe<BuildMode>;
899  releaseChannel?: InputMaybe<Scalars['String']>;
900  secrets?: InputMaybe<AndroidJobSecretsInput>;
901  updates?: InputMaybe<BuildUpdatesInput>;
902  username?: InputMaybe<Scalars['String']>;
903  version?: InputMaybe<AndroidJobVersionInput>;
904};
905
906export type AndroidJobSecretsInput = {
907  buildCredentials?: InputMaybe<AndroidJobBuildCredentialsInput>;
908  robotAccessToken?: InputMaybe<Scalars['String']>;
909};
910
911export type AndroidJobVersionInput = {
912  versionCode: Scalars['String'];
913};
914
915export type AndroidKeystore = {
916  __typename?: 'AndroidKeystore';
917  account: Account;
918  createdAt: Scalars['DateTime'];
919  id: Scalars['ID'];
920  keyAlias: Scalars['String'];
921  keyPassword?: Maybe<Scalars['String']>;
922  keystore: Scalars['String'];
923  keystorePassword: Scalars['String'];
924  md5CertificateFingerprint?: Maybe<Scalars['String']>;
925  sha1CertificateFingerprint?: Maybe<Scalars['String']>;
926  sha256CertificateFingerprint?: Maybe<Scalars['String']>;
927  type: AndroidKeystoreType;
928  updatedAt: Scalars['DateTime'];
929};
930
931export type AndroidKeystoreInput = {
932  base64EncodedKeystore: Scalars['String'];
933  keyAlias: Scalars['String'];
934  keyPassword?: InputMaybe<Scalars['String']>;
935  keystorePassword: Scalars['String'];
936  type: AndroidKeystoreType;
937};
938
939export type AndroidKeystoreMutation = {
940  __typename?: 'AndroidKeystoreMutation';
941  /** Create a Keystore */
942  createAndroidKeystore?: Maybe<AndroidKeystore>;
943  /** Delete a Keystore */
944  deleteAndroidKeystore: DeleteAndroidKeystoreResult;
945};
946
947
948export type AndroidKeystoreMutationCreateAndroidKeystoreArgs = {
949  accountId: Scalars['ID'];
950  androidKeystoreInput: AndroidKeystoreInput;
951};
952
953
954export type AndroidKeystoreMutationDeleteAndroidKeystoreArgs = {
955  id: Scalars['ID'];
956};
957
958export enum AndroidKeystoreType {
959  Jks = 'JKS',
960  Pkcs12 = 'PKCS12',
961  Unknown = 'UNKNOWN'
962}
963
964export type AndroidSubmissionConfig = {
965  __typename?: 'AndroidSubmissionConfig';
966  /** @deprecated applicationIdentifier is deprecated and will be auto-detected on submit */
967  applicationIdentifier?: Maybe<Scalars['String']>;
968  /** @deprecated archiveType is deprecated and will be null */
969  archiveType?: Maybe<SubmissionAndroidArchiveType>;
970  releaseStatus?: Maybe<SubmissionAndroidReleaseStatus>;
971  track: SubmissionAndroidTrack;
972};
973
974export type AndroidSubmissionConfigInput = {
975  applicationIdentifier?: InputMaybe<Scalars['String']>;
976  archiveUrl?: InputMaybe<Scalars['String']>;
977  changesNotSentForReview?: InputMaybe<Scalars['Boolean']>;
978  googleServiceAccountKeyId?: InputMaybe<Scalars['String']>;
979  googleServiceAccountKeyJson?: InputMaybe<Scalars['String']>;
980  releaseStatus?: InputMaybe<SubmissionAndroidReleaseStatus>;
981  track: SubmissionAndroidTrack;
982};
983
984/** Represents an Exponent App (or Experience in legacy terms) */
985export type App = Project & {
986  __typename?: 'App';
987  /** @deprecated Legacy access tokens are deprecated */
988  accessTokens: Array<Maybe<AccessToken>>;
989  /** Coalesced project activity for an app */
990  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
991  /** Android app credentials for the project */
992  androidAppCredentials: Array<AndroidAppCredentials>;
993  /** ios.appStoreUrl field from most recent classic update manifest */
994  appStoreUrl?: Maybe<Scalars['String']>;
995  assetLimitPerUpdateGroup: Scalars['Int'];
996  branchesPaginated: AppBranchesConnection;
997  buildJobs: Array<BuildJob>;
998  /**
999   * Coalesced Build (EAS) or BuildJob (Classic) items for this app.
1000   * @deprecated Use activityTimelineProjectActivities with filterTypes instead
1001   */
1002  buildOrBuildJobs: Array<BuildOrBuildJob>;
1003  /** (EAS Build) Builds associated with this app */
1004  builds: Array<Build>;
1005  buildsPaginated: AppBuildsConnection;
1006  /** Classic update release channel names that have at least one build */
1007  buildsReleaseChannels: Array<Scalars['String']>;
1008  channelsPaginated: AppChannelsConnection;
1009  deployment?: Maybe<Deployment>;
1010  /** Deployments associated with this app */
1011  deployments: DeploymentsConnection;
1012  description: Scalars['String'];
1013  /** Environment secrets for an app */
1014  environmentSecrets: Array<EnvironmentSecret>;
1015  fullName: Scalars['String'];
1016  githubRepository?: Maybe<GitHubRepository>;
1017  githubRepositorySettings?: Maybe<GitHubRepositorySettings>;
1018  /** githubUrl field from most recent classic update manifest */
1019  githubUrl?: Maybe<Scalars['String']>;
1020  /** Info about the icon specified in the most recent classic update manifest */
1021  icon?: Maybe<AppIcon>;
1022  /** @deprecated No longer supported */
1023  iconUrl?: Maybe<Scalars['String']>;
1024  id: Scalars['ID'];
1025  /** App query field for querying EAS Insights about this app */
1026  insights: AppInsights;
1027  /** iOS app credentials for the project */
1028  iosAppCredentials: Array<IosAppCredentials>;
1029  /** Whether the latest classic update publish is using a deprecated SDK version */
1030  isDeprecated: Scalars['Boolean'];
1031  /** @deprecated 'likes' have been deprecated. */
1032  isLikedByMe: Scalars['Boolean'];
1033  /** @deprecated No longer supported */
1034  lastPublishedTime: Scalars['DateTime'];
1035  /** Time of the last user activity (update, branch, submission). */
1036  latestActivity: Scalars['DateTime'];
1037  latestAppVersionByPlatformAndApplicationIdentifier?: Maybe<AppVersion>;
1038  latestReleaseForReleaseChannel?: Maybe<AppRelease>;
1039  /** ID of latest classic update release */
1040  latestReleaseId: Scalars['ID'];
1041  /** @deprecated 'likes' have been deprecated. */
1042  likeCount: Scalars['Int'];
1043  /** @deprecated 'likes' have been deprecated. */
1044  likedBy: Array<Maybe<User>>;
1045  name: Scalars['String'];
1046  ownerAccount: Account;
1047  /** @deprecated No longer supported */
1048  packageName: Scalars['String'];
1049  /** @deprecated No longer supported */
1050  packageUsername: Scalars['String'];
1051  /** android.playStoreUrl field from most recent classic update manifest */
1052  playStoreUrl?: Maybe<Scalars['String']>;
1053  /** @deprecated Use 'privacySetting' instead. */
1054  privacy: Scalars['String'];
1055  privacySetting: AppPrivacy;
1056  /** Whether there have been any classic update publishes */
1057  published: Scalars['Boolean'];
1058  pushSecurityEnabled: Scalars['Boolean'];
1059  /** Classic update release channel names (to be removed) */
1060  releaseChannels: Array<Scalars['String']>;
1061  /** @deprecated Legacy access tokens are deprecated */
1062  requiresAccessTokenForPushSecurity: Scalars['Boolean'];
1063  scopeKey: Scalars['String'];
1064  /** SDK version of the latest classic update publish, 0.0.0 otherwise */
1065  sdkVersion: Scalars['String'];
1066  slug: Scalars['String'];
1067  /** EAS Submissions associated with this app */
1068  submissions: Array<Submission>;
1069  submissionsPaginated: AppSubmissionsConnection;
1070  /** Coalesced project activity for an app using pagination */
1071  timelineActivity: TimelineActivityConnection;
1072  /** @deprecated 'likes' have been deprecated. */
1073  trendScore: Scalars['Float'];
1074  /** get an EAS branch owned by the app by name */
1075  updateBranchByName?: Maybe<UpdateBranch>;
1076  /** EAS branches owned by an app */
1077  updateBranches: Array<UpdateBranch>;
1078  /** get an EAS channel owned by the app by name */
1079  updateChannelByName?: Maybe<UpdateChannel>;
1080  /** EAS channels owned by an app */
1081  updateChannels: Array<UpdateChannel>;
1082  /** EAS updates owned by an app grouped by update group */
1083  updateGroups: Array<Array<Update>>;
1084  /** Time of last classic update publish */
1085  updated: Scalars['DateTime'];
1086  /** EAS updates owned by an app */
1087  updates: Array<Update>;
1088  updatesPaginated: AppUpdatesConnection;
1089  /** @deprecated Use ownerAccount.name instead */
1090  username: Scalars['String'];
1091  /** @deprecated No longer supported */
1092  users?: Maybe<Array<Maybe<User>>>;
1093  /** Webhooks for an app */
1094  webhooks: Array<Webhook>;
1095};
1096
1097
1098/** Represents an Exponent App (or Experience in legacy terms) */
1099export type AppActivityTimelineProjectActivitiesArgs = {
1100  createdBefore?: InputMaybe<Scalars['DateTime']>;
1101  filterChannels?: InputMaybe<Array<Scalars['String']>>;
1102  filterPlatforms?: InputMaybe<Array<AppPlatform>>;
1103  filterReleaseChannels?: InputMaybe<Array<Scalars['String']>>;
1104  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
1105  limit: Scalars['Int'];
1106};
1107
1108
1109/** Represents an Exponent App (or Experience in legacy terms) */
1110export type AppAndroidAppCredentialsArgs = {
1111  filter?: InputMaybe<AndroidAppCredentialsFilter>;
1112};
1113
1114
1115/** Represents an Exponent App (or Experience in legacy terms) */
1116export type AppBranchesPaginatedArgs = {
1117  after?: InputMaybe<Scalars['String']>;
1118  before?: InputMaybe<Scalars['String']>;
1119  first?: InputMaybe<Scalars['Int']>;
1120  last?: InputMaybe<Scalars['Int']>;
1121};
1122
1123
1124/** Represents an Exponent App (or Experience in legacy terms) */
1125export type AppBuildJobsArgs = {
1126  limit: Scalars['Int'];
1127  offset: Scalars['Int'];
1128  status?: InputMaybe<BuildStatus>;
1129};
1130
1131
1132/** Represents an Exponent App (or Experience in legacy terms) */
1133export type AppBuildOrBuildJobsArgs = {
1134  createdBefore?: InputMaybe<Scalars['DateTime']>;
1135  limit: Scalars['Int'];
1136};
1137
1138
1139/** Represents an Exponent App (or Experience in legacy terms) */
1140export type AppBuildsArgs = {
1141  filter?: InputMaybe<BuildFilter>;
1142  limit: Scalars['Int'];
1143  offset: Scalars['Int'];
1144  platform?: InputMaybe<AppPlatform>;
1145  status?: InputMaybe<BuildStatus>;
1146};
1147
1148
1149/** Represents an Exponent App (or Experience in legacy terms) */
1150export type AppBuildsPaginatedArgs = {
1151  after?: InputMaybe<Scalars['String']>;
1152  before?: InputMaybe<Scalars['String']>;
1153  filter?: InputMaybe<BuildFilterInput>;
1154  first?: InputMaybe<Scalars['Int']>;
1155  last?: InputMaybe<Scalars['Int']>;
1156};
1157
1158
1159/** Represents an Exponent App (or Experience in legacy terms) */
1160export type AppChannelsPaginatedArgs = {
1161  after?: InputMaybe<Scalars['String']>;
1162  before?: InputMaybe<Scalars['String']>;
1163  filter?: InputMaybe<ChannelFilterInput>;
1164  first?: InputMaybe<Scalars['Int']>;
1165  last?: InputMaybe<Scalars['Int']>;
1166};
1167
1168
1169/** Represents an Exponent App (or Experience in legacy terms) */
1170export type AppDeploymentArgs = {
1171  channel: Scalars['String'];
1172  runtimeVersion: Scalars['String'];
1173};
1174
1175
1176/** Represents an Exponent App (or Experience in legacy terms) */
1177export type AppDeploymentsArgs = {
1178  after?: InputMaybe<Scalars['String']>;
1179  before?: InputMaybe<Scalars['String']>;
1180  first?: InputMaybe<Scalars['Int']>;
1181  last?: InputMaybe<Scalars['Int']>;
1182};
1183
1184
1185/** Represents an Exponent App (or Experience in legacy terms) */
1186export type AppEnvironmentSecretsArgs = {
1187  filterNames?: InputMaybe<Array<Scalars['String']>>;
1188};
1189
1190
1191/** Represents an Exponent App (or Experience in legacy terms) */
1192export type AppIosAppCredentialsArgs = {
1193  filter?: InputMaybe<IosAppCredentialsFilter>;
1194};
1195
1196
1197/** Represents an Exponent App (or Experience in legacy terms) */
1198export type AppLatestAppVersionByPlatformAndApplicationIdentifierArgs = {
1199  applicationIdentifier: Scalars['String'];
1200  platform: AppPlatform;
1201};
1202
1203
1204/** Represents an Exponent App (or Experience in legacy terms) */
1205export type AppLatestReleaseForReleaseChannelArgs = {
1206  platform: AppPlatform;
1207  releaseChannel: Scalars['String'];
1208};
1209
1210
1211/** Represents an Exponent App (or Experience in legacy terms) */
1212export type AppLikedByArgs = {
1213  limit?: InputMaybe<Scalars['Int']>;
1214  offset?: InputMaybe<Scalars['Int']>;
1215};
1216
1217
1218/** Represents an Exponent App (or Experience in legacy terms) */
1219export type AppSubmissionsArgs = {
1220  filter: SubmissionFilter;
1221  limit: Scalars['Int'];
1222  offset: Scalars['Int'];
1223};
1224
1225
1226/** Represents an Exponent App (or Experience in legacy terms) */
1227export type AppSubmissionsPaginatedArgs = {
1228  after?: InputMaybe<Scalars['String']>;
1229  before?: InputMaybe<Scalars['String']>;
1230  first?: InputMaybe<Scalars['Int']>;
1231  last?: InputMaybe<Scalars['Int']>;
1232};
1233
1234
1235/** Represents an Exponent App (or Experience in legacy terms) */
1236export type AppTimelineActivityArgs = {
1237  after?: InputMaybe<Scalars['String']>;
1238  before?: InputMaybe<Scalars['String']>;
1239  filter?: InputMaybe<TimelineActivityFilterInput>;
1240  first?: InputMaybe<Scalars['Int']>;
1241  last?: InputMaybe<Scalars['Int']>;
1242};
1243
1244
1245/** Represents an Exponent App (or Experience in legacy terms) */
1246export type AppUpdateBranchByNameArgs = {
1247  name: Scalars['String'];
1248};
1249
1250
1251/** Represents an Exponent App (or Experience in legacy terms) */
1252export type AppUpdateBranchesArgs = {
1253  limit: Scalars['Int'];
1254  offset: Scalars['Int'];
1255};
1256
1257
1258/** Represents an Exponent App (or Experience in legacy terms) */
1259export type AppUpdateChannelByNameArgs = {
1260  name: Scalars['String'];
1261};
1262
1263
1264/** Represents an Exponent App (or Experience in legacy terms) */
1265export type AppUpdateChannelsArgs = {
1266  limit: Scalars['Int'];
1267  offset: Scalars['Int'];
1268};
1269
1270
1271/** Represents an Exponent App (or Experience in legacy terms) */
1272export type AppUpdateGroupsArgs = {
1273  filter?: InputMaybe<UpdatesFilter>;
1274  limit: Scalars['Int'];
1275  offset: Scalars['Int'];
1276};
1277
1278
1279/** Represents an Exponent App (or Experience in legacy terms) */
1280export type AppUpdatesArgs = {
1281  limit: Scalars['Int'];
1282  offset: Scalars['Int'];
1283};
1284
1285
1286/** Represents an Exponent App (or Experience in legacy terms) */
1287export type AppUpdatesPaginatedArgs = {
1288  after?: InputMaybe<Scalars['String']>;
1289  before?: InputMaybe<Scalars['String']>;
1290  first?: InputMaybe<Scalars['Int']>;
1291  last?: InputMaybe<Scalars['Int']>;
1292};
1293
1294
1295/** Represents an Exponent App (or Experience in legacy terms) */
1296export type AppWebhooksArgs = {
1297  filter?: InputMaybe<WebhookFilter>;
1298};
1299
1300export type AppBranchEdge = {
1301  __typename?: 'AppBranchEdge';
1302  cursor: Scalars['String'];
1303  node: UpdateBranch;
1304};
1305
1306export type AppBranchesConnection = {
1307  __typename?: 'AppBranchesConnection';
1308  edges: Array<AppBranchEdge>;
1309  pageInfo: PageInfo;
1310};
1311
1312export type AppBuildEdge = {
1313  __typename?: 'AppBuildEdge';
1314  cursor: Scalars['String'];
1315  node: BuildOrBuildJob;
1316};
1317
1318export type AppBuildsConnection = {
1319  __typename?: 'AppBuildsConnection';
1320  edges: Array<AppBuildEdge>;
1321  pageInfo: PageInfo;
1322};
1323
1324export type AppChannelEdge = {
1325  __typename?: 'AppChannelEdge';
1326  cursor: Scalars['String'];
1327  node: UpdateChannel;
1328};
1329
1330export type AppChannelsConnection = {
1331  __typename?: 'AppChannelsConnection';
1332  edges: Array<AppChannelEdge>;
1333  pageInfo: PageInfo;
1334};
1335
1336export type AppDataInput = {
1337  id: Scalars['ID'];
1338  privacy?: InputMaybe<Scalars['String']>;
1339};
1340
1341export type AppIcon = {
1342  __typename?: 'AppIcon';
1343  /** @deprecated No longer supported */
1344  colorPalette?: Maybe<Scalars['JSON']>;
1345  originalUrl: Scalars['String'];
1346  primaryColor?: Maybe<Scalars['String']>;
1347  url: Scalars['String'];
1348};
1349
1350export type AppInfoInput = {
1351  displayName?: InputMaybe<Scalars['String']>;
1352};
1353
1354export type AppInput = {
1355  accountId: Scalars['ID'];
1356  appInfo?: InputMaybe<AppInfoInput>;
1357  privacy: AppPrivacy;
1358  projectName: Scalars['String'];
1359};
1360
1361export type AppInsights = {
1362  __typename?: 'AppInsights';
1363  hasEventsFromExpoInsightsClientModule: Scalars['Boolean'];
1364  totalUniqueUsers?: Maybe<Scalars['Int']>;
1365  uniqueUsersByAppVersionOverTime: UniqueUsersOverTimeData;
1366  uniqueUsersByPlatformOverTime: UniqueUsersOverTimeData;
1367};
1368
1369
1370export type AppInsightsTotalUniqueUsersArgs = {
1371  timespan: InsightsTimespan;
1372};
1373
1374
1375export type AppInsightsUniqueUsersByAppVersionOverTimeArgs = {
1376  timespan: InsightsTimespan;
1377};
1378
1379
1380export type AppInsightsUniqueUsersByPlatformOverTimeArgs = {
1381  timespan: InsightsTimespan;
1382};
1383
1384export type AppMutation = {
1385  __typename?: 'AppMutation';
1386  /** Create an unpublished app */
1387  createApp: App;
1388  /** @deprecated No longer supported */
1389  grantAccess?: Maybe<App>;
1390  /** Set display info for app */
1391  setAppInfo: App;
1392  /** Require api token to send push notifs for experience */
1393  setPushSecurityEnabled: App;
1394};
1395
1396
1397export type AppMutationCreateAppArgs = {
1398  appInput: AppInput;
1399};
1400
1401
1402export type AppMutationGrantAccessArgs = {
1403  accessLevel?: InputMaybe<Scalars['String']>;
1404  toUser: Scalars['ID'];
1405};
1406
1407
1408export type AppMutationSetAppInfoArgs = {
1409  appId: Scalars['ID'];
1410  appInfo: AppInfoInput;
1411};
1412
1413
1414export type AppMutationSetPushSecurityEnabledArgs = {
1415  appId: Scalars['ID'];
1416  pushSecurityEnabled: Scalars['Boolean'];
1417};
1418
1419export type AppNotificationSubscriptionInput = {
1420  appId: Scalars['ID'];
1421  event: NotificationEvent;
1422  type: NotificationType;
1423  userId: Scalars['ID'];
1424};
1425
1426export enum AppPlatform {
1427  Android = 'ANDROID',
1428  Ios = 'IOS'
1429}
1430
1431export enum AppPrivacy {
1432  Hidden = 'HIDDEN',
1433  Public = 'PUBLIC',
1434  Unlisted = 'UNLISTED'
1435}
1436
1437export type AppQuery = {
1438  __typename?: 'AppQuery';
1439  /**
1440   * Public apps in the app directory
1441   * @deprecated App directory no longer supported
1442   */
1443  all: Array<App>;
1444  byFullName: App;
1445  /** Look up app by app id */
1446  byId: App;
1447};
1448
1449
1450export type AppQueryAllArgs = {
1451  filter: AppsFilter;
1452  limit?: InputMaybe<Scalars['Int']>;
1453  offset?: InputMaybe<Scalars['Int']>;
1454  sort: AppSort;
1455};
1456
1457
1458export type AppQueryByFullNameArgs = {
1459  fullName: Scalars['String'];
1460};
1461
1462
1463export type AppQueryByIdArgs = {
1464  appId: Scalars['String'];
1465};
1466
1467export type AppRelease = {
1468  __typename?: 'AppRelease';
1469  hash: Scalars['String'];
1470  id: Scalars['ID'];
1471  manifest: Scalars['JSON'];
1472  publishedTime: Scalars['DateTime'];
1473  publishingUsername: Scalars['String'];
1474  runtimeVersion?: Maybe<Scalars['String']>;
1475  s3Key: Scalars['String'];
1476  s3Url: Scalars['String'];
1477  sdkVersion: Scalars['String'];
1478  version: Scalars['String'];
1479};
1480
1481export enum AppSort {
1482  /** Sort by recently published */
1483  RecentlyPublished = 'RECENTLY_PUBLISHED',
1484  /** Sort by highest trendScore */
1485  Viewed = 'VIEWED'
1486}
1487
1488export type AppStoreConnectApiKey = {
1489  __typename?: 'AppStoreConnectApiKey';
1490  account: Account;
1491  appleTeam?: Maybe<AppleTeam>;
1492  createdAt: Scalars['DateTime'];
1493  id: Scalars['ID'];
1494  issuerIdentifier: Scalars['String'];
1495  keyIdentifier: Scalars['String'];
1496  name?: Maybe<Scalars['String']>;
1497  roles?: Maybe<Array<AppStoreConnectUserRole>>;
1498  updatedAt: Scalars['DateTime'];
1499};
1500
1501export type AppStoreConnectApiKeyInput = {
1502  appleTeamId?: InputMaybe<Scalars['ID']>;
1503  issuerIdentifier: Scalars['String'];
1504  keyIdentifier: Scalars['String'];
1505  keyP8: Scalars['String'];
1506  name?: InputMaybe<Scalars['String']>;
1507  roles?: InputMaybe<Array<AppStoreConnectUserRole>>;
1508};
1509
1510export type AppStoreConnectApiKeyMutation = {
1511  __typename?: 'AppStoreConnectApiKeyMutation';
1512  /** Create an App Store Connect Api Key for an Apple Team */
1513  createAppStoreConnectApiKey: AppStoreConnectApiKey;
1514  /** Delete an App Store Connect Api Key */
1515  deleteAppStoreConnectApiKey: DeleteAppStoreConnectApiKeyResult;
1516};
1517
1518
1519export type AppStoreConnectApiKeyMutationCreateAppStoreConnectApiKeyArgs = {
1520  accountId: Scalars['ID'];
1521  appStoreConnectApiKeyInput: AppStoreConnectApiKeyInput;
1522};
1523
1524
1525export type AppStoreConnectApiKeyMutationDeleteAppStoreConnectApiKeyArgs = {
1526  id: Scalars['ID'];
1527};
1528
1529export enum AppStoreConnectUserRole {
1530  AccessToReports = 'ACCESS_TO_REPORTS',
1531  AccountHolder = 'ACCOUNT_HOLDER',
1532  Admin = 'ADMIN',
1533  AppManager = 'APP_MANAGER',
1534  CloudManagedAppDistribution = 'CLOUD_MANAGED_APP_DISTRIBUTION',
1535  CloudManagedDeveloperId = 'CLOUD_MANAGED_DEVELOPER_ID',
1536  CreateApps = 'CREATE_APPS',
1537  CustomerSupport = 'CUSTOMER_SUPPORT',
1538  Developer = 'DEVELOPER',
1539  Finance = 'FINANCE',
1540  ImageManager = 'IMAGE_MANAGER',
1541  Marketing = 'MARKETING',
1542  ReadOnly = 'READ_ONLY',
1543  Sales = 'SALES',
1544  Technical = 'TECHNICAL',
1545  Unknown = 'UNKNOWN'
1546}
1547
1548export type AppSubmissionEdge = {
1549  __typename?: 'AppSubmissionEdge';
1550  cursor: Scalars['String'];
1551  node: Submission;
1552};
1553
1554export type AppSubmissionsConnection = {
1555  __typename?: 'AppSubmissionsConnection';
1556  edges: Array<AppSubmissionEdge>;
1557  pageInfo: PageInfo;
1558};
1559
1560export type AppUpdateEdge = {
1561  __typename?: 'AppUpdateEdge';
1562  cursor: Scalars['String'];
1563  node: Update;
1564};
1565
1566export type AppUpdatesConnection = {
1567  __typename?: 'AppUpdatesConnection';
1568  edges: Array<AppUpdateEdge>;
1569  pageInfo: PageInfo;
1570};
1571
1572/** Represents Play Store/App Store version of an application */
1573export type AppVersion = {
1574  __typename?: 'AppVersion';
1575  /**
1576   * Store identifier for an application
1577   *  - Android - applicationId
1578   *  - iOS - bundle identifier
1579   */
1580  applicationIdentifier: Scalars['String'];
1581  /**
1582   * Value that identifies build in a store (it's visible to developers, but not to end users)
1583   * - Android - versionCode in build.gradle ("android.versionCode" field in app.json)
1584   * - iOS - CFBundleVersion in Info.plist ("ios.buildNumber" field in app.json)
1585   */
1586  buildVersion: Scalars['String'];
1587  id: Scalars['ID'];
1588  platform: AppPlatform;
1589  runtimeVersion?: Maybe<Scalars['String']>;
1590  /**
1591   * User-facing version in a store
1592   * - Android - versionName in build.gradle ("version" field in app.json)
1593   * - iOS - CFBundleShortVersionString in Info.plist ("version" field in app.json)
1594   */
1595  storeVersion: Scalars['String'];
1596};
1597
1598export type AppVersionInput = {
1599  appId: Scalars['ID'];
1600  applicationIdentifier: Scalars['String'];
1601  buildVersion: Scalars['String'];
1602  platform: AppPlatform;
1603  runtimeVersion?: InputMaybe<Scalars['String']>;
1604  storeVersion: Scalars['String'];
1605};
1606
1607export type AppVersionMutation = {
1608  __typename?: 'AppVersionMutation';
1609  /** Create an app version */
1610  createAppVersion: AppVersion;
1611};
1612
1613
1614export type AppVersionMutationCreateAppVersionArgs = {
1615  appVersionInput: AppVersionInput;
1616};
1617
1618export type AppleAppIdentifier = {
1619  __typename?: 'AppleAppIdentifier';
1620  account: Account;
1621  appleTeam?: Maybe<AppleTeam>;
1622  bundleIdentifier: Scalars['String'];
1623  id: Scalars['ID'];
1624  parentAppleAppIdentifier?: Maybe<AppleAppIdentifier>;
1625};
1626
1627export type AppleAppIdentifierInput = {
1628  appleTeamId?: InputMaybe<Scalars['ID']>;
1629  bundleIdentifier: Scalars['String'];
1630  parentAppleAppId?: InputMaybe<Scalars['ID']>;
1631};
1632
1633export type AppleAppIdentifierMutation = {
1634  __typename?: 'AppleAppIdentifierMutation';
1635  /** Create an Identifier for an iOS App */
1636  createAppleAppIdentifier: AppleAppIdentifier;
1637};
1638
1639
1640export type AppleAppIdentifierMutationCreateAppleAppIdentifierArgs = {
1641  accountId: Scalars['ID'];
1642  appleAppIdentifierInput: AppleAppIdentifierInput;
1643};
1644
1645export type AppleDevice = {
1646  __typename?: 'AppleDevice';
1647  account: Account;
1648  appleTeam: AppleTeam;
1649  deviceClass?: Maybe<AppleDeviceClass>;
1650  enabled?: Maybe<Scalars['Boolean']>;
1651  id: Scalars['ID'];
1652  identifier: Scalars['String'];
1653  model?: Maybe<Scalars['String']>;
1654  name?: Maybe<Scalars['String']>;
1655  softwareVersion?: Maybe<Scalars['String']>;
1656};
1657
1658export enum AppleDeviceClass {
1659  Ipad = 'IPAD',
1660  Iphone = 'IPHONE'
1661}
1662
1663export type AppleDeviceInput = {
1664  appleTeamId: Scalars['ID'];
1665  deviceClass?: InputMaybe<AppleDeviceClass>;
1666  enabled?: InputMaybe<Scalars['Boolean']>;
1667  identifier: Scalars['String'];
1668  model?: InputMaybe<Scalars['String']>;
1669  name?: InputMaybe<Scalars['String']>;
1670  softwareVersion?: InputMaybe<Scalars['String']>;
1671};
1672
1673export type AppleDeviceMutation = {
1674  __typename?: 'AppleDeviceMutation';
1675  /** Create an Apple Device */
1676  createAppleDevice: AppleDevice;
1677  /** Delete an Apple Device */
1678  deleteAppleDevice: DeleteAppleDeviceResult;
1679  /** Update an Apple Device */
1680  updateAppleDevice: AppleDevice;
1681};
1682
1683
1684export type AppleDeviceMutationCreateAppleDeviceArgs = {
1685  accountId: Scalars['ID'];
1686  appleDeviceInput: AppleDeviceInput;
1687};
1688
1689
1690export type AppleDeviceMutationDeleteAppleDeviceArgs = {
1691  id: Scalars['ID'];
1692};
1693
1694
1695export type AppleDeviceMutationUpdateAppleDeviceArgs = {
1696  appleDeviceUpdateInput: AppleDeviceUpdateInput;
1697  id: Scalars['ID'];
1698};
1699
1700export type AppleDeviceRegistrationRequest = {
1701  __typename?: 'AppleDeviceRegistrationRequest';
1702  account: Account;
1703  appleTeam: AppleTeam;
1704  id: Scalars['ID'];
1705};
1706
1707export type AppleDeviceRegistrationRequestMutation = {
1708  __typename?: 'AppleDeviceRegistrationRequestMutation';
1709  /** Create an Apple Device registration request */
1710  createAppleDeviceRegistrationRequest: AppleDeviceRegistrationRequest;
1711};
1712
1713
1714export type AppleDeviceRegistrationRequestMutationCreateAppleDeviceRegistrationRequestArgs = {
1715  accountId: Scalars['ID'];
1716  appleTeamId: Scalars['ID'];
1717};
1718
1719export type AppleDeviceRegistrationRequestQuery = {
1720  __typename?: 'AppleDeviceRegistrationRequestQuery';
1721  byId: AppleDeviceRegistrationRequest;
1722};
1723
1724
1725export type AppleDeviceRegistrationRequestQueryByIdArgs = {
1726  id: Scalars['ID'];
1727};
1728
1729export type AppleDeviceUpdateInput = {
1730  name?: InputMaybe<Scalars['String']>;
1731};
1732
1733export type AppleDistributionCertificate = {
1734  __typename?: 'AppleDistributionCertificate';
1735  account: Account;
1736  appleTeam?: Maybe<AppleTeam>;
1737  certificateP12?: Maybe<Scalars['String']>;
1738  certificatePassword?: Maybe<Scalars['String']>;
1739  certificatePrivateSigningKey?: Maybe<Scalars['String']>;
1740  createdAt: Scalars['DateTime'];
1741  developerPortalIdentifier?: Maybe<Scalars['String']>;
1742  id: Scalars['ID'];
1743  iosAppBuildCredentialsList: Array<IosAppBuildCredentials>;
1744  serialNumber: Scalars['String'];
1745  updatedAt: Scalars['DateTime'];
1746  validityNotAfter: Scalars['DateTime'];
1747  validityNotBefore: Scalars['DateTime'];
1748};
1749
1750export type AppleDistributionCertificateInput = {
1751  appleTeamId?: InputMaybe<Scalars['ID']>;
1752  certP12: Scalars['String'];
1753  certPassword: Scalars['String'];
1754  certPrivateSigningKey?: InputMaybe<Scalars['String']>;
1755  developerPortalIdentifier?: InputMaybe<Scalars['String']>;
1756};
1757
1758export type AppleDistributionCertificateMutation = {
1759  __typename?: 'AppleDistributionCertificateMutation';
1760  /** Create a Distribution Certificate */
1761  createAppleDistributionCertificate?: Maybe<AppleDistributionCertificate>;
1762  /** Delete a Distribution Certificate */
1763  deleteAppleDistributionCertificate: DeleteAppleDistributionCertificateResult;
1764};
1765
1766
1767export type AppleDistributionCertificateMutationCreateAppleDistributionCertificateArgs = {
1768  accountId: Scalars['ID'];
1769  appleDistributionCertificateInput: AppleDistributionCertificateInput;
1770};
1771
1772
1773export type AppleDistributionCertificateMutationDeleteAppleDistributionCertificateArgs = {
1774  id: Scalars['ID'];
1775};
1776
1777export type AppleProvisioningProfile = {
1778  __typename?: 'AppleProvisioningProfile';
1779  account: Account;
1780  appleAppIdentifier: AppleAppIdentifier;
1781  appleDevices: Array<AppleDevice>;
1782  appleTeam?: Maybe<AppleTeam>;
1783  appleUUID: Scalars['String'];
1784  createdAt: Scalars['DateTime'];
1785  developerPortalIdentifier?: Maybe<Scalars['String']>;
1786  expiration: Scalars['DateTime'];
1787  id: Scalars['ID'];
1788  provisioningProfile?: Maybe<Scalars['String']>;
1789  status: Scalars['String'];
1790  updatedAt: Scalars['DateTime'];
1791};
1792
1793export type AppleProvisioningProfileInput = {
1794  appleProvisioningProfile: Scalars['String'];
1795  developerPortalIdentifier?: InputMaybe<Scalars['String']>;
1796};
1797
1798export type AppleProvisioningProfileMutation = {
1799  __typename?: 'AppleProvisioningProfileMutation';
1800  /** Create a Provisioning Profile */
1801  createAppleProvisioningProfile: AppleProvisioningProfile;
1802  /** Delete a Provisioning Profile */
1803  deleteAppleProvisioningProfile: DeleteAppleProvisioningProfileResult;
1804  /** Delete Provisioning Profiles */
1805  deleteAppleProvisioningProfiles: Array<DeleteAppleProvisioningProfileResult>;
1806  /** Update a Provisioning Profile */
1807  updateAppleProvisioningProfile: AppleProvisioningProfile;
1808};
1809
1810
1811export type AppleProvisioningProfileMutationCreateAppleProvisioningProfileArgs = {
1812  accountId: Scalars['ID'];
1813  appleAppIdentifierId: Scalars['ID'];
1814  appleProvisioningProfileInput: AppleProvisioningProfileInput;
1815};
1816
1817
1818export type AppleProvisioningProfileMutationDeleteAppleProvisioningProfileArgs = {
1819  id: Scalars['ID'];
1820};
1821
1822
1823export type AppleProvisioningProfileMutationDeleteAppleProvisioningProfilesArgs = {
1824  ids: Array<Scalars['ID']>;
1825};
1826
1827
1828export type AppleProvisioningProfileMutationUpdateAppleProvisioningProfileArgs = {
1829  appleProvisioningProfileInput: AppleProvisioningProfileInput;
1830  id: Scalars['ID'];
1831};
1832
1833export type ApplePushKey = {
1834  __typename?: 'ApplePushKey';
1835  account: Account;
1836  appleTeam?: Maybe<AppleTeam>;
1837  createdAt: Scalars['DateTime'];
1838  id: Scalars['ID'];
1839  iosAppCredentialsList: Array<IosAppCredentials>;
1840  keyIdentifier: Scalars['String'];
1841  keyP8: Scalars['String'];
1842  updatedAt: Scalars['DateTime'];
1843};
1844
1845export type ApplePushKeyInput = {
1846  appleTeamId: Scalars['ID'];
1847  keyIdentifier: Scalars['String'];
1848  keyP8: Scalars['String'];
1849};
1850
1851export type ApplePushKeyMutation = {
1852  __typename?: 'ApplePushKeyMutation';
1853  /** Create an Apple Push Notification key */
1854  createApplePushKey: ApplePushKey;
1855  /** Delete an Apple Push Notification key */
1856  deleteApplePushKey: DeleteApplePushKeyResult;
1857};
1858
1859
1860export type ApplePushKeyMutationCreateApplePushKeyArgs = {
1861  accountId: Scalars['ID'];
1862  applePushKeyInput: ApplePushKeyInput;
1863};
1864
1865
1866export type ApplePushKeyMutationDeleteApplePushKeyArgs = {
1867  id: Scalars['ID'];
1868};
1869
1870export type AppleTeam = {
1871  __typename?: 'AppleTeam';
1872  account: Account;
1873  appleAppIdentifiers: Array<AppleAppIdentifier>;
1874  appleDevices: Array<AppleDevice>;
1875  appleDistributionCertificates: Array<AppleDistributionCertificate>;
1876  appleProvisioningProfiles: Array<AppleProvisioningProfile>;
1877  applePushKeys: Array<ApplePushKey>;
1878  appleTeamIdentifier: Scalars['String'];
1879  appleTeamName?: Maybe<Scalars['String']>;
1880  id: Scalars['ID'];
1881};
1882
1883
1884export type AppleTeamAppleAppIdentifiersArgs = {
1885  bundleIdentifier?: InputMaybe<Scalars['String']>;
1886};
1887
1888
1889export type AppleTeamAppleDevicesArgs = {
1890  limit?: InputMaybe<Scalars['Int']>;
1891  offset?: InputMaybe<Scalars['Int']>;
1892};
1893
1894
1895export type AppleTeamAppleProvisioningProfilesArgs = {
1896  appleAppIdentifierId?: InputMaybe<Scalars['ID']>;
1897};
1898
1899export type AppleTeamInput = {
1900  appleTeamIdentifier: Scalars['String'];
1901  appleTeamName?: InputMaybe<Scalars['String']>;
1902};
1903
1904export type AppleTeamMutation = {
1905  __typename?: 'AppleTeamMutation';
1906  /** Create an Apple Team */
1907  createAppleTeam: AppleTeam;
1908};
1909
1910
1911export type AppleTeamMutationCreateAppleTeamArgs = {
1912  accountId: Scalars['ID'];
1913  appleTeamInput: AppleTeamInput;
1914};
1915
1916export type AppleTeamQuery = {
1917  __typename?: 'AppleTeamQuery';
1918  byAppleTeamIdentifier?: Maybe<AppleTeam>;
1919};
1920
1921
1922export type AppleTeamQueryByAppleTeamIdentifierArgs = {
1923  accountId: Scalars['ID'];
1924  identifier: Scalars['String'];
1925};
1926
1927export enum AppsFilter {
1928  /** Featured Projects */
1929  Featured = 'FEATURED',
1930  /** New Projects */
1931  New = 'NEW'
1932}
1933
1934export type AscApiKeyInput = {
1935  issuerIdentifier: Scalars['String'];
1936  keyIdentifier: Scalars['String'];
1937  keyP8: Scalars['String'];
1938};
1939
1940export type AssetMetadataResult = {
1941  __typename?: 'AssetMetadataResult';
1942  status: AssetMetadataStatus;
1943  storageKey: Scalars['String'];
1944};
1945
1946export enum AssetMetadataStatus {
1947  DoesNotExist = 'DOES_NOT_EXIST',
1948  Exists = 'EXISTS'
1949}
1950
1951export type AssetMutation = {
1952  __typename?: 'AssetMutation';
1953  /**
1954   * Returns an array of specifications for upload. Each URL is valid for an hour.
1955   * The content type of the asset you wish to upload must be specified.
1956   */
1957  getSignedAssetUploadSpecifications: GetSignedAssetUploadSpecificationsResult;
1958};
1959
1960
1961export type AssetMutationGetSignedAssetUploadSpecificationsArgs = {
1962  assetContentTypes: Array<InputMaybe<Scalars['String']>>;
1963};
1964
1965/** Check to see if assets with given storageKeys exist */
1966export type AssetQuery = {
1967  __typename?: 'AssetQuery';
1968  metadata: Array<AssetMetadataResult>;
1969};
1970
1971
1972/** Check to see if assets with given storageKeys exist */
1973export type AssetQueryMetadataArgs = {
1974  storageKeys: Array<Scalars['String']>;
1975};
1976
1977export enum AuthProtocolType {
1978  Oidc = 'OIDC'
1979}
1980
1981export type BackgroundJobReceipt = {
1982  __typename?: 'BackgroundJobReceipt';
1983  account: Account;
1984  createdAt: Scalars['DateTime'];
1985  errorCode?: Maybe<Scalars['String']>;
1986  errorMessage?: Maybe<Scalars['String']>;
1987  id: Scalars['ID'];
1988  resultId?: Maybe<Scalars['ID']>;
1989  resultType: BackgroundJobResultType;
1990  state: BackgroundJobState;
1991  tries: Scalars['Int'];
1992  updatedAt: Scalars['DateTime'];
1993  willRetry: Scalars['Boolean'];
1994};
1995
1996export type BackgroundJobReceiptQuery = {
1997  __typename?: 'BackgroundJobReceiptQuery';
1998  /** Look up background job receipt by ID */
1999  byId: BackgroundJobReceipt;
2000};
2001
2002
2003export type BackgroundJobReceiptQueryByIdArgs = {
2004  id: Scalars['ID'];
2005};
2006
2007export enum BackgroundJobResultType {
2008  GithubBuild = 'GITHUB_BUILD'
2009}
2010
2011export enum BackgroundJobState {
2012  Failure = 'FAILURE',
2013  InProgress = 'IN_PROGRESS',
2014  Queued = 'QUEUED',
2015  Success = 'SUCCESS'
2016}
2017
2018export type Billing = {
2019  __typename?: 'Billing';
2020  /** History of invoices */
2021  charges?: Maybe<Array<Maybe<Charge>>>;
2022  id: Scalars['ID'];
2023  /** @deprecated No longer used */
2024  payment?: Maybe<PaymentDetails>;
2025  subscription?: Maybe<SubscriptionDetails>;
2026};
2027
2028export type BillingPeriod = {
2029  __typename?: 'BillingPeriod';
2030  anchor: Scalars['DateTime'];
2031  end: Scalars['DateTime'];
2032  id: Scalars['ID'];
2033  start: Scalars['DateTime'];
2034};
2035
2036/** Represents an EAS Build */
2037export type Build = ActivityTimelineProjectActivity & BuildOrBuildJob & {
2038  __typename?: 'Build';
2039  activityTimestamp: Scalars['DateTime'];
2040  actor?: Maybe<Actor>;
2041  app: App;
2042  appBuildVersion?: Maybe<Scalars['String']>;
2043  appVersion?: Maybe<Scalars['String']>;
2044  artifacts?: Maybe<BuildArtifacts>;
2045  buildMode?: Maybe<BuildMode>;
2046  buildProfile?: Maybe<Scalars['String']>;
2047  canRetry: Scalars['Boolean'];
2048  cancelingActor?: Maybe<Actor>;
2049  channel?: Maybe<Scalars['String']>;
2050  childBuild?: Maybe<Build>;
2051  completedAt?: Maybe<Scalars['DateTime']>;
2052  createdAt: Scalars['DateTime'];
2053  customWorkflowName?: Maybe<Scalars['String']>;
2054  distribution?: Maybe<DistributionType>;
2055  enqueuedAt?: Maybe<Scalars['DateTime']>;
2056  error?: Maybe<BuildError>;
2057  estimatedWaitTimeLeftSeconds?: Maybe<Scalars['Int']>;
2058  expirationDate?: Maybe<Scalars['DateTime']>;
2059  gitCommitHash?: Maybe<Scalars['String']>;
2060  gitCommitMessage?: Maybe<Scalars['String']>;
2061  gitRef?: Maybe<Scalars['String']>;
2062  githubRepositoryOwnerAndName?: Maybe<Scalars['String']>;
2063  id: Scalars['ID'];
2064  /** Queue position is 1-indexed */
2065  initialQueuePosition?: Maybe<Scalars['Int']>;
2066  initiatingActor?: Maybe<Actor>;
2067  /** @deprecated User type is deprecated */
2068  initiatingUser?: Maybe<User>;
2069  iosEnterpriseProvisioning?: Maybe<BuildIosEnterpriseProvisioning>;
2070  isGitWorkingTreeDirty?: Maybe<Scalars['Boolean']>;
2071  logFiles: Array<Scalars['String']>;
2072  maxBuildTimeSeconds: Scalars['Int'];
2073  /** Retry time starts after completedAt */
2074  maxRetryTimeMinutes?: Maybe<Scalars['Int']>;
2075  message?: Maybe<Scalars['String']>;
2076  metrics?: Maybe<BuildMetrics>;
2077  parentBuild?: Maybe<Build>;
2078  platform: AppPlatform;
2079  priority: BuildPriority;
2080  project: Project;
2081  projectRootDirectory?: Maybe<Scalars['String']>;
2082  provisioningStartedAt?: Maybe<Scalars['DateTime']>;
2083  /** Queue position is 1-indexed */
2084  queuePosition?: Maybe<Scalars['Int']>;
2085  reactNativeVersion?: Maybe<Scalars['String']>;
2086  releaseChannel?: Maybe<Scalars['String']>;
2087  /**
2088   * The builder resource class requested by the developer
2089   * @deprecated Use resourceClassDisplayName instead
2090   */
2091  resourceClass: BuildResourceClass;
2092  /** String describing the resource class used to run the build */
2093  resourceClassDisplayName: Scalars['String'];
2094  retryDisabledReason?: Maybe<BuildRetryDisabledReason>;
2095  runFromCI?: Maybe<Scalars['Boolean']>;
2096  runtimeVersion?: Maybe<Scalars['String']>;
2097  sdkVersion?: Maybe<Scalars['String']>;
2098  status: BuildStatus;
2099  submissions: Array<Submission>;
2100  updatedAt: Scalars['DateTime'];
2101  workerStartedAt?: Maybe<Scalars['DateTime']>;
2102};
2103
2104
2105/** Represents an EAS Build */
2106export type BuildCanRetryArgs = {
2107  newMode?: InputMaybe<BuildMode>;
2108};
2109
2110
2111/** Represents an EAS Build */
2112export type BuildRetryDisabledReasonArgs = {
2113  newMode?: InputMaybe<BuildMode>;
2114};
2115
2116export type BuildArtifact = {
2117  __typename?: 'BuildArtifact';
2118  manifestPlistUrl?: Maybe<Scalars['String']>;
2119  url: Scalars['String'];
2120};
2121
2122export type BuildArtifacts = {
2123  __typename?: 'BuildArtifacts';
2124  applicationArchiveUrl?: Maybe<Scalars['String']>;
2125  buildArtifactsUrl?: Maybe<Scalars['String']>;
2126  buildUrl?: Maybe<Scalars['String']>;
2127  xcodeBuildLogsUrl?: Maybe<Scalars['String']>;
2128};
2129
2130export type BuildCacheInput = {
2131  clear?: InputMaybe<Scalars['Boolean']>;
2132  disabled?: InputMaybe<Scalars['Boolean']>;
2133  key?: InputMaybe<Scalars['String']>;
2134  paths?: InputMaybe<Array<Scalars['String']>>;
2135};
2136
2137export enum BuildCredentialsSource {
2138  Local = 'LOCAL',
2139  Remote = 'REMOTE'
2140}
2141
2142export type BuildError = {
2143  __typename?: 'BuildError';
2144  docsUrl?: Maybe<Scalars['String']>;
2145  errorCode: Scalars['String'];
2146  message: Scalars['String'];
2147};
2148
2149export type BuildFilter = {
2150  appBuildVersion?: InputMaybe<Scalars['String']>;
2151  appIdentifier?: InputMaybe<Scalars['String']>;
2152  appVersion?: InputMaybe<Scalars['String']>;
2153  buildProfile?: InputMaybe<Scalars['String']>;
2154  channel?: InputMaybe<Scalars['String']>;
2155  distribution?: InputMaybe<DistributionType>;
2156  gitCommitHash?: InputMaybe<Scalars['String']>;
2157  platform?: InputMaybe<AppPlatform>;
2158  runtimeVersion?: InputMaybe<Scalars['String']>;
2159  sdkVersion?: InputMaybe<Scalars['String']>;
2160  status?: InputMaybe<BuildStatus>;
2161};
2162
2163export type BuildFilterInput = {
2164  channel?: InputMaybe<Scalars['String']>;
2165  platforms?: InputMaybe<Array<AppPlatform>>;
2166  releaseChannel?: InputMaybe<Scalars['String']>;
2167};
2168
2169export enum BuildIosEnterpriseProvisioning {
2170  Adhoc = 'ADHOC',
2171  Universal = 'UNIVERSAL'
2172}
2173
2174/** Represents an Standalone App build job */
2175export type BuildJob = ActivityTimelineProjectActivity & BuildOrBuildJob & {
2176  __typename?: 'BuildJob';
2177  accountUserActor?: Maybe<UserActor>;
2178  activityTimestamp: Scalars['DateTime'];
2179  actor?: Maybe<Actor>;
2180  app?: Maybe<App>;
2181  artifacts?: Maybe<BuildArtifact>;
2182  config?: Maybe<Scalars['JSON']>;
2183  created?: Maybe<Scalars['DateTime']>;
2184  expirationDate?: Maybe<Scalars['DateTime']>;
2185  fullExperienceName?: Maybe<Scalars['String']>;
2186  id: Scalars['ID'];
2187  logs?: Maybe<BuildLogs>;
2188  platform: AppPlatform;
2189  release?: Maybe<AppRelease>;
2190  releaseChannel?: Maybe<Scalars['String']>;
2191  sdkVersion?: Maybe<Scalars['String']>;
2192  status?: Maybe<BuildJobStatus>;
2193  updated?: Maybe<Scalars['DateTime']>;
2194  user?: Maybe<User>;
2195};
2196
2197export enum BuildJobLogsFormat {
2198  Json = 'JSON',
2199  Raw = 'RAW'
2200}
2201
2202export type BuildJobMutation = {
2203  __typename?: 'BuildJobMutation';
2204  del?: Maybe<BuildJob>;
2205};
2206
2207export type BuildJobQuery = {
2208  __typename?: 'BuildJobQuery';
2209  /**
2210   * get all build jobs by an optional filter
2211   * @deprecated Prefer Account.buildJobs or App.buildJobs
2212   */
2213  all: Array<Maybe<BuildJob>>;
2214  byId: BuildJob;
2215};
2216
2217
2218export type BuildJobQueryAllArgs = {
2219  experienceSlug?: InputMaybe<Scalars['String']>;
2220  limit?: InputMaybe<Scalars['Int']>;
2221  offset?: InputMaybe<Scalars['Int']>;
2222  showAdminView?: InputMaybe<Scalars['Boolean']>;
2223  status?: InputMaybe<BuildJobStatus>;
2224  username?: InputMaybe<Scalars['String']>;
2225};
2226
2227
2228export type BuildJobQueryByIdArgs = {
2229  buildId: Scalars['ID'];
2230};
2231
2232export enum BuildJobStatus {
2233  Errored = 'ERRORED',
2234  Finished = 'FINISHED',
2235  InProgress = 'IN_PROGRESS',
2236  Pending = 'PENDING',
2237  SentToQueue = 'SENT_TO_QUEUE',
2238  Started = 'STARTED'
2239}
2240
2241export type BuildLogs = {
2242  __typename?: 'BuildLogs';
2243  format?: Maybe<BuildJobLogsFormat>;
2244  url?: Maybe<Scalars['String']>;
2245};
2246
2247export type BuildMetadataInput = {
2248  appBuildVersion?: InputMaybe<Scalars['String']>;
2249  appIdentifier?: InputMaybe<Scalars['String']>;
2250  appName?: InputMaybe<Scalars['String']>;
2251  appVersion?: InputMaybe<Scalars['String']>;
2252  buildMode?: InputMaybe<BuildMode>;
2253  buildProfile?: InputMaybe<Scalars['String']>;
2254  channel?: InputMaybe<Scalars['String']>;
2255  cliVersion?: InputMaybe<Scalars['String']>;
2256  credentialsSource?: InputMaybe<BuildCredentialsSource>;
2257  customWorkflowName?: InputMaybe<Scalars['String']>;
2258  distribution?: InputMaybe<DistributionType>;
2259  gitCommitHash?: InputMaybe<Scalars['String']>;
2260  gitCommitMessage?: InputMaybe<Scalars['String']>;
2261  iosEnterpriseProvisioning?: InputMaybe<BuildIosEnterpriseProvisioning>;
2262  isGitWorkingTreeDirty?: InputMaybe<Scalars['Boolean']>;
2263  message?: InputMaybe<Scalars['String']>;
2264  reactNativeVersion?: InputMaybe<Scalars['String']>;
2265  releaseChannel?: InputMaybe<Scalars['String']>;
2266  runFromCI?: InputMaybe<Scalars['Boolean']>;
2267  runWithNoWaitFlag?: InputMaybe<Scalars['Boolean']>;
2268  runtimeVersion?: InputMaybe<Scalars['String']>;
2269  sdkVersion?: InputMaybe<Scalars['String']>;
2270  trackingContext?: InputMaybe<Scalars['JSONObject']>;
2271  username?: InputMaybe<Scalars['String']>;
2272  workflow?: InputMaybe<BuildWorkflow>;
2273};
2274
2275export type BuildMetrics = {
2276  __typename?: 'BuildMetrics';
2277  buildDuration?: Maybe<Scalars['Int']>;
2278  buildQueueTime?: Maybe<Scalars['Int']>;
2279  buildWaitTime?: Maybe<Scalars['Int']>;
2280};
2281
2282export enum BuildMode {
2283  Build = 'BUILD',
2284  Custom = 'CUSTOM',
2285  Resign = 'RESIGN'
2286}
2287
2288export type BuildMutation = {
2289  __typename?: 'BuildMutation';
2290  /**
2291   * Cancel an EAS Build build
2292   * @deprecated Use cancelBuild instead
2293   */
2294  cancel: Build;
2295  /** Cancel an EAS Build build */
2296  cancelBuild: Build;
2297  /** Create an Android build */
2298  createAndroidBuild: CreateBuildResult;
2299  /** Create an iOS build */
2300  createIosBuild: CreateBuildResult;
2301  /** Delete an EAS Build build */
2302  deleteBuild: Build;
2303  /** Retry an Android EAS Build */
2304  retryAndroidBuild: Build;
2305  /**
2306   * Retry an EAS Build build
2307   * @deprecated Use retryAndroidBuild and retryIosBuild instead
2308   */
2309  retryBuild: Build;
2310  /** Retry an iOS EAS Build */
2311  retryIosBuild: Build;
2312  /** Update metadata for EAS Build build */
2313  updateBuildMetadata: Build;
2314};
2315
2316
2317export type BuildMutationCancelBuildArgs = {
2318  buildId: Scalars['ID'];
2319};
2320
2321
2322export type BuildMutationCreateAndroidBuildArgs = {
2323  appId: Scalars['ID'];
2324  buildParams?: InputMaybe<BuildParamsInput>;
2325  job: AndroidJobInput;
2326  metadata?: InputMaybe<BuildMetadataInput>;
2327};
2328
2329
2330export type BuildMutationCreateIosBuildArgs = {
2331  appId: Scalars['ID'];
2332  buildParams?: InputMaybe<BuildParamsInput>;
2333  job: IosJobInput;
2334  metadata?: InputMaybe<BuildMetadataInput>;
2335};
2336
2337
2338export type BuildMutationDeleteBuildArgs = {
2339  buildId: Scalars['ID'];
2340};
2341
2342
2343export type BuildMutationRetryAndroidBuildArgs = {
2344  buildId: Scalars['ID'];
2345  jobOverrides?: InputMaybe<AndroidJobOverridesInput>;
2346};
2347
2348
2349export type BuildMutationRetryBuildArgs = {
2350  buildId: Scalars['ID'];
2351};
2352
2353
2354export type BuildMutationRetryIosBuildArgs = {
2355  buildId: Scalars['ID'];
2356  jobOverrides?: InputMaybe<IosJobOverridesInput>;
2357};
2358
2359
2360export type BuildMutationUpdateBuildMetadataArgs = {
2361  buildId: Scalars['ID'];
2362  metadata: BuildMetadataInput;
2363};
2364
2365export type BuildOrBuildJob = {
2366  id: Scalars['ID'];
2367};
2368
2369export type BuildOrBuildJobQuery = {
2370  __typename?: 'BuildOrBuildJobQuery';
2371  /** Look up EAS Build or Classic Build Job by ID */
2372  byId: EasBuildOrClassicBuildJob;
2373};
2374
2375
2376export type BuildOrBuildJobQueryByIdArgs = {
2377  buildOrBuildJobId: Scalars['ID'];
2378};
2379
2380export type BuildParamsInput = {
2381  reactNativeVersion?: InputMaybe<Scalars['String']>;
2382  resourceClass: BuildResourceClass;
2383  sdkVersion?: InputMaybe<Scalars['String']>;
2384};
2385
2386export enum BuildPriority {
2387  High = 'HIGH',
2388  Normal = 'NORMAL',
2389  NormalPlus = 'NORMAL_PLUS'
2390}
2391
2392/** Publicly visible data for a Build. */
2393export type BuildPublicData = {
2394  __typename?: 'BuildPublicData';
2395  artifacts: PublicArtifacts;
2396  distribution?: Maybe<DistributionType>;
2397  id: Scalars['ID'];
2398  platform: AppPlatform;
2399  project: ProjectPublicData;
2400  status: BuildStatus;
2401};
2402
2403export type BuildPublicDataQuery = {
2404  __typename?: 'BuildPublicDataQuery';
2405  /** Get BuildPublicData by ID */
2406  byId?: Maybe<BuildPublicData>;
2407};
2408
2409
2410export type BuildPublicDataQueryByIdArgs = {
2411  id: Scalars['ID'];
2412};
2413
2414export type BuildQuery = {
2415  __typename?: 'BuildQuery';
2416  /**
2417   * Get all builds.
2418   * By default, they are sorted from latest to oldest.
2419   * Available only for admin users.
2420   */
2421  all: Array<Build>;
2422  /**
2423   * Get all builds for a specific app.
2424   * They are sorted from latest to oldest.
2425   * @deprecated Use App.builds instead
2426   */
2427  allForApp: Array<Maybe<Build>>;
2428  /** Look up EAS Build by build ID */
2429  byId: Build;
2430};
2431
2432
2433export type BuildQueryAllArgs = {
2434  limit?: InputMaybe<Scalars['Int']>;
2435  offset?: InputMaybe<Scalars['Int']>;
2436  order?: InputMaybe<Order>;
2437  statuses?: InputMaybe<Array<BuildStatus>>;
2438};
2439
2440
2441export type BuildQueryAllForAppArgs = {
2442  appId: Scalars['String'];
2443  limit?: InputMaybe<Scalars['Int']>;
2444  offset?: InputMaybe<Scalars['Int']>;
2445  platform?: InputMaybe<AppPlatform>;
2446  status?: InputMaybe<BuildStatus>;
2447};
2448
2449
2450export type BuildQueryByIdArgs = {
2451  buildId: Scalars['ID'];
2452};
2453
2454export type BuildResignInput = {
2455  applicationArchiveSource?: InputMaybe<ProjectArchiveSourceInput>;
2456};
2457
2458export enum BuildResourceClass {
2459  AndroidDefault = 'ANDROID_DEFAULT',
2460  AndroidLarge = 'ANDROID_LARGE',
2461  AndroidMedium = 'ANDROID_MEDIUM',
2462  IosDefault = 'IOS_DEFAULT',
2463  /** @deprecated Use IOS_INTEL_MEDIUM instead */
2464  IosIntelLarge = 'IOS_INTEL_LARGE',
2465  IosIntelMedium = 'IOS_INTEL_MEDIUM',
2466  IosLarge = 'IOS_LARGE',
2467  /** @deprecated Use IOS_M_MEDIUM instead */
2468  IosM1Large = 'IOS_M1_LARGE',
2469  IosM1Medium = 'IOS_M1_MEDIUM',
2470  IosMedium = 'IOS_MEDIUM',
2471  IosMLarge = 'IOS_M_LARGE',
2472  IosMMedium = 'IOS_M_MEDIUM',
2473  Legacy = 'LEGACY'
2474}
2475
2476export enum BuildRetryDisabledReason {
2477  AlreadyRetried = 'ALREADY_RETRIED',
2478  InvalidStatus = 'INVALID_STATUS',
2479  IsGithubBuild = 'IS_GITHUB_BUILD',
2480  NotCompletedYet = 'NOT_COMPLETED_YET',
2481  TooMuchTimeElapsed = 'TOO_MUCH_TIME_ELAPSED'
2482}
2483
2484export enum BuildStatus {
2485  Canceled = 'CANCELED',
2486  Errored = 'ERRORED',
2487  Finished = 'FINISHED',
2488  InProgress = 'IN_PROGRESS',
2489  InQueue = 'IN_QUEUE',
2490  New = 'NEW',
2491  PendingCancel = 'PENDING_CANCEL'
2492}
2493
2494export enum BuildTrigger {
2495  EasCli = 'EAS_CLI',
2496  GitBasedIntegration = 'GIT_BASED_INTEGRATION'
2497}
2498
2499export type BuildUpdatesInput = {
2500  channel?: InputMaybe<Scalars['String']>;
2501};
2502
2503export enum BuildWorkflow {
2504  Generic = 'GENERIC',
2505  Managed = 'MANAGED',
2506  Unknown = 'UNKNOWN'
2507}
2508
2509export type Card = {
2510  __typename?: 'Card';
2511  brand?: Maybe<Scalars['String']>;
2512  cardHolder?: Maybe<Scalars['String']>;
2513  expMonth?: Maybe<Scalars['Int']>;
2514  expYear?: Maybe<Scalars['Int']>;
2515  last4?: Maybe<Scalars['String']>;
2516};
2517
2518export type ChannelFilterInput = {
2519  searchTerm?: InputMaybe<Scalars['String']>;
2520};
2521
2522export type Charge = {
2523  __typename?: 'Charge';
2524  amount: Scalars['Int'];
2525  createdAt: Scalars['DateTime'];
2526  id: Scalars['ID'];
2527  invoiceId?: Maybe<Scalars['String']>;
2528  paid: Scalars['Boolean'];
2529  receiptUrl?: Maybe<Scalars['String']>;
2530  wasRefunded: Scalars['Boolean'];
2531};
2532
2533export type CodeSigningInfo = {
2534  __typename?: 'CodeSigningInfo';
2535  alg: Scalars['String'];
2536  keyid: Scalars['String'];
2537  sig: Scalars['String'];
2538};
2539
2540export type CodeSigningInfoInput = {
2541  alg: Scalars['String'];
2542  keyid: Scalars['String'];
2543  sig: Scalars['String'];
2544};
2545
2546export type Concurrencies = {
2547  __typename?: 'Concurrencies';
2548  android: Scalars['Int'];
2549  ios: Scalars['Int'];
2550  total: Scalars['Int'];
2551};
2552
2553export type CreateAccessTokenInput = {
2554  actorID: Scalars['ID'];
2555  note?: InputMaybe<Scalars['String']>;
2556};
2557
2558export type CreateAccessTokenResponse = {
2559  __typename?: 'CreateAccessTokenResponse';
2560  /** AccessToken created */
2561  accessToken: AccessToken;
2562  /** Full token string to be used for authentication */
2563  token: Scalars['String'];
2564};
2565
2566export type CreateAndroidSubmissionInput = {
2567  appId: Scalars['ID'];
2568  archiveSource?: InputMaybe<SubmissionArchiveSourceInput>;
2569  archiveUrl?: InputMaybe<Scalars['String']>;
2570  config: AndroidSubmissionConfigInput;
2571  submittedBuildId?: InputMaybe<Scalars['ID']>;
2572};
2573
2574export type CreateBuildResult = {
2575  __typename?: 'CreateBuildResult';
2576  build: Build;
2577  deprecationInfo?: Maybe<EasBuildDeprecationInfo>;
2578};
2579
2580export type CreateEnvironmentSecretInput = {
2581  name: Scalars['String'];
2582  type?: InputMaybe<EnvironmentSecretType>;
2583  value: Scalars['String'];
2584};
2585
2586export type CreateGitHubAppInstallationInput = {
2587  accountId: Scalars['ID'];
2588  installationIdentifier: Scalars['Int'];
2589};
2590
2591export type CreateGitHubRepositoryInput = {
2592  appId: Scalars['ID'];
2593  githubAppInstallationId: Scalars['ID'];
2594  githubRepositoryIdentifier: Scalars['Int'];
2595  nodeIdentifier: Scalars['String'];
2596};
2597
2598export type CreateGitHubRepositorySettingsInput = {
2599  appId: Scalars['ID'];
2600  /** The base directory is the directory to change to before starting a build. This string should be a properly formatted POSIX path starting with '/', './', or the name of the directory relative to the root of the repository. Valid examples include: '/apps/expo-app', './apps/expo-app', and 'apps/expo-app'. This is intended for monorepos or apps that live in a subdirectory of a repository. */
2601  baseDirectory: Scalars['String'];
2602};
2603
2604export type CreateIosSubmissionInput = {
2605  appId: Scalars['ID'];
2606  archiveSource?: InputMaybe<SubmissionArchiveSourceInput>;
2607  archiveUrl?: InputMaybe<Scalars['String']>;
2608  config: IosSubmissionConfigInput;
2609  submittedBuildId?: InputMaybe<Scalars['ID']>;
2610};
2611
2612export type CreateServerlessFunctionUploadUrlResult = {
2613  __typename?: 'CreateServerlessFunctionUploadUrlResult';
2614  formDataFields: Scalars['JSONObject'];
2615  url: Scalars['String'];
2616};
2617
2618export type CreateSubmissionResult = {
2619  __typename?: 'CreateSubmissionResult';
2620  /** Created submission */
2621  submission: Submission;
2622};
2623
2624export type CustomBuildConfigInput = {
2625  path: Scalars['String'];
2626};
2627
2628export type DeleteAccessTokenResult = {
2629  __typename?: 'DeleteAccessTokenResult';
2630  id: Scalars['ID'];
2631};
2632
2633export type DeleteAccountResult = {
2634  __typename?: 'DeleteAccountResult';
2635  id: Scalars['ID'];
2636};
2637
2638export type DeleteAccountSsoConfigurationResult = {
2639  __typename?: 'DeleteAccountSSOConfigurationResult';
2640  id: Scalars['ID'];
2641};
2642
2643export type DeleteAndroidAppCredentialsResult = {
2644  __typename?: 'DeleteAndroidAppCredentialsResult';
2645  id: Scalars['ID'];
2646};
2647
2648export type DeleteAndroidKeystoreResult = {
2649  __typename?: 'DeleteAndroidKeystoreResult';
2650  id: Scalars['ID'];
2651};
2652
2653export type DeleteAppleDeviceResult = {
2654  __typename?: 'DeleteAppleDeviceResult';
2655  id: Scalars['ID'];
2656};
2657
2658export type DeleteAppleDistributionCertificateResult = {
2659  __typename?: 'DeleteAppleDistributionCertificateResult';
2660  id: Scalars['ID'];
2661};
2662
2663export type DeleteAppleProvisioningProfileResult = {
2664  __typename?: 'DeleteAppleProvisioningProfileResult';
2665  id: Scalars['ID'];
2666};
2667
2668export type DeleteDiscordUserResult = {
2669  __typename?: 'DeleteDiscordUserResult';
2670  id: Scalars['ID'];
2671};
2672
2673export type DeleteEnvironmentSecretResult = {
2674  __typename?: 'DeleteEnvironmentSecretResult';
2675  id: Scalars['ID'];
2676};
2677
2678export type DeleteGitHubUserResult = {
2679  __typename?: 'DeleteGitHubUserResult';
2680  id: Scalars['ID'];
2681};
2682
2683export type DeleteGoogleServiceAccountKeyResult = {
2684  __typename?: 'DeleteGoogleServiceAccountKeyResult';
2685  id: Scalars['ID'];
2686};
2687
2688export type DeleteIosAppBuildCredentialsResult = {
2689  __typename?: 'DeleteIosAppBuildCredentialsResult';
2690  id: Scalars['ID'];
2691};
2692
2693export type DeleteIosAppCredentialsResult = {
2694  __typename?: 'DeleteIosAppCredentialsResult';
2695  id: Scalars['ID'];
2696};
2697
2698export type DeleteRobotResult = {
2699  __typename?: 'DeleteRobotResult';
2700  id: Scalars['ID'];
2701};
2702
2703export type DeleteUpdateBranchResult = {
2704  __typename?: 'DeleteUpdateBranchResult';
2705  id: Scalars['ID'];
2706};
2707
2708export type DeleteUpdateChannelResult = {
2709  __typename?: 'DeleteUpdateChannelResult';
2710  id: Scalars['ID'];
2711};
2712
2713export type DeleteUpdateGroupResult = {
2714  __typename?: 'DeleteUpdateGroupResult';
2715  group: Scalars['ID'];
2716};
2717
2718export type DeleteWebhookResult = {
2719  __typename?: 'DeleteWebhookResult';
2720  id: Scalars['ID'];
2721};
2722
2723export type DeployServerlessFunctionResult = {
2724  __typename?: 'DeployServerlessFunctionResult';
2725  url: Scalars['String'];
2726};
2727
2728/** Represents a Deployment - a set of Builds with the same Runtime Version and Channel */
2729export type Deployment = {
2730  __typename?: 'Deployment';
2731  builds: DeploymentBuildsConnection;
2732  channel: UpdateChannel;
2733  id: Scalars['ID'];
2734  /** @deprecated Not required for the new Deployment UI */
2735  latestUpdate?: Maybe<Update>;
2736  runtime: Runtime;
2737};
2738
2739
2740/** Represents a Deployment - a set of Builds with the same Runtime Version and Channel */
2741export type DeploymentBuildsArgs = {
2742  after?: InputMaybe<Scalars['String']>;
2743  before?: InputMaybe<Scalars['String']>;
2744  first?: InputMaybe<Scalars['Int']>;
2745  last?: InputMaybe<Scalars['Int']>;
2746};
2747
2748export type DeploymentBuildEdge = {
2749  __typename?: 'DeploymentBuildEdge';
2750  cursor: Scalars['String'];
2751  node: Build;
2752};
2753
2754/** Represents the connection over the builds edge of a Deployment */
2755export type DeploymentBuildsConnection = {
2756  __typename?: 'DeploymentBuildsConnection';
2757  edges: Array<DeploymentBuildEdge>;
2758  pageInfo: PageInfo;
2759};
2760
2761export type DeploymentEdge = {
2762  __typename?: 'DeploymentEdge';
2763  cursor: Scalars['String'];
2764  node: Deployment;
2765};
2766
2767/** Represents the connection over the deployments edge of an App */
2768export type DeploymentsConnection = {
2769  __typename?: 'DeploymentsConnection';
2770  edges: Array<DeploymentEdge>;
2771  pageInfo: PageInfo;
2772};
2773
2774export type DiscordUser = {
2775  __typename?: 'DiscordUser';
2776  discordIdentifier: Scalars['String'];
2777  id: Scalars['ID'];
2778  metadata?: Maybe<DiscordUserMetadata>;
2779  userActor: UserActor;
2780};
2781
2782export type DiscordUserMetadata = {
2783  __typename?: 'DiscordUserMetadata';
2784  discordAvatarUrl: Scalars['String'];
2785  discordDiscriminator: Scalars['String'];
2786  discordUsername: Scalars['String'];
2787};
2788
2789export type DiscordUserMutation = {
2790  __typename?: 'DiscordUserMutation';
2791  /** Delete a Discord User by ID */
2792  deleteDiscordUser: DeleteDiscordUserResult;
2793};
2794
2795
2796export type DiscordUserMutationDeleteDiscordUserArgs = {
2797  id: Scalars['ID'];
2798};
2799
2800export enum DistributionType {
2801  Internal = 'INTERNAL',
2802  Simulator = 'SIMULATOR',
2803  Store = 'STORE'
2804}
2805
2806export enum EasBuildBillingResourceClass {
2807  Large = 'LARGE',
2808  Medium = 'MEDIUM'
2809}
2810
2811export type EasBuildDeprecationInfo = {
2812  __typename?: 'EASBuildDeprecationInfo';
2813  message: Scalars['String'];
2814  type: EasBuildDeprecationInfoType;
2815};
2816
2817export enum EasBuildDeprecationInfoType {
2818  Internal = 'INTERNAL',
2819  UserFacing = 'USER_FACING'
2820}
2821
2822export type EasBuildOrClassicBuildJob = Build | BuildJob;
2823
2824export enum EasService {
2825  Builds = 'BUILDS',
2826  Updates = 'UPDATES'
2827}
2828
2829export enum EasServiceMetric {
2830  AssetsRequests = 'ASSETS_REQUESTS',
2831  BandwidthUsage = 'BANDWIDTH_USAGE',
2832  Builds = 'BUILDS',
2833  ManifestRequests = 'MANIFEST_REQUESTS',
2834  UniqueUpdaters = 'UNIQUE_UPDATERS',
2835  UniqueUsers = 'UNIQUE_USERS'
2836}
2837
2838export type EasTotalPlanEnablement = {
2839  __typename?: 'EASTotalPlanEnablement';
2840  total: Scalars['Int'];
2841  unit?: Maybe<EasTotalPlanEnablementUnit>;
2842};
2843
2844export enum EasTotalPlanEnablementUnit {
2845  Build = 'BUILD',
2846  Byte = 'BYTE',
2847  Concurrency = 'CONCURRENCY',
2848  Request = 'REQUEST',
2849  Updater = 'UPDATER',
2850  User = 'USER'
2851}
2852
2853export type EditUpdateBranchInput = {
2854  appId?: InputMaybe<Scalars['ID']>;
2855  id?: InputMaybe<Scalars['ID']>;
2856  name?: InputMaybe<Scalars['String']>;
2857  newName: Scalars['String'];
2858};
2859
2860export type EmailSubscriptionMutation = {
2861  __typename?: 'EmailSubscriptionMutation';
2862  addUser: AddUserPayload;
2863};
2864
2865
2866export type EmailSubscriptionMutationAddUserArgs = {
2867  addUserInput: AddUserInput;
2868};
2869
2870export type EnvironmentSecret = {
2871  __typename?: 'EnvironmentSecret';
2872  createdAt: Scalars['DateTime'];
2873  id: Scalars['ID'];
2874  name: Scalars['String'];
2875  type: EnvironmentSecretType;
2876  updatedAt: Scalars['DateTime'];
2877};
2878
2879export type EnvironmentSecretMutation = {
2880  __typename?: 'EnvironmentSecretMutation';
2881  /** Create an environment secret for an Account */
2882  createEnvironmentSecretForAccount: EnvironmentSecret;
2883  /** Create an environment secret for an App */
2884  createEnvironmentSecretForApp: EnvironmentSecret;
2885  /** Delete an environment secret */
2886  deleteEnvironmentSecret: DeleteEnvironmentSecretResult;
2887};
2888
2889
2890export type EnvironmentSecretMutationCreateEnvironmentSecretForAccountArgs = {
2891  accountId: Scalars['String'];
2892  environmentSecretData: CreateEnvironmentSecretInput;
2893};
2894
2895
2896export type EnvironmentSecretMutationCreateEnvironmentSecretForAppArgs = {
2897  appId: Scalars['String'];
2898  environmentSecretData: CreateEnvironmentSecretInput;
2899};
2900
2901
2902export type EnvironmentSecretMutationDeleteEnvironmentSecretArgs = {
2903  id: Scalars['String'];
2904};
2905
2906export enum EnvironmentSecretType {
2907  FileBase64 = 'FILE_BASE64',
2908  String = 'STRING'
2909}
2910
2911export type EstimatedOverageAndCost = {
2912  __typename?: 'EstimatedOverageAndCost';
2913  id: Scalars['ID'];
2914  /** The limit, in units, allowed by this plan */
2915  limit: Scalars['Float'];
2916  metadata?: Maybe<AccountUsageMetadata>;
2917  metricType: UsageMetricType;
2918  service: EasService;
2919  serviceMetric: EasServiceMetric;
2920  /** Total cost of this particular metric, in cents */
2921  totalCost: Scalars['Int'];
2922  value: Scalars['Float'];
2923};
2924
2925export type EstimatedUsage = {
2926  __typename?: 'EstimatedUsage';
2927  id: Scalars['ID'];
2928  limit: Scalars['Float'];
2929  metricType: UsageMetricType;
2930  service: EasService;
2931  serviceMetric: EasServiceMetric;
2932  value: Scalars['Float'];
2933};
2934
2935export type ExperimentationQuery = {
2936  __typename?: 'ExperimentationQuery';
2937  /** Get device experimentation config */
2938  deviceConfig: Scalars['JSONObject'];
2939  /** Get experimentation unit to use for device experiments. In this case, it is the IP address. */
2940  deviceExperimentationUnit: Scalars['ID'];
2941  /** Get user experimentation config */
2942  userConfig: Scalars['JSONObject'];
2943};
2944
2945export type FcmSnippet = FcmSnippetLegacy | FcmSnippetV1;
2946
2947export type FcmSnippetLegacy = {
2948  __typename?: 'FcmSnippetLegacy';
2949  firstFourCharacters: Scalars['String'];
2950  lastFourCharacters: Scalars['String'];
2951};
2952
2953export type FcmSnippetV1 = {
2954  __typename?: 'FcmSnippetV1';
2955  clientId?: Maybe<Scalars['String']>;
2956  keyId: Scalars['String'];
2957  projectId: Scalars['String'];
2958  serviceAccountEmail: Scalars['String'];
2959};
2960
2961export enum Feature {
2962  /** Priority Builds */
2963  Builds = 'BUILDS',
2964  /** Funds support for open source development */
2965  OpenSource = 'OPEN_SOURCE',
2966  /** Top Tier Support */
2967  Support = 'SUPPORT',
2968  /** Share access to projects */
2969  Teams = 'TEAMS'
2970}
2971
2972export type FutureSubscription = {
2973  __typename?: 'FutureSubscription';
2974  createdAt: Scalars['DateTime'];
2975  id: Scalars['ID'];
2976  meteredBillingStatus: MeteredBillingStatus;
2977  planId: Scalars['String'];
2978  startDate: Scalars['DateTime'];
2979};
2980
2981export type GetSignedAssetUploadSpecificationsResult = {
2982  __typename?: 'GetSignedAssetUploadSpecificationsResult';
2983  specifications: Array<Scalars['String']>;
2984};
2985
2986export enum GitHubAppEnvironment {
2987  Development = 'DEVELOPMENT',
2988  Production = 'PRODUCTION',
2989  Staging = 'STAGING'
2990}
2991
2992export type GitHubAppInstallation = {
2993  __typename?: 'GitHubAppInstallation';
2994  accessibleRepositories: GitHubRepositoryPaginationResult;
2995  account: Account;
2996  actor?: Maybe<Actor>;
2997  id: Scalars['ID'];
2998  installationIdentifier: Scalars['Int'];
2999  metadata: GitHubAppInstallationMetadata;
3000};
3001
3002
3003export type GitHubAppInstallationAccessibleRepositoriesArgs = {
3004  page?: InputMaybe<Scalars['Int']>;
3005  perPage?: InputMaybe<Scalars['Int']>;
3006};
3007
3008export type GitHubAppInstallationAccessibleRepository = {
3009  __typename?: 'GitHubAppInstallationAccessibleRepository';
3010  defaultBranch?: Maybe<Scalars['String']>;
3011  description?: Maybe<Scalars['String']>;
3012  id: Scalars['Int'];
3013  name: Scalars['String'];
3014  nodeId: Scalars['String'];
3015  owner: GitHubRepositoryOwner;
3016  private: Scalars['Boolean'];
3017  url: Scalars['String'];
3018};
3019
3020export type GitHubAppInstallationMetadata = {
3021  __typename?: 'GitHubAppInstallationMetadata';
3022  githubAccountAvatarUrl?: Maybe<Scalars['String']>;
3023  githubAccountName?: Maybe<Scalars['String']>;
3024  installationStatus: GitHubAppInstallationStatus;
3025};
3026
3027export type GitHubAppInstallationMutation = {
3028  __typename?: 'GitHubAppInstallationMutation';
3029  /** Create a GitHub App installation for an Account */
3030  createGitHubAppInstallationForAccount: GitHubAppInstallation;
3031  /** Delete a GitHub App installation by ID */
3032  deleteGitHubAppInstallation: GitHubAppInstallation;
3033};
3034
3035
3036export type GitHubAppInstallationMutationCreateGitHubAppInstallationForAccountArgs = {
3037  githubAppInstallationData: CreateGitHubAppInstallationInput;
3038};
3039
3040
3041export type GitHubAppInstallationMutationDeleteGitHubAppInstallationArgs = {
3042  githubAppInstallationId: Scalars['ID'];
3043};
3044
3045export enum GitHubAppInstallationStatus {
3046  Active = 'ACTIVE',
3047  NotInstalled = 'NOT_INSTALLED',
3048  Suspended = 'SUSPENDED'
3049}
3050
3051export type GitHubAppMutation = {
3052  __typename?: 'GitHubAppMutation';
3053  /** Create a GitHub build for an app. Returns the ID of the background job receipt. Use BackgroundJobReceiptQuery to get the status of the job. */
3054  createGitHubBuild: BackgroundJobReceipt;
3055};
3056
3057
3058export type GitHubAppMutationCreateGitHubBuildArgs = {
3059  buildInput: GitHubBuildInput;
3060};
3061
3062export type GitHubAppQuery = {
3063  __typename?: 'GitHubAppQuery';
3064  appIdentifier: Scalars['String'];
3065  clientIdentifier: Scalars['String'];
3066  environment: GitHubAppEnvironment;
3067  installation: GitHubAppInstallation;
3068  name: Scalars['String'];
3069  searchRepositories: GitHubRepositoryPaginationResult;
3070};
3071
3072
3073export type GitHubAppQueryInstallationArgs = {
3074  id: Scalars['ID'];
3075};
3076
3077
3078export type GitHubAppQuerySearchRepositoriesArgs = {
3079  githubAppInstallationId: Scalars['ID'];
3080  query: Scalars['String'];
3081};
3082
3083export type GitHubBuildInput = {
3084  appId: Scalars['ID'];
3085  baseDirectory?: InputMaybe<Scalars['String']>;
3086  buildProfile: Scalars['String'];
3087  gitRef: Scalars['String'];
3088  platform: AppPlatform;
3089};
3090
3091export type GitHubRepository = {
3092  __typename?: 'GitHubRepository';
3093  app: App;
3094  githubAppInstallation: GitHubAppInstallation;
3095  githubRepositoryIdentifier: Scalars['Int'];
3096  githubRepositoryUrl?: Maybe<Scalars['String']>;
3097  id: Scalars['ID'];
3098  metadata?: Maybe<GitHubRepositoryMetadata>;
3099  nodeIdentifier: Scalars['String'];
3100};
3101
3102export type GitHubRepositoryMetadata = {
3103  __typename?: 'GitHubRepositoryMetadata';
3104  defaultBranch?: Maybe<Scalars['String']>;
3105  githubRepoDescription?: Maybe<Scalars['String']>;
3106  githubRepoName: Scalars['String'];
3107  githubRepoOwnerName: Scalars['String'];
3108  githubRepoUrl: Scalars['String'];
3109  lastPushed: Scalars['DateTime'];
3110  lastUpdated: Scalars['DateTime'];
3111  openGraphImageUrl?: Maybe<Scalars['String']>;
3112  private: Scalars['Boolean'];
3113};
3114
3115export type GitHubRepositoryMutation = {
3116  __typename?: 'GitHubRepositoryMutation';
3117  /** Create a GitHub repository for an App */
3118  createGitHubRepository: GitHubRepository;
3119  /** Delete a GitHub repository by ID */
3120  deleteGitHubRepository: GitHubRepository;
3121};
3122
3123
3124export type GitHubRepositoryMutationCreateGitHubRepositoryArgs = {
3125  githubRepositoryData: CreateGitHubRepositoryInput;
3126};
3127
3128
3129export type GitHubRepositoryMutationDeleteGitHubRepositoryArgs = {
3130  githubRepositoryId: Scalars['ID'];
3131};
3132
3133export type GitHubRepositoryOwner = {
3134  __typename?: 'GitHubRepositoryOwner';
3135  avatarUrl: Scalars['String'];
3136  id: Scalars['Int'];
3137  login: Scalars['String'];
3138  url: Scalars['String'];
3139};
3140
3141export type GitHubRepositoryPaginationResult = {
3142  __typename?: 'GitHubRepositoryPaginationResult';
3143  repositories: Array<GitHubAppInstallationAccessibleRepository>;
3144  totalCount: Scalars['Int'];
3145};
3146
3147export type GitHubRepositorySettings = {
3148  __typename?: 'GitHubRepositorySettings';
3149  app: App;
3150  baseDirectory: Scalars['String'];
3151  id: Scalars['ID'];
3152};
3153
3154export type GitHubRepositorySettingsMutation = {
3155  __typename?: 'GitHubRepositorySettingsMutation';
3156  /** Create GitHub repository settings for an App */
3157  createGitHubRepositorySettings: GitHubRepositorySettings;
3158  /** Delete GitHub repository settings by ID */
3159  deleteGitHubRepositorySettings: GitHubRepositorySettings;
3160  /** Update GitHub repository settings */
3161  updateGitHubRepositorySettings: GitHubRepositorySettings;
3162};
3163
3164
3165export type GitHubRepositorySettingsMutationCreateGitHubRepositorySettingsArgs = {
3166  githubRepositorySettingsData: CreateGitHubRepositorySettingsInput;
3167};
3168
3169
3170export type GitHubRepositorySettingsMutationDeleteGitHubRepositorySettingsArgs = {
3171  githubRepositorySettingsId: Scalars['ID'];
3172};
3173
3174
3175export type GitHubRepositorySettingsMutationUpdateGitHubRepositorySettingsArgs = {
3176  githubRepositorySettingsData: UpdateGitHubRepositorySettingsInput;
3177  githubRepositorySettingsId: Scalars['ID'];
3178};
3179
3180export type GitHubUser = {
3181  __typename?: 'GitHubUser';
3182  githubUserIdentifier: Scalars['String'];
3183  id: Scalars['ID'];
3184  metadata?: Maybe<GitHubUserMetadata>;
3185  userActor: UserActor;
3186};
3187
3188export type GitHubUserMetadata = {
3189  __typename?: 'GitHubUserMetadata';
3190  avatarUrl: Scalars['String'];
3191  login: Scalars['String'];
3192  name?: Maybe<Scalars['String']>;
3193  url: Scalars['String'];
3194};
3195
3196export type GitHubUserMutation = {
3197  __typename?: 'GitHubUserMutation';
3198  /** Delete a GitHub User by ID */
3199  deleteGitHubUser: DeleteGitHubUserResult;
3200};
3201
3202
3203export type GitHubUserMutationDeleteGitHubUserArgs = {
3204  id: Scalars['ID'];
3205};
3206
3207export type GoogleServiceAccountKey = {
3208  __typename?: 'GoogleServiceAccountKey';
3209  account: Account;
3210  clientEmail: Scalars['String'];
3211  clientIdentifier: Scalars['String'];
3212  createdAt: Scalars['DateTime'];
3213  id: Scalars['ID'];
3214  privateKeyIdentifier: Scalars['String'];
3215  projectIdentifier: Scalars['String'];
3216  updatedAt: Scalars['DateTime'];
3217};
3218
3219export type GoogleServiceAccountKeyInput = {
3220  jsonKey: Scalars['JSONObject'];
3221};
3222
3223export type GoogleServiceAccountKeyMutation = {
3224  __typename?: 'GoogleServiceAccountKeyMutation';
3225  /** Create a Google Service Account Key */
3226  createGoogleServiceAccountKey: GoogleServiceAccountKey;
3227  /** Delete a Google Service Account Key */
3228  deleteGoogleServiceAccountKey: DeleteGoogleServiceAccountKeyResult;
3229};
3230
3231
3232export type GoogleServiceAccountKeyMutationCreateGoogleServiceAccountKeyArgs = {
3233  accountId: Scalars['ID'];
3234  googleServiceAccountKeyInput: GoogleServiceAccountKeyInput;
3235};
3236
3237
3238export type GoogleServiceAccountKeyMutationDeleteGoogleServiceAccountKeyArgs = {
3239  id: Scalars['ID'];
3240};
3241
3242export type InsightsTimespan = {
3243  end: Scalars['DateTime'];
3244  start: Scalars['DateTime'];
3245};
3246
3247export type Invoice = {
3248  __typename?: 'Invoice';
3249  /** The total amount due for the invoice, in cents */
3250  amountDue: Scalars['Int'];
3251  /** The total amount that has been paid, considering any discounts or account credit. Value is in cents. */
3252  amountPaid: Scalars['Int'];
3253  /** The total amount that needs to be paid, considering any discounts or account credit. Value is in cents. */
3254  amountRemaining: Scalars['Int'];
3255  discount?: Maybe<InvoiceDiscount>;
3256  id: Scalars['ID'];
3257  lineItems: Array<InvoiceLineItem>;
3258  period: InvoicePeriod;
3259  startingBalance: Scalars['Int'];
3260  subtotal: Scalars['Int'];
3261  total: Scalars['Int'];
3262  totalDiscountedAmount: Scalars['Int'];
3263};
3264
3265export type InvoiceDiscount = {
3266  __typename?: 'InvoiceDiscount';
3267  /** The coupon's discount value, in percentage or in dollar amount */
3268  amount: Scalars['Int'];
3269  duration: Scalars['String'];
3270  durationInMonths?: Maybe<Scalars['Int']>;
3271  id: Scalars['ID'];
3272  name: Scalars['String'];
3273  type: InvoiceDiscountType;
3274};
3275
3276export enum InvoiceDiscountType {
3277  Amount = 'AMOUNT',
3278  Percentage = 'PERCENTAGE'
3279}
3280
3281export type InvoiceLineItem = {
3282  __typename?: 'InvoiceLineItem';
3283  /** Line-item amount in cents */
3284  amount: Scalars['Int'];
3285  description: Scalars['String'];
3286  id: Scalars['ID'];
3287  period: InvoicePeriod;
3288  plan: InvoiceLineItemPlan;
3289  proration: Scalars['Boolean'];
3290  quantity: Scalars['Int'];
3291  title: Scalars['String'];
3292};
3293
3294export type InvoiceLineItemPlan = {
3295  __typename?: 'InvoiceLineItemPlan';
3296  id: Scalars['ID'];
3297  name: Scalars['String'];
3298};
3299
3300export type InvoicePeriod = {
3301  __typename?: 'InvoicePeriod';
3302  end: Scalars['DateTime'];
3303  start: Scalars['DateTime'];
3304};
3305
3306export type InvoiceQuery = {
3307  __typename?: 'InvoiceQuery';
3308  /** Preview an upgrade subscription invoice, with proration */
3309  previewInvoiceForSubscriptionUpdate: Invoice;
3310};
3311
3312
3313export type InvoiceQueryPreviewInvoiceForSubscriptionUpdateArgs = {
3314  accountId: Scalars['String'];
3315  couponCode?: InputMaybe<Scalars['String']>;
3316  newPlanIdentifier: Scalars['String'];
3317};
3318
3319export type IosAppBuildCredentials = {
3320  __typename?: 'IosAppBuildCredentials';
3321  /** @deprecated Get Apple Devices from AppleProvisioningProfile instead */
3322  appleDevices?: Maybe<Array<Maybe<AppleDevice>>>;
3323  distributionCertificate?: Maybe<AppleDistributionCertificate>;
3324  id: Scalars['ID'];
3325  iosAppCredentials: IosAppCredentials;
3326  iosDistributionType: IosDistributionType;
3327  provisioningProfile?: Maybe<AppleProvisioningProfile>;
3328};
3329
3330export type IosAppBuildCredentialsFilter = {
3331  iosDistributionType?: InputMaybe<IosDistributionType>;
3332};
3333
3334export type IosAppBuildCredentialsInput = {
3335  distributionCertificateId: Scalars['ID'];
3336  iosDistributionType: IosDistributionType;
3337  provisioningProfileId: Scalars['ID'];
3338};
3339
3340export type IosAppBuildCredentialsMutation = {
3341  __typename?: 'IosAppBuildCredentialsMutation';
3342  /** Create a set of build credentials for an iOS app */
3343  createIosAppBuildCredentials: IosAppBuildCredentials;
3344  /** Disassociate the build credentials from an iOS app */
3345  deleteIosAppBuildCredentials: DeleteIosAppBuildCredentialsResult;
3346  /** Set the distribution certificate to be used for an iOS app */
3347  setDistributionCertificate: IosAppBuildCredentials;
3348  /** Set the provisioning profile to be used for an iOS app */
3349  setProvisioningProfile: IosAppBuildCredentials;
3350};
3351
3352
3353export type IosAppBuildCredentialsMutationCreateIosAppBuildCredentialsArgs = {
3354  iosAppBuildCredentialsInput: IosAppBuildCredentialsInput;
3355  iosAppCredentialsId: Scalars['ID'];
3356};
3357
3358
3359export type IosAppBuildCredentialsMutationDeleteIosAppBuildCredentialsArgs = {
3360  id: Scalars['ID'];
3361};
3362
3363
3364export type IosAppBuildCredentialsMutationSetDistributionCertificateArgs = {
3365  distributionCertificateId: Scalars['ID'];
3366  id: Scalars['ID'];
3367};
3368
3369
3370export type IosAppBuildCredentialsMutationSetProvisioningProfileArgs = {
3371  id: Scalars['ID'];
3372  provisioningProfileId: Scalars['ID'];
3373};
3374
3375export type IosAppCredentials = {
3376  __typename?: 'IosAppCredentials';
3377  app: App;
3378  appStoreConnectApiKeyForSubmissions?: Maybe<AppStoreConnectApiKey>;
3379  appleAppIdentifier: AppleAppIdentifier;
3380  appleTeam?: Maybe<AppleTeam>;
3381  id: Scalars['ID'];
3382  /** @deprecated use iosAppBuildCredentialsList instead */
3383  iosAppBuildCredentialsArray: Array<IosAppBuildCredentials>;
3384  iosAppBuildCredentialsList: Array<IosAppBuildCredentials>;
3385  pushKey?: Maybe<ApplePushKey>;
3386};
3387
3388
3389export type IosAppCredentialsIosAppBuildCredentialsArrayArgs = {
3390  filter?: InputMaybe<IosAppBuildCredentialsFilter>;
3391};
3392
3393
3394export type IosAppCredentialsIosAppBuildCredentialsListArgs = {
3395  filter?: InputMaybe<IosAppBuildCredentialsFilter>;
3396};
3397
3398export type IosAppCredentialsFilter = {
3399  appleAppIdentifierId?: InputMaybe<Scalars['String']>;
3400};
3401
3402export type IosAppCredentialsInput = {
3403  appStoreConnectApiKeyForSubmissionsId?: InputMaybe<Scalars['ID']>;
3404  appleTeamId?: InputMaybe<Scalars['ID']>;
3405  pushKeyId?: InputMaybe<Scalars['ID']>;
3406};
3407
3408export type IosAppCredentialsMutation = {
3409  __typename?: 'IosAppCredentialsMutation';
3410  /** Create a set of credentials for an iOS app */
3411  createIosAppCredentials: IosAppCredentials;
3412  /** Delete a set of credentials for an iOS app */
3413  deleteIosAppCredentials: DeleteIosAppCredentialsResult;
3414  /** Set the App Store Connect Api Key to be used for submitting an iOS app */
3415  setAppStoreConnectApiKeyForSubmissions: IosAppCredentials;
3416  /** Set the push key to be used in an iOS app */
3417  setPushKey: IosAppCredentials;
3418};
3419
3420
3421export type IosAppCredentialsMutationCreateIosAppCredentialsArgs = {
3422  appId: Scalars['ID'];
3423  appleAppIdentifierId: Scalars['ID'];
3424  iosAppCredentialsInput: IosAppCredentialsInput;
3425};
3426
3427
3428export type IosAppCredentialsMutationDeleteIosAppCredentialsArgs = {
3429  id: Scalars['ID'];
3430};
3431
3432
3433export type IosAppCredentialsMutationSetAppStoreConnectApiKeyForSubmissionsArgs = {
3434  ascApiKeyId: Scalars['ID'];
3435  id: Scalars['ID'];
3436};
3437
3438
3439export type IosAppCredentialsMutationSetPushKeyArgs = {
3440  id: Scalars['ID'];
3441  pushKeyId: Scalars['ID'];
3442};
3443
3444/** @deprecated Use developmentClient option instead. */
3445export enum IosBuildType {
3446  DevelopmentClient = 'DEVELOPMENT_CLIENT',
3447  Release = 'RELEASE'
3448}
3449
3450export type IosBuilderEnvironmentInput = {
3451  bundler?: InputMaybe<Scalars['String']>;
3452  cocoapods?: InputMaybe<Scalars['String']>;
3453  env?: InputMaybe<Scalars['JSONObject']>;
3454  expoCli?: InputMaybe<Scalars['String']>;
3455  fastlane?: InputMaybe<Scalars['String']>;
3456  image?: InputMaybe<Scalars['String']>;
3457  node?: InputMaybe<Scalars['String']>;
3458  yarn?: InputMaybe<Scalars['String']>;
3459};
3460
3461export enum IosDistributionType {
3462  AdHoc = 'AD_HOC',
3463  AppStore = 'APP_STORE',
3464  Development = 'DEVELOPMENT',
3465  Enterprise = 'ENTERPRISE'
3466}
3467
3468export type IosJobDistributionCertificateInput = {
3469  dataBase64: Scalars['String'];
3470  password: Scalars['String'];
3471};
3472
3473export type IosJobInput = {
3474  applicationArchivePath?: InputMaybe<Scalars['String']>;
3475  /** @deprecated */
3476  artifactPath?: InputMaybe<Scalars['String']>;
3477  buildArtifactPaths?: InputMaybe<Array<Scalars['String']>>;
3478  buildConfiguration?: InputMaybe<Scalars['String']>;
3479  buildProfile?: InputMaybe<Scalars['String']>;
3480  /** @deprecated */
3481  buildType?: InputMaybe<IosBuildType>;
3482  builderEnvironment?: InputMaybe<IosBuilderEnvironmentInput>;
3483  cache?: InputMaybe<BuildCacheInput>;
3484  customBuildConfig?: InputMaybe<CustomBuildConfigInput>;
3485  developmentClient?: InputMaybe<Scalars['Boolean']>;
3486  /** @deprecated */
3487  distribution?: InputMaybe<DistributionType>;
3488  experimental?: InputMaybe<Scalars['JSONObject']>;
3489  mode?: InputMaybe<BuildMode>;
3490  projectArchive: ProjectArchiveSourceInput;
3491  projectRootDirectory: Scalars['String'];
3492  releaseChannel?: InputMaybe<Scalars['String']>;
3493  scheme?: InputMaybe<Scalars['String']>;
3494  secrets?: InputMaybe<IosJobSecretsInput>;
3495  simulator?: InputMaybe<Scalars['Boolean']>;
3496  triggeredBy?: InputMaybe<BuildTrigger>;
3497  type: BuildWorkflow;
3498  updates?: InputMaybe<BuildUpdatesInput>;
3499  username?: InputMaybe<Scalars['String']>;
3500  version?: InputMaybe<IosJobVersionInput>;
3501};
3502
3503export type IosJobOverridesInput = {
3504  applicationArchivePath?: InputMaybe<Scalars['String']>;
3505  /** @deprecated */
3506  artifactPath?: InputMaybe<Scalars['String']>;
3507  buildArtifactPaths?: InputMaybe<Array<Scalars['String']>>;
3508  buildConfiguration?: InputMaybe<Scalars['String']>;
3509  buildProfile?: InputMaybe<Scalars['String']>;
3510  /** @deprecated */
3511  buildType?: InputMaybe<IosBuildType>;
3512  builderEnvironment?: InputMaybe<IosBuilderEnvironmentInput>;
3513  cache?: InputMaybe<BuildCacheInput>;
3514  developmentClient?: InputMaybe<Scalars['Boolean']>;
3515  /** @deprecated */
3516  distribution?: InputMaybe<DistributionType>;
3517  experimental?: InputMaybe<Scalars['JSONObject']>;
3518  mode?: InputMaybe<BuildMode>;
3519  releaseChannel?: InputMaybe<Scalars['String']>;
3520  resign?: InputMaybe<BuildResignInput>;
3521  scheme?: InputMaybe<Scalars['String']>;
3522  secrets?: InputMaybe<IosJobSecretsInput>;
3523  simulator?: InputMaybe<Scalars['Boolean']>;
3524  type?: InputMaybe<BuildWorkflow>;
3525  updates?: InputMaybe<BuildUpdatesInput>;
3526  username?: InputMaybe<Scalars['String']>;
3527  version?: InputMaybe<IosJobVersionInput>;
3528};
3529
3530export type IosJobSecretsInput = {
3531  buildCredentials?: InputMaybe<Array<InputMaybe<IosJobTargetCredentialsInput>>>;
3532  robotAccessToken?: InputMaybe<Scalars['String']>;
3533};
3534
3535export type IosJobTargetCredentialsInput = {
3536  distributionCertificate: IosJobDistributionCertificateInput;
3537  provisioningProfileBase64: Scalars['String'];
3538  targetName: Scalars['String'];
3539};
3540
3541export type IosJobVersionInput = {
3542  buildNumber: Scalars['String'];
3543};
3544
3545/** @deprecated Use developmentClient option instead. */
3546export enum IosManagedBuildType {
3547  DevelopmentClient = 'DEVELOPMENT_CLIENT',
3548  Release = 'RELEASE'
3549}
3550
3551export enum IosSchemeBuildConfiguration {
3552  Debug = 'DEBUG',
3553  Release = 'RELEASE'
3554}
3555
3556export type IosSubmissionConfig = {
3557  __typename?: 'IosSubmissionConfig';
3558  appleIdUsername?: Maybe<Scalars['String']>;
3559  ascApiKeyId?: Maybe<Scalars['String']>;
3560  ascAppIdentifier: Scalars['String'];
3561};
3562
3563export type IosSubmissionConfigInput = {
3564  appleAppSpecificPassword?: InputMaybe<Scalars['String']>;
3565  appleIdUsername?: InputMaybe<Scalars['String']>;
3566  archiveUrl?: InputMaybe<Scalars['String']>;
3567  ascApiKey?: InputMaybe<AscApiKeyInput>;
3568  ascApiKeyId?: InputMaybe<Scalars['String']>;
3569  ascAppIdentifier: Scalars['String'];
3570};
3571
3572export type KeystoreGenerationUrl = {
3573  __typename?: 'KeystoreGenerationUrl';
3574  id: Scalars['ID'];
3575  url: Scalars['String'];
3576};
3577
3578export type KeystoreGenerationUrlMutation = {
3579  __typename?: 'KeystoreGenerationUrlMutation';
3580  /** Create a Keystore Generation URL */
3581  createKeystoreGenerationUrl: KeystoreGenerationUrl;
3582};
3583
3584export type LeaveAccountResult = {
3585  __typename?: 'LeaveAccountResult';
3586  success: Scalars['Boolean'];
3587};
3588
3589export type LineChartData = {
3590  __typename?: 'LineChartData';
3591  datasets: Array<LineDataset>;
3592  labels: Array<Scalars['String']>;
3593};
3594
3595export type LineDataset = {
3596  __typename?: 'LineDataset';
3597  data: Array<Maybe<Scalars['Int']>>;
3598  id: Scalars['ID'];
3599  label: Scalars['String'];
3600};
3601
3602export enum MailchimpAudience {
3603  ExpoDevelopers = 'EXPO_DEVELOPERS'
3604}
3605
3606export enum MailchimpTag {
3607  DevClientUsers = 'DEV_CLIENT_USERS',
3608  EasMasterList = 'EAS_MASTER_LIST'
3609}
3610
3611export type MailchimpTagPayload = {
3612  __typename?: 'MailchimpTagPayload';
3613  id?: Maybe<Scalars['Int']>;
3614  name?: Maybe<Scalars['String']>;
3615};
3616
3617export type MeMutation = {
3618  __typename?: 'MeMutation';
3619  /** Add an additional second factor device */
3620  addSecondFactorDevice: SecondFactorDeviceConfigurationResult;
3621  /** Certify an initiated second factor authentication method for the current user */
3622  certifySecondFactorDevice: SecondFactorBooleanResult;
3623  /** Create a new Account and grant this User the owner Role */
3624  createAccount: Account;
3625  /** Delete an Account created via createAccount */
3626  deleteAccount: DeleteAccountResult;
3627  /** Delete a second factor device */
3628  deleteSecondFactorDevice: SecondFactorBooleanResult;
3629  /** Delete a Snack that the current user owns */
3630  deleteSnack: Snack;
3631  /** Disable all second factor authentication for the current user */
3632  disableSecondFactorAuthentication: SecondFactorBooleanResult;
3633  /** Initiate setup of two-factor authentication for the current user */
3634  initiateSecondFactorAuthentication: SecondFactorInitiationResult;
3635  /** Leave an Account (revoke own permissions on Account) */
3636  leaveAccount: LeaveAccountResult;
3637  /** Purge unfinished two-factor authentication setup for the current user if not fully-set-up */
3638  purgeUnfinishedSecondFactorAuthentication: SecondFactorBooleanResult;
3639  /** Regenerate backup codes for the current user */
3640  regenerateSecondFactorBackupCodes: SecondFactorRegenerateBackupCodesResult;
3641  /** Send SMS OTP to a second factor device for use during device setup or during change confirmation */
3642  sendSMSOTPToSecondFactorDevice: SecondFactorBooleanResult;
3643  /** Set the user's primary second factor device */
3644  setPrimarySecondFactorDevice: SecondFactorBooleanResult;
3645  /** Transfer project to a different Account */
3646  transferApp: App;
3647  /** Unpublish an App that the current user owns */
3648  unpublishApp: App;
3649  /** Update an App that the current user owns */
3650  updateApp: App;
3651  /** Update the current regular user's data */
3652  updateProfile: User;
3653  /** Update the current SSO user's data */
3654  updateSSOProfile: SsoUser;
3655};
3656
3657
3658export type MeMutationAddSecondFactorDeviceArgs = {
3659  deviceConfiguration: SecondFactorDeviceConfiguration;
3660  otp: Scalars['String'];
3661};
3662
3663
3664export type MeMutationCertifySecondFactorDeviceArgs = {
3665  otp: Scalars['String'];
3666};
3667
3668
3669export type MeMutationCreateAccountArgs = {
3670  accountData: AccountDataInput;
3671};
3672
3673
3674export type MeMutationDeleteAccountArgs = {
3675  accountId: Scalars['ID'];
3676};
3677
3678
3679export type MeMutationDeleteSecondFactorDeviceArgs = {
3680  otp: Scalars['String'];
3681  userSecondFactorDeviceId: Scalars['ID'];
3682};
3683
3684
3685export type MeMutationDeleteSnackArgs = {
3686  snackId: Scalars['ID'];
3687};
3688
3689
3690export type MeMutationDisableSecondFactorAuthenticationArgs = {
3691  otp: Scalars['String'];
3692};
3693
3694
3695export type MeMutationInitiateSecondFactorAuthenticationArgs = {
3696  deviceConfigurations: Array<SecondFactorDeviceConfiguration>;
3697  recaptchaResponseToken?: InputMaybe<Scalars['String']>;
3698};
3699
3700
3701export type MeMutationLeaveAccountArgs = {
3702  accountId: Scalars['ID'];
3703};
3704
3705
3706export type MeMutationRegenerateSecondFactorBackupCodesArgs = {
3707  otp: Scalars['String'];
3708};
3709
3710
3711export type MeMutationSendSmsotpToSecondFactorDeviceArgs = {
3712  userSecondFactorDeviceId: Scalars['ID'];
3713};
3714
3715
3716export type MeMutationSetPrimarySecondFactorDeviceArgs = {
3717  userSecondFactorDeviceId: Scalars['ID'];
3718};
3719
3720
3721export type MeMutationTransferAppArgs = {
3722  appId: Scalars['ID'];
3723  destinationAccountId: Scalars['ID'];
3724};
3725
3726
3727export type MeMutationUnpublishAppArgs = {
3728  appId: Scalars['ID'];
3729};
3730
3731
3732export type MeMutationUpdateAppArgs = {
3733  appData: AppDataInput;
3734};
3735
3736
3737export type MeMutationUpdateProfileArgs = {
3738  userData: UserDataInput;
3739};
3740
3741
3742export type MeMutationUpdateSsoProfileArgs = {
3743  userData: SsoUserDataInput;
3744};
3745
3746export type MeteredBillingStatus = {
3747  __typename?: 'MeteredBillingStatus';
3748  EAS_BUILD: Scalars['Boolean'];
3749  EAS_UPDATE: Scalars['Boolean'];
3750};
3751
3752export enum NotificationEvent {
3753  BuildComplete = 'BUILD_COMPLETE',
3754  BuildPlanCreditThresholdExceeded = 'BUILD_PLAN_CREDIT_THRESHOLD_EXCEEDED',
3755  SubmissionComplete = 'SUBMISSION_COMPLETE'
3756}
3757
3758export type NotificationSubscription = {
3759  __typename?: 'NotificationSubscription';
3760  account?: Maybe<Account>;
3761  actor?: Maybe<Actor>;
3762  app?: Maybe<App>;
3763  createdAt: Scalars['DateTime'];
3764  event: NotificationEvent;
3765  id: Scalars['ID'];
3766  type: NotificationType;
3767};
3768
3769export type NotificationSubscriptionFilter = {
3770  accountId?: InputMaybe<Scalars['ID']>;
3771  appId?: InputMaybe<Scalars['ID']>;
3772  event?: InputMaybe<NotificationEvent>;
3773  type?: InputMaybe<NotificationType>;
3774};
3775
3776export type NotificationSubscriptionMutation = {
3777  __typename?: 'NotificationSubscriptionMutation';
3778  subscribeToEventForAccount: SubscribeToNotificationResult;
3779  subscribeToEventForApp: SubscribeToNotificationResult;
3780  unsubscribe: UnsubscribeFromNotificationResult;
3781};
3782
3783
3784export type NotificationSubscriptionMutationSubscribeToEventForAccountArgs = {
3785  input: AccountNotificationSubscriptionInput;
3786};
3787
3788
3789export type NotificationSubscriptionMutationSubscribeToEventForAppArgs = {
3790  input: AppNotificationSubscriptionInput;
3791};
3792
3793
3794export type NotificationSubscriptionMutationUnsubscribeArgs = {
3795  id: Scalars['ID'];
3796};
3797
3798export enum NotificationType {
3799  Email = 'EMAIL'
3800}
3801
3802export type Offer = {
3803  __typename?: 'Offer';
3804  features?: Maybe<Array<Maybe<Feature>>>;
3805  id: Scalars['ID'];
3806  prerequisite?: Maybe<OfferPrerequisite>;
3807  price: Scalars['Int'];
3808  quantity?: Maybe<Scalars['Int']>;
3809  stripeId: Scalars['ID'];
3810  trialLength?: Maybe<Scalars['Int']>;
3811  type: OfferType;
3812};
3813
3814export type OfferPrerequisite = {
3815  __typename?: 'OfferPrerequisite';
3816  stripeIds: Array<Scalars['String']>;
3817  type: Scalars['String'];
3818};
3819
3820export enum OfferType {
3821  /** Addon, or supplementary subscription */
3822  Addon = 'ADDON',
3823  /** Advanced Purchase of Paid Resource */
3824  Prepaid = 'PREPAID',
3825  /** Term subscription */
3826  Subscription = 'SUBSCRIPTION'
3827}
3828
3829export enum Order {
3830  Asc = 'ASC',
3831  Desc = 'DESC'
3832}
3833
3834export type PageInfo = {
3835  __typename?: 'PageInfo';
3836  endCursor?: Maybe<Scalars['String']>;
3837  hasNextPage: Scalars['Boolean'];
3838  hasPreviousPage: Scalars['Boolean'];
3839  startCursor?: Maybe<Scalars['String']>;
3840};
3841
3842export type PartialManifest = {
3843  assets: Array<InputMaybe<PartialManifestAsset>>;
3844  extra?: InputMaybe<Scalars['JSONObject']>;
3845  launchAsset: PartialManifestAsset;
3846};
3847
3848export type PartialManifestAsset = {
3849  bundleKey: Scalars['String'];
3850  contentType: Scalars['String'];
3851  fileExtension?: InputMaybe<Scalars['String']>;
3852  fileSHA256: Scalars['String'];
3853  storageKey: Scalars['String'];
3854};
3855
3856export type PaymentDetails = {
3857  __typename?: 'PaymentDetails';
3858  address?: Maybe<Address>;
3859  card?: Maybe<Card>;
3860  id: Scalars['ID'];
3861};
3862
3863export enum Permission {
3864  Admin = 'ADMIN',
3865  Own = 'OWN',
3866  Publish = 'PUBLISH',
3867  View = 'VIEW'
3868}
3869
3870export type PlanEnablement = Concurrencies | EasTotalPlanEnablement;
3871
3872export type Project = {
3873  description: Scalars['String'];
3874  fullName: Scalars['String'];
3875  /** @deprecated No longer supported */
3876  iconUrl?: Maybe<Scalars['String']>;
3877  id: Scalars['ID'];
3878  name: Scalars['String'];
3879  published: Scalars['Boolean'];
3880  slug: Scalars['String'];
3881  updated: Scalars['DateTime'];
3882  username: Scalars['String'];
3883};
3884
3885export type ProjectArchiveSourceInput = {
3886  bucketKey?: InputMaybe<Scalars['String']>;
3887  gitRef?: InputMaybe<Scalars['String']>;
3888  repositoryUrl?: InputMaybe<Scalars['String']>;
3889  type: ProjectArchiveSourceType;
3890  url?: InputMaybe<Scalars['String']>;
3891};
3892
3893export enum ProjectArchiveSourceType {
3894  Gcs = 'GCS',
3895  Git = 'GIT',
3896  None = 'NONE',
3897  S3 = 'S3',
3898  Url = 'URL'
3899}
3900
3901export type ProjectPublicData = {
3902  __typename?: 'ProjectPublicData';
3903  fullName: Scalars['String'];
3904  id: Scalars['ID'];
3905};
3906
3907export type ProjectQuery = {
3908  __typename?: 'ProjectQuery';
3909  byAccountNameAndSlug: Project;
3910  /** @deprecated No longer supported */
3911  byPaths: Array<Maybe<Project>>;
3912  /** @deprecated See byAccountNameAndSlug */
3913  byUsernameAndSlug: Project;
3914};
3915
3916
3917export type ProjectQueryByAccountNameAndSlugArgs = {
3918  accountName: Scalars['String'];
3919  platform?: InputMaybe<AppPlatform>;
3920  sdkVersions?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
3921  slug: Scalars['String'];
3922};
3923
3924
3925export type ProjectQueryByPathsArgs = {
3926  paths?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
3927};
3928
3929
3930export type ProjectQueryByUsernameAndSlugArgs = {
3931  platform?: InputMaybe<Scalars['String']>;
3932  sdkVersions?: InputMaybe<Array<InputMaybe<Scalars['String']>>>;
3933  slug: Scalars['String'];
3934  username: Scalars['String'];
3935};
3936
3937export type PublicArtifacts = {
3938  __typename?: 'PublicArtifacts';
3939  applicationArchiveUrl?: Maybe<Scalars['String']>;
3940  buildUrl?: Maybe<Scalars['String']>;
3941};
3942
3943export type PublishUpdateGroupInput = {
3944  awaitingCodeSigningInfo?: InputMaybe<Scalars['Boolean']>;
3945  branchId: Scalars['String'];
3946  excludedAssets?: InputMaybe<Array<PartialManifestAsset>>;
3947  gitCommitHash?: InputMaybe<Scalars['String']>;
3948  isGitWorkingTreeDirty?: InputMaybe<Scalars['Boolean']>;
3949  message?: InputMaybe<Scalars['String']>;
3950  rollBackToEmbeddedInfoGroup?: InputMaybe<UpdateRollBackToEmbeddedGroup>;
3951  runtimeVersion: Scalars['String'];
3952  updateInfoGroup?: InputMaybe<UpdateInfoGroup>;
3953};
3954
3955export type RescindUserInvitationResult = {
3956  __typename?: 'RescindUserInvitationResult';
3957  id: Scalars['ID'];
3958};
3959
3960/** Represents a robot (not human) actor. */
3961export type Robot = Actor & {
3962  __typename?: 'Robot';
3963  /** Access Tokens belonging to this actor */
3964  accessTokens: Array<AccessToken>;
3965  /** Associated accounts */
3966  accounts: Array<Account>;
3967  created: Scalars['DateTime'];
3968  displayName: Scalars['String'];
3969  /**
3970   * Server feature gate values for this actor, optionally filtering by desired gates.
3971   * Only resolves for the viewer.
3972   */
3973  featureGates: Scalars['JSONObject'];
3974  firstName?: Maybe<Scalars['String']>;
3975  id: Scalars['ID'];
3976  isExpoAdmin: Scalars['Boolean'];
3977};
3978
3979
3980/** Represents a robot (not human) actor. */
3981export type RobotFeatureGatesArgs = {
3982  filter?: InputMaybe<Array<Scalars['String']>>;
3983};
3984
3985export type RobotDataInput = {
3986  name?: InputMaybe<Scalars['String']>;
3987};
3988
3989export type RobotMutation = {
3990  __typename?: 'RobotMutation';
3991  /** Create a Robot and grant it Permissions on an Account */
3992  createRobotForAccount: Robot;
3993  /** Delete a Robot */
3994  deleteRobot: DeleteRobotResult;
3995  /** Update a Robot */
3996  updateRobot: Robot;
3997};
3998
3999
4000export type RobotMutationCreateRobotForAccountArgs = {
4001  accountID: Scalars['String'];
4002  permissions: Array<InputMaybe<Permission>>;
4003  robotData?: InputMaybe<RobotDataInput>;
4004};
4005
4006
4007export type RobotMutationDeleteRobotArgs = {
4008  id: Scalars['String'];
4009};
4010
4011
4012export type RobotMutationUpdateRobotArgs = {
4013  id: Scalars['String'];
4014  robotData: RobotDataInput;
4015};
4016
4017export enum Role {
4018  Admin = 'ADMIN',
4019  Custom = 'CUSTOM',
4020  Developer = 'DEVELOPER',
4021  HasAdmin = 'HAS_ADMIN',
4022  NotAdmin = 'NOT_ADMIN',
4023  Owner = 'OWNER',
4024  ViewOnly = 'VIEW_ONLY'
4025}
4026
4027export type RootMutation = {
4028  __typename?: 'RootMutation';
4029  /**
4030   * This is a placeholder field
4031   * @deprecated Not used.
4032   */
4033  _doNotUse?: Maybe<Scalars['String']>;
4034  /** Mutations that create, read, update, and delete AccessTokens for Actors */
4035  accessToken: AccessTokenMutation;
4036  /** Mutations that modify an Account */
4037  account: AccountMutation;
4038  /** Mutations that create, update, and delete an AccountSSOConfiguration */
4039  accountSSOConfiguration: AccountSsoConfigurationMutation;
4040  /** Mutations that modify the build credentials for an Android app */
4041  androidAppBuildCredentials: AndroidAppBuildCredentialsMutation;
4042  /** Mutations that modify the credentials for an Android app */
4043  androidAppCredentials: AndroidAppCredentialsMutation;
4044  /** Mutations that modify an FCM credential */
4045  androidFcm: AndroidFcmMutation;
4046  /** Mutations that modify a Keystore */
4047  androidKeystore: AndroidKeystoreMutation;
4048  /** Mutations that modify an App */
4049  app?: Maybe<AppMutation>;
4050  /** Mutations that modify an App Store Connect Api Key */
4051  appStoreConnectApiKey: AppStoreConnectApiKeyMutation;
4052  /** Mutations that modify an AppVersion */
4053  appVersion: AppVersionMutation;
4054  /** Mutations that modify an Identifier for an iOS App */
4055  appleAppIdentifier: AppleAppIdentifierMutation;
4056  /** Mutations that modify an Apple Device */
4057  appleDevice: AppleDeviceMutation;
4058  /** Mutations that modify an Apple Device registration request */
4059  appleDeviceRegistrationRequest: AppleDeviceRegistrationRequestMutation;
4060  /** Mutations that modify a Distribution Certificate */
4061  appleDistributionCertificate: AppleDistributionCertificateMutation;
4062  /** Mutations that modify a Provisioning Profile */
4063  appleProvisioningProfile: AppleProvisioningProfileMutation;
4064  /** Mutations that modify an Apple Push Notification key */
4065  applePushKey: ApplePushKeyMutation;
4066  /** Mutations that modify an Apple Team */
4067  appleTeam: AppleTeamMutation;
4068  asset: AssetMutation;
4069  /** Mutations that modify an EAS Build */
4070  build: BuildMutation;
4071  /** Mutations that modify an BuildJob */
4072  buildJob: BuildJobMutation;
4073  /** Mutations for Discord users */
4074  discordUser: DiscordUserMutation;
4075  /** Mutations that modify an EmailSubscription */
4076  emailSubscription: EmailSubscriptionMutation;
4077  /** Mutations that create and delete EnvironmentSecrets */
4078  environmentSecret: EnvironmentSecretMutation;
4079  /** Mutations that utilize services facilitated by the GitHub App */
4080  githubApp: GitHubAppMutation;
4081  /** Mutations for GitHub App installations */
4082  githubAppInstallation: GitHubAppInstallationMutation;
4083  /** Mutations for GitHub repositories */
4084  githubRepository: GitHubRepositoryMutation;
4085  /** Mutations for GitHub repository settings */
4086  githubRepositorySettings: GitHubRepositorySettingsMutation;
4087  /** Mutations for GitHub users */
4088  githubUser: GitHubUserMutation;
4089  /** Mutations that modify a Google Service Account Key */
4090  googleServiceAccountKey: GoogleServiceAccountKeyMutation;
4091  /** Mutations that modify the build credentials for an iOS app */
4092  iosAppBuildCredentials: IosAppBuildCredentialsMutation;
4093  /** Mutations that modify the credentials for an iOS app */
4094  iosAppCredentials: IosAppCredentialsMutation;
4095  keystoreGenerationUrl: KeystoreGenerationUrlMutation;
4096  /** Mutations that modify the currently authenticated User */
4097  me: MeMutation;
4098  /** Mutations that modify a NotificationSubscription */
4099  notificationSubscription: NotificationSubscriptionMutation;
4100  /** Mutations that create, update, and delete Robots */
4101  robot: RobotMutation;
4102  serverlessFunction: ServerlessFunctionMutation;
4103  /** Mutations that modify an EAS Submit submission */
4104  submission: SubmissionMutation;
4105  update: UpdateMutation;
4106  updateBranch: UpdateBranchMutation;
4107  updateChannel: UpdateChannelMutation;
4108  uploadSession: UploadSession;
4109  /** Mutations that create, delete, and accept UserInvitations */
4110  userInvitation: UserInvitationMutation;
4111  /** Mutations that create, delete, update Webhooks */
4112  webhook: WebhookMutation;
4113};
4114
4115
4116export type RootMutationAccountArgs = {
4117  accountName: Scalars['ID'];
4118};
4119
4120
4121export type RootMutationAppArgs = {
4122  appId?: InputMaybe<Scalars['ID']>;
4123};
4124
4125
4126export type RootMutationBuildArgs = {
4127  buildId?: InputMaybe<Scalars['ID']>;
4128};
4129
4130
4131export type RootMutationBuildJobArgs = {
4132  buildId: Scalars['ID'];
4133};
4134
4135export type RootQuery = {
4136  __typename?: 'RootQuery';
4137  /**
4138   * This is a placeholder field
4139   * @deprecated Not used.
4140   */
4141  _doNotUse?: Maybe<Scalars['String']>;
4142  /** Top-level query object for querying Accounts. */
4143  account: AccountQuery;
4144  /** Top-level query object for querying AccountSSOConfigurationPublicData */
4145  accountSSOConfigurationPublicData: AccountSsoConfigurationPublicDataQuery;
4146  /** Top-level query object for querying Actors. */
4147  actor: ActorQuery;
4148  /**
4149   * Public apps in the app directory
4150   * @deprecated Use 'all' field under 'app'.
4151   */
4152  allPublicApps?: Maybe<Array<Maybe<App>>>;
4153  app: AppQuery;
4154  /**
4155   * Look up app by app id
4156   * @deprecated Use 'byId' field under 'app'.
4157   */
4158  appByAppId?: Maybe<App>;
4159  /** Top-level query object for querying Apple Device registration requests. */
4160  appleDeviceRegistrationRequest: AppleDeviceRegistrationRequestQuery;
4161  /** Top-level query object for querying Apple Teams. */
4162  appleTeam: AppleTeamQuery;
4163  asset: AssetQuery;
4164  backgroundJobReceipt: BackgroundJobReceiptQuery;
4165  buildJobs: BuildJobQuery;
4166  buildOrBuildJob: BuildOrBuildJobQuery;
4167  /** Top-level query object for querying BuildPublicData publicly. */
4168  buildPublicData: BuildPublicDataQuery;
4169  builds: BuildQuery;
4170  /** Top-level query object for querying Experimentation configuration. */
4171  experimentation: ExperimentationQuery;
4172  /** Top-level query object for querying GitHub App information and resources it has access to. */
4173  githubApp: GitHubAppQuery;
4174  /** Top-level query object for querying Stripe Invoices. */
4175  invoice: InvoiceQuery;
4176  /**
4177   * If authenticated as a typical end user, this is the appropriate top-level
4178   * query object
4179   */
4180  me?: Maybe<User>;
4181  /**
4182   * If authenticated as any type of Actor, this is the appropriate top-level
4183   * query object
4184   */
4185  meActor?: Maybe<Actor>;
4186  /**
4187   * If authenticated as any type of human end user (Actor types User or SSOUser),
4188   * this is the appropriate top-level query object
4189   */
4190  meUserActor?: Maybe<UserActor>;
4191  project: ProjectQuery;
4192  snack: SnackQuery;
4193  /** Top-level query object for querying SSO Users. */
4194  ssoUser: SsoUserQuery;
4195  /** Top-level query object for querying Expo status page services. */
4196  statuspageService: StatuspageServiceQuery;
4197  submissions: SubmissionQuery;
4198  /** fetch all updates in a group */
4199  updatesByGroup: Array<Update>;
4200  /** Top-level query object for querying Users. */
4201  user: UserQuery;
4202  /** Top-level query object for querying UserActors. */
4203  userActor: UserActorQuery;
4204  /** @deprecated Use 'byId' field under 'user'. */
4205  userByUserId?: Maybe<User>;
4206  /** @deprecated Use 'byUsername' field under 'user'. */
4207  userByUsername?: Maybe<User>;
4208  /** Top-level query object for querying UserInvitationPublicData publicly. */
4209  userInvitationPublicData: UserInvitationPublicDataQuery;
4210  /**
4211   * If authenticated as a typical end user, this is the appropriate top-level
4212   * query object
4213   */
4214  viewer?: Maybe<User>;
4215  /** Top-level query object for querying Webhooks. */
4216  webhook: WebhookQuery;
4217};
4218
4219
4220export type RootQueryAllPublicAppsArgs = {
4221  filter: AppsFilter;
4222  limit?: InputMaybe<Scalars['Int']>;
4223  offset?: InputMaybe<Scalars['Int']>;
4224  sort: AppSort;
4225};
4226
4227
4228export type RootQueryAppByAppIdArgs = {
4229  appId: Scalars['String'];
4230};
4231
4232
4233export type RootQueryUpdatesByGroupArgs = {
4234  group: Scalars['ID'];
4235};
4236
4237
4238export type RootQueryUserByUserIdArgs = {
4239  userId: Scalars['String'];
4240};
4241
4242
4243export type RootQueryUserByUsernameArgs = {
4244  username: Scalars['String'];
4245};
4246
4247export type Runtime = {
4248  __typename?: 'Runtime';
4249  app: App;
4250  firstBuildCreatedAt: Scalars['DateTime'];
4251  id: Scalars['ID'];
4252  version: Scalars['String'];
4253};
4254
4255/** Represents a human SSO (not robot) actor. */
4256export type SsoUser = Actor & UserActor & {
4257  __typename?: 'SSOUser';
4258  /** Access Tokens belonging to this actor, none at present */
4259  accessTokens: Array<AccessToken>;
4260  accounts: Array<Account>;
4261  /** Coalesced project activity for all apps belonging to all accounts this user belongs to. Only resolves for the viewer. */
4262  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
4263  appCount: Scalars['Int'];
4264  /** @deprecated No longer supported */
4265  appetizeCode?: Maybe<Scalars['String']>;
4266  /** Apps this user has published. If this user is the viewer, this field returns the apps the user has access to. */
4267  apps: Array<App>;
4268  bestContactEmail?: Maybe<Scalars['String']>;
4269  created: Scalars['DateTime'];
4270  /** Discord account linked to a user */
4271  discordUser?: Maybe<DiscordUser>;
4272  displayName: Scalars['String'];
4273  /**
4274   * Server feature gate values for this actor, optionally filtering by desired gates.
4275   * Only resolves for the viewer.
4276   */
4277  featureGates: Scalars['JSONObject'];
4278  firstName?: Maybe<Scalars['String']>;
4279  fullName?: Maybe<Scalars['String']>;
4280  /** GitHub account linked to a user */
4281  githubUser?: Maybe<GitHubUser>;
4282  /** @deprecated No longer supported */
4283  githubUsername?: Maybe<Scalars['String']>;
4284  id: Scalars['ID'];
4285  /** @deprecated No longer supported */
4286  industry?: Maybe<Scalars['String']>;
4287  isExpoAdmin: Scalars['Boolean'];
4288  lastName?: Maybe<Scalars['String']>;
4289  /** @deprecated No longer supported */
4290  location?: Maybe<Scalars['String']>;
4291  notificationSubscriptions: Array<NotificationSubscription>;
4292  /** Associated accounts */
4293  primaryAccount: Account;
4294  profilePhoto: Scalars['String'];
4295  /** Snacks associated with this account */
4296  snacks: Array<Snack>;
4297  /** @deprecated No longer supported */
4298  twitterUsername?: Maybe<Scalars['String']>;
4299  username: Scalars['String'];
4300};
4301
4302
4303/** Represents a human SSO (not robot) actor. */
4304export type SsoUserActivityTimelineProjectActivitiesArgs = {
4305  createdBefore?: InputMaybe<Scalars['DateTime']>;
4306  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
4307  limit: Scalars['Int'];
4308};
4309
4310
4311/** Represents a human SSO (not robot) actor. */
4312export type SsoUserAppsArgs = {
4313  includeUnpublished?: InputMaybe<Scalars['Boolean']>;
4314  limit: Scalars['Int'];
4315  offset: Scalars['Int'];
4316};
4317
4318
4319/** Represents a human SSO (not robot) actor. */
4320export type SsoUserFeatureGatesArgs = {
4321  filter?: InputMaybe<Array<Scalars['String']>>;
4322};
4323
4324
4325/** Represents a human SSO (not robot) actor. */
4326export type SsoUserNotificationSubscriptionsArgs = {
4327  filter?: InputMaybe<NotificationSubscriptionFilter>;
4328};
4329
4330
4331/** Represents a human SSO (not robot) actor. */
4332export type SsoUserSnacksArgs = {
4333  limit: Scalars['Int'];
4334  offset: Scalars['Int'];
4335};
4336
4337export type SsoUserDataInput = {
4338  firstName?: InputMaybe<Scalars['String']>;
4339  lastName?: InputMaybe<Scalars['String']>;
4340};
4341
4342export type SsoUserQuery = {
4343  __typename?: 'SSOUserQuery';
4344  /** Query an SSOUser by ID */
4345  byId: SsoUser;
4346  /** Query an SSOUser by username */
4347  byUsername: SsoUser;
4348};
4349
4350
4351export type SsoUserQueryByIdArgs = {
4352  userId: Scalars['ID'];
4353};
4354
4355
4356export type SsoUserQueryByUsernameArgs = {
4357  username: Scalars['String'];
4358};
4359
4360export type SecondFactorBooleanResult = {
4361  __typename?: 'SecondFactorBooleanResult';
4362  success: Scalars['Boolean'];
4363};
4364
4365export type SecondFactorDeviceConfiguration = {
4366  isPrimary: Scalars['Boolean'];
4367  method: SecondFactorMethod;
4368  name: Scalars['String'];
4369  smsPhoneNumber?: InputMaybe<Scalars['String']>;
4370};
4371
4372export type SecondFactorDeviceConfigurationResult = {
4373  __typename?: 'SecondFactorDeviceConfigurationResult';
4374  keyURI: Scalars['String'];
4375  secondFactorDevice: UserSecondFactorDevice;
4376  secret: Scalars['String'];
4377};
4378
4379export type SecondFactorInitiationResult = {
4380  __typename?: 'SecondFactorInitiationResult';
4381  configurationResults: Array<SecondFactorDeviceConfigurationResult>;
4382  plaintextBackupCodes: Array<Scalars['String']>;
4383};
4384
4385export enum SecondFactorMethod {
4386  /** Google Authenticator (TOTP) */
4387  Authenticator = 'AUTHENTICATOR',
4388  /** SMS */
4389  Sms = 'SMS'
4390}
4391
4392export type SecondFactorRegenerateBackupCodesResult = {
4393  __typename?: 'SecondFactorRegenerateBackupCodesResult';
4394  plaintextBackupCodes: Array<Scalars['String']>;
4395};
4396
4397export type ServerlessFunctionIdentifierInput = {
4398  gitCommitSHA1: Scalars['String'];
4399};
4400
4401export type ServerlessFunctionMutation = {
4402  __typename?: 'ServerlessFunctionMutation';
4403  createDeployment: DeployServerlessFunctionResult;
4404  createUploadPresignedUrl: CreateServerlessFunctionUploadUrlResult;
4405};
4406
4407
4408export type ServerlessFunctionMutationCreateDeploymentArgs = {
4409  appId: Scalars['ID'];
4410  serverlessFunctionIdentifierInput: ServerlessFunctionIdentifierInput;
4411};
4412
4413
4414export type ServerlessFunctionMutationCreateUploadPresignedUrlArgs = {
4415  appId: Scalars['ID'];
4416  serverlessFunctionIdentifierInput: ServerlessFunctionIdentifierInput;
4417};
4418
4419export type Snack = Project & {
4420  __typename?: 'Snack';
4421  /** Description of the Snack */
4422  description: Scalars['String'];
4423  /** Full name of the Snack, e.g. "@john/mysnack", "@snack/245631" */
4424  fullName: Scalars['String'];
4425  /** Has the Snack been run without errors */
4426  hasBeenRunSuccessfully?: Maybe<Scalars['Boolean']>;
4427  hashId: Scalars['String'];
4428  /** @deprecated No longer supported */
4429  iconUrl?: Maybe<Scalars['String']>;
4430  id: Scalars['ID'];
4431  /** Draft status, which is true when the Snack was not saved explicitly, but auto-saved */
4432  isDraft: Scalars['Boolean'];
4433  /** Name of the Snack, e.g. "My Snack" */
4434  name: Scalars['String'];
4435  /** Preview image of the running snack */
4436  previewImage?: Maybe<Scalars['String']>;
4437  published: Scalars['Boolean'];
4438  /** Slug name, e.g. "mysnack", "245631" */
4439  slug: Scalars['String'];
4440  /** Date and time the Snack was last updated */
4441  updated: Scalars['DateTime'];
4442  /** Name of the user that created the Snack, or "snack" when the Snack was saved anonymously */
4443  username: Scalars['String'];
4444};
4445
4446export type SnackQuery = {
4447  __typename?: 'SnackQuery';
4448  /** Get snack by hashId */
4449  byHashId: Snack;
4450  /**
4451   * Get snack by hashId
4452   * @deprecated Use byHashId
4453   */
4454  byId: Snack;
4455};
4456
4457
4458export type SnackQueryByHashIdArgs = {
4459  hashId: Scalars['ID'];
4460};
4461
4462
4463export type SnackQueryByIdArgs = {
4464  id: Scalars['ID'];
4465};
4466
4467export enum StandardOffer {
4468  /** $29 USD per month, 30 day trial */
4469  Default = 'DEFAULT',
4470  /** $800 USD per month */
4471  Support = 'SUPPORT',
4472  /** $29 USD per month, 1 year trial */
4473  YcDeals = 'YC_DEALS',
4474  /** $348 USD per year, 30 day trial */
4475  YearlySub = 'YEARLY_SUB'
4476}
4477
4478/** Incident for a given component from Expo status page API. */
4479export type StatuspageIncident = {
4480  __typename?: 'StatuspageIncident';
4481  createdAt: Scalars['DateTime'];
4482  id: Scalars['ID'];
4483  /** Impact of an incident from Expo status page. */
4484  impact: StatuspageIncidentImpact;
4485  name: Scalars['String'];
4486  resolvedAt?: Maybe<Scalars['DateTime']>;
4487  /** Shortlink to the incident from Expo status page. */
4488  shortlink: Scalars['String'];
4489  /** Current status of an incident from Expo status page. */
4490  status: StatuspageIncidentStatus;
4491  updatedAt: Scalars['DateTime'];
4492  /** List of all updates for an incident from Expo status page. */
4493  updates: Array<StatuspageIncidentUpdate>;
4494};
4495
4496/** Possible Incident impact values from Expo status page API. */
4497export enum StatuspageIncidentImpact {
4498  Critical = 'CRITICAL',
4499  Maintenance = 'MAINTENANCE',
4500  Major = 'MAJOR',
4501  Minor = 'MINOR',
4502  None = 'NONE'
4503}
4504
4505/** Possible Incident statuses from Expo status page API. */
4506export enum StatuspageIncidentStatus {
4507  Completed = 'COMPLETED',
4508  Identified = 'IDENTIFIED',
4509  Investigating = 'INVESTIGATING',
4510  InProgress = 'IN_PROGRESS',
4511  Monitoring = 'MONITORING',
4512  Resolved = 'RESOLVED',
4513  Scheduled = 'SCHEDULED',
4514  Verifying = 'VERIFYING'
4515}
4516
4517/** Update for an Incident from Expo status page API. */
4518export type StatuspageIncidentUpdate = {
4519  __typename?: 'StatuspageIncidentUpdate';
4520  /** Text of an update from Expo status page. */
4521  body: Scalars['String'];
4522  createdAt: Scalars['DateTime'];
4523  id: Scalars['ID'];
4524  /** Status set at the moment of update. */
4525  status: StatuspageIncidentStatus;
4526};
4527
4528/** Service monitored by Expo status page. */
4529export type StatuspageService = {
4530  __typename?: 'StatuspageService';
4531  /** Description of a service from Expo status page. */
4532  description?: Maybe<Scalars['String']>;
4533  id: Scalars['ID'];
4534  /**
4535   * List of last inicdents for a service from Expo status page (we always query for 50 latest incidents for all services)
4536   * sorted by createdAt field in descending order.
4537   */
4538  incidents: Array<StatuspageIncident>;
4539  /** Name of a service monitored by Expo status page. */
4540  name: StatuspageServiceName;
4541  /** Current status of a service from Expo status page. */
4542  status: StatuspageServiceStatus;
4543};
4544
4545/** Name of a service monitored by Expo status page. */
4546export enum StatuspageServiceName {
4547  EasBuild = 'EAS_BUILD',
4548  EasSubmit = 'EAS_SUBMIT',
4549  EasUpdate = 'EAS_UPDATE'
4550}
4551
4552export type StatuspageServiceQuery = {
4553  __typename?: 'StatuspageServiceQuery';
4554  /** Query services from Expo status page by names. */
4555  byServiceNames: Array<StatuspageService>;
4556};
4557
4558
4559export type StatuspageServiceQueryByServiceNamesArgs = {
4560  serviceNames: Array<StatuspageServiceName>;
4561};
4562
4563/** Possible statuses for a service. */
4564export enum StatuspageServiceStatus {
4565  DegradedPerformance = 'DEGRADED_PERFORMANCE',
4566  MajorOutage = 'MAJOR_OUTAGE',
4567  Operational = 'OPERATIONAL',
4568  PartialOutage = 'PARTIAL_OUTAGE',
4569  UnderMaintenance = 'UNDER_MAINTENANCE'
4570}
4571
4572export type StripeCoupon = {
4573  __typename?: 'StripeCoupon';
4574  amountOff?: Maybe<Scalars['String']>;
4575  appliesTo?: Maybe<Scalars['String']>;
4576  id: Scalars['ID'];
4577  name: Scalars['String'];
4578  percentOff?: Maybe<Scalars['Float']>;
4579  valid: Scalars['Boolean'];
4580};
4581
4582/** Represents an EAS Submission */
4583export type Submission = ActivityTimelineProjectActivity & {
4584  __typename?: 'Submission';
4585  activityTimestamp: Scalars['DateTime'];
4586  actor?: Maybe<Actor>;
4587  androidConfig?: Maybe<AndroidSubmissionConfig>;
4588  app: App;
4589  archiveUrl?: Maybe<Scalars['String']>;
4590  canRetry: Scalars['Boolean'];
4591  cancelingActor?: Maybe<Actor>;
4592  childSubmission?: Maybe<Submission>;
4593  completedAt?: Maybe<Scalars['DateTime']>;
4594  createdAt: Scalars['DateTime'];
4595  error?: Maybe<SubmissionError>;
4596  id: Scalars['ID'];
4597  initiatingActor?: Maybe<Actor>;
4598  iosConfig?: Maybe<IosSubmissionConfig>;
4599  logsUrl?: Maybe<Scalars['String']>;
4600  /** Retry time starts after completedAt */
4601  maxRetryTimeMinutes: Scalars['Int'];
4602  parentSubmission?: Maybe<Submission>;
4603  platform: AppPlatform;
4604  status: SubmissionStatus;
4605  submittedBuild?: Maybe<Build>;
4606  updatedAt: Scalars['DateTime'];
4607};
4608
4609export enum SubmissionAndroidArchiveType {
4610  Aab = 'AAB',
4611  Apk = 'APK'
4612}
4613
4614export enum SubmissionAndroidReleaseStatus {
4615  Completed = 'COMPLETED',
4616  Draft = 'DRAFT',
4617  Halted = 'HALTED',
4618  InProgress = 'IN_PROGRESS'
4619}
4620
4621export enum SubmissionAndroidTrack {
4622  Alpha = 'ALPHA',
4623  Beta = 'BETA',
4624  Internal = 'INTERNAL',
4625  Production = 'PRODUCTION'
4626}
4627
4628export type SubmissionArchiveSourceInput = {
4629  /** Required if the archive source type is GCS_BUILD_APPLICATION_ARCHIVE or GCS_SUBMIT_ARCHIVE */
4630  bucketKey?: InputMaybe<Scalars['String']>;
4631  type: SubmissionArchiveSourceType;
4632  /** Required if the archive source type is URL */
4633  url?: InputMaybe<Scalars['String']>;
4634};
4635
4636export enum SubmissionArchiveSourceType {
4637  GcsBuildApplicationArchive = 'GCS_BUILD_APPLICATION_ARCHIVE',
4638  GcsSubmitArchive = 'GCS_SUBMIT_ARCHIVE',
4639  Url = 'URL'
4640}
4641
4642export type SubmissionError = {
4643  __typename?: 'SubmissionError';
4644  errorCode?: Maybe<Scalars['String']>;
4645  message?: Maybe<Scalars['String']>;
4646};
4647
4648export type SubmissionFilter = {
4649  platform?: InputMaybe<AppPlatform>;
4650  status?: InputMaybe<SubmissionStatus>;
4651};
4652
4653export type SubmissionMutation = {
4654  __typename?: 'SubmissionMutation';
4655  /** Cancel an EAS Submit submission */
4656  cancelSubmission: Submission;
4657  /** Create an Android EAS Submit submission */
4658  createAndroidSubmission: CreateSubmissionResult;
4659  /** Create an iOS EAS Submit submission */
4660  createIosSubmission: CreateSubmissionResult;
4661  /** Retry an EAS Submit submission */
4662  retrySubmission: CreateSubmissionResult;
4663};
4664
4665
4666export type SubmissionMutationCancelSubmissionArgs = {
4667  submissionId: Scalars['ID'];
4668};
4669
4670
4671export type SubmissionMutationCreateAndroidSubmissionArgs = {
4672  input: CreateAndroidSubmissionInput;
4673};
4674
4675
4676export type SubmissionMutationCreateIosSubmissionArgs = {
4677  input: CreateIosSubmissionInput;
4678};
4679
4680
4681export type SubmissionMutationRetrySubmissionArgs = {
4682  parentSubmissionId: Scalars['ID'];
4683};
4684
4685export type SubmissionQuery = {
4686  __typename?: 'SubmissionQuery';
4687  /** Look up EAS Submission by submission ID */
4688  byId: Submission;
4689};
4690
4691
4692export type SubmissionQueryByIdArgs = {
4693  submissionId: Scalars['ID'];
4694};
4695
4696export enum SubmissionStatus {
4697  AwaitingBuild = 'AWAITING_BUILD',
4698  Canceled = 'CANCELED',
4699  Errored = 'ERRORED',
4700  Finished = 'FINISHED',
4701  InProgress = 'IN_PROGRESS',
4702  InQueue = 'IN_QUEUE'
4703}
4704
4705export type SubscribeToNotificationResult = {
4706  __typename?: 'SubscribeToNotificationResult';
4707  notificationSubscription: NotificationSubscription;
4708};
4709
4710export type SubscriptionDetails = {
4711  __typename?: 'SubscriptionDetails';
4712  addons: Array<AddonDetails>;
4713  cancelledAt?: Maybe<Scalars['DateTime']>;
4714  concurrencies?: Maybe<Concurrencies>;
4715  coupon?: Maybe<StripeCoupon>;
4716  endedAt?: Maybe<Scalars['DateTime']>;
4717  futureSubscription?: Maybe<FutureSubscription>;
4718  id: Scalars['ID'];
4719  isDowngrading?: Maybe<Scalars['Boolean']>;
4720  meteredBillingStatus: MeteredBillingStatus;
4721  name?: Maybe<Scalars['String']>;
4722  nextInvoice?: Maybe<Scalars['DateTime']>;
4723  planEnablement?: Maybe<PlanEnablement>;
4724  planId?: Maybe<Scalars['String']>;
4725  price: Scalars['Int'];
4726  status?: Maybe<Scalars['String']>;
4727  trialEnd?: Maybe<Scalars['DateTime']>;
4728  willCancel?: Maybe<Scalars['Boolean']>;
4729};
4730
4731
4732export type SubscriptionDetailsPlanEnablementArgs = {
4733  serviceMetric: EasServiceMetric;
4734};
4735
4736export type TimelineActivityConnection = {
4737  __typename?: 'TimelineActivityConnection';
4738  edges: Array<TimelineActivityEdge>;
4739  pageInfo: PageInfo;
4740};
4741
4742export type TimelineActivityEdge = {
4743  __typename?: 'TimelineActivityEdge';
4744  cursor: Scalars['String'];
4745  node: ActivityTimelineProjectActivity;
4746};
4747
4748export type TimelineActivityFilterInput = {
4749  channels?: InputMaybe<Array<Scalars['String']>>;
4750  platforms?: InputMaybe<Array<AppPlatform>>;
4751  releaseChannels?: InputMaybe<Array<Scalars['String']>>;
4752  types?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
4753};
4754
4755export type UniqueUsersOverTimeData = {
4756  __typename?: 'UniqueUsersOverTimeData';
4757  data: LineChartData;
4758};
4759
4760export type UnsubscribeFromNotificationResult = {
4761  __typename?: 'UnsubscribeFromNotificationResult';
4762  notificationSubscription: NotificationSubscription;
4763};
4764
4765export type Update = ActivityTimelineProjectActivity & {
4766  __typename?: 'Update';
4767  activityTimestamp: Scalars['DateTime'];
4768  actor?: Maybe<Actor>;
4769  app: App;
4770  awaitingCodeSigningInfo: Scalars['Boolean'];
4771  branch: UpdateBranch;
4772  branchId: Scalars['ID'];
4773  codeSigningInfo?: Maybe<CodeSigningInfo>;
4774  createdAt: Scalars['DateTime'];
4775  gitCommitHash?: Maybe<Scalars['String']>;
4776  group: Scalars['String'];
4777  id: Scalars['ID'];
4778  isGitWorkingTreeDirty: Scalars['Boolean'];
4779  isRollBackToEmbedded: Scalars['Boolean'];
4780  manifestFragment: Scalars['String'];
4781  manifestPermalink: Scalars['String'];
4782  message?: Maybe<Scalars['String']>;
4783  platform: Scalars['String'];
4784  runtime: Runtime;
4785  /** @deprecated Use 'runtime' field . */
4786  runtimeVersion: Scalars['String'];
4787  updatedAt: Scalars['DateTime'];
4788};
4789
4790export type UpdateBranch = {
4791  __typename?: 'UpdateBranch';
4792  app: App;
4793  appId: Scalars['ID'];
4794  createdAt: Scalars['DateTime'];
4795  id: Scalars['ID'];
4796  name: Scalars['String'];
4797  updateGroups: Array<Array<Update>>;
4798  updatedAt: Scalars['DateTime'];
4799  updates: Array<Update>;
4800};
4801
4802
4803export type UpdateBranchUpdateGroupsArgs = {
4804  filter?: InputMaybe<UpdatesFilter>;
4805  limit: Scalars['Int'];
4806  offset: Scalars['Int'];
4807};
4808
4809
4810export type UpdateBranchUpdatesArgs = {
4811  filter?: InputMaybe<UpdatesFilter>;
4812  limit: Scalars['Int'];
4813  offset: Scalars['Int'];
4814};
4815
4816export type UpdateBranchMutation = {
4817  __typename?: 'UpdateBranchMutation';
4818  /** Create an EAS branch for an app */
4819  createUpdateBranchForApp: UpdateBranch;
4820  /** Delete an EAS branch and all of its updates as long as the branch is not being used by any channels */
4821  deleteUpdateBranch: DeleteUpdateBranchResult;
4822  /**
4823   * Edit an EAS branch. The branch can be specified either by its ID or
4824   * with the combination of (appId, name).
4825   */
4826  editUpdateBranch: UpdateBranch;
4827  /** Publish an update group to a branch */
4828  publishUpdateGroups: Array<Update>;
4829};
4830
4831
4832export type UpdateBranchMutationCreateUpdateBranchForAppArgs = {
4833  appId: Scalars['ID'];
4834  name: Scalars['String'];
4835};
4836
4837
4838export type UpdateBranchMutationDeleteUpdateBranchArgs = {
4839  branchId: Scalars['ID'];
4840};
4841
4842
4843export type UpdateBranchMutationEditUpdateBranchArgs = {
4844  input: EditUpdateBranchInput;
4845};
4846
4847
4848export type UpdateBranchMutationPublishUpdateGroupsArgs = {
4849  publishUpdateGroupsInput: Array<PublishUpdateGroupInput>;
4850};
4851
4852export type UpdateChannel = {
4853  __typename?: 'UpdateChannel';
4854  app: App;
4855  appId: Scalars['ID'];
4856  branchMapping: Scalars['String'];
4857  createdAt: Scalars['DateTime'];
4858  id: Scalars['ID'];
4859  name: Scalars['String'];
4860  updateBranches: Array<UpdateBranch>;
4861  updatedAt: Scalars['DateTime'];
4862};
4863
4864
4865export type UpdateChannelUpdateBranchesArgs = {
4866  limit: Scalars['Int'];
4867  offset: Scalars['Int'];
4868};
4869
4870export type UpdateChannelMutation = {
4871  __typename?: 'UpdateChannelMutation';
4872  /**
4873   * Create an EAS channel for an app.
4874   *
4875   * In order to work with GraphQL formatting, the branchMapping should be a
4876   * stringified JSON supplied to the mutation as a variable.
4877   */
4878  createUpdateChannelForApp: UpdateChannel;
4879  /** delete an EAS channel that doesn't point to any branches */
4880  deleteUpdateChannel: DeleteUpdateChannelResult;
4881  /**
4882   * Edit an EAS channel.
4883   *
4884   * In order to work with GraphQL formatting, the branchMapping should be a
4885   * stringified JSON supplied to the mutation as a variable.
4886   */
4887  editUpdateChannel: UpdateChannel;
4888};
4889
4890
4891export type UpdateChannelMutationCreateUpdateChannelForAppArgs = {
4892  appId: Scalars['ID'];
4893  branchMapping?: InputMaybe<Scalars['String']>;
4894  name: Scalars['String'];
4895};
4896
4897
4898export type UpdateChannelMutationDeleteUpdateChannelArgs = {
4899  channelId: Scalars['ID'];
4900};
4901
4902
4903export type UpdateChannelMutationEditUpdateChannelArgs = {
4904  branchMapping: Scalars['String'];
4905  channelId: Scalars['ID'];
4906};
4907
4908export type UpdateGitHubRepositorySettingsInput = {
4909  baseDirectory: Scalars['String'];
4910};
4911
4912export type UpdateInfoGroup = {
4913  android?: InputMaybe<PartialManifest>;
4914  ios?: InputMaybe<PartialManifest>;
4915  web?: InputMaybe<PartialManifest>;
4916};
4917
4918export type UpdateMutation = {
4919  __typename?: 'UpdateMutation';
4920  /** Delete an EAS update group */
4921  deleteUpdateGroup: DeleteUpdateGroupResult;
4922  /** Set code signing info for an update */
4923  setCodeSigningInfo: Update;
4924};
4925
4926
4927export type UpdateMutationDeleteUpdateGroupArgs = {
4928  group: Scalars['ID'];
4929};
4930
4931
4932export type UpdateMutationSetCodeSigningInfoArgs = {
4933  codeSigningInfo: CodeSigningInfoInput;
4934  updateId: Scalars['ID'];
4935};
4936
4937export type UpdateRollBackToEmbeddedGroup = {
4938  android?: InputMaybe<Scalars['Boolean']>;
4939  ios?: InputMaybe<Scalars['Boolean']>;
4940  web?: InputMaybe<Scalars['Boolean']>;
4941};
4942
4943export type UpdatesFilter = {
4944  platform?: InputMaybe<AppPlatform>;
4945  runtimeVersions?: InputMaybe<Array<Scalars['String']>>;
4946  sdkVersions?: InputMaybe<Array<Scalars['String']>>;
4947};
4948
4949export type UploadSession = {
4950  __typename?: 'UploadSession';
4951  /** Create an Upload Session */
4952  createUploadSession: Scalars['JSONObject'];
4953};
4954
4955
4956export type UploadSessionCreateUploadSessionArgs = {
4957  type: UploadSessionType;
4958};
4959
4960export enum UploadSessionType {
4961  EasBuildGcsProjectSources = 'EAS_BUILD_GCS_PROJECT_SOURCES',
4962  EasBuildProjectSources = 'EAS_BUILD_PROJECT_SOURCES',
4963  EasSubmitAppArchive = 'EAS_SUBMIT_APP_ARCHIVE',
4964  EasSubmitGcsAppArchive = 'EAS_SUBMIT_GCS_APP_ARCHIVE'
4965}
4966
4967export type UsageMetricTotal = {
4968  __typename?: 'UsageMetricTotal';
4969  billingPeriod: BillingPeriod;
4970  id: Scalars['ID'];
4971  overageMetrics: Array<EstimatedOverageAndCost>;
4972  planMetrics: Array<EstimatedUsage>;
4973  /** Total cost of overages, in cents */
4974  totalCost: Scalars['Float'];
4975};
4976
4977export enum UsageMetricType {
4978  Bandwidth = 'BANDWIDTH',
4979  Build = 'BUILD',
4980  Request = 'REQUEST',
4981  Update = 'UPDATE',
4982  User = 'USER'
4983}
4984
4985export enum UsageMetricsGranularity {
4986  Day = 'DAY',
4987  Hour = 'HOUR',
4988  Minute = 'MINUTE',
4989  Total = 'TOTAL'
4990}
4991
4992export type UsageMetricsTimespan = {
4993  end: Scalars['DateTime'];
4994  start: Scalars['DateTime'];
4995};
4996
4997/** Represents a human (not robot) actor. */
4998export type User = Actor & UserActor & {
4999  __typename?: 'User';
5000  /** Access Tokens belonging to this actor */
5001  accessTokens: Array<AccessToken>;
5002  accounts: Array<Account>;
5003  /** Coalesced project activity for all apps belonging to all accounts this user belongs to. Only resolves for the viewer. */
5004  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
5005  appCount: Scalars['Int'];
5006  /** @deprecated No longer supported */
5007  appetizeCode?: Maybe<Scalars['String']>;
5008  /** Apps this user has published */
5009  apps: Array<App>;
5010  bestContactEmail?: Maybe<Scalars['String']>;
5011  created: Scalars['DateTime'];
5012  /** Discord account linked to a user */
5013  discordUser?: Maybe<DiscordUser>;
5014  displayName: Scalars['String'];
5015  email?: Maybe<Scalars['String']>;
5016  emailVerified: Scalars['Boolean'];
5017  /**
5018   * Server feature gate values for this actor, optionally filtering by desired gates.
5019   * Only resolves for the viewer.
5020   */
5021  featureGates: Scalars['JSONObject'];
5022  firstName?: Maybe<Scalars['String']>;
5023  fullName?: Maybe<Scalars['String']>;
5024  /** GitHub account linked to a user */
5025  githubUser?: Maybe<GitHubUser>;
5026  /** @deprecated No longer supported */
5027  githubUsername?: Maybe<Scalars['String']>;
5028  /** Whether this user has any pending user invitations. Only resolves for the viewer. */
5029  hasPendingUserInvitations: Scalars['Boolean'];
5030  id: Scalars['ID'];
5031  /** @deprecated No longer supported */
5032  industry?: Maybe<Scalars['String']>;
5033  isExpoAdmin: Scalars['Boolean'];
5034  /** @deprecated No longer supported */
5035  isLegacy: Scalars['Boolean'];
5036  isSecondFactorAuthenticationEnabled: Scalars['Boolean'];
5037  lastName?: Maybe<Scalars['String']>;
5038  /** @deprecated No longer supported */
5039  location?: Maybe<Scalars['String']>;
5040  notificationSubscriptions: Array<NotificationSubscription>;
5041  /** Pending UserInvitations for this user. Only resolves for the viewer. */
5042  pendingUserInvitations: Array<UserInvitation>;
5043  /** Associated accounts */
5044  primaryAccount: Account;
5045  profilePhoto: Scalars['String'];
5046  /** Get all certified second factor authentication methods */
5047  secondFactorDevices: Array<UserSecondFactorDevice>;
5048  /** Snacks associated with this account */
5049  snacks: Array<Snack>;
5050  /** @deprecated No longer supported */
5051  twitterUsername?: Maybe<Scalars['String']>;
5052  username: Scalars['String'];
5053};
5054
5055
5056/** Represents a human (not robot) actor. */
5057export type UserActivityTimelineProjectActivitiesArgs = {
5058  createdBefore?: InputMaybe<Scalars['DateTime']>;
5059  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
5060  limit: Scalars['Int'];
5061};
5062
5063
5064/** Represents a human (not robot) actor. */
5065export type UserAppsArgs = {
5066  includeUnpublished?: InputMaybe<Scalars['Boolean']>;
5067  limit: Scalars['Int'];
5068  offset: Scalars['Int'];
5069};
5070
5071
5072/** Represents a human (not robot) actor. */
5073export type UserFeatureGatesArgs = {
5074  filter?: InputMaybe<Array<Scalars['String']>>;
5075};
5076
5077
5078/** Represents a human (not robot) actor. */
5079export type UserNotificationSubscriptionsArgs = {
5080  filter?: InputMaybe<NotificationSubscriptionFilter>;
5081};
5082
5083
5084/** Represents a human (not robot) actor. */
5085export type UserSnacksArgs = {
5086  limit: Scalars['Int'];
5087  offset: Scalars['Int'];
5088};
5089
5090/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5091export type UserActor = {
5092  /** Access Tokens belonging to this user actor */
5093  accessTokens: Array<AccessToken>;
5094  accounts: Array<Account>;
5095  /**
5096   * Coalesced project activity for all apps belonging to all accounts this user actor belongs to.
5097   * Only resolves for the viewer.
5098   */
5099  activityTimelineProjectActivities: Array<ActivityTimelineProjectActivity>;
5100  appCount: Scalars['Int'];
5101  /** @deprecated No longer supported */
5102  appetizeCode?: Maybe<Scalars['String']>;
5103  /** Apps this user has published */
5104  apps: Array<App>;
5105  bestContactEmail?: Maybe<Scalars['String']>;
5106  created: Scalars['DateTime'];
5107  /** Discord account linked to a user */
5108  discordUser?: Maybe<DiscordUser>;
5109  /**
5110   * Best-effort human readable name for this human actor for use in user interfaces during action attribution.
5111   * For example, when displaying a sentence indicating that actor X created a build or published an update.
5112   */
5113  displayName: Scalars['String'];
5114  /**
5115   * Server feature gate values for this user actor, optionally filtering by desired gates.
5116   * Only resolves for the viewer.
5117   */
5118  featureGates: Scalars['JSONObject'];
5119  firstName?: Maybe<Scalars['String']>;
5120  fullName?: Maybe<Scalars['String']>;
5121  /** GitHub account linked to a user */
5122  githubUser?: Maybe<GitHubUser>;
5123  /** @deprecated No longer supported */
5124  githubUsername?: Maybe<Scalars['String']>;
5125  id: Scalars['ID'];
5126  /** @deprecated No longer supported */
5127  industry?: Maybe<Scalars['String']>;
5128  isExpoAdmin: Scalars['Boolean'];
5129  lastName?: Maybe<Scalars['String']>;
5130  /** @deprecated No longer supported */
5131  location?: Maybe<Scalars['String']>;
5132  notificationSubscriptions: Array<NotificationSubscription>;
5133  /** Associated accounts */
5134  primaryAccount: Account;
5135  profilePhoto: Scalars['String'];
5136  /** Snacks associated with this user's personal account */
5137  snacks: Array<Snack>;
5138  /** @deprecated No longer supported */
5139  twitterUsername?: Maybe<Scalars['String']>;
5140  username: Scalars['String'];
5141};
5142
5143
5144/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5145export type UserActorActivityTimelineProjectActivitiesArgs = {
5146  createdBefore?: InputMaybe<Scalars['DateTime']>;
5147  filterTypes?: InputMaybe<Array<ActivityTimelineProjectActivityType>>;
5148  limit: Scalars['Int'];
5149};
5150
5151
5152/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5153export type UserActorAppsArgs = {
5154  includeUnpublished?: InputMaybe<Scalars['Boolean']>;
5155  limit: Scalars['Int'];
5156  offset: Scalars['Int'];
5157};
5158
5159
5160/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5161export type UserActorFeatureGatesArgs = {
5162  filter?: InputMaybe<Array<Scalars['String']>>;
5163};
5164
5165
5166/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5167export type UserActorNotificationSubscriptionsArgs = {
5168  filter?: InputMaybe<NotificationSubscriptionFilter>;
5169};
5170
5171
5172/** A human user (type User or SSOUser) that can login to the Expo website, use Expo services, and be a member of accounts. */
5173export type UserActorSnacksArgs = {
5174  limit: Scalars['Int'];
5175  offset: Scalars['Int'];
5176};
5177
5178export type UserActorQuery = {
5179  __typename?: 'UserActorQuery';
5180  /** Query a UserActor by ID */
5181  byId: UserActor;
5182  /** Query a UserActor by username */
5183  byUsername: UserActor;
5184};
5185
5186
5187export type UserActorQueryByIdArgs = {
5188  id: Scalars['ID'];
5189};
5190
5191
5192export type UserActorQueryByUsernameArgs = {
5193  username: Scalars['String'];
5194};
5195
5196export type UserDataInput = {
5197  email?: InputMaybe<Scalars['String']>;
5198  firstName?: InputMaybe<Scalars['String']>;
5199  fullName?: InputMaybe<Scalars['String']>;
5200  id?: InputMaybe<Scalars['ID']>;
5201  lastName?: InputMaybe<Scalars['String']>;
5202  profilePhoto?: InputMaybe<Scalars['String']>;
5203  username?: InputMaybe<Scalars['String']>;
5204};
5205
5206/** An pending invitation sent to an email granting membership on an Account. */
5207export type UserInvitation = {
5208  __typename?: 'UserInvitation';
5209  accountName: Scalars['String'];
5210  /** If the invite is for a personal team, the profile photo of account owner */
5211  accountProfilePhoto?: Maybe<Scalars['String']>;
5212  created: Scalars['DateTime'];
5213  /** Email to which this invitation was sent */
5214  email: Scalars['String'];
5215  expires: Scalars['DateTime'];
5216  id: Scalars['ID'];
5217  /** If the invite is for an organization or a personal team */
5218  isForOrganization: Scalars['Boolean'];
5219  /** Account permissions to be granted upon acceptance of this invitation */
5220  permissions: Array<Permission>;
5221  /** Role to be granted upon acceptance of this invitation */
5222  role: Role;
5223};
5224
5225export type UserInvitationMutation = {
5226  __typename?: 'UserInvitationMutation';
5227  /** Accept UserInvitation by ID. Viewer must have matching email and email must be verified. */
5228  acceptUserInvitationAsViewer: AcceptUserInvitationResult;
5229  /**
5230   * Accept UserInvitation by token. Note that the viewer's email is not required to match
5231   * the email on the invitation. If viewer's email does match that of the invitation,
5232   * their email will also be verified.
5233   */
5234  acceptUserInvitationByTokenAsViewer: AcceptUserInvitationResult;
5235  /**
5236   * Create a UserInvitation for an email that when accepted grants
5237   * the specified permissions on an Account
5238   */
5239  createUserInvitationForAccount: UserInvitation;
5240  /** Rescind UserInvitation by ID */
5241  deleteUserInvitation: RescindUserInvitationResult;
5242  /**
5243   * Delete UserInvitation by token. Note that the viewer's email is not required to match
5244   * the email on the invitation.
5245   */
5246  deleteUserInvitationByToken: RescindUserInvitationResult;
5247  /** Re-send UserInivitation by ID */
5248  resendUserInvitation: UserInvitation;
5249};
5250
5251
5252export type UserInvitationMutationAcceptUserInvitationAsViewerArgs = {
5253  id: Scalars['ID'];
5254};
5255
5256
5257export type UserInvitationMutationAcceptUserInvitationByTokenAsViewerArgs = {
5258  token: Scalars['ID'];
5259};
5260
5261
5262export type UserInvitationMutationCreateUserInvitationForAccountArgs = {
5263  accountID: Scalars['ID'];
5264  email: Scalars['String'];
5265  permissions: Array<InputMaybe<Permission>>;
5266};
5267
5268
5269export type UserInvitationMutationDeleteUserInvitationArgs = {
5270  id: Scalars['ID'];
5271};
5272
5273
5274export type UserInvitationMutationDeleteUserInvitationByTokenArgs = {
5275  token: Scalars['ID'];
5276};
5277
5278
5279export type UserInvitationMutationResendUserInvitationArgs = {
5280  id: Scalars['ID'];
5281};
5282
5283/** Publicly visible data for a UserInvitation. */
5284export type UserInvitationPublicData = {
5285  __typename?: 'UserInvitationPublicData';
5286  accountName: Scalars['String'];
5287  accountProfilePhoto?: Maybe<Scalars['String']>;
5288  created: Scalars['DateTime'];
5289  email: Scalars['String'];
5290  expires: Scalars['DateTime'];
5291  /** Email to which this invitation was sent */
5292  id: Scalars['ID'];
5293  isForOrganization: Scalars['Boolean'];
5294};
5295
5296export type UserInvitationPublicDataQuery = {
5297  __typename?: 'UserInvitationPublicDataQuery';
5298  /** Get UserInvitationPublicData by token */
5299  byToken: UserInvitationPublicData;
5300};
5301
5302
5303export type UserInvitationPublicDataQueryByTokenArgs = {
5304  token: Scalars['ID'];
5305};
5306
5307export type UserPermission = {
5308  __typename?: 'UserPermission';
5309  actor: Actor;
5310  permissions: Array<Permission>;
5311  role: Role;
5312  /** @deprecated User type is deprecated */
5313  user?: Maybe<User>;
5314  userActor?: Maybe<UserActor>;
5315};
5316
5317export type UserQuery = {
5318  __typename?: 'UserQuery';
5319  /** Query a User by ID */
5320  byId: User;
5321  /** Query a User by username */
5322  byUsername: User;
5323};
5324
5325
5326export type UserQueryByIdArgs = {
5327  userId: Scalars['ID'];
5328};
5329
5330
5331export type UserQueryByUsernameArgs = {
5332  username: Scalars['String'];
5333};
5334
5335/** A second factor device belonging to a User */
5336export type UserSecondFactorDevice = {
5337  __typename?: 'UserSecondFactorDevice';
5338  createdAt: Scalars['DateTime'];
5339  id: Scalars['ID'];
5340  isCertified: Scalars['Boolean'];
5341  isPrimary: Scalars['Boolean'];
5342  method: SecondFactorMethod;
5343  name: Scalars['String'];
5344  smsPhoneNumber?: Maybe<Scalars['String']>;
5345  updatedAt: Scalars['DateTime'];
5346  user: User;
5347};
5348
5349export type Webhook = {
5350  __typename?: 'Webhook';
5351  appId: Scalars['ID'];
5352  createdAt: Scalars['DateTime'];
5353  event: WebhookType;
5354  id: Scalars['ID'];
5355  updatedAt: Scalars['DateTime'];
5356  url: Scalars['String'];
5357};
5358
5359export type WebhookFilter = {
5360  event?: InputMaybe<WebhookType>;
5361};
5362
5363export type WebhookInput = {
5364  event: WebhookType;
5365  secret: Scalars['String'];
5366  url: Scalars['String'];
5367};
5368
5369export type WebhookMutation = {
5370  __typename?: 'WebhookMutation';
5371  /** Create a Webhook */
5372  createWebhook: Webhook;
5373  /** Delete a Webhook */
5374  deleteWebhook: DeleteWebhookResult;
5375  /** Update a Webhook */
5376  updateWebhook: Webhook;
5377};
5378
5379
5380export type WebhookMutationCreateWebhookArgs = {
5381  appId: Scalars['String'];
5382  webhookInput: WebhookInput;
5383};
5384
5385
5386export type WebhookMutationDeleteWebhookArgs = {
5387  webhookId: Scalars['ID'];
5388};
5389
5390
5391export type WebhookMutationUpdateWebhookArgs = {
5392  webhookId: Scalars['ID'];
5393  webhookInput: WebhookInput;
5394};
5395
5396export type WebhookQuery = {
5397  __typename?: 'WebhookQuery';
5398  byId: Webhook;
5399};
5400
5401
5402export type WebhookQueryByIdArgs = {
5403  id: Scalars['ID'];
5404};
5405
5406export enum WebhookType {
5407  Build = 'BUILD',
5408  Submit = 'SUBMIT'
5409}
5410
5411export type DeleteAndroidAppBuildCredentialsResult = {
5412  __typename?: 'deleteAndroidAppBuildCredentialsResult';
5413  id: Scalars['ID'];
5414};
5415
5416export type DeleteAndroidFcmResult = {
5417  __typename?: 'deleteAndroidFcmResult';
5418  id: Scalars['ID'];
5419};
5420
5421export type DeleteAppStoreConnectApiKeyResult = {
5422  __typename?: 'deleteAppStoreConnectApiKeyResult';
5423  id: Scalars['ID'];
5424};
5425
5426export type DeleteApplePushKeyResult = {
5427  __typename?: 'deleteApplePushKeyResult';
5428  id: Scalars['ID'];
5429};
5430
5431export type CommonAppDataFragment = { __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> };
5432
5433export type CommonSnackDataFragment = { __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean };
5434
5435type CurrentUserActorData_SsoUser_Fragment = { __typename: 'SSOUser', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> };
5436
5437type CurrentUserActorData_User_Fragment = { __typename: 'User', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> };
5438
5439export type CurrentUserActorDataFragment = CurrentUserActorData_SsoUser_Fragment | CurrentUserActorData_User_Fragment;
5440
5441export type Home_AccountDataQueryVariables = Exact<{
5442  accountName: Scalars['String'];
5443  appLimit: Scalars['Int'];
5444  snackLimit: Scalars['Int'];
5445}>;
5446
5447
5448export type Home_AccountDataQuery = { __typename?: 'RootQuery', account: { __typename?: 'AccountQuery', byName: { __typename?: 'Account', id: string, name: string, appCount: number, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }>, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } } };
5449
5450export type BranchDetailsQueryVariables = Exact<{
5451  name: Scalars['String'];
5452  appId: Scalars['String'];
5453  platform: AppPlatform;
5454  sdkVersions: Array<Scalars['String']> | Scalars['String'];
5455}>;
5456
5457
5458export type BranchDetailsQuery = { __typename?: 'RootQuery', app: { __typename?: 'AppQuery', byId: { __typename?: 'App', id: string, name: string, slug: string, fullName: string, updateBranchByName?: { __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string, group: string, message?: string | null, createdAt: any, runtimeVersion: string, platform: string, manifestPermalink: string }> } | null } } };
5459
5460export type BranchesForProjectQueryVariables = Exact<{
5461  appId: Scalars['String'];
5462  platform: AppPlatform;
5463  sdkVersions: Array<Scalars['String']> | Scalars['String'];
5464  limit: Scalars['Int'];
5465  offset: Scalars['Int'];
5466}>;
5467
5468
5469export type BranchesForProjectQuery = { __typename?: 'RootQuery', app: { __typename?: 'AppQuery', byId: { __typename?: 'App', id: string, name: string, slug: string, fullName: string, username: string, published: boolean, description: string, githubUrl?: string | null, playStoreUrl?: string | null, appStoreUrl?: string | null, sdkVersion: string, iconUrl?: string | null, privacy: string, icon?: { __typename?: 'AppIcon', url: string } | null, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string, group: string, message?: string | null, createdAt: any, runtimeVersion: string, platform: string, manifestPermalink: string }> }> } } };
5470
5471export type Home_CurrentUserActorQueryVariables = Exact<{ [key: string]: never; }>;
5472
5473
5474export type Home_CurrentUserActorQuery = { __typename?: 'RootQuery', meUserActor?: { __typename: 'SSOUser', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> } | { __typename: 'User', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> } | null };
5475
5476export type Home_ProfileData2QueryVariables = Exact<{
5477  appLimit: Scalars['Int'];
5478  snackLimit: Scalars['Int'];
5479}>;
5480
5481
5482export type Home_ProfileData2Query = { __typename?: 'RootQuery', meUserActor?: { __typename?: 'SSOUser', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, appCount: number, accounts: Array<{ __typename?: 'Account', id: string, name: string }>, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }>, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } | { __typename?: 'User', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, appCount: number, accounts: Array<{ __typename?: 'Account', id: string, name: string }>, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }>, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } | null };
5483
5484export type Home_MyAppsQueryVariables = Exact<{
5485  limit: Scalars['Int'];
5486  offset: Scalars['Int'];
5487}>;
5488
5489
5490export type Home_MyAppsQuery = { __typename?: 'RootQuery', meUserActor?: { __typename?: 'SSOUser', id: string, appCount: number, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }> } | { __typename?: 'User', id: string, appCount: number, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }> } | null };
5491
5492export type Home_ProfileSnacksQueryVariables = Exact<{
5493  limit: Scalars['Int'];
5494  offset: Scalars['Int'];
5495}>;
5496
5497
5498export type Home_ProfileSnacksQuery = { __typename?: 'RootQuery', meUserActor?: { __typename?: 'SSOUser', id: string, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } | { __typename?: 'User', id: string, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } | null };
5499
5500export type WebContainerProjectPage_QueryVariables = Exact<{
5501  appId: Scalars['String'];
5502  platform: AppPlatform;
5503  sdkVersions: Array<Scalars['String']> | Scalars['String'];
5504}>;
5505
5506
5507export type WebContainerProjectPage_Query = { __typename?: 'RootQuery', app: { __typename?: 'AppQuery', byId: { __typename?: 'App', id: string, name: string, slug: string, fullName: string, username: string, published: boolean, description: string, githubUrl?: string | null, playStoreUrl?: string | null, appStoreUrl?: string | null, sdkVersion: string, iconUrl?: string | null, privacy: string, icon?: { __typename?: 'AppIcon', url: string } | null, latestReleaseForReleaseChannel?: { __typename?: 'AppRelease', sdkVersion: string, runtimeVersion?: string | null } | null, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string, group: string, message?: string | null, createdAt: any, runtimeVersion: string, platform: string, manifestPermalink: string }> }> } } };
5508
5509export type Home_AccountAppsQueryVariables = Exact<{
5510  accountName: Scalars['String'];
5511  limit: Scalars['Int'];
5512  offset: Scalars['Int'];
5513}>;
5514
5515
5516export type Home_AccountAppsQuery = { __typename?: 'RootQuery', account: { __typename?: 'AccountQuery', byName: { __typename?: 'Account', id: string, appCount: number, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }> } } };
5517
5518export type Home_AccountSnacksQueryVariables = Exact<{
5519  accountName: Scalars['String'];
5520  limit: Scalars['Int'];
5521  offset: Scalars['Int'];
5522}>;
5523
5524
5525export type Home_AccountSnacksQuery = { __typename?: 'RootQuery', account: { __typename?: 'AccountQuery', byName: { __typename?: 'Account', id: string, name: string, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } } };
5526
5527export type Home_ViewerPrimaryAccountNameQueryVariables = Exact<{ [key: string]: never; }>;
5528
5529
5530export type Home_ViewerPrimaryAccountNameQuery = { __typename?: 'RootQuery', meUserActor?: { __typename?: 'SSOUser', id: string, primaryAccount: { __typename?: 'Account', id: string, name: string } } | { __typename?: 'User', id: string, primaryAccount: { __typename?: 'Account', id: string, name: string } } | null };
5531
5532export type DeleteAccountPermissionsQueryVariables = Exact<{ [key: string]: never; }>;
5533
5534
5535export type DeleteAccountPermissionsQuery = { __typename?: 'RootQuery', me?: { __typename?: 'User', id: string, secondFactorDevices: Array<{ __typename?: 'UserSecondFactorDevice', id: string, name: string, isPrimary: boolean, isCertified: boolean, smsPhoneNumber?: string | null, method: SecondFactorMethod, createdAt: any }>, accounts: Array<{ __typename?: 'Account', id: string, name: string, users: Array<{ __typename?: 'UserPermission', permissions: Array<Permission>, user?: { __typename?: 'User', id: string, username: string } | null }> }> } | null };
5536
5537export type UserSecondFactorDeviceDataFragment = { __typename?: 'UserSecondFactorDevice', id: string, name: string, isPrimary: boolean, isCertified: boolean, smsPhoneNumber?: string | null, method: SecondFactorMethod, createdAt: any };
5538
5539export type SecondFactorDevicesQueryVariables = Exact<{ [key: string]: never; }>;
5540
5541
5542export type SecondFactorDevicesQuery = { __typename?: 'RootQuery', me?: { __typename?: 'User', id: string, emailVerified: boolean, secondFactorDevices: Array<{ __typename?: 'UserSecondFactorDevice', id: string, name: string, isPrimary: boolean, isCertified: boolean, smsPhoneNumber?: string | null, method: SecondFactorMethod, createdAt: any }> } | null };
5543
5544export type SendSmsotpToSecondFactorDeviceMutationVariables = Exact<{
5545  userSecondFactorDeviceId: Scalars['ID'];
5546}>;
5547
5548
5549export type SendSmsotpToSecondFactorDeviceMutation = { __typename?: 'RootMutation', me: { __typename?: 'MeMutation', sendSMSOTPToSecondFactorDevice: { __typename?: 'SecondFactorBooleanResult', success: boolean } } };
5550
5551export type UserPermissionDataFragment = { __typename?: 'UserPermission', permissions: Array<Permission>, role: Role, user?: { __typename?: 'User', id: string, fullName?: string | null, profilePhoto: string, username: string, email?: string | null } | null };
5552
5553export type HomeScreenDataQueryVariables = Exact<{
5554  accountName: Scalars['String'];
5555}>;
5556
5557
5558export type HomeScreenDataQuery = { __typename?: 'RootQuery', account: { __typename?: 'AccountQuery', byName: { __typename?: 'Account', id: string, name: string, isCurrent: boolean, appCount: number, ownerUserActor?: { __typename: 'SSOUser', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> } | { __typename: 'User', id: string, username: string, firstName?: string | null, lastName?: string | null, profilePhoto: string, accounts: Array<{ __typename?: 'Account', id: string, name: string, ownerUserActor?: { __typename?: 'SSOUser', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | { __typename?: 'User', id: string, username: string, profilePhoto: string, firstName?: string | null, fullName?: string | null, lastName?: string | null } | null }> } | null, apps: Array<{ __typename?: 'App', id: string, fullName: string, name: string, iconUrl?: string | null, packageName: string, username: string, description: string, sdkVersion: string, privacy: string, updateBranches: Array<{ __typename?: 'UpdateBranch', id: string, name: string, updates: Array<{ __typename?: 'Update', id: string }> }> }>, snacks: Array<{ __typename?: 'Snack', id: string, name: string, description: string, fullName: string, slug: string, isDraft: boolean }> } } };
5559
5560export const CommonAppDataFragmentDoc = gql`
5561    fragment CommonAppData on App {
5562  id
5563  fullName
5564  name
5565  iconUrl
5566  packageName
5567  username
5568  description
5569  sdkVersion
5570  privacy
5571  updateBranches(limit: 100, offset: 0) {
5572    id
5573    name
5574    updates(limit: 1, offset: 0) {
5575      id
5576    }
5577  }
5578}
5579    `;
5580export const CommonSnackDataFragmentDoc = gql`
5581    fragment CommonSnackData on Snack {
5582  id
5583  name
5584  description
5585  fullName
5586  slug
5587  isDraft
5588}
5589    `;
5590export const CurrentUserActorDataFragmentDoc = gql`
5591    fragment CurrentUserActorData on UserActor {
5592  __typename
5593  id
5594  username
5595  firstName
5596  lastName
5597  profilePhoto
5598  accounts {
5599    id
5600    name
5601    ownerUserActor {
5602      id
5603      username
5604      profilePhoto
5605      firstName
5606      fullName
5607      lastName
5608    }
5609  }
5610}
5611    `;
5612export const UserSecondFactorDeviceDataFragmentDoc = gql`
5613    fragment UserSecondFactorDeviceData on UserSecondFactorDevice {
5614  id
5615  name
5616  isPrimary
5617  isCertified
5618  smsPhoneNumber
5619  method
5620  createdAt
5621}
5622    `;
5623export const UserPermissionDataFragmentDoc = gql`
5624    fragment UserPermissionData on UserPermission {
5625  permissions
5626  role
5627  user {
5628    id
5629    fullName
5630    profilePhoto
5631    username
5632    email
5633  }
5634}
5635    `;
5636export const Home_AccountDataDocument = gql`
5637    query Home_AccountData($accountName: String!, $appLimit: Int!, $snackLimit: Int!) {
5638  account {
5639    byName(accountName: $accountName) {
5640      id
5641      name
5642      appCount
5643      apps(limit: $appLimit, offset: 0, includeUnpublished: true) {
5644        ...CommonAppData
5645      }
5646      snacks(limit: $snackLimit, offset: 0) {
5647        ...CommonSnackData
5648      }
5649    }
5650  }
5651}
5652    ${CommonAppDataFragmentDoc}
5653${CommonSnackDataFragmentDoc}`;
5654
5655/**
5656 * __useHome_AccountDataQuery__
5657 *
5658 * To run a query within a React component, call `useHome_AccountDataQuery` and pass it any options that fit your needs.
5659 * When your component renders, `useHome_AccountDataQuery` returns an object from Apollo Client that contains loading, error, and data properties
5660 * you can use to render your UI.
5661 *
5662 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5663 *
5664 * @example
5665 * const { data, loading, error } = useHome_AccountDataQuery({
5666 *   variables: {
5667 *      accountName: // value for 'accountName'
5668 *      appLimit: // value for 'appLimit'
5669 *      snackLimit: // value for 'snackLimit'
5670 *   },
5671 * });
5672 */
5673export function useHome_AccountDataQuery(baseOptions: Apollo.QueryHookOptions<Home_AccountDataQuery, Home_AccountDataQueryVariables>) {
5674        const options = {...defaultOptions, ...baseOptions}
5675        return Apollo.useQuery<Home_AccountDataQuery, Home_AccountDataQueryVariables>(Home_AccountDataDocument, options);
5676      }
5677export function useHome_AccountDataLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_AccountDataQuery, Home_AccountDataQueryVariables>) {
5678          const options = {...defaultOptions, ...baseOptions}
5679          return Apollo.useLazyQuery<Home_AccountDataQuery, Home_AccountDataQueryVariables>(Home_AccountDataDocument, options);
5680        }
5681export type Home_AccountDataQueryHookResult = ReturnType<typeof useHome_AccountDataQuery>;
5682export type Home_AccountDataLazyQueryHookResult = ReturnType<typeof useHome_AccountDataLazyQuery>;
5683export type Home_AccountDataQueryResult = Apollo.QueryResult<Home_AccountDataQuery, Home_AccountDataQueryVariables>;
5684export function refetchHome_AccountDataQuery(variables: Home_AccountDataQueryVariables) {
5685      return { query: Home_AccountDataDocument, variables: variables }
5686    }
5687export const BranchDetailsDocument = gql`
5688    query BranchDetails($name: String!, $appId: String!, $platform: AppPlatform!, $sdkVersions: [String!]!) {
5689  app {
5690    byId(appId: $appId) {
5691      id
5692      name
5693      slug
5694      fullName
5695      updateBranchByName(name: $name) {
5696        id
5697        name
5698        updates(
5699          limit: 100
5700          offset: 0
5701          filter: {platform: $platform, sdkVersions: $sdkVersions}
5702        ) {
5703          id
5704          group
5705          message
5706          createdAt
5707          runtimeVersion
5708          platform
5709          manifestPermalink
5710        }
5711      }
5712    }
5713  }
5714}
5715    `;
5716
5717/**
5718 * __useBranchDetailsQuery__
5719 *
5720 * To run a query within a React component, call `useBranchDetailsQuery` and pass it any options that fit your needs.
5721 * When your component renders, `useBranchDetailsQuery` returns an object from Apollo Client that contains loading, error, and data properties
5722 * you can use to render your UI.
5723 *
5724 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5725 *
5726 * @example
5727 * const { data, loading, error } = useBranchDetailsQuery({
5728 *   variables: {
5729 *      name: // value for 'name'
5730 *      appId: // value for 'appId'
5731 *      platform: // value for 'platform'
5732 *      sdkVersions: // value for 'sdkVersions'
5733 *   },
5734 * });
5735 */
5736export function useBranchDetailsQuery(baseOptions: Apollo.QueryHookOptions<BranchDetailsQuery, BranchDetailsQueryVariables>) {
5737        const options = {...defaultOptions, ...baseOptions}
5738        return Apollo.useQuery<BranchDetailsQuery, BranchDetailsQueryVariables>(BranchDetailsDocument, options);
5739      }
5740export function useBranchDetailsLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<BranchDetailsQuery, BranchDetailsQueryVariables>) {
5741          const options = {...defaultOptions, ...baseOptions}
5742          return Apollo.useLazyQuery<BranchDetailsQuery, BranchDetailsQueryVariables>(BranchDetailsDocument, options);
5743        }
5744export type BranchDetailsQueryHookResult = ReturnType<typeof useBranchDetailsQuery>;
5745export type BranchDetailsLazyQueryHookResult = ReturnType<typeof useBranchDetailsLazyQuery>;
5746export type BranchDetailsQueryResult = Apollo.QueryResult<BranchDetailsQuery, BranchDetailsQueryVariables>;
5747export function refetchBranchDetailsQuery(variables: BranchDetailsQueryVariables) {
5748      return { query: BranchDetailsDocument, variables: variables }
5749    }
5750export const BranchesForProjectDocument = gql`
5751    query BranchesForProject($appId: String!, $platform: AppPlatform!, $sdkVersions: [String!]!, $limit: Int!, $offset: Int!) {
5752  app {
5753    byId(appId: $appId) {
5754      id
5755      name
5756      slug
5757      fullName
5758      username
5759      published
5760      description
5761      githubUrl
5762      playStoreUrl
5763      appStoreUrl
5764      sdkVersion
5765      iconUrl
5766      privacy
5767      icon {
5768        url
5769      }
5770      updateBranches(limit: $limit, offset: $offset) {
5771        id
5772        name
5773        updates(
5774          limit: 1
5775          offset: 0
5776          filter: {platform: $platform, sdkVersions: $sdkVersions}
5777        ) {
5778          id
5779          group
5780          message
5781          createdAt
5782          runtimeVersion
5783          platform
5784          manifestPermalink
5785        }
5786      }
5787    }
5788  }
5789}
5790    `;
5791
5792/**
5793 * __useBranchesForProjectQuery__
5794 *
5795 * To run a query within a React component, call `useBranchesForProjectQuery` and pass it any options that fit your needs.
5796 * When your component renders, `useBranchesForProjectQuery` returns an object from Apollo Client that contains loading, error, and data properties
5797 * you can use to render your UI.
5798 *
5799 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5800 *
5801 * @example
5802 * const { data, loading, error } = useBranchesForProjectQuery({
5803 *   variables: {
5804 *      appId: // value for 'appId'
5805 *      platform: // value for 'platform'
5806 *      sdkVersions: // value for 'sdkVersions'
5807 *      limit: // value for 'limit'
5808 *      offset: // value for 'offset'
5809 *   },
5810 * });
5811 */
5812export function useBranchesForProjectQuery(baseOptions: Apollo.QueryHookOptions<BranchesForProjectQuery, BranchesForProjectQueryVariables>) {
5813        const options = {...defaultOptions, ...baseOptions}
5814        return Apollo.useQuery<BranchesForProjectQuery, BranchesForProjectQueryVariables>(BranchesForProjectDocument, options);
5815      }
5816export function useBranchesForProjectLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<BranchesForProjectQuery, BranchesForProjectQueryVariables>) {
5817          const options = {...defaultOptions, ...baseOptions}
5818          return Apollo.useLazyQuery<BranchesForProjectQuery, BranchesForProjectQueryVariables>(BranchesForProjectDocument, options);
5819        }
5820export type BranchesForProjectQueryHookResult = ReturnType<typeof useBranchesForProjectQuery>;
5821export type BranchesForProjectLazyQueryHookResult = ReturnType<typeof useBranchesForProjectLazyQuery>;
5822export type BranchesForProjectQueryResult = Apollo.QueryResult<BranchesForProjectQuery, BranchesForProjectQueryVariables>;
5823export function refetchBranchesForProjectQuery(variables: BranchesForProjectQueryVariables) {
5824      return { query: BranchesForProjectDocument, variables: variables }
5825    }
5826export const Home_CurrentUserActorDocument = gql`
5827    query Home_CurrentUserActor {
5828  meUserActor {
5829    ...CurrentUserActorData
5830  }
5831}
5832    ${CurrentUserActorDataFragmentDoc}`;
5833
5834/**
5835 * __useHome_CurrentUserActorQuery__
5836 *
5837 * To run a query within a React component, call `useHome_CurrentUserActorQuery` and pass it any options that fit your needs.
5838 * When your component renders, `useHome_CurrentUserActorQuery` returns an object from Apollo Client that contains loading, error, and data properties
5839 * you can use to render your UI.
5840 *
5841 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5842 *
5843 * @example
5844 * const { data, loading, error } = useHome_CurrentUserActorQuery({
5845 *   variables: {
5846 *   },
5847 * });
5848 */
5849export function useHome_CurrentUserActorQuery(baseOptions?: Apollo.QueryHookOptions<Home_CurrentUserActorQuery, Home_CurrentUserActorQueryVariables>) {
5850        const options = {...defaultOptions, ...baseOptions}
5851        return Apollo.useQuery<Home_CurrentUserActorQuery, Home_CurrentUserActorQueryVariables>(Home_CurrentUserActorDocument, options);
5852      }
5853export function useHome_CurrentUserActorLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_CurrentUserActorQuery, Home_CurrentUserActorQueryVariables>) {
5854          const options = {...defaultOptions, ...baseOptions}
5855          return Apollo.useLazyQuery<Home_CurrentUserActorQuery, Home_CurrentUserActorQueryVariables>(Home_CurrentUserActorDocument, options);
5856        }
5857export type Home_CurrentUserActorQueryHookResult = ReturnType<typeof useHome_CurrentUserActorQuery>;
5858export type Home_CurrentUserActorLazyQueryHookResult = ReturnType<typeof useHome_CurrentUserActorLazyQuery>;
5859export type Home_CurrentUserActorQueryResult = Apollo.QueryResult<Home_CurrentUserActorQuery, Home_CurrentUserActorQueryVariables>;
5860export function refetchHome_CurrentUserActorQuery(variables?: Home_CurrentUserActorQueryVariables) {
5861      return { query: Home_CurrentUserActorDocument, variables: variables }
5862    }
5863export const Home_ProfileData2Document = gql`
5864    query Home_ProfileData2($appLimit: Int!, $snackLimit: Int!) {
5865  meUserActor {
5866    id
5867    username
5868    firstName
5869    lastName
5870    profilePhoto
5871    accounts {
5872      id
5873      name
5874    }
5875    appCount
5876    apps(limit: $appLimit, offset: 0, includeUnpublished: true) {
5877      ...CommonAppData
5878    }
5879    snacks(limit: $snackLimit, offset: 0) {
5880      ...CommonSnackData
5881    }
5882  }
5883}
5884    ${CommonAppDataFragmentDoc}
5885${CommonSnackDataFragmentDoc}`;
5886
5887/**
5888 * __useHome_ProfileData2Query__
5889 *
5890 * To run a query within a React component, call `useHome_ProfileData2Query` and pass it any options that fit your needs.
5891 * When your component renders, `useHome_ProfileData2Query` returns an object from Apollo Client that contains loading, error, and data properties
5892 * you can use to render your UI.
5893 *
5894 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5895 *
5896 * @example
5897 * const { data, loading, error } = useHome_ProfileData2Query({
5898 *   variables: {
5899 *      appLimit: // value for 'appLimit'
5900 *      snackLimit: // value for 'snackLimit'
5901 *   },
5902 * });
5903 */
5904export function useHome_ProfileData2Query(baseOptions: Apollo.QueryHookOptions<Home_ProfileData2Query, Home_ProfileData2QueryVariables>) {
5905        const options = {...defaultOptions, ...baseOptions}
5906        return Apollo.useQuery<Home_ProfileData2Query, Home_ProfileData2QueryVariables>(Home_ProfileData2Document, options);
5907      }
5908export function useHome_ProfileData2LazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_ProfileData2Query, Home_ProfileData2QueryVariables>) {
5909          const options = {...defaultOptions, ...baseOptions}
5910          return Apollo.useLazyQuery<Home_ProfileData2Query, Home_ProfileData2QueryVariables>(Home_ProfileData2Document, options);
5911        }
5912export type Home_ProfileData2QueryHookResult = ReturnType<typeof useHome_ProfileData2Query>;
5913export type Home_ProfileData2LazyQueryHookResult = ReturnType<typeof useHome_ProfileData2LazyQuery>;
5914export type Home_ProfileData2QueryResult = Apollo.QueryResult<Home_ProfileData2Query, Home_ProfileData2QueryVariables>;
5915export function refetchHome_ProfileData2Query(variables: Home_ProfileData2QueryVariables) {
5916      return { query: Home_ProfileData2Document, variables: variables }
5917    }
5918export const Home_MyAppsDocument = gql`
5919    query Home_MyApps($limit: Int!, $offset: Int!) {
5920  meUserActor {
5921    id
5922    appCount
5923    apps(limit: $limit, offset: $offset, includeUnpublished: true) {
5924      ...CommonAppData
5925    }
5926  }
5927}
5928    ${CommonAppDataFragmentDoc}`;
5929
5930/**
5931 * __useHome_MyAppsQuery__
5932 *
5933 * To run a query within a React component, call `useHome_MyAppsQuery` and pass it any options that fit your needs.
5934 * When your component renders, `useHome_MyAppsQuery` returns an object from Apollo Client that contains loading, error, and data properties
5935 * you can use to render your UI.
5936 *
5937 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5938 *
5939 * @example
5940 * const { data, loading, error } = useHome_MyAppsQuery({
5941 *   variables: {
5942 *      limit: // value for 'limit'
5943 *      offset: // value for 'offset'
5944 *   },
5945 * });
5946 */
5947export function useHome_MyAppsQuery(baseOptions: Apollo.QueryHookOptions<Home_MyAppsQuery, Home_MyAppsQueryVariables>) {
5948        const options = {...defaultOptions, ...baseOptions}
5949        return Apollo.useQuery<Home_MyAppsQuery, Home_MyAppsQueryVariables>(Home_MyAppsDocument, options);
5950      }
5951export function useHome_MyAppsLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_MyAppsQuery, Home_MyAppsQueryVariables>) {
5952          const options = {...defaultOptions, ...baseOptions}
5953          return Apollo.useLazyQuery<Home_MyAppsQuery, Home_MyAppsQueryVariables>(Home_MyAppsDocument, options);
5954        }
5955export type Home_MyAppsQueryHookResult = ReturnType<typeof useHome_MyAppsQuery>;
5956export type Home_MyAppsLazyQueryHookResult = ReturnType<typeof useHome_MyAppsLazyQuery>;
5957export type Home_MyAppsQueryResult = Apollo.QueryResult<Home_MyAppsQuery, Home_MyAppsQueryVariables>;
5958export function refetchHome_MyAppsQuery(variables: Home_MyAppsQueryVariables) {
5959      return { query: Home_MyAppsDocument, variables: variables }
5960    }
5961export const Home_ProfileSnacksDocument = gql`
5962    query Home_ProfileSnacks($limit: Int!, $offset: Int!) {
5963  meUserActor {
5964    id
5965    snacks(limit: $limit, offset: $offset) {
5966      ...CommonSnackData
5967    }
5968  }
5969}
5970    ${CommonSnackDataFragmentDoc}`;
5971
5972/**
5973 * __useHome_ProfileSnacksQuery__
5974 *
5975 * To run a query within a React component, call `useHome_ProfileSnacksQuery` and pass it any options that fit your needs.
5976 * When your component renders, `useHome_ProfileSnacksQuery` returns an object from Apollo Client that contains loading, error, and data properties
5977 * you can use to render your UI.
5978 *
5979 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
5980 *
5981 * @example
5982 * const { data, loading, error } = useHome_ProfileSnacksQuery({
5983 *   variables: {
5984 *      limit: // value for 'limit'
5985 *      offset: // value for 'offset'
5986 *   },
5987 * });
5988 */
5989export function useHome_ProfileSnacksQuery(baseOptions: Apollo.QueryHookOptions<Home_ProfileSnacksQuery, Home_ProfileSnacksQueryVariables>) {
5990        const options = {...defaultOptions, ...baseOptions}
5991        return Apollo.useQuery<Home_ProfileSnacksQuery, Home_ProfileSnacksQueryVariables>(Home_ProfileSnacksDocument, options);
5992      }
5993export function useHome_ProfileSnacksLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_ProfileSnacksQuery, Home_ProfileSnacksQueryVariables>) {
5994          const options = {...defaultOptions, ...baseOptions}
5995          return Apollo.useLazyQuery<Home_ProfileSnacksQuery, Home_ProfileSnacksQueryVariables>(Home_ProfileSnacksDocument, options);
5996        }
5997export type Home_ProfileSnacksQueryHookResult = ReturnType<typeof useHome_ProfileSnacksQuery>;
5998export type Home_ProfileSnacksLazyQueryHookResult = ReturnType<typeof useHome_ProfileSnacksLazyQuery>;
5999export type Home_ProfileSnacksQueryResult = Apollo.QueryResult<Home_ProfileSnacksQuery, Home_ProfileSnacksQueryVariables>;
6000export function refetchHome_ProfileSnacksQuery(variables: Home_ProfileSnacksQueryVariables) {
6001      return { query: Home_ProfileSnacksDocument, variables: variables }
6002    }
6003export const WebContainerProjectPage_QueryDocument = gql`
6004    query WebContainerProjectPage_Query($appId: String!, $platform: AppPlatform!, $sdkVersions: [String!]!) {
6005  app {
6006    byId(appId: $appId) {
6007      id
6008      name
6009      slug
6010      fullName
6011      username
6012      published
6013      description
6014      githubUrl
6015      playStoreUrl
6016      appStoreUrl
6017      sdkVersion
6018      iconUrl
6019      privacy
6020      icon {
6021        url
6022      }
6023      latestReleaseForReleaseChannel(platform: $platform, releaseChannel: "default") {
6024        sdkVersion
6025        runtimeVersion
6026      }
6027      updateBranches(limit: 100, offset: 0) {
6028        id
6029        name
6030        updates(
6031          limit: 1
6032          offset: 0
6033          filter: {platform: $platform, sdkVersions: $sdkVersions}
6034        ) {
6035          id
6036          group
6037          message
6038          createdAt
6039          runtimeVersion
6040          platform
6041          manifestPermalink
6042        }
6043      }
6044    }
6045  }
6046}
6047    `;
6048
6049/**
6050 * __useWebContainerProjectPage_Query__
6051 *
6052 * To run a query within a React component, call `useWebContainerProjectPage_Query` and pass it any options that fit your needs.
6053 * When your component renders, `useWebContainerProjectPage_Query` returns an object from Apollo Client that contains loading, error, and data properties
6054 * you can use to render your UI.
6055 *
6056 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6057 *
6058 * @example
6059 * const { data, loading, error } = useWebContainerProjectPage_Query({
6060 *   variables: {
6061 *      appId: // value for 'appId'
6062 *      platform: // value for 'platform'
6063 *      sdkVersions: // value for 'sdkVersions'
6064 *   },
6065 * });
6066 */
6067export function useWebContainerProjectPage_Query(baseOptions: Apollo.QueryHookOptions<WebContainerProjectPage_Query, WebContainerProjectPage_QueryVariables>) {
6068        const options = {...defaultOptions, ...baseOptions}
6069        return Apollo.useQuery<WebContainerProjectPage_Query, WebContainerProjectPage_QueryVariables>(WebContainerProjectPage_QueryDocument, options);
6070      }
6071export function useWebContainerProjectPage_QueryLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<WebContainerProjectPage_Query, WebContainerProjectPage_QueryVariables>) {
6072          const options = {...defaultOptions, ...baseOptions}
6073          return Apollo.useLazyQuery<WebContainerProjectPage_Query, WebContainerProjectPage_QueryVariables>(WebContainerProjectPage_QueryDocument, options);
6074        }
6075export type WebContainerProjectPage_QueryHookResult = ReturnType<typeof useWebContainerProjectPage_Query>;
6076export type WebContainerProjectPage_QueryLazyQueryHookResult = ReturnType<typeof useWebContainerProjectPage_QueryLazyQuery>;
6077export type WebContainerProjectPage_QueryQueryResult = Apollo.QueryResult<WebContainerProjectPage_Query, WebContainerProjectPage_QueryVariables>;
6078export function refetchWebContainerProjectPage_Query(variables: WebContainerProjectPage_QueryVariables) {
6079      return { query: WebContainerProjectPage_QueryDocument, variables: variables }
6080    }
6081export const Home_AccountAppsDocument = gql`
6082    query Home_AccountApps($accountName: String!, $limit: Int!, $offset: Int!) {
6083  account {
6084    byName(accountName: $accountName) {
6085      id
6086      appCount
6087      apps(limit: $limit, offset: $offset, includeUnpublished: true) {
6088        ...CommonAppData
6089      }
6090    }
6091  }
6092}
6093    ${CommonAppDataFragmentDoc}`;
6094
6095/**
6096 * __useHome_AccountAppsQuery__
6097 *
6098 * To run a query within a React component, call `useHome_AccountAppsQuery` and pass it any options that fit your needs.
6099 * When your component renders, `useHome_AccountAppsQuery` returns an object from Apollo Client that contains loading, error, and data properties
6100 * you can use to render your UI.
6101 *
6102 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6103 *
6104 * @example
6105 * const { data, loading, error } = useHome_AccountAppsQuery({
6106 *   variables: {
6107 *      accountName: // value for 'accountName'
6108 *      limit: // value for 'limit'
6109 *      offset: // value for 'offset'
6110 *   },
6111 * });
6112 */
6113export function useHome_AccountAppsQuery(baseOptions: Apollo.QueryHookOptions<Home_AccountAppsQuery, Home_AccountAppsQueryVariables>) {
6114        const options = {...defaultOptions, ...baseOptions}
6115        return Apollo.useQuery<Home_AccountAppsQuery, Home_AccountAppsQueryVariables>(Home_AccountAppsDocument, options);
6116      }
6117export function useHome_AccountAppsLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_AccountAppsQuery, Home_AccountAppsQueryVariables>) {
6118          const options = {...defaultOptions, ...baseOptions}
6119          return Apollo.useLazyQuery<Home_AccountAppsQuery, Home_AccountAppsQueryVariables>(Home_AccountAppsDocument, options);
6120        }
6121export type Home_AccountAppsQueryHookResult = ReturnType<typeof useHome_AccountAppsQuery>;
6122export type Home_AccountAppsLazyQueryHookResult = ReturnType<typeof useHome_AccountAppsLazyQuery>;
6123export type Home_AccountAppsQueryResult = Apollo.QueryResult<Home_AccountAppsQuery, Home_AccountAppsQueryVariables>;
6124export function refetchHome_AccountAppsQuery(variables: Home_AccountAppsQueryVariables) {
6125      return { query: Home_AccountAppsDocument, variables: variables }
6126    }
6127export const Home_AccountSnacksDocument = gql`
6128    query Home_AccountSnacks($accountName: String!, $limit: Int!, $offset: Int!) {
6129  account {
6130    byName(accountName: $accountName) {
6131      id
6132      name
6133      snacks(limit: $limit, offset: $offset) {
6134        ...CommonSnackData
6135      }
6136    }
6137  }
6138}
6139    ${CommonSnackDataFragmentDoc}`;
6140
6141/**
6142 * __useHome_AccountSnacksQuery__
6143 *
6144 * To run a query within a React component, call `useHome_AccountSnacksQuery` and pass it any options that fit your needs.
6145 * When your component renders, `useHome_AccountSnacksQuery` returns an object from Apollo Client that contains loading, error, and data properties
6146 * you can use to render your UI.
6147 *
6148 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6149 *
6150 * @example
6151 * const { data, loading, error } = useHome_AccountSnacksQuery({
6152 *   variables: {
6153 *      accountName: // value for 'accountName'
6154 *      limit: // value for 'limit'
6155 *      offset: // value for 'offset'
6156 *   },
6157 * });
6158 */
6159export function useHome_AccountSnacksQuery(baseOptions: Apollo.QueryHookOptions<Home_AccountSnacksQuery, Home_AccountSnacksQueryVariables>) {
6160        const options = {...defaultOptions, ...baseOptions}
6161        return Apollo.useQuery<Home_AccountSnacksQuery, Home_AccountSnacksQueryVariables>(Home_AccountSnacksDocument, options);
6162      }
6163export function useHome_AccountSnacksLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_AccountSnacksQuery, Home_AccountSnacksQueryVariables>) {
6164          const options = {...defaultOptions, ...baseOptions}
6165          return Apollo.useLazyQuery<Home_AccountSnacksQuery, Home_AccountSnacksQueryVariables>(Home_AccountSnacksDocument, options);
6166        }
6167export type Home_AccountSnacksQueryHookResult = ReturnType<typeof useHome_AccountSnacksQuery>;
6168export type Home_AccountSnacksLazyQueryHookResult = ReturnType<typeof useHome_AccountSnacksLazyQuery>;
6169export type Home_AccountSnacksQueryResult = Apollo.QueryResult<Home_AccountSnacksQuery, Home_AccountSnacksQueryVariables>;
6170export function refetchHome_AccountSnacksQuery(variables: Home_AccountSnacksQueryVariables) {
6171      return { query: Home_AccountSnacksDocument, variables: variables }
6172    }
6173export const Home_ViewerPrimaryAccountNameDocument = gql`
6174    query Home_ViewerPrimaryAccountName {
6175  meUserActor {
6176    id
6177    primaryAccount {
6178      id
6179      name
6180    }
6181  }
6182}
6183    `;
6184
6185/**
6186 * __useHome_ViewerPrimaryAccountNameQuery__
6187 *
6188 * To run a query within a React component, call `useHome_ViewerPrimaryAccountNameQuery` and pass it any options that fit your needs.
6189 * When your component renders, `useHome_ViewerPrimaryAccountNameQuery` returns an object from Apollo Client that contains loading, error, and data properties
6190 * you can use to render your UI.
6191 *
6192 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6193 *
6194 * @example
6195 * const { data, loading, error } = useHome_ViewerPrimaryAccountNameQuery({
6196 *   variables: {
6197 *   },
6198 * });
6199 */
6200export function useHome_ViewerPrimaryAccountNameQuery(baseOptions?: Apollo.QueryHookOptions<Home_ViewerPrimaryAccountNameQuery, Home_ViewerPrimaryAccountNameQueryVariables>) {
6201        const options = {...defaultOptions, ...baseOptions}
6202        return Apollo.useQuery<Home_ViewerPrimaryAccountNameQuery, Home_ViewerPrimaryAccountNameQueryVariables>(Home_ViewerPrimaryAccountNameDocument, options);
6203      }
6204export function useHome_ViewerPrimaryAccountNameLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<Home_ViewerPrimaryAccountNameQuery, Home_ViewerPrimaryAccountNameQueryVariables>) {
6205          const options = {...defaultOptions, ...baseOptions}
6206          return Apollo.useLazyQuery<Home_ViewerPrimaryAccountNameQuery, Home_ViewerPrimaryAccountNameQueryVariables>(Home_ViewerPrimaryAccountNameDocument, options);
6207        }
6208export type Home_ViewerPrimaryAccountNameQueryHookResult = ReturnType<typeof useHome_ViewerPrimaryAccountNameQuery>;
6209export type Home_ViewerPrimaryAccountNameLazyQueryHookResult = ReturnType<typeof useHome_ViewerPrimaryAccountNameLazyQuery>;
6210export type Home_ViewerPrimaryAccountNameQueryResult = Apollo.QueryResult<Home_ViewerPrimaryAccountNameQuery, Home_ViewerPrimaryAccountNameQueryVariables>;
6211export function refetchHome_ViewerPrimaryAccountNameQuery(variables?: Home_ViewerPrimaryAccountNameQueryVariables) {
6212      return { query: Home_ViewerPrimaryAccountNameDocument, variables: variables }
6213    }
6214export const DeleteAccountPermissionsDocument = gql`
6215    query DeleteAccountPermissions {
6216  me {
6217    id
6218    secondFactorDevices {
6219      ...UserSecondFactorDeviceData
6220    }
6221    accounts {
6222      id
6223      name
6224      users {
6225        permissions
6226        user {
6227          id
6228          username
6229        }
6230      }
6231    }
6232  }
6233}
6234    ${UserSecondFactorDeviceDataFragmentDoc}`;
6235
6236/**
6237 * __useDeleteAccountPermissionsQuery__
6238 *
6239 * To run a query within a React component, call `useDeleteAccountPermissionsQuery` and pass it any options that fit your needs.
6240 * When your component renders, `useDeleteAccountPermissionsQuery` returns an object from Apollo Client that contains loading, error, and data properties
6241 * you can use to render your UI.
6242 *
6243 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6244 *
6245 * @example
6246 * const { data, loading, error } = useDeleteAccountPermissionsQuery({
6247 *   variables: {
6248 *   },
6249 * });
6250 */
6251export function useDeleteAccountPermissionsQuery(baseOptions?: Apollo.QueryHookOptions<DeleteAccountPermissionsQuery, DeleteAccountPermissionsQueryVariables>) {
6252        const options = {...defaultOptions, ...baseOptions}
6253        return Apollo.useQuery<DeleteAccountPermissionsQuery, DeleteAccountPermissionsQueryVariables>(DeleteAccountPermissionsDocument, options);
6254      }
6255export function useDeleteAccountPermissionsLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<DeleteAccountPermissionsQuery, DeleteAccountPermissionsQueryVariables>) {
6256          const options = {...defaultOptions, ...baseOptions}
6257          return Apollo.useLazyQuery<DeleteAccountPermissionsQuery, DeleteAccountPermissionsQueryVariables>(DeleteAccountPermissionsDocument, options);
6258        }
6259export type DeleteAccountPermissionsQueryHookResult = ReturnType<typeof useDeleteAccountPermissionsQuery>;
6260export type DeleteAccountPermissionsLazyQueryHookResult = ReturnType<typeof useDeleteAccountPermissionsLazyQuery>;
6261export type DeleteAccountPermissionsQueryResult = Apollo.QueryResult<DeleteAccountPermissionsQuery, DeleteAccountPermissionsQueryVariables>;
6262export function refetchDeleteAccountPermissionsQuery(variables?: DeleteAccountPermissionsQueryVariables) {
6263      return { query: DeleteAccountPermissionsDocument, variables: variables }
6264    }
6265export const SecondFactorDevicesQueryDocument = gql`
6266    query SecondFactorDevicesQuery {
6267  me {
6268    id
6269    emailVerified
6270    secondFactorDevices {
6271      ...UserSecondFactorDeviceData
6272    }
6273  }
6274}
6275    ${UserSecondFactorDeviceDataFragmentDoc}`;
6276
6277/**
6278 * __useSecondFactorDevicesQuery__
6279 *
6280 * To run a query within a React component, call `useSecondFactorDevicesQuery` and pass it any options that fit your needs.
6281 * When your component renders, `useSecondFactorDevicesQuery` returns an object from Apollo Client that contains loading, error, and data properties
6282 * you can use to render your UI.
6283 *
6284 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6285 *
6286 * @example
6287 * const { data, loading, error } = useSecondFactorDevicesQuery({
6288 *   variables: {
6289 *   },
6290 * });
6291 */
6292export function useSecondFactorDevicesQuery(baseOptions?: Apollo.QueryHookOptions<SecondFactorDevicesQuery, SecondFactorDevicesQueryVariables>) {
6293        const options = {...defaultOptions, ...baseOptions}
6294        return Apollo.useQuery<SecondFactorDevicesQuery, SecondFactorDevicesQueryVariables>(SecondFactorDevicesQueryDocument, options);
6295      }
6296export function useSecondFactorDevicesQueryLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<SecondFactorDevicesQuery, SecondFactorDevicesQueryVariables>) {
6297          const options = {...defaultOptions, ...baseOptions}
6298          return Apollo.useLazyQuery<SecondFactorDevicesQuery, SecondFactorDevicesQueryVariables>(SecondFactorDevicesQueryDocument, options);
6299        }
6300export type SecondFactorDevicesQueryHookResult = ReturnType<typeof useSecondFactorDevicesQuery>;
6301export type SecondFactorDevicesQueryLazyQueryHookResult = ReturnType<typeof useSecondFactorDevicesQueryLazyQuery>;
6302export type SecondFactorDevicesQueryQueryResult = Apollo.QueryResult<SecondFactorDevicesQuery, SecondFactorDevicesQueryVariables>;
6303export function refetchSecondFactorDevicesQuery(variables?: SecondFactorDevicesQueryVariables) {
6304      return { query: SecondFactorDevicesQueryDocument, variables: variables }
6305    }
6306export const SendSmsotpToSecondFactorDeviceMutationDocument = gql`
6307    mutation SendSMSOTPToSecondFactorDeviceMutation($userSecondFactorDeviceId: ID!) {
6308  me {
6309    sendSMSOTPToSecondFactorDevice(
6310      userSecondFactorDeviceId: $userSecondFactorDeviceId
6311    ) {
6312      success
6313    }
6314  }
6315}
6316    `;
6317export type SendSmsotpToSecondFactorDeviceMutationMutationFn = Apollo.MutationFunction<SendSmsotpToSecondFactorDeviceMutation, SendSmsotpToSecondFactorDeviceMutationVariables>;
6318
6319/**
6320 * __useSendSmsotpToSecondFactorDeviceMutation__
6321 *
6322 * To run a mutation, you first call `useSendSmsotpToSecondFactorDeviceMutation` within a React component and pass it any options that fit your needs.
6323 * When your component renders, `useSendSmsotpToSecondFactorDeviceMutation` returns a tuple that includes:
6324 * - A mutate function that you can call at any time to execute the mutation
6325 * - An object with fields that represent the current status of the mutation's execution
6326 *
6327 * @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
6328 *
6329 * @example
6330 * const [sendSmsotpToSecondFactorDeviceMutation, { data, loading, error }] = useSendSmsotpToSecondFactorDeviceMutation({
6331 *   variables: {
6332 *      userSecondFactorDeviceId: // value for 'userSecondFactorDeviceId'
6333 *   },
6334 * });
6335 */
6336export function useSendSmsotpToSecondFactorDeviceMutation(baseOptions?: Apollo.MutationHookOptions<SendSmsotpToSecondFactorDeviceMutation, SendSmsotpToSecondFactorDeviceMutationVariables>) {
6337        const options = {...defaultOptions, ...baseOptions}
6338        return Apollo.useMutation<SendSmsotpToSecondFactorDeviceMutation, SendSmsotpToSecondFactorDeviceMutationVariables>(SendSmsotpToSecondFactorDeviceMutationDocument, options);
6339      }
6340export type SendSmsotpToSecondFactorDeviceMutationHookResult = ReturnType<typeof useSendSmsotpToSecondFactorDeviceMutation>;
6341export type SendSmsotpToSecondFactorDeviceMutationMutationResult = Apollo.MutationResult<SendSmsotpToSecondFactorDeviceMutation>;
6342export type SendSmsotpToSecondFactorDeviceMutationMutationOptions = Apollo.BaseMutationOptions<SendSmsotpToSecondFactorDeviceMutation, SendSmsotpToSecondFactorDeviceMutationVariables>;
6343export const HomeScreenDataDocument = gql`
6344    query HomeScreenData($accountName: String!) {
6345  account {
6346    byName(accountName: $accountName) {
6347      id
6348      name
6349      isCurrent
6350      ownerUserActor {
6351        ...CurrentUserActorData
6352      }
6353      apps(limit: 5, offset: 0, includeUnpublished: true) {
6354        ...CommonAppData
6355      }
6356      snacks(limit: 5, offset: 0) {
6357        ...CommonSnackData
6358      }
6359      appCount
6360    }
6361  }
6362}
6363    ${CurrentUserActorDataFragmentDoc}
6364${CommonAppDataFragmentDoc}
6365${CommonSnackDataFragmentDoc}`;
6366
6367/**
6368 * __useHomeScreenDataQuery__
6369 *
6370 * To run a query within a React component, call `useHomeScreenDataQuery` and pass it any options that fit your needs.
6371 * When your component renders, `useHomeScreenDataQuery` returns an object from Apollo Client that contains loading, error, and data properties
6372 * you can use to render your UI.
6373 *
6374 * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
6375 *
6376 * @example
6377 * const { data, loading, error } = useHomeScreenDataQuery({
6378 *   variables: {
6379 *      accountName: // value for 'accountName'
6380 *   },
6381 * });
6382 */
6383export function useHomeScreenDataQuery(baseOptions: Apollo.QueryHookOptions<HomeScreenDataQuery, HomeScreenDataQueryVariables>) {
6384        const options = {...defaultOptions, ...baseOptions}
6385        return Apollo.useQuery<HomeScreenDataQuery, HomeScreenDataQueryVariables>(HomeScreenDataDocument, options);
6386      }
6387export function useHomeScreenDataLazyQuery(baseOptions?: Apollo.LazyQueryHookOptions<HomeScreenDataQuery, HomeScreenDataQueryVariables>) {
6388          const options = {...defaultOptions, ...baseOptions}
6389          return Apollo.useLazyQuery<HomeScreenDataQuery, HomeScreenDataQueryVariables>(HomeScreenDataDocument, options);
6390        }
6391export type HomeScreenDataQueryHookResult = ReturnType<typeof useHomeScreenDataQuery>;
6392export type HomeScreenDataLazyQueryHookResult = ReturnType<typeof useHomeScreenDataLazyQuery>;
6393export type HomeScreenDataQueryResult = Apollo.QueryResult<HomeScreenDataQuery, HomeScreenDataQueryVariables>;
6394export function refetchHomeScreenDataQuery(variables: HomeScreenDataQueryVariables) {
6395      return { query: HomeScreenDataDocument, variables: variables }
6396    }