@spotify/backstage-plugin-pulse-common 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1101 @@
1
+ import {
2
+ GraphQLResolveInfo,
3
+ GraphQLScalarType,
4
+ GraphQLScalarTypeConfig,
5
+ } from 'graphql';
6
+
7
+ export type Maybe<T> = T | null;
8
+ export type InputMaybe<T> = Maybe<T>;
9
+ export type Exact<T extends { [key: string]: unknown }> = {
10
+ [K in keyof T]: T[K];
11
+ };
12
+ export type MakeOptional<T, K extends keyof T> = Omit<T, K> & {
13
+ [SubKey in K]?: Maybe<T[SubKey]>;
14
+ };
15
+ export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {
16
+ [SubKey in K]: Maybe<T[SubKey]>;
17
+ };
18
+ export type EntireFieldWrapper<T> = T;
19
+ export type RequireFields<T, K extends keyof T> = Omit<T, K> & {
20
+ [P in K]-?: NonNullable<T[P]>;
21
+ };
22
+ /** All built-in and custom scalars, mapped to their actual values */
23
+ export type Scalars = {
24
+ ID: string;
25
+ String: string;
26
+ Boolean: boolean;
27
+ Int: number;
28
+ Float: number;
29
+ DateTime: Date;
30
+ };
31
+
32
+ export type Mutation = {
33
+ readonly __typename?: 'Mutation';
34
+ /** Archive a survey. This hides the survey and all its responses. */
35
+ readonly surveyArchive: EntireFieldWrapper<SurveyMutationResponse>;
36
+ /** Create a new survey instance. */
37
+ readonly surveyCreate: EntireFieldWrapper<SurveyMutationResponse>;
38
+ /**
39
+ * Publish the results of an existing survey instance. This updates the survey
40
+ * 'endDate' to now if it was still in the future.
41
+ */
42
+ readonly surveyPublish: EntireFieldWrapper<SurveyMutationResponse>;
43
+ /** Create a new survey response instance. */
44
+ readonly surveyResponseCreate: EntireFieldWrapper<SurveyResponseMutationResponse>;
45
+ /** Unarchive a survey. This sets the survey as 'ACTIVE'. */
46
+ readonly surveyUnarchive: EntireFieldWrapper<SurveyMutationResponse>;
47
+ /** Update an existing survey instance. */
48
+ readonly surveyUpdate: EntireFieldWrapper<SurveyMutationResponse>;
49
+ };
50
+
51
+ export type MutationSurveyArchiveArgs = {
52
+ id: Scalars['ID'];
53
+ };
54
+
55
+ export type MutationSurveyCreateArgs = {
56
+ input: SurveyCreateInput;
57
+ };
58
+
59
+ export type MutationSurveyPublishArgs = {
60
+ id: Scalars['ID'];
61
+ };
62
+
63
+ export type MutationSurveyResponseCreateArgs = {
64
+ questionResponses: ReadonlyArray<SurveyQuestionResponseCreateInput>;
65
+ surveyId: Scalars['ID'];
66
+ };
67
+
68
+ export type MutationSurveyUnarchiveArgs = {
69
+ id: Scalars['ID'];
70
+ };
71
+
72
+ export type MutationSurveyUpdateArgs = {
73
+ id: Scalars['ID'];
74
+ updates: SurveyUpdateInput;
75
+ };
76
+
77
+ /** The base interface for mutation responses. */
78
+ export type MutationResponse = {
79
+ /** If an error occurs, this field will contain an error message. */
80
+ readonly error?: EntireFieldWrapper<Maybe<Scalars['String']>>;
81
+ /** If an error occurs, this field may contain a standardized error code. */
82
+ readonly errorCode?: EntireFieldWrapper<Maybe<MutationResponseErrorCode>>;
83
+ /** If no errors occur, this field may contain a success message. */
84
+ readonly message?: EntireFieldWrapper<Maybe<Scalars['String']>>;
85
+ };
86
+
87
+ /** Defined error codes that may be returned by a mutation. */
88
+ export enum MutationResponseErrorCode {
89
+ /** A response by this user already exists. */
90
+ DuplicateResponse = 'DUPLICATE_RESPONSE',
91
+ /** An unspecified internal error has occurred. */
92
+ InternalError = 'INTERNAL_ERROR',
93
+ /** The date(s) specified are invalid. */
94
+ InvalidDates = 'INVALID_DATES',
95
+ /** An invalid resource ID was specified. */
96
+ InvalidId = 'INVALID_ID',
97
+ /** An invalid value was passed as the question response. */
98
+ InvalidResponse = 'INVALID_RESPONSE',
99
+ /** A specified survey template is missing from the database. */
100
+ MissingSurveyTemplate = 'MISSING_SURVEY_TEMPLATE',
101
+ /** No title was specified. */
102
+ MissingTitle = 'MISSING_TITLE',
103
+ /** The survey overlaps with an existing survey. */
104
+ OverlappingSurveys = 'OVERLAPPING_SURVEYS',
105
+ /** The survey is closed. */
106
+ SurveyIsClosed = 'SURVEY_IS_CLOSED',
107
+ /** The current user is unauthorized to perform this action. */
108
+ Unauthorized = 'UNAUTHORIZED',
109
+ }
110
+
111
+ /** A defined node in the schema. Usually corresponds to a row in the DB. */
112
+ export type Node = {
113
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
114
+ };
115
+
116
+ /** Parameters used for pagination. */
117
+ export type PaginationInput = {
118
+ /** The requested page index. (Starts at 0) */
119
+ readonly page?: InputMaybe<Scalars['Int']>;
120
+ /** The requested page size. (Internal limits may apply) */
121
+ readonly pageSize?: InputMaybe<Scalars['Int']>;
122
+ };
123
+
124
+ export type Query = {
125
+ readonly __typename?: 'Query';
126
+ /** Get a specific question by ID. */
127
+ readonly question?: EntireFieldWrapper<Maybe<Question>>;
128
+ /** Query for a list of questions. */
129
+ readonly questions: EntireFieldWrapper<ReadonlyArray<Question>>;
130
+ /** Get a specific survey by ID. */
131
+ readonly survey?: EntireFieldWrapper<Maybe<Survey>>;
132
+ /** Get a specific survey question response by ID. */
133
+ readonly surveyQuestionResponse?: EntireFieldWrapper<
134
+ Maybe<SurveyQuestionResponse>
135
+ >;
136
+ /**
137
+ * Query for a list of survey question responses. Unless the user is an admin,
138
+ * this list will only include their own responses and those that have been
139
+ * published.
140
+ */
141
+ readonly surveyQuestionResponses: EntireFieldWrapper<
142
+ ReadonlyArray<SurveyQuestionResponse>
143
+ >;
144
+ /**
145
+ * Get a specific survey response by ID. If the response belongs to the
146
+ * current user, a 'SurveyResponseFull' is returned.
147
+ */
148
+ readonly surveyResponse?: EntireFieldWrapper<Maybe<SurveyResponse>>;
149
+ /**
150
+ * Query for a list of survey responses. If a response belongs to the current
151
+ * user, a 'SurveyResponseFull' is returned. Unless the user is an admin, this
152
+ * list will only include their own responses and those that have been
153
+ * published.
154
+ */
155
+ readonly surveyResponses: EntireFieldWrapper<ReadonlyArray<SurveyResponse>>;
156
+ /** Query for a list of surveys. */
157
+ readonly surveys: EntireFieldWrapper<ReadonlyArray<Survey>>;
158
+ /** Get whether the current user is a Pulse administrator. */
159
+ readonly userIsAdmin: EntireFieldWrapper<Scalars['Boolean']>;
160
+ };
161
+
162
+ export type QueryQuestionArgs = {
163
+ id: Scalars['ID'];
164
+ };
165
+
166
+ export type QueryQuestionsArgs = {
167
+ ids?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
168
+ pagination?: InputMaybe<PaginationInput>;
169
+ };
170
+
171
+ export type QuerySurveyArgs = {
172
+ id: Scalars['ID'];
173
+ };
174
+
175
+ export type QuerySurveyQuestionResponseArgs = {
176
+ id: Scalars['ID'];
177
+ };
178
+
179
+ export type QuerySurveyQuestionResponsesArgs = {
180
+ endDate?: InputMaybe<Scalars['DateTime']>;
181
+ ids?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
182
+ pagination?: InputMaybe<PaginationInput>;
183
+ questionIds?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
184
+ startDate?: InputMaybe<Scalars['DateTime']>;
185
+ surveyIds?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
186
+ };
187
+
188
+ export type QuerySurveyResponseArgs = {
189
+ id: Scalars['ID'];
190
+ };
191
+
192
+ export type QuerySurveyResponsesArgs = {
193
+ endDate?: InputMaybe<Scalars['DateTime']>;
194
+ ids?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
195
+ pagination?: InputMaybe<PaginationInput>;
196
+ startDate?: InputMaybe<Scalars['DateTime']>;
197
+ surveyIds?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
198
+ };
199
+
200
+ export type QuerySurveysArgs = {
201
+ endDate?: InputMaybe<Scalars['DateTime']>;
202
+ ids?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
203
+ isOpen?: InputMaybe<Scalars['Boolean']>;
204
+ pagination?: InputMaybe<PaginationInput>;
205
+ startDate?: InputMaybe<Scalars['DateTime']>;
206
+ statuses?: InputMaybe<ReadonlyArray<SurveyStatus>>;
207
+ targetQuarters?: InputMaybe<ReadonlyArray<TargetQuarter>>;
208
+ targetYears?: InputMaybe<ReadonlyArray<Scalars['String']>>;
209
+ };
210
+
211
+ /** A question which can be used in surveys. */
212
+ export type Question = Node & {
213
+ readonly __typename?: 'Question';
214
+ /**
215
+ * A description of the question itself, potentially including background
216
+ * information.
217
+ */
218
+ readonly description?: EntireFieldWrapper<Maybe<Scalars['String']>>;
219
+ /** Help text that is used to aid the main prompt. */
220
+ readonly helpText?: EntireFieldWrapper<Maybe<Scalars['String']>>;
221
+ /** @deprecated Serves the same purpose as 'publicId'. Will be removed when client caching is handled. */
222
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
223
+ /** A description of the high-level topic this question addresses. */
224
+ readonly label: EntireFieldWrapper<Scalars['String']>;
225
+ /** Ordered options for possible Likert responses to the prompt. */
226
+ readonly likertOptions: EntireFieldWrapper<ReadonlyArray<Scalars['String']>>;
227
+ /** The main question prompt text. */
228
+ readonly prompt: EntireFieldWrapper<Scalars['String']>;
229
+ /** A human-readable identifier for the question */
230
+ readonly publicId: EntireFieldWrapper<Scalars['ID']>;
231
+ /**
232
+ * A list of responses that have been made to this question. Unless the user
233
+ * is an admin, this list will only include their own responses and those that
234
+ * have been published.
235
+ */
236
+ readonly responses: EntireFieldWrapper<ReadonlyArray<SurveyQuestionResponse>>;
237
+ /** A list of surveys this question has been a part of. */
238
+ readonly surveys: EntireFieldWrapper<ReadonlyArray<Survey>>;
239
+ /** The version of the question saved in the DB. */
240
+ readonly version: EntireFieldWrapper<Scalars['Int']>;
241
+ };
242
+
243
+ /** A question which can be used in surveys. */
244
+ export type QuestionResponsesArgs = {
245
+ endDate?: InputMaybe<Scalars['DateTime']>;
246
+ pagination?: InputMaybe<PaginationInput>;
247
+ startDate?: InputMaybe<Scalars['DateTime']>;
248
+ };
249
+
250
+ /** A question which can be used in surveys. */
251
+ export type QuestionSurveysArgs = {
252
+ endDate?: InputMaybe<Scalars['DateTime']>;
253
+ pagination?: InputMaybe<PaginationInput>;
254
+ startDate?: InputMaybe<Scalars['DateTime']>;
255
+ statuses?: InputMaybe<ReadonlyArray<SurveyStatus>>;
256
+ targetQuarters?: InputMaybe<ReadonlyArray<TargetQuarter>>;
257
+ targetYears?: InputMaybe<ReadonlyArray<Scalars['String']>>;
258
+ };
259
+
260
+ /** A survey instance. */
261
+ export type Survey = Node & {
262
+ readonly __typename?: 'Survey';
263
+ /**
264
+ * The last date the survey can receive responses. Responses are allowed until
265
+ * the end of the day according to the configured time zone.
266
+ */
267
+ readonly endDate: EntireFieldWrapper<Scalars['DateTime']>;
268
+ /** Whether or not the current user has responded to this survey. */
269
+ readonly hasUserResponse: EntireFieldWrapper<Scalars['Boolean']>;
270
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
271
+ /** Whether or not the survey has been archived. */
272
+ readonly isArchived: EntireFieldWrapper<Scalars['Boolean']>;
273
+ /** Whether or not the survey is currently open for responses. */
274
+ readonly isOpen: EntireFieldWrapper<Scalars['Boolean']>;
275
+ /**
276
+ * The responses made to specific questions within the survey. Only personal
277
+ * responses are included, unless the survey is 'PUBLISHED' or the user is a
278
+ * plugin admin.
279
+ */
280
+ readonly questionResponses: EntireFieldWrapper<
281
+ ReadonlyArray<SurveyQuestionResponse>
282
+ >;
283
+ /**
284
+ * Aggregated results of responses to all questions within the survey.
285
+ * Only returned if the survey is 'PUBLISHED' or the user is a plugin admin.
286
+ */
287
+ readonly questionResults: EntireFieldWrapper<
288
+ ReadonlyArray<SurveyQuestionResult>
289
+ >;
290
+ /** The questions of the survey in specified order. */
291
+ readonly questions: EntireFieldWrapper<ReadonlyArray<Question>>;
292
+ /**
293
+ * The responses made to the survey. Only personal responses are included,
294
+ * unless the survey is 'PUBLISHED' or the user is a plugin admin.
295
+ */
296
+ readonly responses: EntireFieldWrapper<ReadonlyArray<SurveyResponseBase>>;
297
+ /** The total number of survey responses received. */
298
+ readonly responsesCount: EntireFieldWrapper<Scalars['Int']>;
299
+ /**
300
+ * The date the survey can start to receive responses. Responses are allowed
301
+ * from the start of the day according to the configured time zone.
302
+ */
303
+ readonly startDate: EntireFieldWrapper<Scalars['DateTime']>;
304
+ /** The current status of the survey. */
305
+ readonly status: EntireFieldWrapper<SurveyStatus>;
306
+ /** Which quarter within 'targetYear' the survey is targeting. */
307
+ readonly targetQuarter: EntireFieldWrapper<TargetQuarter>;
308
+ /** Which year the survey is targeting. */
309
+ readonly targetYear: EntireFieldWrapper<Scalars['String']>;
310
+ /** The ID of the template used to create the survey. */
311
+ readonly templateId?: EntireFieldWrapper<Maybe<Scalars['ID']>>;
312
+ /** The version of the template used to create the survey. */
313
+ readonly templateVersion?: EntireFieldWrapper<Maybe<Scalars['Int']>>;
314
+ /** The time zone the survey was configured on. */
315
+ readonly timeZone: EntireFieldWrapper<Scalars['String']>;
316
+ /** A display title for the survey. */
317
+ readonly title: EntireFieldWrapper<Scalars['String']>;
318
+ };
319
+
320
+ /** A survey instance. */
321
+ export type SurveyQuestionResponsesArgs = {
322
+ endDate?: InputMaybe<Scalars['DateTime']>;
323
+ pagination?: InputMaybe<PaginationInput>;
324
+ questionIds?: InputMaybe<ReadonlyArray<Scalars['ID']>>;
325
+ startDate?: InputMaybe<Scalars['DateTime']>;
326
+ };
327
+
328
+ /** A survey instance. */
329
+ export type SurveyQuestionsArgs = {
330
+ pagination?: InputMaybe<PaginationInput>;
331
+ };
332
+
333
+ /** A survey instance. */
334
+ export type SurveyResponsesArgs = {
335
+ endDate?: InputMaybe<Scalars['DateTime']>;
336
+ pagination?: InputMaybe<PaginationInput>;
337
+ startDate?: InputMaybe<Scalars['DateTime']>;
338
+ };
339
+
340
+ export type SurveyCreateInput = {
341
+ /**
342
+ * The last date the survey can receive responses. Responses are allowed until
343
+ * the end of the day according to the configured time zone.
344
+ */
345
+ readonly endDate: Scalars['DateTime'];
346
+ /**
347
+ * The date the survey can start to receive responses. Responses are allowed
348
+ * from the start of the day according to the configured time zone.
349
+ */
350
+ readonly startDate: Scalars['DateTime'];
351
+ /** The quarter of the year that the survey is targeting. */
352
+ readonly targetQuarter: TargetQuarter;
353
+ /** The year that the survey is targeting. */
354
+ readonly targetYear: Scalars['String'];
355
+ /** The ID of the survey template to use. */
356
+ readonly templateId?: InputMaybe<Scalars['String']>;
357
+ /**
358
+ * The time zone to use to configure the survey dates. Must be a valid IANA
359
+ * string.
360
+ */
361
+ readonly timeZone: Scalars['String'];
362
+ /**
363
+ * Title of the survey. If not supplied, will be auto-generated from 'targetYear'
364
+ * & 'targetQuarter'.
365
+ */
366
+ readonly title?: InputMaybe<Scalars['String']>;
367
+ };
368
+
369
+ export type SurveyMutationResponse = MutationResponse & {
370
+ readonly __typename?: 'SurveyMutationResponse';
371
+ readonly error?: EntireFieldWrapper<Maybe<Scalars['String']>>;
372
+ readonly errorCode?: EntireFieldWrapper<Maybe<MutationResponseErrorCode>>;
373
+ readonly message?: EntireFieldWrapper<Maybe<Scalars['String']>>;
374
+ /** The survey that the mutation is related to (if no errors occur). */
375
+ readonly survey?: EntireFieldWrapper<Maybe<Survey>>;
376
+ };
377
+
378
+ /** A survey question response. */
379
+ export type SurveyQuestionResponse = Node & {
380
+ readonly __typename?: 'SurveyQuestionResponse';
381
+ readonly createdAt: EntireFieldWrapper<Scalars['DateTime']>;
382
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
383
+ /** The Likert rating given as the response to the question. (1 - 5) */
384
+ readonly likertRating: EntireFieldWrapper<Scalars['Int']>;
385
+ readonly question: EntireFieldWrapper<Question>;
386
+ readonly questionId: EntireFieldWrapper<Scalars['ID']>;
387
+ readonly survey: EntireFieldWrapper<Survey>;
388
+ readonly surveyId: EntireFieldWrapper<Scalars['ID']>;
389
+ readonly surveyResponse: EntireFieldWrapper<SurveyResponseBase>;
390
+ readonly surveyResponseId: EntireFieldWrapper<Scalars['ID']>;
391
+ readonly updatedAt: EntireFieldWrapper<Scalars['DateTime']>;
392
+ };
393
+
394
+ export type SurveyQuestionResponseCreateInput = {
395
+ /** The Likert rating given as the response to the question. (1 - 5) */
396
+ readonly likertRating: Scalars['Int'];
397
+ /** The human-readable ID of the question this response belongs to. */
398
+ readonly questionId: Scalars['ID'];
399
+ /** The ID of the survey this response belongs to. */
400
+ readonly surveyId?: InputMaybe<Scalars['ID']>;
401
+ };
402
+
403
+ export type SurveyQuestionResponseMutationResponse = MutationResponse & {
404
+ readonly __typename?: 'SurveyQuestionResponseMutationResponse';
405
+ readonly error?: EntireFieldWrapper<Maybe<Scalars['String']>>;
406
+ readonly errorCode?: EntireFieldWrapper<Maybe<MutationResponseErrorCode>>;
407
+ readonly message?: EntireFieldWrapper<Maybe<Scalars['String']>>;
408
+ /** The survey question response that the mutation is related to (if no errors occur). */
409
+ readonly surveyQuestionResponse?: EntireFieldWrapper<
410
+ Maybe<SurveyQuestionResponse>
411
+ >;
412
+ };
413
+
414
+ /** Aggregated results of responses to a question in a survey. */
415
+ export type SurveyQuestionResult = {
416
+ readonly __typename?: 'SurveyQuestionResult';
417
+ readonly percentPositiveRating: EntireFieldWrapper<Scalars['Float']>;
418
+ readonly questionId: EntireFieldWrapper<Scalars['ID']>;
419
+ readonly surveyId: EntireFieldWrapper<Scalars['ID']>;
420
+ };
421
+
422
+ /** The most basic representation of a survey response. */
423
+ export type SurveyResponse = {
424
+ readonly createdAt: EntireFieldWrapper<Scalars['DateTime']>;
425
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
426
+ readonly survey: EntireFieldWrapper<Survey>;
427
+ readonly surveyId: EntireFieldWrapper<Scalars['ID']>;
428
+ readonly updatedAt: EntireFieldWrapper<Scalars['DateTime']>;
429
+ };
430
+
431
+ /** A representation of a survey response. */
432
+ export type SurveyResponseBase = Node &
433
+ SurveyResponse & {
434
+ readonly __typename?: 'SurveyResponseBase';
435
+ readonly createdAt: EntireFieldWrapper<Scalars['DateTime']>;
436
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
437
+ readonly survey: EntireFieldWrapper<Survey>;
438
+ readonly surveyId: EntireFieldWrapper<Scalars['ID']>;
439
+ readonly updatedAt: EntireFieldWrapper<Scalars['DateTime']>;
440
+ };
441
+
442
+ /**
443
+ * A survey response with all details revealed. Should only be reachable by
444
+ * authorized users.
445
+ */
446
+ export type SurveyResponseFull = Node &
447
+ SurveyResponse & {
448
+ readonly __typename?: 'SurveyResponseFull';
449
+ readonly createdAt: EntireFieldWrapper<Scalars['DateTime']>;
450
+ readonly id: EntireFieldWrapper<Scalars['ID']>;
451
+ /** The question responses completed in this survey response. */
452
+ readonly questionResponses: EntireFieldWrapper<
453
+ ReadonlyArray<SurveyQuestionResponse>
454
+ >;
455
+ readonly survey: EntireFieldWrapper<Survey>;
456
+ readonly surveyId: EntireFieldWrapper<Scalars['ID']>;
457
+ readonly updatedAt: EntireFieldWrapper<Scalars['DateTime']>;
458
+ };
459
+
460
+ /**
461
+ * A survey response with all details revealed. Should only be reachable by
462
+ * authorized users.
463
+ */
464
+ export type SurveyResponseFullQuestionResponsesArgs = {
465
+ pagination?: InputMaybe<PaginationInput>;
466
+ };
467
+
468
+ export type SurveyResponseMutationResponse = MutationResponse & {
469
+ readonly __typename?: 'SurveyResponseMutationResponse';
470
+ readonly error?: EntireFieldWrapper<Maybe<Scalars['String']>>;
471
+ readonly errorCode?: EntireFieldWrapper<Maybe<MutationResponseErrorCode>>;
472
+ readonly message?: EntireFieldWrapper<Maybe<Scalars['String']>>;
473
+ /** The survey response that the mutation is related to (if no errors occur). */
474
+ readonly surveyResponse?: EntireFieldWrapper<Maybe<SurveyResponseFull>>;
475
+ };
476
+
477
+ /** The status of a survey. */
478
+ export enum SurveyStatus {
479
+ /**
480
+ * Potentially open to receiving new responses. Results only visible to
481
+ * admins.
482
+ */
483
+ Active = 'ACTIVE',
484
+ /** Closed for responses. Results visible to everyone. */
485
+ Published = 'PUBLISHED',
486
+ }
487
+
488
+ export type SurveyUpdateInput = {
489
+ /**
490
+ * The last date the survey can receive responses. Responses are allowed until
491
+ * the end of the day according to the configured time zone.
492
+ */
493
+ readonly endDate?: InputMaybe<Scalars['DateTime']>;
494
+ /**
495
+ * The date the survey can start to receive responses. Responses are allowed
496
+ * from the start of the day according to the configured time zone.
497
+ */
498
+ readonly startDate?: InputMaybe<Scalars['DateTime']>;
499
+ /** The quarter of the year that the survey is targeting. */
500
+ readonly targetQuarter?: InputMaybe<TargetQuarter>;
501
+ /** The year that the survey is targeting. */
502
+ readonly targetYear?: InputMaybe<Scalars['String']>;
503
+ /**
504
+ * The time zone to use to configure the survey dates. Must be a valid IANA
505
+ * string.
506
+ */
507
+ readonly timeZone?: InputMaybe<Scalars['String']>;
508
+ /** Title of the survey. */
509
+ readonly title?: InputMaybe<Scalars['String']>;
510
+ };
511
+
512
+ /** The quarters of the year. Used for targeting surveys. */
513
+ export enum TargetQuarter {
514
+ /** January - March */
515
+ Q1 = 'Q1',
516
+ /** April - June */
517
+ Q2 = 'Q2',
518
+ /** July - September */
519
+ Q3 = 'Q3',
520
+ /** October - December */
521
+ Q4 = 'Q4',
522
+ }
523
+
524
+ export type WithIndex<TObject> = TObject & Record<string, any>;
525
+ export type ResolversObject<TObject> = WithIndex<TObject>;
526
+
527
+ export type ResolverTypeWrapper<T> = Promise<T> | T;
528
+
529
+ export type ResolverWithResolve<TResult, TParent, TContext, TArgs> = {
530
+ resolve: ResolverFn<TResult, TParent, TContext, TArgs>;
531
+ };
532
+ export type Resolver<TResult, TParent = {}, TContext = {}, TArgs = {}> =
533
+ | ResolverFn<TResult, TParent, TContext, TArgs>
534
+ | ResolverWithResolve<TResult, TParent, TContext, TArgs>;
535
+
536
+ export type ResolverFn<TResult, TParent, TContext, TArgs> = (
537
+ parent: TParent,
538
+ args: TArgs,
539
+ context: TContext,
540
+ info: GraphQLResolveInfo,
541
+ ) => Promise<TResult> | TResult;
542
+
543
+ export type SubscriptionSubscribeFn<TResult, TParent, TContext, TArgs> = (
544
+ parent: TParent,
545
+ args: TArgs,
546
+ context: TContext,
547
+ info: GraphQLResolveInfo,
548
+ ) => AsyncIterable<TResult> | Promise<AsyncIterable<TResult>>;
549
+
550
+ export type SubscriptionResolveFn<TResult, TParent, TContext, TArgs> = (
551
+ parent: TParent,
552
+ args: TArgs,
553
+ context: TContext,
554
+ info: GraphQLResolveInfo,
555
+ ) => TResult | Promise<TResult>;
556
+
557
+ export interface SubscriptionSubscriberObject<
558
+ TResult,
559
+ TKey extends string,
560
+ TParent,
561
+ TContext,
562
+ TArgs,
563
+ > {
564
+ subscribe: SubscriptionSubscribeFn<
565
+ { [key in TKey]: TResult },
566
+ TParent,
567
+ TContext,
568
+ TArgs
569
+ >;
570
+ resolve?: SubscriptionResolveFn<
571
+ TResult,
572
+ { [key in TKey]: TResult },
573
+ TContext,
574
+ TArgs
575
+ >;
576
+ }
577
+
578
+ export interface SubscriptionResolverObject<TResult, TParent, TContext, TArgs> {
579
+ subscribe: SubscriptionSubscribeFn<any, TParent, TContext, TArgs>;
580
+ resolve: SubscriptionResolveFn<TResult, any, TContext, TArgs>;
581
+ }
582
+
583
+ export type SubscriptionObject<
584
+ TResult,
585
+ TKey extends string,
586
+ TParent,
587
+ TContext,
588
+ TArgs,
589
+ > =
590
+ | SubscriptionSubscriberObject<TResult, TKey, TParent, TContext, TArgs>
591
+ | SubscriptionResolverObject<TResult, TParent, TContext, TArgs>;
592
+
593
+ export type SubscriptionResolver<
594
+ TResult,
595
+ TKey extends string,
596
+ TParent = {},
597
+ TContext = {},
598
+ TArgs = {},
599
+ > =
600
+ | ((
601
+ ...args: any[]
602
+ ) => SubscriptionObject<TResult, TKey, TParent, TContext, TArgs>)
603
+ | SubscriptionObject<TResult, TKey, TParent, TContext, TArgs>;
604
+
605
+ export type TypeResolveFn<TTypes, TParent = {}, TContext = {}> = (
606
+ parent: TParent,
607
+ context: TContext,
608
+ info: GraphQLResolveInfo,
609
+ ) => Maybe<TTypes> | Promise<Maybe<TTypes>>;
610
+
611
+ export type IsTypeOfResolverFn<T = {}, TContext = {}> = (
612
+ obj: T,
613
+ context: TContext,
614
+ info: GraphQLResolveInfo,
615
+ ) => boolean | Promise<boolean>;
616
+
617
+ export type NextResolverFn<T> = () => Promise<T>;
618
+
619
+ export type DirectiveResolverFn<
620
+ TResult = {},
621
+ TParent = {},
622
+ TContext = {},
623
+ TArgs = {},
624
+ > = (
625
+ next: NextResolverFn<TResult>,
626
+ parent: TParent,
627
+ args: TArgs,
628
+ context: TContext,
629
+ info: GraphQLResolveInfo,
630
+ ) => TResult | Promise<TResult>;
631
+
632
+ /** Mapping between all available schema types and the resolvers types */
633
+ export type ResolversTypes = ResolversObject<{
634
+ Boolean: ResolverTypeWrapper<Partial<Scalars['Boolean']>>;
635
+ DateTime: ResolverTypeWrapper<Partial<Scalars['DateTime']>>;
636
+ Float: ResolverTypeWrapper<Partial<Scalars['Float']>>;
637
+ ID: ResolverTypeWrapper<Partial<Scalars['ID']>>;
638
+ Int: ResolverTypeWrapper<Partial<Scalars['Int']>>;
639
+ Mutation: ResolverTypeWrapper<{}>;
640
+ MutationResponse:
641
+ | ResolversTypes['SurveyMutationResponse']
642
+ | ResolversTypes['SurveyQuestionResponseMutationResponse']
643
+ | ResolversTypes['SurveyResponseMutationResponse'];
644
+ MutationResponseErrorCode: ResolverTypeWrapper<
645
+ Partial<MutationResponseErrorCode>
646
+ >;
647
+ Node:
648
+ | ResolversTypes['Question']
649
+ | ResolversTypes['Survey']
650
+ | ResolversTypes['SurveyQuestionResponse']
651
+ | ResolversTypes['SurveyResponseBase']
652
+ | ResolversTypes['SurveyResponseFull'];
653
+ PaginationInput: ResolverTypeWrapper<Partial<PaginationInput>>;
654
+ Query: ResolverTypeWrapper<{}>;
655
+ Question: ResolverTypeWrapper<Partial<Question>>;
656
+ String: ResolverTypeWrapper<Partial<Scalars['String']>>;
657
+ Survey: ResolverTypeWrapper<Partial<Survey>>;
658
+ SurveyCreateInput: ResolverTypeWrapper<Partial<SurveyCreateInput>>;
659
+ SurveyMutationResponse: ResolverTypeWrapper<Partial<SurveyMutationResponse>>;
660
+ SurveyQuestionResponse: ResolverTypeWrapper<Partial<SurveyQuestionResponse>>;
661
+ SurveyQuestionResponseCreateInput: ResolverTypeWrapper<
662
+ Partial<SurveyQuestionResponseCreateInput>
663
+ >;
664
+ SurveyQuestionResponseMutationResponse: ResolverTypeWrapper<
665
+ Partial<SurveyQuestionResponseMutationResponse>
666
+ >;
667
+ SurveyQuestionResult: ResolverTypeWrapper<Partial<SurveyQuestionResult>>;
668
+ SurveyResponse:
669
+ | ResolversTypes['SurveyResponseBase']
670
+ | ResolversTypes['SurveyResponseFull'];
671
+ SurveyResponseBase: ResolverTypeWrapper<Partial<SurveyResponseBase>>;
672
+ SurveyResponseFull: ResolverTypeWrapper<Partial<SurveyResponseFull>>;
673
+ SurveyResponseMutationResponse: ResolverTypeWrapper<
674
+ Partial<SurveyResponseMutationResponse>
675
+ >;
676
+ SurveyStatus: ResolverTypeWrapper<Partial<SurveyStatus>>;
677
+ SurveyUpdateInput: ResolverTypeWrapper<Partial<SurveyUpdateInput>>;
678
+ TargetQuarter: ResolverTypeWrapper<Partial<TargetQuarter>>;
679
+ }>;
680
+
681
+ /** Mapping between all available schema types and the resolvers parents */
682
+ export type ResolversParentTypes = ResolversObject<{
683
+ Boolean: Partial<Scalars['Boolean']>;
684
+ DateTime: Partial<Scalars['DateTime']>;
685
+ Float: Partial<Scalars['Float']>;
686
+ ID: Partial<Scalars['ID']>;
687
+ Int: Partial<Scalars['Int']>;
688
+ Mutation: {};
689
+ MutationResponse:
690
+ | ResolversParentTypes['SurveyMutationResponse']
691
+ | ResolversParentTypes['SurveyQuestionResponseMutationResponse']
692
+ | ResolversParentTypes['SurveyResponseMutationResponse'];
693
+ Node:
694
+ | ResolversParentTypes['Question']
695
+ | ResolversParentTypes['Survey']
696
+ | ResolversParentTypes['SurveyQuestionResponse']
697
+ | ResolversParentTypes['SurveyResponseBase']
698
+ | ResolversParentTypes['SurveyResponseFull'];
699
+ PaginationInput: Partial<PaginationInput>;
700
+ Query: {};
701
+ Question: Partial<Question>;
702
+ String: Partial<Scalars['String']>;
703
+ Survey: Partial<Survey>;
704
+ SurveyCreateInput: Partial<SurveyCreateInput>;
705
+ SurveyMutationResponse: Partial<SurveyMutationResponse>;
706
+ SurveyQuestionResponse: Partial<SurveyQuestionResponse>;
707
+ SurveyQuestionResponseCreateInput: Partial<SurveyQuestionResponseCreateInput>;
708
+ SurveyQuestionResponseMutationResponse: Partial<SurveyQuestionResponseMutationResponse>;
709
+ SurveyQuestionResult: Partial<SurveyQuestionResult>;
710
+ SurveyResponse:
711
+ | ResolversParentTypes['SurveyResponseBase']
712
+ | ResolversParentTypes['SurveyResponseFull'];
713
+ SurveyResponseBase: Partial<SurveyResponseBase>;
714
+ SurveyResponseFull: Partial<SurveyResponseFull>;
715
+ SurveyResponseMutationResponse: Partial<SurveyResponseMutationResponse>;
716
+ SurveyUpdateInput: Partial<SurveyUpdateInput>;
717
+ }>;
718
+
719
+ export interface DateTimeScalarConfig
720
+ extends GraphQLScalarTypeConfig<ResolversTypes['DateTime'], any> {
721
+ name: 'DateTime';
722
+ }
723
+
724
+ export type MutationResolvers<
725
+ ContextType = any,
726
+ ParentType = ResolversParentTypes['Mutation'],
727
+ > = ResolversObject<{
728
+ surveyArchive?: Resolver<
729
+ ResolversTypes['SurveyMutationResponse'],
730
+ ParentType,
731
+ ContextType,
732
+ RequireFields<MutationSurveyArchiveArgs, 'id'>
733
+ >;
734
+ surveyCreate?: Resolver<
735
+ ResolversTypes['SurveyMutationResponse'],
736
+ ParentType,
737
+ ContextType,
738
+ RequireFields<MutationSurveyCreateArgs, 'input'>
739
+ >;
740
+ surveyPublish?: Resolver<
741
+ ResolversTypes['SurveyMutationResponse'],
742
+ ParentType,
743
+ ContextType,
744
+ RequireFields<MutationSurveyPublishArgs, 'id'>
745
+ >;
746
+ surveyResponseCreate?: Resolver<
747
+ ResolversTypes['SurveyResponseMutationResponse'],
748
+ ParentType,
749
+ ContextType,
750
+ RequireFields<
751
+ MutationSurveyResponseCreateArgs,
752
+ 'questionResponses' | 'surveyId'
753
+ >
754
+ >;
755
+ surveyUnarchive?: Resolver<
756
+ ResolversTypes['SurveyMutationResponse'],
757
+ ParentType,
758
+ ContextType,
759
+ RequireFields<MutationSurveyUnarchiveArgs, 'id'>
760
+ >;
761
+ surveyUpdate?: Resolver<
762
+ ResolversTypes['SurveyMutationResponse'],
763
+ ParentType,
764
+ ContextType,
765
+ RequireFields<MutationSurveyUpdateArgs, 'id' | 'updates'>
766
+ >;
767
+ }>;
768
+
769
+ export type MutationResponseResolvers<
770
+ ContextType = any,
771
+ ParentType = ResolversParentTypes['MutationResponse'],
772
+ > = ResolversObject<{
773
+ __resolveType: TypeResolveFn<
774
+ | 'SurveyMutationResponse'
775
+ | 'SurveyQuestionResponseMutationResponse'
776
+ | 'SurveyResponseMutationResponse',
777
+ ParentType,
778
+ ContextType
779
+ >;
780
+ error?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
781
+ errorCode?: Resolver<
782
+ Maybe<ResolversTypes['MutationResponseErrorCode']>,
783
+ ParentType,
784
+ ContextType
785
+ >;
786
+ message?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
787
+ }>;
788
+
789
+ export type NodeResolvers<
790
+ ContextType = any,
791
+ ParentType = ResolversParentTypes['Node'],
792
+ > = ResolversObject<{
793
+ __resolveType: TypeResolveFn<
794
+ | 'Question'
795
+ | 'Survey'
796
+ | 'SurveyQuestionResponse'
797
+ | 'SurveyResponseBase'
798
+ | 'SurveyResponseFull',
799
+ ParentType,
800
+ ContextType
801
+ >;
802
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
803
+ }>;
804
+
805
+ export type QueryResolvers<
806
+ ContextType = any,
807
+ ParentType = ResolversParentTypes['Query'],
808
+ > = ResolversObject<{
809
+ question?: Resolver<
810
+ Maybe<ResolversTypes['Question']>,
811
+ ParentType,
812
+ ContextType,
813
+ RequireFields<QueryQuestionArgs, 'id'>
814
+ >;
815
+ questions?: Resolver<
816
+ ReadonlyArray<ResolversTypes['Question']>,
817
+ ParentType,
818
+ ContextType,
819
+ Partial<QueryQuestionsArgs>
820
+ >;
821
+ survey?: Resolver<
822
+ Maybe<ResolversTypes['Survey']>,
823
+ ParentType,
824
+ ContextType,
825
+ RequireFields<QuerySurveyArgs, 'id'>
826
+ >;
827
+ surveyQuestionResponse?: Resolver<
828
+ Maybe<ResolversTypes['SurveyQuestionResponse']>,
829
+ ParentType,
830
+ ContextType,
831
+ RequireFields<QuerySurveyQuestionResponseArgs, 'id'>
832
+ >;
833
+ surveyQuestionResponses?: Resolver<
834
+ ReadonlyArray<ResolversTypes['SurveyQuestionResponse']>,
835
+ ParentType,
836
+ ContextType,
837
+ Partial<QuerySurveyQuestionResponsesArgs>
838
+ >;
839
+ surveyResponse?: Resolver<
840
+ Maybe<ResolversTypes['SurveyResponse']>,
841
+ ParentType,
842
+ ContextType,
843
+ RequireFields<QuerySurveyResponseArgs, 'id'>
844
+ >;
845
+ surveyResponses?: Resolver<
846
+ ReadonlyArray<ResolversTypes['SurveyResponse']>,
847
+ ParentType,
848
+ ContextType,
849
+ Partial<QuerySurveyResponsesArgs>
850
+ >;
851
+ surveys?: Resolver<
852
+ ReadonlyArray<ResolversTypes['Survey']>,
853
+ ParentType,
854
+ ContextType,
855
+ Partial<QuerySurveysArgs>
856
+ >;
857
+ userIsAdmin?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>;
858
+ }>;
859
+
860
+ export type QuestionResolvers<
861
+ ContextType = any,
862
+ ParentType = ResolversParentTypes['Question'],
863
+ > = ResolversObject<{
864
+ description?: Resolver<
865
+ Maybe<ResolversTypes['String']>,
866
+ ParentType,
867
+ ContextType
868
+ >;
869
+ helpText?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
870
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
871
+ label?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
872
+ likertOptions?: Resolver<
873
+ ReadonlyArray<ResolversTypes['String']>,
874
+ ParentType,
875
+ ContextType
876
+ >;
877
+ prompt?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
878
+ publicId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
879
+ responses?: Resolver<
880
+ ReadonlyArray<ResolversTypes['SurveyQuestionResponse']>,
881
+ ParentType,
882
+ ContextType,
883
+ Partial<QuestionResponsesArgs>
884
+ >;
885
+ surveys?: Resolver<
886
+ ReadonlyArray<ResolversTypes['Survey']>,
887
+ ParentType,
888
+ ContextType,
889
+ Partial<QuestionSurveysArgs>
890
+ >;
891
+ version?: Resolver<ResolversTypes['Int'], ParentType, ContextType>;
892
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
893
+ }>;
894
+
895
+ export type SurveyResolvers<
896
+ ContextType = any,
897
+ ParentType = ResolversParentTypes['Survey'],
898
+ > = ResolversObject<{
899
+ endDate?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
900
+ hasUserResponse?: Resolver<
901
+ ResolversTypes['Boolean'],
902
+ ParentType,
903
+ ContextType
904
+ >;
905
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
906
+ isArchived?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>;
907
+ isOpen?: Resolver<ResolversTypes['Boolean'], ParentType, ContextType>;
908
+ questionResponses?: Resolver<
909
+ ReadonlyArray<ResolversTypes['SurveyQuestionResponse']>,
910
+ ParentType,
911
+ ContextType,
912
+ Partial<SurveyQuestionResponsesArgs>
913
+ >;
914
+ questionResults?: Resolver<
915
+ ReadonlyArray<ResolversTypes['SurveyQuestionResult']>,
916
+ ParentType,
917
+ ContextType
918
+ >;
919
+ questions?: Resolver<
920
+ ReadonlyArray<ResolversTypes['Question']>,
921
+ ParentType,
922
+ ContextType,
923
+ Partial<SurveyQuestionsArgs>
924
+ >;
925
+ responses?: Resolver<
926
+ ReadonlyArray<ResolversTypes['SurveyResponseBase']>,
927
+ ParentType,
928
+ ContextType,
929
+ Partial<SurveyResponsesArgs>
930
+ >;
931
+ responsesCount?: Resolver<ResolversTypes['Int'], ParentType, ContextType>;
932
+ startDate?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
933
+ status?: Resolver<ResolversTypes['SurveyStatus'], ParentType, ContextType>;
934
+ targetQuarter?: Resolver<
935
+ ResolversTypes['TargetQuarter'],
936
+ ParentType,
937
+ ContextType
938
+ >;
939
+ targetYear?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
940
+ templateId?: Resolver<Maybe<ResolversTypes['ID']>, ParentType, ContextType>;
941
+ templateVersion?: Resolver<
942
+ Maybe<ResolversTypes['Int']>,
943
+ ParentType,
944
+ ContextType
945
+ >;
946
+ timeZone?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
947
+ title?: Resolver<ResolversTypes['String'], ParentType, ContextType>;
948
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
949
+ }>;
950
+
951
+ export type SurveyMutationResponseResolvers<
952
+ ContextType = any,
953
+ ParentType = ResolversParentTypes['SurveyMutationResponse'],
954
+ > = ResolversObject<{
955
+ error?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
956
+ errorCode?: Resolver<
957
+ Maybe<ResolversTypes['MutationResponseErrorCode']>,
958
+ ParentType,
959
+ ContextType
960
+ >;
961
+ message?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
962
+ survey?: Resolver<Maybe<ResolversTypes['Survey']>, ParentType, ContextType>;
963
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
964
+ }>;
965
+
966
+ export type SurveyQuestionResponseResolvers<
967
+ ContextType = any,
968
+ ParentType = ResolversParentTypes['SurveyQuestionResponse'],
969
+ > = ResolversObject<{
970
+ createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
971
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
972
+ likertRating?: Resolver<ResolversTypes['Int'], ParentType, ContextType>;
973
+ question?: Resolver<ResolversTypes['Question'], ParentType, ContextType>;
974
+ questionId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
975
+ survey?: Resolver<ResolversTypes['Survey'], ParentType, ContextType>;
976
+ surveyId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
977
+ surveyResponse?: Resolver<
978
+ ResolversTypes['SurveyResponseBase'],
979
+ ParentType,
980
+ ContextType
981
+ >;
982
+ surveyResponseId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
983
+ updatedAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
984
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
985
+ }>;
986
+
987
+ export type SurveyQuestionResponseMutationResponseResolvers<
988
+ ContextType = any,
989
+ ParentType = ResolversParentTypes['SurveyQuestionResponseMutationResponse'],
990
+ > = ResolversObject<{
991
+ error?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
992
+ errorCode?: Resolver<
993
+ Maybe<ResolversTypes['MutationResponseErrorCode']>,
994
+ ParentType,
995
+ ContextType
996
+ >;
997
+ message?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
998
+ surveyQuestionResponse?: Resolver<
999
+ Maybe<ResolversTypes['SurveyQuestionResponse']>,
1000
+ ParentType,
1001
+ ContextType
1002
+ >;
1003
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1004
+ }>;
1005
+
1006
+ export type SurveyQuestionResultResolvers<
1007
+ ContextType = any,
1008
+ ParentType = ResolversParentTypes['SurveyQuestionResult'],
1009
+ > = ResolversObject<{
1010
+ percentPositiveRating?: Resolver<
1011
+ ResolversTypes['Float'],
1012
+ ParentType,
1013
+ ContextType
1014
+ >;
1015
+ questionId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1016
+ surveyId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1017
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1018
+ }>;
1019
+
1020
+ export type SurveyResponseResolvers<
1021
+ ContextType = any,
1022
+ ParentType = ResolversParentTypes['SurveyResponse'],
1023
+ > = ResolversObject<{
1024
+ __resolveType: TypeResolveFn<
1025
+ 'SurveyResponseBase' | 'SurveyResponseFull',
1026
+ ParentType,
1027
+ ContextType
1028
+ >;
1029
+ createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1030
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1031
+ survey?: Resolver<ResolversTypes['Survey'], ParentType, ContextType>;
1032
+ surveyId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1033
+ updatedAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1034
+ }>;
1035
+
1036
+ export type SurveyResponseBaseResolvers<
1037
+ ContextType = any,
1038
+ ParentType = ResolversParentTypes['SurveyResponseBase'],
1039
+ > = ResolversObject<{
1040
+ createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1041
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1042
+ survey?: Resolver<ResolversTypes['Survey'], ParentType, ContextType>;
1043
+ surveyId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1044
+ updatedAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1045
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1046
+ }>;
1047
+
1048
+ export type SurveyResponseFullResolvers<
1049
+ ContextType = any,
1050
+ ParentType = ResolversParentTypes['SurveyResponseFull'],
1051
+ > = ResolversObject<{
1052
+ createdAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1053
+ id?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1054
+ questionResponses?: Resolver<
1055
+ ReadonlyArray<ResolversTypes['SurveyQuestionResponse']>,
1056
+ ParentType,
1057
+ ContextType,
1058
+ Partial<SurveyResponseFullQuestionResponsesArgs>
1059
+ >;
1060
+ survey?: Resolver<ResolversTypes['Survey'], ParentType, ContextType>;
1061
+ surveyId?: Resolver<ResolversTypes['ID'], ParentType, ContextType>;
1062
+ updatedAt?: Resolver<ResolversTypes['DateTime'], ParentType, ContextType>;
1063
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1064
+ }>;
1065
+
1066
+ export type SurveyResponseMutationResponseResolvers<
1067
+ ContextType = any,
1068
+ ParentType = ResolversParentTypes['SurveyResponseMutationResponse'],
1069
+ > = ResolversObject<{
1070
+ error?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1071
+ errorCode?: Resolver<
1072
+ Maybe<ResolversTypes['MutationResponseErrorCode']>,
1073
+ ParentType,
1074
+ ContextType
1075
+ >;
1076
+ message?: Resolver<Maybe<ResolversTypes['String']>, ParentType, ContextType>;
1077
+ surveyResponse?: Resolver<
1078
+ Maybe<ResolversTypes['SurveyResponseFull']>,
1079
+ ParentType,
1080
+ ContextType
1081
+ >;
1082
+ __isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
1083
+ }>;
1084
+
1085
+ export type Resolvers<ContextType = any> = ResolversObject<{
1086
+ DateTime?: GraphQLScalarType;
1087
+ Mutation?: MutationResolvers<ContextType>;
1088
+ MutationResponse?: MutationResponseResolvers<ContextType>;
1089
+ Node?: NodeResolvers<ContextType>;
1090
+ Query?: QueryResolvers<ContextType>;
1091
+ Question?: QuestionResolvers<ContextType>;
1092
+ Survey?: SurveyResolvers<ContextType>;
1093
+ SurveyMutationResponse?: SurveyMutationResponseResolvers<ContextType>;
1094
+ SurveyQuestionResponse?: SurveyQuestionResponseResolvers<ContextType>;
1095
+ SurveyQuestionResponseMutationResponse?: SurveyQuestionResponseMutationResponseResolvers<ContextType>;
1096
+ SurveyQuestionResult?: SurveyQuestionResultResolvers<ContextType>;
1097
+ SurveyResponse?: SurveyResponseResolvers<ContextType>;
1098
+ SurveyResponseBase?: SurveyResponseBaseResolvers<ContextType>;
1099
+ SurveyResponseFull?: SurveyResponseFullResolvers<ContextType>;
1100
+ SurveyResponseMutationResponse?: SurveyResponseMutationResponseResolvers<ContextType>;
1101
+ }>;