@quesmed/types-rn 2.6.295 → 2.6.296

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.
@@ -3,6 +3,7 @@ import { IMockTest } from './MockTest';
3
3
  import { EEntitlementType, EProductType, IEntitlement } from './Product';
4
4
  import { IPrescribeMark, IQuestion, IQuestionChoice, IQuestionQAAnswer } from './Question';
5
5
  import { ETopicType } from './Topic';
6
+ import { ITutorConversation } from './Tutor';
6
7
  import { Id } from './Type';
7
8
  import { IUser } from './User';
8
9
  export declare enum EMarksheetState {
@@ -124,6 +125,7 @@ export interface IMarksheet {
124
125
  preBuildData?: IPreBuildMarksheet;
125
126
  builderConfig?: IBuildConfigData;
126
127
  entitlementId: EProductType | EEntitlementType;
128
+ chats?: ITutorConversation[];
127
129
  }
128
130
  export type IMarksheetMarkJSONB = string | [string] | string[] | [IQuestionQAAnswer] | [string[], string[]] | [IPrescribeMark] | [string, string, string] | [string, string] | [string, string][] | null;
129
131
  export declare enum EMarkResult {
@@ -0,0 +1,131 @@
1
+ import { Id } from './Type';
2
+ export declare enum ETutorPhase {
3
+ PRE_ANSWER = "PRE_ANSWER",
4
+ POST_ANSWER = "POST_ANSWER"
5
+ }
6
+ export declare enum ETutorPreset {
7
+ NONE = "NONE",
8
+ STUDY_MODE = "STUDY_MODE",
9
+ SOCRATIC = "SOCRATIC",
10
+ EXAM_TECHNIQUE = "EXAM_TECHNIQUE",
11
+ ELI5 = "ELI5"
12
+ }
13
+ export declare enum ETutorRating {
14
+ LIKE = "LIKE",
15
+ DISLIKE = "DISLIKE"
16
+ }
17
+ export declare enum ETutorBlockType {
18
+ TEXT = "TEXT",
19
+ QUIZ = "QUIZ",
20
+ HINT = "HINT",
21
+ FOLLOW_UP = "FOLLOW_UP"
22
+ }
23
+ export declare enum ETutorResourceType {
24
+ QUIZ_QUESTION = "quiz_question",
25
+ QUESBOOK = "quesbook",
26
+ VIDEO = "video",
27
+ IMAGE = "image",
28
+ EXTERNAL = "external"
29
+ }
30
+ export type TTutorRole = 'human' | 'ai' | 'system';
31
+ export interface ITutorOption {
32
+ id: string;
33
+ label: string;
34
+ }
35
+ export interface ITutorQuizResult {
36
+ selectedOptionId: string | null;
37
+ correctOptionId: string | null;
38
+ correct: boolean | null;
39
+ rationale: string | null;
40
+ answeredAt: number | Date | null;
41
+ }
42
+ export interface ITutorHint {
43
+ id: string;
44
+ text: string | null;
45
+ revealedAt: number | Date | null;
46
+ }
47
+ export interface ITutorFeedback {
48
+ rating: number | null;
49
+ categories: string[] | null;
50
+ comment: string | null;
51
+ submittedAt: number | Date | null;
52
+ }
53
+ export interface ITutorFeedbackInput {
54
+ rating?: number;
55
+ categories?: string[];
56
+ comment?: string;
57
+ }
58
+ export interface ITutorResource {
59
+ type: ETutorResourceType | string;
60
+ title: string;
61
+ url: string | null;
62
+ summary: string | null;
63
+ }
64
+ export interface ITutorBlock {
65
+ type: ETutorBlockType;
66
+ content?: string | null;
67
+ blockId?: string | null;
68
+ prompt?: string | null;
69
+ options?: ITutorOption[] | null;
70
+ result?: ITutorQuizResult | null;
71
+ hints?: ITutorHint[] | null;
72
+ followUps?: ITutorOption[] | null;
73
+ data?: Record<string, unknown> | null;
74
+ }
75
+ export interface ITutorMessage {
76
+ id: Id;
77
+ conversationId: Id;
78
+ role: TTutorRole;
79
+ phase: ETutorPhase | null;
80
+ preset: ETutorPreset | null;
81
+ blocks: ITutorBlock[];
82
+ rating: ETutorRating | null;
83
+ ratedAt: number | Date | null;
84
+ createdAt: number | Date;
85
+ }
86
+ export interface ITutorConversation {
87
+ id: Id;
88
+ title: string | null;
89
+ marksheetId: Id | null;
90
+ questionId: Id | null;
91
+ resources: ITutorResource[];
92
+ messages: ITutorMessage[];
93
+ feedback: ITutorFeedback | null;
94
+ lastActivityAt: number | Date | null;
95
+ createdAt: number | Date;
96
+ }
97
+ export interface ITutorSendMessageBody {
98
+ marksheetId: number;
99
+ questionId: number;
100
+ message: string;
101
+ preset?: ETutorPreset;
102
+ followUpId?: string;
103
+ }
104
+ export type ITutorEvent = {
105
+ type: 'MESSAGE_START';
106
+ conversationId: number;
107
+ } | {
108
+ type: 'BLOCK_START';
109
+ blockIndex: number;
110
+ blockType: ETutorBlockType;
111
+ blockId?: string;
112
+ } | {
113
+ type: 'TEXT_DELTA';
114
+ blockIndex: number;
115
+ content: string;
116
+ openMarkup: string | null;
117
+ } | {
118
+ type: 'BLOCK_DATA';
119
+ blockIndex: number;
120
+ block: ITutorBlock;
121
+ } | {
122
+ type: 'BLOCK_STOP';
123
+ blockIndex: number;
124
+ } | {
125
+ type: 'MESSAGE_END';
126
+ messageId: string;
127
+ message: ITutorMessage;
128
+ } | {
129
+ type: 'ERROR';
130
+ message: string;
131
+ };
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ETutorResourceType = exports.ETutorBlockType = exports.ETutorRating = exports.ETutorPreset = exports.ETutorPhase = void 0;
4
+ var ETutorPhase;
5
+ (function (ETutorPhase) {
6
+ ETutorPhase["PRE_ANSWER"] = "PRE_ANSWER";
7
+ ETutorPhase["POST_ANSWER"] = "POST_ANSWER";
8
+ })(ETutorPhase = exports.ETutorPhase || (exports.ETutorPhase = {}));
9
+ var ETutorPreset;
10
+ (function (ETutorPreset) {
11
+ ETutorPreset["NONE"] = "NONE";
12
+ ETutorPreset["STUDY_MODE"] = "STUDY_MODE";
13
+ ETutorPreset["SOCRATIC"] = "SOCRATIC";
14
+ ETutorPreset["EXAM_TECHNIQUE"] = "EXAM_TECHNIQUE";
15
+ ETutorPreset["ELI5"] = "ELI5";
16
+ })(ETutorPreset = exports.ETutorPreset || (exports.ETutorPreset = {}));
17
+ var ETutorRating;
18
+ (function (ETutorRating) {
19
+ ETutorRating["LIKE"] = "LIKE";
20
+ ETutorRating["DISLIKE"] = "DISLIKE";
21
+ })(ETutorRating = exports.ETutorRating || (exports.ETutorRating = {}));
22
+ var ETutorBlockType;
23
+ (function (ETutorBlockType) {
24
+ ETutorBlockType["TEXT"] = "TEXT";
25
+ ETutorBlockType["QUIZ"] = "QUIZ";
26
+ ETutorBlockType["HINT"] = "HINT";
27
+ ETutorBlockType["FOLLOW_UP"] = "FOLLOW_UP";
28
+ })(ETutorBlockType = exports.ETutorBlockType || (exports.ETutorBlockType = {}));
29
+ var ETutorResourceType;
30
+ (function (ETutorResourceType) {
31
+ ETutorResourceType["QUIZ_QUESTION"] = "quiz_question";
32
+ ETutorResourceType["QUESBOOK"] = "quesbook";
33
+ ETutorResourceType["VIDEO"] = "video";
34
+ ETutorResourceType["IMAGE"] = "image";
35
+ ETutorResourceType["EXTERNAL"] = "external";
36
+ })(ETutorResourceType = exports.ETutorResourceType || (exports.ETutorResourceType = {}));
@@ -26,3 +26,20 @@ export interface IUkmla2026Condition {
26
26
  correctQuestions?: number | null;
27
27
  incorrectQuestions?: number | null;
28
28
  }
29
+ export interface IUkmla2026PresentationLetter {
30
+ letter: string;
31
+ presentations?: IUkmla2026Presentation[];
32
+ totalQuestions?: number | null;
33
+ correctQuestions?: number | null;
34
+ incorrectQuestions?: number | null;
35
+ }
36
+ export interface IUkmla2026Presentation {
37
+ id: Id;
38
+ name: string;
39
+ changeType: EUkmla2026ChangeType;
40
+ legacyNames?: string[];
41
+ questionIds?: number[];
42
+ totalQuestions?: number | null;
43
+ correctQuestions?: number | null;
44
+ incorrectQuestions?: number | null;
45
+ }
package/models/index.d.ts CHANGED
@@ -35,6 +35,7 @@ export * from './Todo';
35
35
  export * from './Token';
36
36
  export * from './Topic';
37
37
  export * from './Type';
38
+ export * from './Tutor';
38
39
  export * from './Ucat';
39
40
  export * from './Ukmla2026';
40
41
  export * from './UkmlaTopic';
package/models/index.js CHANGED
@@ -51,6 +51,7 @@ __exportStar(require("./Todo"), exports);
51
51
  __exportStar(require("./Token"), exports);
52
52
  __exportStar(require("./Topic"), exports);
53
53
  __exportStar(require("./Type"), exports);
54
+ __exportStar(require("./Tutor"), exports);
54
55
  __exportStar(require("./Ucat"), exports);
55
56
  __exportStar(require("./Ukmla2026"), exports);
56
57
  __exportStar(require("./UkmlaTopic"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quesmed/types-rn",
3
- "version": "2.6.295",
3
+ "version": "2.6.296",
4
4
  "description": "Typescript types for Quesmed",
5
5
  "keywords": [
6
6
  "quesmed",
@@ -9,5 +9,6 @@ export * from './osce';
9
9
  export * from './picture';
10
10
  export * from './question';
11
11
  export * from './topic';
12
+ export * from './tutor';
12
13
  export * from './user';
13
14
  export * from './video';
@@ -25,5 +25,6 @@ __exportStar(require("./osce"), exports);
25
25
  __exportStar(require("./picture"), exports);
26
26
  __exportStar(require("./question"), exports);
27
27
  __exportStar(require("./topic"), exports);
28
+ __exportStar(require("./tutor"), exports);
28
29
  __exportStar(require("./user"), exports);
29
30
  __exportStar(require("./video"), exports);
@@ -0,0 +1,4 @@
1
+ export declare const TUTOR_OPTION_FIELDS: import("@apollo/client").DocumentNode;
2
+ export declare const TUTOR_BLOCK_FIELDS: import("@apollo/client").DocumentNode;
3
+ export declare const TUTOR_MESSAGE_FIELDS: import("@apollo/client").DocumentNode;
4
+ export declare const TUTOR_CONVERSATION_FIELDS: import("@apollo/client").DocumentNode;
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TUTOR_CONVERSATION_FIELDS = exports.TUTOR_MESSAGE_FIELDS = exports.TUTOR_BLOCK_FIELDS = exports.TUTOR_OPTION_FIELDS = void 0;
4
+ const client_1 = require("@apollo/client");
5
+ exports.TUTOR_OPTION_FIELDS = (0, client_1.gql) `
6
+ fragment TutorOptionFields on TutorOption {
7
+ id
8
+ label
9
+ }
10
+ `;
11
+ exports.TUTOR_BLOCK_FIELDS = (0, client_1.gql) `
12
+ ${exports.TUTOR_OPTION_FIELDS}
13
+ fragment TutorBlockFields on TutorBlock {
14
+ type
15
+ content
16
+ blockId
17
+ prompt
18
+ options {
19
+ ...TutorOptionFields
20
+ }
21
+ result {
22
+ selectedOptionId
23
+ correctOptionId
24
+ correct
25
+ rationale
26
+ answeredAt
27
+ }
28
+ hints {
29
+ id
30
+ text
31
+ revealedAt
32
+ }
33
+ followUps {
34
+ ...TutorOptionFields
35
+ }
36
+ data
37
+ }
38
+ `;
39
+ exports.TUTOR_MESSAGE_FIELDS = (0, client_1.gql) `
40
+ ${exports.TUTOR_BLOCK_FIELDS}
41
+ fragment TutorMessageFields on TutorMessage {
42
+ id
43
+ conversationId
44
+ role
45
+ phase
46
+ preset
47
+ blocks {
48
+ ...TutorBlockFields
49
+ }
50
+ rating
51
+ ratedAt
52
+ createdAt
53
+ }
54
+ `;
55
+ exports.TUTOR_CONVERSATION_FIELDS = (0, client_1.gql) `
56
+ ${exports.TUTOR_MESSAGE_FIELDS}
57
+ fragment TutorConversationFields on TutorConversation {
58
+ id
59
+ title
60
+ marksheetId
61
+ questionId
62
+ resources {
63
+ type
64
+ title
65
+ url
66
+ summary
67
+ }
68
+ messages {
69
+ ...TutorMessageFields
70
+ }
71
+ feedback {
72
+ rating
73
+ categories
74
+ comment
75
+ submittedAt
76
+ }
77
+ lastActivityAt
78
+ createdAt
79
+ }
80
+ `;
@@ -14,5 +14,6 @@ export * from './station';
14
14
  export * from './stripe';
15
15
  export * from './todo';
16
16
  export * from './token';
17
+ export * from './tutor';
17
18
  export * from './users';
18
19
  export * from './video';
@@ -30,5 +30,6 @@ __exportStar(require("./station"), exports);
30
30
  __exportStar(require("./stripe"), exports);
31
31
  __exportStar(require("./todo"), exports);
32
32
  __exportStar(require("./token"), exports);
33
+ __exportStar(require("./tutor"), exports);
33
34
  __exportStar(require("./users"), exports);
34
35
  __exportStar(require("./video"), exports);
@@ -179,9 +179,6 @@ export declare const optimisticModifyMarksheetBuilderConfig: (marksheetId: numbe
179
179
  startedAt: number | Date;
180
180
  type: import("../../../models").EMarksheetType;
181
181
  endedAt: number | Date;
182
- /**
183
- * reBuildMarksheet
184
- */
185
182
  typeId: import("../../../models").ETopicType;
186
183
  entitlement: import("../../../models").IEntitlement;
187
184
  topicIds: number[];
@@ -213,6 +210,7 @@ export declare const optimisticModifyMarksheetBuilderConfig: (marksheetId: numbe
213
210
  topicConceptData?: string | undefined;
214
211
  preBuildData?: IPreBuildMarksheet | undefined;
215
212
  entitlementId: EEntitlementType | import("../../../models").EProductType;
213
+ chats?: import("../../../models").ITutorConversation[] | undefined;
216
214
  };
217
215
  };
218
216
  };
@@ -287,9 +285,6 @@ export declare const optimisticEndMarksheet: (marksheet: IMarksheet) => {
287
285
  startedAt: number | Date;
288
286
  type: import("../../../models").EMarksheetType;
289
287
  endedAt: number | Date;
290
- /**
291
- * reBuildMarksheet
292
- */
293
288
  typeId: import("../../../models").ETopicType;
294
289
  entitlement: import("../../../models").IEntitlement;
295
290
  topicIds: number[];
@@ -321,6 +316,7 @@ export declare const optimisticEndMarksheet: (marksheet: IMarksheet) => {
321
316
  preBuildData?: IPreBuildMarksheet | undefined;
322
317
  builderConfig?: IBuildConfigData | undefined;
323
318
  entitlementId: EEntitlementType | import("../../../models").EProductType;
319
+ chats?: import("../../../models").ITutorConversation[] | undefined;
324
320
  __typename: string;
325
321
  };
326
322
  };
@@ -86,6 +86,7 @@ export declare const optimisticEndMockTest: (marksheet: IMarksheet) => {
86
86
  preBuildData?: import("./marksheet").IPreBuildMarksheet | undefined;
87
87
  builderConfig?: import("./marksheet").IBuildConfigData | undefined;
88
88
  entitlementId: import("../../../models").EEntitlementType | import("../../../models").EProductType;
89
+ chats?: import("../../../models").ITutorConversation[] | undefined;
89
90
  __typename: string;
90
91
  };
91
92
  };
@@ -0,0 +1,33 @@
1
+ import { ETutorRating, Id, ITutorConversation, ITutorFeedbackInput, ITutorMessage } from '../../../models';
2
+ import { graphqlNormalize, RestrictedData } from '../../types';
3
+ export declare const ANSWER_TUTOR_QUIZ: import("@apollo/client").DocumentNode;
4
+ export interface IAnswerTutorQuizVar {
5
+ messageId: Id;
6
+ blockId: string;
7
+ optionId: string;
8
+ }
9
+ export type IAnswerTutorQuizData = RestrictedData<graphqlNormalize & ITutorMessage, 'answerTutorQuiz'>;
10
+ export declare const REVEAL_TUTOR_HINT: import("@apollo/client").DocumentNode;
11
+ export interface IRevealTutorHintVar {
12
+ messageId: Id;
13
+ blockId: string;
14
+ hintId: string;
15
+ }
16
+ export type IRevealTutorHintData = RestrictedData<graphqlNormalize & ITutorMessage, 'revealTutorHint'>;
17
+ export declare const RATE_TUTOR_MESSAGE: import("@apollo/client").DocumentNode;
18
+ export interface IRateTutorMessageVar {
19
+ messageId: Id;
20
+ rating: ETutorRating | null;
21
+ }
22
+ export type IRateTutorMessageData = RestrictedData<graphqlNormalize & Pick<ITutorMessage, 'id' | 'rating' | 'ratedAt'>, 'rateTutorMessage'>;
23
+ export declare const SUBMIT_TUTOR_FEEDBACK: import("@apollo/client").DocumentNode;
24
+ export interface ISubmitTutorFeedbackVar {
25
+ conversationId: Id;
26
+ feedback: ITutorFeedbackInput;
27
+ }
28
+ export type ISubmitTutorFeedbackData = RestrictedData<graphqlNormalize & ITutorConversation, 'submitTutorFeedback'>;
29
+ export declare const DELETE_TUTOR_CONVERSATION: import("@apollo/client").DocumentNode;
30
+ export interface IDeleteTutorConversationVar {
31
+ conversationId: Id;
32
+ }
33
+ export type IDeleteTutorConversationData = RestrictedData<boolean, 'deleteTutorConversation'>;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DELETE_TUTOR_CONVERSATION = exports.SUBMIT_TUTOR_FEEDBACK = exports.RATE_TUTOR_MESSAGE = exports.REVEAL_TUTOR_HINT = exports.ANSWER_TUTOR_QUIZ = void 0;
4
+ const client_1 = require("@apollo/client");
5
+ const tutor_1 = require("../../fragments/tutor");
6
+ exports.ANSWER_TUTOR_QUIZ = (0, client_1.gql) `
7
+ ${tutor_1.TUTOR_MESSAGE_FIELDS}
8
+ mutation AnswerTutorQuiz(
9
+ $messageId: ID!
10
+ $blockId: String!
11
+ $optionId: String!
12
+ ) {
13
+ restricted {
14
+ answerTutorQuiz(
15
+ messageId: $messageId
16
+ blockId: $blockId
17
+ optionId: $optionId
18
+ ) {
19
+ ...TutorMessageFields
20
+ }
21
+ }
22
+ }
23
+ `;
24
+ exports.REVEAL_TUTOR_HINT = (0, client_1.gql) `
25
+ ${tutor_1.TUTOR_MESSAGE_FIELDS}
26
+ mutation RevealTutorHint(
27
+ $messageId: ID!
28
+ $blockId: String!
29
+ $hintId: String!
30
+ ) {
31
+ restricted {
32
+ revealTutorHint(
33
+ messageId: $messageId
34
+ blockId: $blockId
35
+ hintId: $hintId
36
+ ) {
37
+ ...TutorMessageFields
38
+ }
39
+ }
40
+ }
41
+ `;
42
+ exports.RATE_TUTOR_MESSAGE = (0, client_1.gql) `
43
+ mutation RateTutorMessage($messageId: ID!, $rating: TutorRating) {
44
+ restricted {
45
+ rateTutorMessage(messageId: $messageId, rating: $rating) {
46
+ id
47
+ rating
48
+ ratedAt
49
+ }
50
+ }
51
+ }
52
+ `;
53
+ exports.SUBMIT_TUTOR_FEEDBACK = (0, client_1.gql) `
54
+ ${tutor_1.TUTOR_CONVERSATION_FIELDS}
55
+ mutation SubmitTutorFeedback(
56
+ $conversationId: Int!
57
+ $feedback: TutorFeedbackInput!
58
+ ) {
59
+ restricted {
60
+ submitTutorFeedback(
61
+ conversationId: $conversationId
62
+ feedback: $feedback
63
+ ) {
64
+ ...TutorConversationFields
65
+ }
66
+ }
67
+ }
68
+ `;
69
+ exports.DELETE_TUTOR_CONVERSATION = (0, client_1.gql) `
70
+ mutation DeleteTutorConversation($conversationId: Int!) {
71
+ restricted {
72
+ deleteTutorConversation(conversationId: $conversationId)
73
+ }
74
+ }
75
+ `;
@@ -18,6 +18,7 @@ export * from './replication';
18
18
  export * from './station';
19
19
  export * from './todos';
20
20
  export * from './topics';
21
+ export * from './tutor';
21
22
  export * from './ukmla2026';
22
23
  export * from './ukmlaTopics';
23
24
  export * from './university';
@@ -34,6 +34,7 @@ __exportStar(require("./replication"), exports);
34
34
  __exportStar(require("./station"), exports);
35
35
  __exportStar(require("./todos"), exports);
36
36
  __exportStar(require("./topics"), exports);
37
+ __exportStar(require("./tutor"), exports);
37
38
  __exportStar(require("./ukmla2026"), exports);
38
39
  __exportStar(require("./ukmlaTopics"), exports);
39
40
  __exportStar(require("./university"), exports);
@@ -0,0 +1,16 @@
1
+ import { Id, ITutorConversation } from '../../../models';
2
+ import { graphqlNormalize, RestrictedData } from '../../types';
3
+ export declare const TUTOR_CONVERSATION: import("@apollo/client").DocumentNode;
4
+ export interface ITutorConversationVar {
5
+ marksheetId: Id;
6
+ questionId: Id;
7
+ }
8
+ export type ITutorConversationData = RestrictedData<(graphqlNormalize & ITutorConversation) | null, 'tutorConversation'>;
9
+ export declare const MARKSHEET_CHATS: import("@apollo/client").DocumentNode;
10
+ export interface IMarksheetChatsVar {
11
+ id: Id;
12
+ }
13
+ export type IMarksheetChatsData = RestrictedData<{
14
+ id: Id;
15
+ chats: (graphqlNormalize & ITutorConversation)[];
16
+ }, 'marksheet'>;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MARKSHEET_CHATS = exports.TUTOR_CONVERSATION = void 0;
4
+ const client_1 = require("@apollo/client");
5
+ const tutor_1 = require("../../fragments/tutor");
6
+ exports.TUTOR_CONVERSATION = (0, client_1.gql) `
7
+ ${tutor_1.TUTOR_CONVERSATION_FIELDS}
8
+ query TutorConversation($marksheetId: Int!, $questionId: Int!) {
9
+ restricted {
10
+ tutorConversation(marksheetId: $marksheetId, questionId: $questionId) {
11
+ ...TutorConversationFields
12
+ }
13
+ }
14
+ }
15
+ `;
16
+ exports.MARKSHEET_CHATS = (0, client_1.gql) `
17
+ ${tutor_1.TUTOR_CONVERSATION_FIELDS}
18
+ query MarksheetChats($id: Int!) {
19
+ restricted {
20
+ marksheet(id: $id) {
21
+ id
22
+ chats {
23
+ ...TutorConversationFields
24
+ }
25
+ }
26
+ }
27
+ }
28
+ `;
@@ -1,8 +1,10 @@
1
- import { EDifficultyType, IUkmla2026BodySystem, Id } from '../../../models';
1
+ import { EDifficultyType, IUkmla2026BodySystem, IUkmla2026PresentationLetter, Id } from '../../../models';
2
2
  import { IPreBuildMarksheet } from '../../mutation/restricted';
3
3
  import { RestrictedData, graphqlNormalize } from '../../types';
4
4
  export type IUkmla2026BodySystemsData = RestrictedData<(graphqlNormalize & IUkmla2026BodySystem)[], 'ukmlaBodySystems'>;
5
5
  export declare const UKMLA_2026_BODY_SYSTEMS: import("@apollo/client").DocumentNode;
6
+ export type IUkmla2026PresentationsData = RestrictedData<(graphqlNormalize & IUkmla2026PresentationLetter)[], 'ukmlaPresentations'>;
7
+ export declare const UKMLA_2026_PRESENTATIONS: import("@apollo/client").DocumentNode;
6
8
  export interface IPreBuildUkmla2026MarksheetVar {
7
9
  bodySystemIds?: number[];
8
10
  conditionIds?: number[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PRE_BUILD_UKMLA_2026_MARKSHEET = exports.UKMLA_2026_BODY_SYSTEMS = void 0;
3
+ exports.PRE_BUILD_UKMLA_2026_MARKSHEET = exports.UKMLA_2026_PRESENTATIONS = exports.UKMLA_2026_BODY_SYSTEMS = void 0;
4
4
  const client_1 = require("@apollo/client");
5
5
  exports.UKMLA_2026_BODY_SYSTEMS = (0, client_1.gql) `
6
6
  query Ukmla2026BodySystems {
@@ -33,6 +33,28 @@ exports.UKMLA_2026_BODY_SYSTEMS = (0, client_1.gql) `
33
33
  }
34
34
  }
35
35
  `;
36
+ exports.UKMLA_2026_PRESENTATIONS = (0, client_1.gql) `
37
+ query Ukmla2026Presentations {
38
+ restricted {
39
+ ukmlaPresentations {
40
+ letter
41
+ totalQuestions
42
+ correctQuestions
43
+ incorrectQuestions
44
+ presentations {
45
+ id
46
+ name
47
+ changeType
48
+ legacyNames
49
+ questionIds
50
+ totalQuestions
51
+ correctQuestions
52
+ incorrectQuestions
53
+ }
54
+ }
55
+ }
56
+ }
57
+ `;
36
58
  exports.PRE_BUILD_UKMLA_2026_MARKSHEET = (0, client_1.gql) `
37
59
  query PreBuildUkmla2026Marksheet(
38
60
  $bodySystemIds: [Int!]