@speakableio/core 0.1.78 → 0.1.79

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.
@@ -1,2763 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import React from 'react';
3
- import * as _tanstack_react_query from '@tanstack/react-query';
4
- import { QueryClient } from '@tanstack/react-query';
5
- import { FirebaseFirestoreTypes, Timestamp } from '@react-native-firebase/firestore';
6
- import { Firestore, getDoc, getDocs, addDoc, setDoc, updateDoc, deleteDoc, runTransaction, writeBatch, doc, collection, query, serverTimestamp, orderBy, limit, startAt, startAfter, endAt, endBefore, where, increment, Timestamp as Timestamp$1, FieldValue } from 'firebase/firestore';
7
-
8
- type FirebaseInstance = FirebaseFirestoreTypes.Module | Firestore;
9
- interface FirestoreHelpers {
10
- getDoc: typeof getDoc;
11
- getDocs: typeof getDocs;
12
- addDoc: typeof addDoc;
13
- setDoc: typeof setDoc;
14
- updateDoc: typeof updateDoc;
15
- deleteDoc: typeof deleteDoc;
16
- runTransaction: typeof runTransaction;
17
- writeBatch: typeof writeBatch;
18
- doc: typeof doc;
19
- collection: typeof collection;
20
- query: typeof query;
21
- serverTimestamp: typeof serverTimestamp;
22
- orderBy: typeof orderBy;
23
- limit: typeof limit;
24
- startAt: typeof startAt;
25
- startAfter: typeof startAfter;
26
- endAt: typeof endAt;
27
- endBefore: typeof endBefore;
28
- where: typeof where;
29
- increment: typeof increment;
30
- }
31
- type CustomTimestamp = Timestamp | Timestamp$1;
32
- type CallableFunction<T = any, R = any> = (data: T) => Promise<R>;
33
-
34
- declare enum FeedbackTypesCard {
35
- SuggestedResponse = "suggested_response",
36
- Wida = "wida",
37
- GrammarInsights = "grammar_insights",
38
- Actfl = "actfl",
39
- ProficiencyLevel = "proficiency_level"
40
- }
41
- declare enum LeniencyCard {
42
- CONFIDENCE = "confidence",
43
- EASY = "easy",
44
- NORMAL = "normal",
45
- HARD = "hard"
46
- }
47
- declare const LENIENCY_OPTIONS: {
48
- label: string;
49
- value: LeniencyCard;
50
- }[];
51
- declare const STUDENT_LEVELS_OPTIONS: {
52
- label: string;
53
- description: string;
54
- value: string;
55
- }[];
56
- declare const BASE_RESPOND_FIELD_VALUES: {
57
- title: string;
58
- allowRetries: boolean;
59
- respondTime: number;
60
- maxCharacters: number;
61
- };
62
- declare const BASE_REPEAT_FIELD_VALUES: {
63
- repeat: number;
64
- };
65
- declare const BASE_MULTIPLE_CHOICE_FIELD_VALUES: {
66
- MCQType: string;
67
- answer: string[];
68
- choices: {
69
- option: string;
70
- value: string;
71
- }[];
72
- };
73
- declare enum VerificationCardStatus {
74
- VERIFIED = "VERIFIED",
75
- WARNING = "WARNING",
76
- NOT_RECOMMENDED = "NOT_RECOMMENDED",
77
- NOT_WORKING = "NOT_WORKING",
78
- NOT_CHECKED = "NOT_CHECKED"
79
- }
80
- declare const CARDS_COLLECTION = "flashcards";
81
- type RefsCardsFiresotre = `${typeof CARDS_COLLECTION}/${string}`;
82
- declare const refsCardsFiresotre: {
83
- allCards: string;
84
- card: (id: string) => `flashcards/${string}`;
85
- };
86
-
87
- interface PageActivityWithId extends PageActivity {
88
- id: string;
89
- }
90
- interface PageActivity {
91
- owners: string[];
92
- checked?: boolean;
93
- completed?: boolean;
94
- media_area_id?: string | null;
95
- media_area_layout?: 'left' | 'right' | null;
96
- score?: number;
97
- verificationStatus?: VerificationCardStatus;
98
- native_text?: string;
99
- repeat?: number;
100
- language?: string | null;
101
- image?: {
102
- path?: string | null;
103
- url?: string;
104
- };
105
- audio?: {
106
- path?: string | null;
107
- url?: string;
108
- } | null;
109
- notes?: string;
110
- difficulty?: string;
111
- default_language?: string;
112
- target_text?: string;
113
- type: ActivityPageType;
114
- grading_criteria?: string;
115
- scoring_type?: string;
116
- grading_method?: 'simple' | 'rubric' | 'manual' | 'standards_based';
117
- feedback_types?: string[];
118
- rubricId?: string;
119
- prompt?: string;
120
- title?: string;
121
- passing_score?: number;
122
- maxCharacters?: number;
123
- answer?: string[];
124
- choices?: {
125
- value: string;
126
- option: string;
127
- }[];
128
- MCQType?: string;
129
- multipleAttemptsAllowed?: boolean;
130
- allowRetries?: boolean;
131
- question?: string;
132
- respondTime?: number;
133
- hidePrompt?: boolean;
134
- videoUrl?: string;
135
- link?: string;
136
- text?: string;
137
- isListenAloud?: boolean;
138
- embedCode?: string;
139
- attempt?: number;
140
- correct?: number;
141
- autoGrade?: boolean;
142
- points?: number;
143
- shuffle?: boolean;
144
- translation?: string;
145
- includeAIContext?: boolean;
146
- media_area_context_ref?: string | null;
147
- standardId?: string;
148
- target_proficiency_level?: string;
149
- allowTTS?: boolean;
150
- feedback_language?: string | null;
151
- correct_answer?: string | null;
152
- }
153
- declare enum ActivityPageType {
154
- READ_REPEAT = "READ_REPEAT",
155
- VIDEO = "VIDEO",
156
- TEXT = "TEXT",
157
- READ_RESPOND = "READ_RESPOND",
158
- FREE_RESPONSE = "FREE_RESPONSE",
159
- REPEAT = "REPEAT",
160
- RESPOND = "RESPOND",
161
- RESPOND_WRITE = "RESPOND_WRITE",
162
- TEXT_TO_SPEECH = "TEXT_TO_SPEECH",
163
- MULTIPLE_CHOICE = "MULTIPLE_CHOICE",
164
- PODCAST = "PODCAST",
165
- MEDIA_PAGE = "MEDIA_PAGE",
166
- WRITE = "WRITE",
167
- SHORT_ANSWER = "SHORT_ANSWER",
168
- SHORT_STORY = "SHORT_STORY",
169
- SPEAK = "SPEAK",
170
- CONVERSATION = "CONVERSATION",
171
- CONVERSATION_WRITE = "CONVERSATION_WRITE",
172
- DIALOGUE = "DIALOGUE",
173
- INSTRUCTION = "INSTRUCTION",
174
- LISTEN = "LISTEN",
175
- READ = "READ",
176
- ANSWER = "ANSWER"
177
- }
178
- declare const RESPOND_PAGE_ACTIVITY_TYPES: ActivityPageType[];
179
- declare const MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES: ActivityPageType[];
180
- declare const REPEAT_PAGE_ACTIVITY_TYPES: ActivityPageType[];
181
- declare const RESPOND_WRITE_PAGE_ACTIVITY_TYPES: ActivityPageType[];
182
- declare const RESPOND_AUDIO_PAGE_ACTIVITY_TYPES: ActivityPageType[];
183
-
184
- declare const cardsQueryKeys: {
185
- all: string[];
186
- one: (params: {
187
- cardId: string;
188
- }) => string[];
189
- };
190
- declare function useCards({ cardIds, enabled, asObject, }: {
191
- cardIds: string[];
192
- enabled: boolean;
193
- asObject?: boolean;
194
- }): {
195
- cards: PageActivityWithId[];
196
- cardsObject: Record<string, PageActivityWithId> | null;
197
- cardsQueries: _tanstack_react_query.UseQueryResult<PageActivityWithId | null, Error>[];
198
- };
199
- declare function useCreateCard(): {
200
- mutationCreateCard: _tanstack_react_query.UseMutationResult<{
201
- id: string;
202
- } & Partial<PageActivity>, Error, {
203
- data: Partial<PageActivity>;
204
- }, unknown>;
205
- };
206
- declare function useCreateCards(): {
207
- mutationCreateCards: _tanstack_react_query.UseMutationResult<{
208
- id: string;
209
- owners: string[];
210
- checked?: boolean;
211
- completed?: boolean;
212
- media_area_id?: string | null;
213
- media_area_layout?: "left" | "right" | null;
214
- score?: number;
215
- verificationStatus?: VerificationCardStatus;
216
- native_text?: string;
217
- repeat?: number;
218
- language?: string | null;
219
- image?: {
220
- path?: string | null;
221
- url?: string;
222
- };
223
- audio?: {
224
- path?: string | null;
225
- url?: string;
226
- } | null;
227
- notes?: string;
228
- difficulty?: string;
229
- default_language?: string;
230
- target_text?: string;
231
- type: ActivityPageType;
232
- grading_criteria?: string;
233
- scoring_type?: string;
234
- grading_method?: "simple" | "rubric" | "manual" | "standards_based";
235
- feedback_types?: string[];
236
- rubricId?: string;
237
- prompt?: string;
238
- title?: string;
239
- passing_score?: number;
240
- maxCharacters?: number;
241
- answer?: string[];
242
- choices?: {
243
- value: string;
244
- option: string;
245
- }[];
246
- MCQType?: string;
247
- multipleAttemptsAllowed?: boolean;
248
- allowRetries?: boolean;
249
- question?: string;
250
- respondTime?: number;
251
- hidePrompt?: boolean;
252
- videoUrl?: string;
253
- link?: string;
254
- text?: string;
255
- isListenAloud?: boolean;
256
- embedCode?: string;
257
- attempt?: number;
258
- correct?: number;
259
- autoGrade?: boolean;
260
- points?: number;
261
- shuffle?: boolean;
262
- translation?: string;
263
- includeAIContext?: boolean;
264
- media_area_context_ref?: string | null;
265
- standardId?: string;
266
- target_proficiency_level?: string;
267
- allowTTS?: boolean;
268
- feedback_language?: string | null;
269
- correct_answer?: string | null;
270
- }[], Error, {
271
- cards: PageActivity[];
272
- }, unknown>;
273
- };
274
- declare function getCardFromCache({ cardId, queryClient, }: {
275
- cardId: string;
276
- queryClient: QueryClient;
277
- }): PageActivityWithId | undefined;
278
- declare function updateCardInCache({ cardId, card, queryClient, }: {
279
- cardId: string;
280
- card: PageActivityWithId | null;
281
- queryClient: QueryClient;
282
- }): void;
283
- declare function useGetCard({ cardId, enabled }: {
284
- cardId: string;
285
- enabled?: boolean;
286
- }): _tanstack_react_query.UseQueryResult<PageActivityWithId | null, Error>;
287
-
288
- declare const createCardRepo: () => {
289
- createCard: (args_0: {
290
- data: Partial<PageActivity>;
291
- }) => Promise<{
292
- id: string;
293
- } & Partial<PageActivity>>;
294
- createCards: (args_0: {
295
- cards: PageActivity[];
296
- }) => Promise<{
297
- id: string;
298
- owners: string[];
299
- checked?: boolean;
300
- completed?: boolean;
301
- media_area_id?: string | null;
302
- media_area_layout?: "left" | "right" | null;
303
- score?: number;
304
- verificationStatus?: VerificationCardStatus;
305
- native_text?: string;
306
- repeat?: number;
307
- language?: string | null;
308
- image?: {
309
- path?: string | null;
310
- url?: string;
311
- };
312
- audio?: {
313
- path?: string | null;
314
- url?: string;
315
- } | null;
316
- notes?: string;
317
- difficulty?: string;
318
- default_language?: string;
319
- target_text?: string;
320
- type: ActivityPageType;
321
- grading_criteria?: string;
322
- scoring_type?: string;
323
- grading_method?: "simple" | "rubric" | "manual" | "standards_based";
324
- feedback_types?: string[];
325
- rubricId?: string;
326
- prompt?: string;
327
- title?: string;
328
- passing_score?: number;
329
- maxCharacters?: number;
330
- answer?: string[];
331
- choices?: {
332
- value: string;
333
- option: string;
334
- }[];
335
- MCQType?: string;
336
- multipleAttemptsAllowed?: boolean;
337
- allowRetries?: boolean;
338
- question?: string;
339
- respondTime?: number;
340
- hidePrompt?: boolean;
341
- videoUrl?: string;
342
- link?: string;
343
- text?: string;
344
- isListenAloud?: boolean;
345
- embedCode?: string;
346
- attempt?: number;
347
- correct?: number;
348
- autoGrade?: boolean;
349
- points?: number;
350
- shuffle?: boolean;
351
- translation?: string;
352
- includeAIContext?: boolean;
353
- media_area_context_ref?: string | null;
354
- standardId?: string;
355
- target_proficiency_level?: string;
356
- allowTTS?: boolean;
357
- feedback_language?: string | null;
358
- correct_answer?: string | null;
359
- }[]>;
360
- getCard: (params: {
361
- cardId: string;
362
- }) => Promise<PageActivityWithId | null>;
363
- };
364
-
365
- declare function checkIsRepeatPage(cardType: ActivityPageType | undefined): boolean;
366
- declare function checkIsMCPage(cardType: ActivityPageType | undefined): boolean;
367
- declare function checkIsRespondPage(cardType: ActivityPageType | undefined): boolean;
368
- declare function checkIsRespondWrittenPage(cardType: ActivityPageType | undefined): boolean;
369
- declare function checkIsRespondAudioPage(cardType: ActivityPageType | undefined): boolean;
370
- declare const checkIsMediaPage: (cardType: ActivityPageType | undefined) => boolean;
371
- declare const checkIsShortAnswerPage: (cardType: ActivityPageType | undefined) => boolean;
372
- declare const checkTypePageActivity: (cardType: ActivityPageType | undefined) => {
373
- isRespondAudio: boolean;
374
- isRespondWritten: boolean;
375
- isRespond: boolean;
376
- isMC: boolean;
377
- isRepeat: boolean;
378
- isMediaPage: boolean;
379
- isShortAnswer: boolean;
380
- };
381
-
382
- declare function getPagePrompt(card: PageActivityWithId | undefined): {
383
- has: boolean;
384
- text: string | undefined;
385
- };
386
-
387
- interface Assignment {
388
- name: string;
389
- description: string;
390
- scheduledTime?: string | null;
391
- dueTime?: {
392
- hours: number;
393
- minutes: number;
394
- nanos: number;
395
- };
396
- speakableio: boolean;
397
- owners: string[];
398
- image: {
399
- path: string | null;
400
- url: string;
401
- };
402
- dueDate: {
403
- day: number;
404
- month: number;
405
- year: number;
406
- };
407
- teacherName: string;
408
- courseWorkId: string | null;
409
- dueDateTimestamp: CustomTimestamp;
410
- scheduledTimeTimestamp: number;
411
- active: boolean;
412
- voice: string | null;
413
- setId: string;
414
- dateMade: {
415
- seconds: number;
416
- nanoseconds: number;
417
- };
418
- maxPoints: number;
419
- courseId: string;
420
- isAssessment: boolean;
421
- isAvailable: boolean;
422
- ltiDeeplink?: string;
423
- content?: string[];
424
- weights?: Record<string, number>;
425
- language?: string;
426
- types?: {
427
- [key in ActivityPageType]?: number;
428
- };
429
- aiEnabled?: boolean;
430
- }
431
- interface AssignmentWithId extends Assignment {
432
- id: string;
433
- isAvailable: boolean;
434
- scores?: unknown;
435
- }
436
- interface Score {
437
- userId: string;
438
- owners: string[];
439
- progress: number;
440
- score: number;
441
- cards?: {
442
- [cardId: string]: PageScore;
443
- };
444
- courseId?: string;
445
- firstLoad?: boolean;
446
- googleClassroomUserId?: string;
447
- skippedCards?: number;
448
- lastPlayed?: CustomTimestamp;
449
- startDate?: CustomTimestamp;
450
- submissionDate?: CustomTimestamp;
451
- status?: 'SUBMITTED' | 'PENDING_REVIEW' | 'IN_PROGRESS' | 'FINALIZED';
452
- submitted?: boolean;
453
- successfulCards?: number;
454
- total_voiceSuccess?: number;
455
- total_voice_attempts?: number;
456
- total_words_spoken?: number;
457
- history?: PageScore[];
458
- attempts?: number;
459
- assignmentId?: string;
460
- setId?: string;
461
- }
462
- interface ScoreWithId extends Score {
463
- id: string;
464
- }
465
- interface PageScore {
466
- voiceSuccess?: number;
467
- voiceAttempts?: number;
468
- voiceFail?: number;
469
- completed?: boolean;
470
- attempts?: number;
471
- correct?: number;
472
- success?: boolean;
473
- aiSuccess?: boolean;
474
- grading_method?: 'simple' | 'rubric' | 'manual' | 'standards_based' | null;
475
- grammar_insights?: {
476
- type?: string;
477
- justification?: string;
478
- error?: boolean;
479
- correction?: string;
480
- }[];
481
- promptSuccess?: boolean;
482
- score?: number;
483
- simple_grading?: {
484
- justification?: string;
485
- success?: boolean;
486
- };
487
- suggested_response?: string;
488
- summary?: string;
489
- transcript?: string | null;
490
- errors?: any;
491
- improvedResponse?: string;
492
- audio?: string | null;
493
- actfl?: {
494
- justification: string;
495
- level: string;
496
- };
497
- wida?: {
498
- justification: string;
499
- level: string;
500
- };
501
- earned_points?: number;
502
- fileName?: string | null;
503
- max_points?: number;
504
- passing_score?: number;
505
- rubric?: {
506
- description: string;
507
- justification: string;
508
- maxPoints: number;
509
- score: number;
510
- score_title: string;
511
- title: string;
512
- }[] | null;
513
- scoring_type?: string;
514
- history?: PageScore[];
515
- media_area_opened?: boolean;
516
- noFeedbackAvailable?: boolean;
517
- proficiency_level?: {
518
- standardId: string;
519
- level: string;
520
- justification: string;
521
- key_indicators?: string[];
522
- };
523
- status?: string | null;
524
- transcriptError?: boolean;
525
- feedbackError?: boolean;
526
- totalTrys?: {
527
- markedCorrect?: boolean;
528
- selectedOption?: string | string[];
529
- attemptedAt?: CustomTimestamp;
530
- }[];
531
- tryAgain?: boolean;
532
- updatedAt?: CustomTimestamp;
533
- }
534
-
535
- declare enum AssignmentAnalyticsType {
536
- Macro = "macro",
537
- Gradebook = "gradebook",
538
- Cards = "cards",
539
- Student = "student",
540
- StudentSummary = "student_summary",
541
- All = "all"
542
- }
543
-
544
- declare const createAssignmentRepo: () => {
545
- getAssignment: (params: {
546
- assignmentId: string;
547
- currentUserId: string;
548
- analyticType?: AssignmentAnalyticsType;
549
- studentId?: string;
550
- }) => Promise<AssignmentWithId | {
551
- scores: any;
552
- id: string;
553
- isAvailable: boolean;
554
- name: string;
555
- description: string;
556
- scheduledTime?: string | null;
557
- dueTime?: {
558
- hours: number;
559
- minutes: number;
560
- nanos: number;
561
- };
562
- speakableio: boolean;
563
- owners: string[];
564
- image: {
565
- path: string | null;
566
- url: string;
567
- };
568
- dueDate: {
569
- day: number;
570
- month: number;
571
- year: number;
572
- };
573
- teacherName: string;
574
- courseWorkId: string | null;
575
- dueDateTimestamp: CustomTimestamp;
576
- scheduledTimeTimestamp: number;
577
- active: boolean;
578
- voice: string | null;
579
- setId: string;
580
- dateMade: {
581
- seconds: number;
582
- nanoseconds: number;
583
- };
584
- maxPoints: number;
585
- courseId: string;
586
- isAssessment: boolean;
587
- ltiDeeplink?: string;
588
- content?: string[];
589
- weights?: Record<string, number>;
590
- language?: string;
591
- types?: { [key in ActivityPageType]?: number; };
592
- aiEnabled?: boolean;
593
- } | null>;
594
- attachScoresAssignment: (args_0: {
595
- assignments: AssignmentWithId[];
596
- analyticType: AssignmentAnalyticsType;
597
- studentId?: string;
598
- currentUserId: string;
599
- }) => Promise<{
600
- scores: any;
601
- id: string;
602
- isAvailable: boolean;
603
- name: string;
604
- description: string;
605
- scheduledTime?: string | null;
606
- dueTime?: {
607
- hours: number;
608
- minutes: number;
609
- nanos: number;
610
- };
611
- speakableio: boolean;
612
- owners: string[];
613
- image: {
614
- path: string | null;
615
- url: string;
616
- };
617
- dueDate: {
618
- day: number;
619
- month: number;
620
- year: number;
621
- };
622
- teacherName: string;
623
- courseWorkId: string | null;
624
- dueDateTimestamp: CustomTimestamp;
625
- scheduledTimeTimestamp: number;
626
- active: boolean;
627
- voice: string | null;
628
- setId: string;
629
- dateMade: {
630
- seconds: number;
631
- nanoseconds: number;
632
- };
633
- maxPoints: number;
634
- courseId: string;
635
- isAssessment: boolean;
636
- ltiDeeplink?: string;
637
- content?: string[];
638
- weights?: Record<string, number>;
639
- language?: string;
640
- types?: { [key in ActivityPageType]?: number; };
641
- aiEnabled?: boolean;
642
- }[]>;
643
- getAssignmentScores: (args_0: {
644
- assignmentId: string;
645
- currentUserId: string;
646
- analyticType?: AssignmentAnalyticsType;
647
- studentId?: string;
648
- }) => Promise<{
649
- scores: unknown;
650
- id: string;
651
- } | undefined>;
652
- getAllAssignments: () => Promise<(AssignmentWithId & {
653
- id: string;
654
- })[]>;
655
- };
656
-
657
- declare const assignmentQueryKeys: {
658
- all: readonly ["assignments"];
659
- byId: (id: string) => readonly ["assignments", string];
660
- list: () => readonly ["assignments", "list"];
661
- };
662
- declare function useAssignment({ assignmentId, enabled, analyticType, userId, }: {
663
- assignmentId: string;
664
- enabled?: boolean;
665
- analyticType?: AssignmentAnalyticsType;
666
- userId: string;
667
- }): _tanstack_react_query.UseQueryResult<AssignmentWithId | {
668
- scores: any;
669
- id: string;
670
- isAvailable: boolean;
671
- name: string;
672
- description: string;
673
- scheduledTime?: string | null;
674
- dueTime?: {
675
- hours: number;
676
- minutes: number;
677
- nanos: number;
678
- };
679
- speakableio: boolean;
680
- owners: string[];
681
- image: {
682
- path: string | null;
683
- url: string;
684
- };
685
- dueDate: {
686
- day: number;
687
- month: number;
688
- year: number;
689
- };
690
- teacherName: string;
691
- courseWorkId: string | null;
692
- dueDateTimestamp: CustomTimestamp;
693
- scheduledTimeTimestamp: number;
694
- active: boolean;
695
- voice: string | null;
696
- setId: string;
697
- dateMade: {
698
- seconds: number;
699
- nanoseconds: number;
700
- };
701
- maxPoints: number;
702
- courseId: string;
703
- isAssessment: boolean;
704
- ltiDeeplink?: string;
705
- content?: string[];
706
- weights?: Record<string, number>;
707
- language?: string;
708
- types?: { [key in ActivityPageType]?: number; };
709
- aiEnabled?: boolean;
710
- } | null, Error>;
711
-
712
- declare const scoreQueryKeys: {
713
- all: readonly ["scores"];
714
- byId: (id: string) => readonly ["scores", string];
715
- list: () => readonly ["scores", "list"];
716
- };
717
- declare function useScore({ isAssignment, activityId, userId, courseId, enabled, googleClassroomUserId, }: {
718
- userId: string;
719
- isAssignment: boolean;
720
- activityId: string;
721
- courseId?: string;
722
- enabled?: boolean;
723
- googleClassroomUserId?: string;
724
- }): _tanstack_react_query.UseQueryResult<ScoreWithId, Error>;
725
- declare function useUpdateScore(): {
726
- mutationUpdateScore: _tanstack_react_query.UseMutationResult<Promise<void>, Error, {
727
- userId: string;
728
- data: Partial<Score>;
729
- isAssignment: boolean;
730
- activityId: string;
731
- }, {
732
- previousData: Partial<Score> | undefined;
733
- }>;
734
- };
735
- declare function useUpdateCardScore({ isAssignment, activityId, userId, cardIds, weights, }: {
736
- isAssignment: boolean;
737
- userId: string;
738
- activityId: string;
739
- cardIds: string[];
740
- weights: Record<string, number>;
741
- }): {
742
- mutationUpdateCardScore: _tanstack_react_query.UseMutationResult<{
743
- cardId: string;
744
- scoresUpdated: Score;
745
- }, Error, {
746
- cardId: string;
747
- cardScore: PageScore;
748
- }, void>;
749
- };
750
- declare function useClearScore(): {
751
- mutationClearScore: _tanstack_react_query.UseMutationResult<{
752
- update: Partial<Score>;
753
- activityId: string;
754
- }, Error, {
755
- isAssignment: boolean;
756
- cardId: string;
757
- cardScores: PageScore;
758
- userId: string;
759
- activityId: string;
760
- }, unknown>;
761
- };
762
- declare function useSubmitAssignmentScore({ onAssignmentSubmitted, studentName, }: {
763
- onAssignmentSubmitted: (assignmentId: string) => void;
764
- studentName: string;
765
- }): {
766
- submitAssignmentScore: _tanstack_react_query.UseMutateAsyncFunction<{
767
- success: boolean;
768
- message: string;
769
- error?: undefined;
770
- } | {
771
- success: boolean;
772
- error: unknown;
773
- message?: undefined;
774
- }, Error, {
775
- assignment: AssignmentWithId;
776
- userId: string;
777
- cardIds: string[];
778
- weights: Record<string, number>;
779
- scores: Score;
780
- status: "FINALIZED" | "IN_PROGRESS" | "PENDING_REVIEW";
781
- }, unknown>;
782
- isLoading: boolean;
783
- };
784
- declare function useSubmitPracticeScore(): {
785
- submitPracticeScore: _tanstack_react_query.UseMutateAsyncFunction<{
786
- success: boolean;
787
- message: string;
788
- error?: undefined;
789
- } | {
790
- success: boolean;
791
- error: unknown;
792
- message?: undefined;
793
- }, Error, {
794
- setId: string;
795
- userId: string;
796
- scores: Score;
797
- }, unknown>;
798
- isLoading: boolean;
799
- };
800
-
801
- interface SetWithId extends Set {
802
- id: string;
803
- }
804
- interface Set {
805
- id: string;
806
- language: string;
807
- ownerName: string;
808
- weights: Record<string, number>;
809
- repeat?: number;
810
- voice?: string;
811
- averagePhraseLength?: number;
812
- passing_score?: number;
813
- organizations?: string[];
814
- description: string;
815
- image: {
816
- url: string;
817
- path: null | string;
818
- };
819
- additionalLanguages?: string[];
820
- owners: string[];
821
- name: string;
822
- content: string[];
823
- types: {
824
- [key in ActivityPageType]?: number;
825
- };
826
- defaultLanguage: string;
827
- createdAt: FieldValue;
828
- public: boolean;
829
- defaultRubricId?: string;
830
- difficulty?: string;
831
- end_screen?: {
832
- variant: 0 | 1 | 2;
833
- title: string;
834
- description: string;
835
- };
836
- mcAllowRetries?: boolean;
837
- welcome_screen?: {
838
- variant: 'colored' | 'blank';
839
- };
840
- poorFunctionalityWarning?: boolean;
841
- status?: 'draft' | 'published';
842
- subjects?: any[];
843
- respondAllowRetries?: boolean;
844
- respondAllowTTS?: boolean;
845
- feedbackLanguage?: string;
846
- respondMaxCharacters?: number;
847
- respondMaxTime?: number;
848
- }
849
-
850
- declare const setsQueryKeys: {
851
- all: string[];
852
- one: (params: {
853
- setId: string;
854
- }) => string[];
855
- };
856
- declare const useSet: ({ setId, enabled }: {
857
- setId: string;
858
- enabled?: boolean;
859
- }) => _tanstack_react_query.UseQueryResult<SetWithId | null, Error>;
860
- declare function getSetFromCache({ setId, queryClient, }: {
861
- setId: string | undefined;
862
- queryClient: QueryClient;
863
- }): SetWithId | null | undefined;
864
- declare function updateSetInCache({ set, queryClient, }: {
865
- set: SetWithId;
866
- queryClient: QueryClient;
867
- }): void;
868
-
869
- declare const SETS_COLLECTION = "sets";
870
- type RefsSetsFirestore = `${typeof SETS_COLLECTION}/${string}`;
871
- declare const refsSetsFirestore: {
872
- allSets: string;
873
- set: (id: string) => `sets/${string}`;
874
- };
875
-
876
- declare const createSetRepo: () => {
877
- getSet: (args_0: {
878
- setId: string;
879
- }) => Promise<SetWithId | null>;
880
- };
881
-
882
- declare const SPEAKABLE_NOTIFICATIONS: {
883
- readonly NEW_ASSIGNMENT: "new_assignment";
884
- readonly ASSESSMENT_SUBMITTED: "assessment_submitted";
885
- readonly ASSESSMENT_SCORED: "assessment_scored";
886
- readonly NEW_COMMENT: "NEW_COMMENT";
887
- };
888
- type SpeakableNotificationType = (typeof SPEAKABLE_NOTIFICATIONS)[keyof typeof SPEAKABLE_NOTIFICATIONS];
889
- declare const SpeakableNotificationTypes: {
890
- NEW_ASSIGNMENT: string;
891
- FEEDBACK_FROM_TEACHER: string;
892
- MESSAGE_FROM_STUDENT: string;
893
- PHRASE_MARKED_CORRECT: string;
894
- STUDENT_PROGRESS: string;
895
- PLAYLIST_FOLLOWERS: string;
896
- PLAYLIST_PLAYS: string;
897
- ASSESSMENT_SUBMITTED: string;
898
- ASSESSMENT_SCORED: string;
899
- NEW_COMMENT: string;
900
- };
901
-
902
- declare const useCreateNotification: () => {
903
- createNotification: (type: SpeakableNotificationType, data: any) => Promise<any>;
904
- };
905
-
906
- type FsClient = ReturnType<typeof createFsClientBase>;
907
- type FsClientParams = Omit<Parameters<typeof createFsClientBase>[0], 'helpers'>;
908
- declare function createFsClientBase({ db, helpers, httpsCallable, logEvent, }: {
909
- db: FirebaseInstance;
910
- helpers: FirestoreHelpers;
911
- httpsCallable: (name: string) => CallableFunction;
912
- logEvent: (name: string, data: any) => void;
913
- }): {
914
- assignmentRepo: {
915
- getAssignment: (params: {
916
- assignmentId: string;
917
- currentUserId: string;
918
- analyticType?: AssignmentAnalyticsType;
919
- studentId?: string;
920
- }) => Promise<AssignmentWithId | {
921
- scores: any;
922
- id: string;
923
- isAvailable: boolean;
924
- name: string;
925
- description: string;
926
- scheduledTime?: string | null;
927
- dueTime?: {
928
- hours: number;
929
- minutes: number;
930
- nanos: number;
931
- };
932
- speakableio: boolean;
933
- owners: string[];
934
- image: {
935
- path: string | null;
936
- url: string;
937
- };
938
- dueDate: {
939
- day: number;
940
- month: number;
941
- year: number;
942
- };
943
- teacherName: string;
944
- courseWorkId: string | null;
945
- dueDateTimestamp: CustomTimestamp;
946
- scheduledTimeTimestamp: number;
947
- active: boolean;
948
- voice: string | null;
949
- setId: string;
950
- dateMade: {
951
- seconds: number;
952
- nanoseconds: number;
953
- };
954
- maxPoints: number;
955
- courseId: string;
956
- isAssessment: boolean;
957
- ltiDeeplink?: string;
958
- content?: string[];
959
- weights?: Record<string, number>;
960
- language?: string;
961
- types?: { [key in ActivityPageType]?: number; };
962
- aiEnabled?: boolean;
963
- } | null>;
964
- attachScoresAssignment: (args_0: {
965
- assignments: AssignmentWithId[];
966
- analyticType: AssignmentAnalyticsType;
967
- studentId?: string;
968
- currentUserId: string;
969
- }) => Promise<{
970
- scores: any;
971
- id: string;
972
- isAvailable: boolean;
973
- name: string;
974
- description: string;
975
- scheduledTime?: string | null;
976
- dueTime?: {
977
- hours: number;
978
- minutes: number;
979
- nanos: number;
980
- };
981
- speakableio: boolean;
982
- owners: string[];
983
- image: {
984
- path: string | null;
985
- url: string;
986
- };
987
- dueDate: {
988
- day: number;
989
- month: number;
990
- year: number;
991
- };
992
- teacherName: string;
993
- courseWorkId: string | null;
994
- dueDateTimestamp: CustomTimestamp;
995
- scheduledTimeTimestamp: number;
996
- active: boolean;
997
- voice: string | null;
998
- setId: string;
999
- dateMade: {
1000
- seconds: number;
1001
- nanoseconds: number;
1002
- };
1003
- maxPoints: number;
1004
- courseId: string;
1005
- isAssessment: boolean;
1006
- ltiDeeplink?: string;
1007
- content?: string[];
1008
- weights?: Record<string, number>;
1009
- language?: string;
1010
- types?: { [key in ActivityPageType]?: number; };
1011
- aiEnabled?: boolean;
1012
- }[]>;
1013
- getAssignmentScores: (args_0: {
1014
- assignmentId: string;
1015
- currentUserId: string;
1016
- analyticType?: AssignmentAnalyticsType;
1017
- studentId?: string;
1018
- }) => Promise<{
1019
- scores: unknown;
1020
- id: string;
1021
- } | undefined>;
1022
- getAllAssignments: () => Promise<(AssignmentWithId & {
1023
- id: string;
1024
- })[]>;
1025
- };
1026
- cardRepo: {
1027
- createCard: (args_0: {
1028
- data: Partial<PageActivity>;
1029
- }) => Promise<{
1030
- id: string;
1031
- } & Partial<PageActivity>>;
1032
- createCards: (args_0: {
1033
- cards: PageActivity[];
1034
- }) => Promise<{
1035
- id: string;
1036
- owners: string[];
1037
- checked?: boolean;
1038
- completed?: boolean;
1039
- media_area_id?: string | null;
1040
- media_area_layout?: "left" | "right" | null;
1041
- score?: number;
1042
- verificationStatus?: VerificationCardStatus;
1043
- native_text?: string;
1044
- repeat?: number;
1045
- language?: string | null;
1046
- image?: {
1047
- path?: string | null;
1048
- url?: string;
1049
- };
1050
- audio?: {
1051
- path?: string | null;
1052
- url?: string;
1053
- } | null;
1054
- notes?: string;
1055
- difficulty?: string;
1056
- default_language?: string;
1057
- target_text?: string;
1058
- type: ActivityPageType;
1059
- grading_criteria?: string;
1060
- scoring_type?: string;
1061
- grading_method?: "simple" | "rubric" | "manual" | "standards_based";
1062
- feedback_types?: string[];
1063
- rubricId?: string;
1064
- prompt?: string;
1065
- title?: string;
1066
- passing_score?: number;
1067
- maxCharacters?: number;
1068
- answer?: string[];
1069
- choices?: {
1070
- value: string;
1071
- option: string;
1072
- }[];
1073
- MCQType?: string;
1074
- multipleAttemptsAllowed?: boolean;
1075
- allowRetries?: boolean;
1076
- question?: string;
1077
- respondTime?: number;
1078
- hidePrompt?: boolean;
1079
- videoUrl?: string;
1080
- link?: string;
1081
- text?: string;
1082
- isListenAloud?: boolean;
1083
- embedCode?: string;
1084
- attempt?: number;
1085
- correct?: number;
1086
- autoGrade?: boolean;
1087
- points?: number;
1088
- shuffle?: boolean;
1089
- translation?: string;
1090
- includeAIContext?: boolean;
1091
- media_area_context_ref?: string | null;
1092
- standardId?: string;
1093
- target_proficiency_level?: string;
1094
- allowTTS?: boolean;
1095
- feedback_language?: string | null;
1096
- correct_answer?: string | null;
1097
- }[]>;
1098
- getCard: (params: {
1099
- cardId: string;
1100
- }) => Promise<PageActivityWithId | null>;
1101
- };
1102
- };
1103
-
1104
- interface UserProfile {
1105
- googleClassroomUserId: string;
1106
- image: {
1107
- url: string;
1108
- path: string;
1109
- };
1110
- displayName: string;
1111
- isTeacher?: boolean;
1112
- isStudent?: boolean;
1113
- roles?: string[];
1114
- }
1115
- interface UserAuth {
1116
- uid: string;
1117
- email: string;
1118
- displayName: string | null;
1119
- }
1120
- interface Lti {
1121
- data: {
1122
- services: {
1123
- serviceKey: string;
1124
- };
1125
- };
1126
- }
1127
- interface User {
1128
- profile: UserProfile;
1129
- auth: UserAuth;
1130
- lti: Lti;
1131
- roles: string[];
1132
- }
1133
-
1134
- declare const SpeakablePlanTypes: {
1135
- readonly basic: "basic";
1136
- readonly teacher_pro: "teacher_pro";
1137
- readonly school_starter: "school_starter";
1138
- readonly organization: "organization";
1139
- readonly starter: "starter";
1140
- readonly growth: "growth";
1141
- readonly professional: "professional";
1142
- };
1143
-
1144
- interface Permissions {
1145
- loaded: boolean;
1146
- loading: boolean;
1147
- permissions: string[];
1148
- plan: keyof typeof SpeakablePlanTypes;
1149
- subscriptionId: string;
1150
- isInstitutionPlan: boolean;
1151
- type: string;
1152
- contact: string;
1153
- hasStudentPortfolios?: boolean;
1154
- refreshDate: string;
1155
- isStripePlan: boolean;
1156
- freeOrgTrialExpired?: boolean;
1157
- }
1158
-
1159
- interface FsContext {
1160
- speakableApi: Awaited<FsClient>;
1161
- queryClient: QueryClient;
1162
- user: User;
1163
- permissions: Permissions;
1164
- }
1165
- declare const FsCtx: React.Context<FsContext | null>;
1166
- declare function SpeakableProvider({ user, children, queryClient, permissions, fsClient, }: {
1167
- children: React.ReactNode;
1168
- fsClient: FsClient;
1169
- permissions: Permissions;
1170
- queryClient: QueryClient;
1171
- user: User;
1172
- }): react_jsx_runtime.JSX.Element | null;
1173
- declare function useSpeakableApi(): FsContext;
1174
-
1175
- declare const getRespondCardTool: ({ language, standard, }: {
1176
- language: string;
1177
- standard: string;
1178
- }) => {
1179
- tool_choice: {
1180
- type: string;
1181
- function: {
1182
- name: string;
1183
- };
1184
- };
1185
- tools: {
1186
- type: string;
1187
- function: {
1188
- name: string;
1189
- description: string;
1190
- parameters: {
1191
- type: string;
1192
- required: string[];
1193
- properties: {
1194
- success: {
1195
- type: string;
1196
- description: string;
1197
- };
1198
- errors: {
1199
- type: string;
1200
- items: {
1201
- type: string;
1202
- required: string[];
1203
- properties: {
1204
- error: {
1205
- type: string;
1206
- description: string;
1207
- };
1208
- correction: {
1209
- type: string;
1210
- description: string;
1211
- };
1212
- justification: {
1213
- type: string;
1214
- description: string;
1215
- };
1216
- grammar_error_type: {
1217
- type: string;
1218
- enum: string[];
1219
- description: string;
1220
- };
1221
- };
1222
- };
1223
- description: string;
1224
- };
1225
- compliments: {
1226
- type: string;
1227
- items: {
1228
- type: string;
1229
- };
1230
- description: string;
1231
- };
1232
- improvedResponse: {
1233
- type: string;
1234
- description: string;
1235
- };
1236
- score: {
1237
- type: string;
1238
- description: string;
1239
- };
1240
- score_justification: {
1241
- type: string;
1242
- description: string;
1243
- };
1244
- };
1245
- };
1246
- };
1247
- }[];
1248
- };
1249
-
1250
- declare function debounce<T extends (...args: any[]) => Promise<any>>(func: T, waitFor: number): (...args: Parameters<T>) => Promise<ReturnType<T>>;
1251
-
1252
- declare const purify: (word: string) => string;
1253
- declare const cleanString: (words: string) => string | string[];
1254
- declare const getWordHash: (word: string, language: string) => string;
1255
- declare function getPhraseLength(phrase: string, input?: string): number;
1256
-
1257
- declare function useActivity({ id, isAssignment, onAssignmentSubmitted, ltiData, }: {
1258
- id: string;
1259
- isAssignment: boolean;
1260
- onAssignmentSubmitted: (assignmentId: string) => void;
1261
- ltiData?: {
1262
- lineItemId?: string;
1263
- lti_id?: string;
1264
- serviceKey?: string;
1265
- };
1266
- }): {
1267
- set: {
1268
- data: SetWithId | null | undefined;
1269
- query: _tanstack_react_query.UseQueryResult<SetWithId | null, Error>;
1270
- };
1271
- cards: {
1272
- data: Record<string, PageActivityWithId> | null;
1273
- query: _tanstack_react_query.UseQueryResult<PageActivityWithId | null, Error>[];
1274
- cardsArray: PageActivityWithId[];
1275
- };
1276
- assignment: {
1277
- data: AssignmentWithId | {
1278
- scores: any;
1279
- id: string;
1280
- isAvailable: boolean;
1281
- name: string;
1282
- description: string;
1283
- scheduledTime?: string | null;
1284
- dueTime?: {
1285
- hours: number;
1286
- minutes: number;
1287
- nanos: number;
1288
- };
1289
- speakableio: boolean;
1290
- owners: string[];
1291
- image: {
1292
- path: string | null;
1293
- url: string;
1294
- };
1295
- dueDate: {
1296
- day: number;
1297
- month: number;
1298
- year: number;
1299
- };
1300
- teacherName: string;
1301
- courseWorkId: string | null;
1302
- dueDateTimestamp: CustomTimestamp;
1303
- scheduledTimeTimestamp: number;
1304
- active: boolean;
1305
- voice: string | null;
1306
- setId: string;
1307
- dateMade: {
1308
- seconds: number;
1309
- nanoseconds: number;
1310
- };
1311
- maxPoints: number;
1312
- courseId: string;
1313
- isAssessment: boolean;
1314
- ltiDeeplink?: string;
1315
- content?: string[];
1316
- weights?: Record<string, number>;
1317
- language?: string;
1318
- types?: { [key in ActivityPageType]?: number; };
1319
- aiEnabled?: boolean;
1320
- } | null | undefined;
1321
- query: _tanstack_react_query.UseQueryResult<AssignmentWithId | {
1322
- scores: any;
1323
- id: string;
1324
- isAvailable: boolean;
1325
- name: string;
1326
- description: string;
1327
- scheduledTime?: string | null;
1328
- dueTime?: {
1329
- hours: number;
1330
- minutes: number;
1331
- nanos: number;
1332
- };
1333
- speakableio: boolean;
1334
- owners: string[];
1335
- image: {
1336
- path: string | null;
1337
- url: string;
1338
- };
1339
- dueDate: {
1340
- day: number;
1341
- month: number;
1342
- year: number;
1343
- };
1344
- teacherName: string;
1345
- courseWorkId: string | null;
1346
- dueDateTimestamp: CustomTimestamp;
1347
- scheduledTimeTimestamp: number;
1348
- active: boolean;
1349
- voice: string | null;
1350
- setId: string;
1351
- dateMade: {
1352
- seconds: number;
1353
- nanoseconds: number;
1354
- };
1355
- maxPoints: number;
1356
- courseId: string;
1357
- isAssessment: boolean;
1358
- ltiDeeplink?: string;
1359
- content?: string[];
1360
- weights?: Record<string, number>;
1361
- language?: string;
1362
- types?: { [key in ActivityPageType]?: number; };
1363
- aiEnabled?: boolean;
1364
- } | null, Error>;
1365
- };
1366
- scores: {
1367
- data: ScoreWithId | undefined;
1368
- query: _tanstack_react_query.UseQueryResult<ScoreWithId, Error>;
1369
- actions: {
1370
- update: (data: Partial<Score>) => void;
1371
- clear: ({ cardId, wasCompleted, }: {
1372
- cardId: string;
1373
- wasCompleted?: boolean;
1374
- }) => void;
1375
- submit: () => Promise<{
1376
- success: boolean;
1377
- message: string;
1378
- error?: undefined;
1379
- } | {
1380
- success: boolean;
1381
- error: unknown;
1382
- message?: undefined;
1383
- }>;
1384
- updateCard: (cardId: string, cardScore: PageScore) => void;
1385
- logGradingStandardEntry: ({ cardId, gradingStandard, type, }: {
1386
- cardId: string;
1387
- gradingStandard: {
1388
- level: string;
1389
- justification: string;
1390
- };
1391
- type: "actfl" | "wida" | "custom";
1392
- }) => void;
1393
- };
1394
- };
1395
- };
1396
-
1397
- interface CreditContract {
1398
- allocationSource: string;
1399
- createdAt: string;
1400
- creditsAllocatedThisPeriod: number;
1401
- effectivePlanId: string;
1402
- email: string;
1403
- isUnlimited: boolean;
1404
- lastUpdatedAt: string;
1405
- ownerType: string;
1406
- periodStart: string;
1407
- periodEnd: string;
1408
- planTermEndTimestamp: string | null;
1409
- sourceDetails: Record<string, unknown>;
1410
- creditsAvailable?: number;
1411
- topOffCreditsAvailable?: number;
1412
- }
1413
- declare const creditQueryKeys: {
1414
- userCredits: (uid: string) => readonly ["userCredits", string];
1415
- };
1416
- declare const useUserCredits: () => {
1417
- data: {
1418
- id: string;
1419
- userId: string;
1420
- email: string;
1421
- effectivePlanId: string;
1422
- status: string;
1423
- isUnlimited: boolean;
1424
- creditsAvailable: number;
1425
- creditsAllocatedThisPeriod: number;
1426
- topOffCreditsAvailable: number;
1427
- topOffCreditsTotal: number;
1428
- allocationSource: string;
1429
- sourceDetails: {};
1430
- periodStart: null;
1431
- periodEnd: null;
1432
- planTermEndTimestamp: null;
1433
- ownerType: string;
1434
- createdAt: string;
1435
- lastUpdatedAt: string;
1436
- } | {
1437
- totalCreditsAvailable: number;
1438
- allocationSource: string;
1439
- createdAt: string;
1440
- creditsAllocatedThisPeriod: number;
1441
- effectivePlanId: string;
1442
- email: string;
1443
- isUnlimited: boolean;
1444
- lastUpdatedAt: string;
1445
- ownerType: string;
1446
- periodStart: string;
1447
- periodEnd: string;
1448
- planTermEndTimestamp: string | null;
1449
- sourceDetails: Record<string, unknown>;
1450
- creditsAvailable?: number;
1451
- topOffCreditsAvailable?: number;
1452
- id: string;
1453
- userId?: undefined;
1454
- status?: undefined;
1455
- topOffCreditsTotal?: undefined;
1456
- };
1457
- error: Error;
1458
- isError: true;
1459
- isPending: false;
1460
- isLoading: false;
1461
- isLoadingError: false;
1462
- isRefetchError: true;
1463
- isSuccess: false;
1464
- isPlaceholderData: false;
1465
- status: "error";
1466
- dataUpdatedAt: number;
1467
- errorUpdatedAt: number;
1468
- failureCount: number;
1469
- failureReason: Error | null;
1470
- errorUpdateCount: number;
1471
- isFetched: boolean;
1472
- isFetchedAfterMount: boolean;
1473
- isFetching: boolean;
1474
- isInitialLoading: boolean;
1475
- isPaused: boolean;
1476
- isRefetching: boolean;
1477
- isStale: boolean;
1478
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
1479
- id: string;
1480
- userId: string;
1481
- email: string;
1482
- effectivePlanId: string;
1483
- status: string;
1484
- isUnlimited: boolean;
1485
- creditsAvailable: number;
1486
- creditsAllocatedThisPeriod: number;
1487
- topOffCreditsAvailable: number;
1488
- topOffCreditsTotal: number;
1489
- allocationSource: string;
1490
- sourceDetails: {};
1491
- periodStart: null;
1492
- periodEnd: null;
1493
- planTermEndTimestamp: null;
1494
- ownerType: string;
1495
- createdAt: string;
1496
- lastUpdatedAt: string;
1497
- } | {
1498
- totalCreditsAvailable: number;
1499
- allocationSource: string;
1500
- createdAt: string;
1501
- creditsAllocatedThisPeriod: number;
1502
- effectivePlanId: string;
1503
- email: string;
1504
- isUnlimited: boolean;
1505
- lastUpdatedAt: string;
1506
- ownerType: string;
1507
- periodStart: string;
1508
- periodEnd: string;
1509
- planTermEndTimestamp: string | null;
1510
- sourceDetails: Record<string, unknown>;
1511
- creditsAvailable?: number;
1512
- topOffCreditsAvailable?: number;
1513
- id: string;
1514
- userId?: undefined;
1515
- status?: undefined;
1516
- topOffCreditsTotal?: undefined;
1517
- }, Error>>;
1518
- fetchStatus: _tanstack_react_query.FetchStatus;
1519
- promise: Promise<{
1520
- id: string;
1521
- userId: string;
1522
- email: string;
1523
- effectivePlanId: string;
1524
- status: string;
1525
- isUnlimited: boolean;
1526
- creditsAvailable: number;
1527
- creditsAllocatedThisPeriod: number;
1528
- topOffCreditsAvailable: number;
1529
- topOffCreditsTotal: number;
1530
- allocationSource: string;
1531
- sourceDetails: {};
1532
- periodStart: null;
1533
- periodEnd: null;
1534
- planTermEndTimestamp: null;
1535
- ownerType: string;
1536
- createdAt: string;
1537
- lastUpdatedAt: string;
1538
- } | {
1539
- totalCreditsAvailable: number;
1540
- allocationSource: string;
1541
- createdAt: string;
1542
- creditsAllocatedThisPeriod: number;
1543
- effectivePlanId: string;
1544
- email: string;
1545
- isUnlimited: boolean;
1546
- lastUpdatedAt: string;
1547
- ownerType: string;
1548
- periodStart: string;
1549
- periodEnd: string;
1550
- planTermEndTimestamp: string | null;
1551
- sourceDetails: Record<string, unknown>;
1552
- creditsAvailable?: number;
1553
- topOffCreditsAvailable?: number;
1554
- id: string;
1555
- userId?: undefined;
1556
- status?: undefined;
1557
- topOffCreditsTotal?: undefined;
1558
- }>;
1559
- } | {
1560
- data: {
1561
- id: string;
1562
- userId: string;
1563
- email: string;
1564
- effectivePlanId: string;
1565
- status: string;
1566
- isUnlimited: boolean;
1567
- creditsAvailable: number;
1568
- creditsAllocatedThisPeriod: number;
1569
- topOffCreditsAvailable: number;
1570
- topOffCreditsTotal: number;
1571
- allocationSource: string;
1572
- sourceDetails: {};
1573
- periodStart: null;
1574
- periodEnd: null;
1575
- planTermEndTimestamp: null;
1576
- ownerType: string;
1577
- createdAt: string;
1578
- lastUpdatedAt: string;
1579
- } | {
1580
- totalCreditsAvailable: number;
1581
- allocationSource: string;
1582
- createdAt: string;
1583
- creditsAllocatedThisPeriod: number;
1584
- effectivePlanId: string;
1585
- email: string;
1586
- isUnlimited: boolean;
1587
- lastUpdatedAt: string;
1588
- ownerType: string;
1589
- periodStart: string;
1590
- periodEnd: string;
1591
- planTermEndTimestamp: string | null;
1592
- sourceDetails: Record<string, unknown>;
1593
- creditsAvailable?: number;
1594
- topOffCreditsAvailable?: number;
1595
- id: string;
1596
- userId?: undefined;
1597
- status?: undefined;
1598
- topOffCreditsTotal?: undefined;
1599
- };
1600
- error: null;
1601
- isError: false;
1602
- isPending: false;
1603
- isLoading: false;
1604
- isLoadingError: false;
1605
- isRefetchError: false;
1606
- isSuccess: true;
1607
- isPlaceholderData: false;
1608
- status: "success";
1609
- dataUpdatedAt: number;
1610
- errorUpdatedAt: number;
1611
- failureCount: number;
1612
- failureReason: Error | null;
1613
- errorUpdateCount: number;
1614
- isFetched: boolean;
1615
- isFetchedAfterMount: boolean;
1616
- isFetching: boolean;
1617
- isInitialLoading: boolean;
1618
- isPaused: boolean;
1619
- isRefetching: boolean;
1620
- isStale: boolean;
1621
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
1622
- id: string;
1623
- userId: string;
1624
- email: string;
1625
- effectivePlanId: string;
1626
- status: string;
1627
- isUnlimited: boolean;
1628
- creditsAvailable: number;
1629
- creditsAllocatedThisPeriod: number;
1630
- topOffCreditsAvailable: number;
1631
- topOffCreditsTotal: number;
1632
- allocationSource: string;
1633
- sourceDetails: {};
1634
- periodStart: null;
1635
- periodEnd: null;
1636
- planTermEndTimestamp: null;
1637
- ownerType: string;
1638
- createdAt: string;
1639
- lastUpdatedAt: string;
1640
- } | {
1641
- totalCreditsAvailable: number;
1642
- allocationSource: string;
1643
- createdAt: string;
1644
- creditsAllocatedThisPeriod: number;
1645
- effectivePlanId: string;
1646
- email: string;
1647
- isUnlimited: boolean;
1648
- lastUpdatedAt: string;
1649
- ownerType: string;
1650
- periodStart: string;
1651
- periodEnd: string;
1652
- planTermEndTimestamp: string | null;
1653
- sourceDetails: Record<string, unknown>;
1654
- creditsAvailable?: number;
1655
- topOffCreditsAvailable?: number;
1656
- id: string;
1657
- userId?: undefined;
1658
- status?: undefined;
1659
- topOffCreditsTotal?: undefined;
1660
- }, Error>>;
1661
- fetchStatus: _tanstack_react_query.FetchStatus;
1662
- promise: Promise<{
1663
- id: string;
1664
- userId: string;
1665
- email: string;
1666
- effectivePlanId: string;
1667
- status: string;
1668
- isUnlimited: boolean;
1669
- creditsAvailable: number;
1670
- creditsAllocatedThisPeriod: number;
1671
- topOffCreditsAvailable: number;
1672
- topOffCreditsTotal: number;
1673
- allocationSource: string;
1674
- sourceDetails: {};
1675
- periodStart: null;
1676
- periodEnd: null;
1677
- planTermEndTimestamp: null;
1678
- ownerType: string;
1679
- createdAt: string;
1680
- lastUpdatedAt: string;
1681
- } | {
1682
- totalCreditsAvailable: number;
1683
- allocationSource: string;
1684
- createdAt: string;
1685
- creditsAllocatedThisPeriod: number;
1686
- effectivePlanId: string;
1687
- email: string;
1688
- isUnlimited: boolean;
1689
- lastUpdatedAt: string;
1690
- ownerType: string;
1691
- periodStart: string;
1692
- periodEnd: string;
1693
- planTermEndTimestamp: string | null;
1694
- sourceDetails: Record<string, unknown>;
1695
- creditsAvailable?: number;
1696
- topOffCreditsAvailable?: number;
1697
- id: string;
1698
- userId?: undefined;
1699
- status?: undefined;
1700
- topOffCreditsTotal?: undefined;
1701
- }>;
1702
- } | {
1703
- data: undefined;
1704
- error: Error;
1705
- isError: true;
1706
- isPending: false;
1707
- isLoading: false;
1708
- isLoadingError: true;
1709
- isRefetchError: false;
1710
- isSuccess: false;
1711
- isPlaceholderData: false;
1712
- status: "error";
1713
- dataUpdatedAt: number;
1714
- errorUpdatedAt: number;
1715
- failureCount: number;
1716
- failureReason: Error | null;
1717
- errorUpdateCount: number;
1718
- isFetched: boolean;
1719
- isFetchedAfterMount: boolean;
1720
- isFetching: boolean;
1721
- isInitialLoading: boolean;
1722
- isPaused: boolean;
1723
- isRefetching: boolean;
1724
- isStale: boolean;
1725
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
1726
- id: string;
1727
- userId: string;
1728
- email: string;
1729
- effectivePlanId: string;
1730
- status: string;
1731
- isUnlimited: boolean;
1732
- creditsAvailable: number;
1733
- creditsAllocatedThisPeriod: number;
1734
- topOffCreditsAvailable: number;
1735
- topOffCreditsTotal: number;
1736
- allocationSource: string;
1737
- sourceDetails: {};
1738
- periodStart: null;
1739
- periodEnd: null;
1740
- planTermEndTimestamp: null;
1741
- ownerType: string;
1742
- createdAt: string;
1743
- lastUpdatedAt: string;
1744
- } | {
1745
- totalCreditsAvailable: number;
1746
- allocationSource: string;
1747
- createdAt: string;
1748
- creditsAllocatedThisPeriod: number;
1749
- effectivePlanId: string;
1750
- email: string;
1751
- isUnlimited: boolean;
1752
- lastUpdatedAt: string;
1753
- ownerType: string;
1754
- periodStart: string;
1755
- periodEnd: string;
1756
- planTermEndTimestamp: string | null;
1757
- sourceDetails: Record<string, unknown>;
1758
- creditsAvailable?: number;
1759
- topOffCreditsAvailable?: number;
1760
- id: string;
1761
- userId?: undefined;
1762
- status?: undefined;
1763
- topOffCreditsTotal?: undefined;
1764
- }, Error>>;
1765
- fetchStatus: _tanstack_react_query.FetchStatus;
1766
- promise: Promise<{
1767
- id: string;
1768
- userId: string;
1769
- email: string;
1770
- effectivePlanId: string;
1771
- status: string;
1772
- isUnlimited: boolean;
1773
- creditsAvailable: number;
1774
- creditsAllocatedThisPeriod: number;
1775
- topOffCreditsAvailable: number;
1776
- topOffCreditsTotal: number;
1777
- allocationSource: string;
1778
- sourceDetails: {};
1779
- periodStart: null;
1780
- periodEnd: null;
1781
- planTermEndTimestamp: null;
1782
- ownerType: string;
1783
- createdAt: string;
1784
- lastUpdatedAt: string;
1785
- } | {
1786
- totalCreditsAvailable: number;
1787
- allocationSource: string;
1788
- createdAt: string;
1789
- creditsAllocatedThisPeriod: number;
1790
- effectivePlanId: string;
1791
- email: string;
1792
- isUnlimited: boolean;
1793
- lastUpdatedAt: string;
1794
- ownerType: string;
1795
- periodStart: string;
1796
- periodEnd: string;
1797
- planTermEndTimestamp: string | null;
1798
- sourceDetails: Record<string, unknown>;
1799
- creditsAvailable?: number;
1800
- topOffCreditsAvailable?: number;
1801
- id: string;
1802
- userId?: undefined;
1803
- status?: undefined;
1804
- topOffCreditsTotal?: undefined;
1805
- }>;
1806
- } | {
1807
- data: undefined;
1808
- error: null;
1809
- isError: false;
1810
- isPending: true;
1811
- isLoading: true;
1812
- isLoadingError: false;
1813
- isRefetchError: false;
1814
- isSuccess: false;
1815
- isPlaceholderData: false;
1816
- status: "pending";
1817
- dataUpdatedAt: number;
1818
- errorUpdatedAt: number;
1819
- failureCount: number;
1820
- failureReason: Error | null;
1821
- errorUpdateCount: number;
1822
- isFetched: boolean;
1823
- isFetchedAfterMount: boolean;
1824
- isFetching: boolean;
1825
- isInitialLoading: boolean;
1826
- isPaused: boolean;
1827
- isRefetching: boolean;
1828
- isStale: boolean;
1829
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
1830
- id: string;
1831
- userId: string;
1832
- email: string;
1833
- effectivePlanId: string;
1834
- status: string;
1835
- isUnlimited: boolean;
1836
- creditsAvailable: number;
1837
- creditsAllocatedThisPeriod: number;
1838
- topOffCreditsAvailable: number;
1839
- topOffCreditsTotal: number;
1840
- allocationSource: string;
1841
- sourceDetails: {};
1842
- periodStart: null;
1843
- periodEnd: null;
1844
- planTermEndTimestamp: null;
1845
- ownerType: string;
1846
- createdAt: string;
1847
- lastUpdatedAt: string;
1848
- } | {
1849
- totalCreditsAvailable: number;
1850
- allocationSource: string;
1851
- createdAt: string;
1852
- creditsAllocatedThisPeriod: number;
1853
- effectivePlanId: string;
1854
- email: string;
1855
- isUnlimited: boolean;
1856
- lastUpdatedAt: string;
1857
- ownerType: string;
1858
- periodStart: string;
1859
- periodEnd: string;
1860
- planTermEndTimestamp: string | null;
1861
- sourceDetails: Record<string, unknown>;
1862
- creditsAvailable?: number;
1863
- topOffCreditsAvailable?: number;
1864
- id: string;
1865
- userId?: undefined;
1866
- status?: undefined;
1867
- topOffCreditsTotal?: undefined;
1868
- }, Error>>;
1869
- fetchStatus: _tanstack_react_query.FetchStatus;
1870
- promise: Promise<{
1871
- id: string;
1872
- userId: string;
1873
- email: string;
1874
- effectivePlanId: string;
1875
- status: string;
1876
- isUnlimited: boolean;
1877
- creditsAvailable: number;
1878
- creditsAllocatedThisPeriod: number;
1879
- topOffCreditsAvailable: number;
1880
- topOffCreditsTotal: number;
1881
- allocationSource: string;
1882
- sourceDetails: {};
1883
- periodStart: null;
1884
- periodEnd: null;
1885
- planTermEndTimestamp: null;
1886
- ownerType: string;
1887
- createdAt: string;
1888
- lastUpdatedAt: string;
1889
- } | {
1890
- totalCreditsAvailable: number;
1891
- allocationSource: string;
1892
- createdAt: string;
1893
- creditsAllocatedThisPeriod: number;
1894
- effectivePlanId: string;
1895
- email: string;
1896
- isUnlimited: boolean;
1897
- lastUpdatedAt: string;
1898
- ownerType: string;
1899
- periodStart: string;
1900
- periodEnd: string;
1901
- planTermEndTimestamp: string | null;
1902
- sourceDetails: Record<string, unknown>;
1903
- creditsAvailable?: number;
1904
- topOffCreditsAvailable?: number;
1905
- id: string;
1906
- userId?: undefined;
1907
- status?: undefined;
1908
- topOffCreditsTotal?: undefined;
1909
- }>;
1910
- } | {
1911
- data: undefined;
1912
- error: null;
1913
- isError: false;
1914
- isPending: true;
1915
- isLoadingError: false;
1916
- isRefetchError: false;
1917
- isSuccess: false;
1918
- isPlaceholderData: false;
1919
- status: "pending";
1920
- dataUpdatedAt: number;
1921
- errorUpdatedAt: number;
1922
- failureCount: number;
1923
- failureReason: Error | null;
1924
- errorUpdateCount: number;
1925
- isFetched: boolean;
1926
- isFetchedAfterMount: boolean;
1927
- isFetching: boolean;
1928
- isLoading: boolean;
1929
- isInitialLoading: boolean;
1930
- isPaused: boolean;
1931
- isRefetching: boolean;
1932
- isStale: boolean;
1933
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
1934
- id: string;
1935
- userId: string;
1936
- email: string;
1937
- effectivePlanId: string;
1938
- status: string;
1939
- isUnlimited: boolean;
1940
- creditsAvailable: number;
1941
- creditsAllocatedThisPeriod: number;
1942
- topOffCreditsAvailable: number;
1943
- topOffCreditsTotal: number;
1944
- allocationSource: string;
1945
- sourceDetails: {};
1946
- periodStart: null;
1947
- periodEnd: null;
1948
- planTermEndTimestamp: null;
1949
- ownerType: string;
1950
- createdAt: string;
1951
- lastUpdatedAt: string;
1952
- } | {
1953
- totalCreditsAvailable: number;
1954
- allocationSource: string;
1955
- createdAt: string;
1956
- creditsAllocatedThisPeriod: number;
1957
- effectivePlanId: string;
1958
- email: string;
1959
- isUnlimited: boolean;
1960
- lastUpdatedAt: string;
1961
- ownerType: string;
1962
- periodStart: string;
1963
- periodEnd: string;
1964
- planTermEndTimestamp: string | null;
1965
- sourceDetails: Record<string, unknown>;
1966
- creditsAvailable?: number;
1967
- topOffCreditsAvailable?: number;
1968
- id: string;
1969
- userId?: undefined;
1970
- status?: undefined;
1971
- topOffCreditsTotal?: undefined;
1972
- }, Error>>;
1973
- fetchStatus: _tanstack_react_query.FetchStatus;
1974
- promise: Promise<{
1975
- id: string;
1976
- userId: string;
1977
- email: string;
1978
- effectivePlanId: string;
1979
- status: string;
1980
- isUnlimited: boolean;
1981
- creditsAvailable: number;
1982
- creditsAllocatedThisPeriod: number;
1983
- topOffCreditsAvailable: number;
1984
- topOffCreditsTotal: number;
1985
- allocationSource: string;
1986
- sourceDetails: {};
1987
- periodStart: null;
1988
- periodEnd: null;
1989
- planTermEndTimestamp: null;
1990
- ownerType: string;
1991
- createdAt: string;
1992
- lastUpdatedAt: string;
1993
- } | {
1994
- totalCreditsAvailable: number;
1995
- allocationSource: string;
1996
- createdAt: string;
1997
- creditsAllocatedThisPeriod: number;
1998
- effectivePlanId: string;
1999
- email: string;
2000
- isUnlimited: boolean;
2001
- lastUpdatedAt: string;
2002
- ownerType: string;
2003
- periodStart: string;
2004
- periodEnd: string;
2005
- planTermEndTimestamp: string | null;
2006
- sourceDetails: Record<string, unknown>;
2007
- creditsAvailable?: number;
2008
- topOffCreditsAvailable?: number;
2009
- id: string;
2010
- userId?: undefined;
2011
- status?: undefined;
2012
- topOffCreditsTotal?: undefined;
2013
- }>;
2014
- } | {
2015
- data: {
2016
- id: string;
2017
- userId: string;
2018
- email: string;
2019
- effectivePlanId: string;
2020
- status: string;
2021
- isUnlimited: boolean;
2022
- creditsAvailable: number;
2023
- creditsAllocatedThisPeriod: number;
2024
- topOffCreditsAvailable: number;
2025
- topOffCreditsTotal: number;
2026
- allocationSource: string;
2027
- sourceDetails: {};
2028
- periodStart: null;
2029
- periodEnd: null;
2030
- planTermEndTimestamp: null;
2031
- ownerType: string;
2032
- createdAt: string;
2033
- lastUpdatedAt: string;
2034
- } | {
2035
- totalCreditsAvailable: number;
2036
- allocationSource: string;
2037
- createdAt: string;
2038
- creditsAllocatedThisPeriod: number;
2039
- effectivePlanId: string;
2040
- email: string;
2041
- isUnlimited: boolean;
2042
- lastUpdatedAt: string;
2043
- ownerType: string;
2044
- periodStart: string;
2045
- periodEnd: string;
2046
- planTermEndTimestamp: string | null;
2047
- sourceDetails: Record<string, unknown>;
2048
- creditsAvailable?: number;
2049
- topOffCreditsAvailable?: number;
2050
- id: string;
2051
- userId?: undefined;
2052
- status?: undefined;
2053
- topOffCreditsTotal?: undefined;
2054
- };
2055
- isError: false;
2056
- error: null;
2057
- isPending: false;
2058
- isLoading: false;
2059
- isLoadingError: false;
2060
- isRefetchError: false;
2061
- isSuccess: true;
2062
- isPlaceholderData: true;
2063
- status: "success";
2064
- dataUpdatedAt: number;
2065
- errorUpdatedAt: number;
2066
- failureCount: number;
2067
- failureReason: Error | null;
2068
- errorUpdateCount: number;
2069
- isFetched: boolean;
2070
- isFetchedAfterMount: boolean;
2071
- isFetching: boolean;
2072
- isInitialLoading: boolean;
2073
- isPaused: boolean;
2074
- isRefetching: boolean;
2075
- isStale: boolean;
2076
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<{
2077
- id: string;
2078
- userId: string;
2079
- email: string;
2080
- effectivePlanId: string;
2081
- status: string;
2082
- isUnlimited: boolean;
2083
- creditsAvailable: number;
2084
- creditsAllocatedThisPeriod: number;
2085
- topOffCreditsAvailable: number;
2086
- topOffCreditsTotal: number;
2087
- allocationSource: string;
2088
- sourceDetails: {};
2089
- periodStart: null;
2090
- periodEnd: null;
2091
- planTermEndTimestamp: null;
2092
- ownerType: string;
2093
- createdAt: string;
2094
- lastUpdatedAt: string;
2095
- } | {
2096
- totalCreditsAvailable: number;
2097
- allocationSource: string;
2098
- createdAt: string;
2099
- creditsAllocatedThisPeriod: number;
2100
- effectivePlanId: string;
2101
- email: string;
2102
- isUnlimited: boolean;
2103
- lastUpdatedAt: string;
2104
- ownerType: string;
2105
- periodStart: string;
2106
- periodEnd: string;
2107
- planTermEndTimestamp: string | null;
2108
- sourceDetails: Record<string, unknown>;
2109
- creditsAvailable?: number;
2110
- topOffCreditsAvailable?: number;
2111
- id: string;
2112
- userId?: undefined;
2113
- status?: undefined;
2114
- topOffCreditsTotal?: undefined;
2115
- }, Error>>;
2116
- fetchStatus: _tanstack_react_query.FetchStatus;
2117
- promise: Promise<{
2118
- id: string;
2119
- userId: string;
2120
- email: string;
2121
- effectivePlanId: string;
2122
- status: string;
2123
- isUnlimited: boolean;
2124
- creditsAvailable: number;
2125
- creditsAllocatedThisPeriod: number;
2126
- topOffCreditsAvailable: number;
2127
- topOffCreditsTotal: number;
2128
- allocationSource: string;
2129
- sourceDetails: {};
2130
- periodStart: null;
2131
- periodEnd: null;
2132
- planTermEndTimestamp: null;
2133
- ownerType: string;
2134
- createdAt: string;
2135
- lastUpdatedAt: string;
2136
- } | {
2137
- totalCreditsAvailable: number;
2138
- allocationSource: string;
2139
- createdAt: string;
2140
- creditsAllocatedThisPeriod: number;
2141
- effectivePlanId: string;
2142
- email: string;
2143
- isUnlimited: boolean;
2144
- lastUpdatedAt: string;
2145
- ownerType: string;
2146
- periodStart: string;
2147
- periodEnd: string;
2148
- planTermEndTimestamp: string | null;
2149
- sourceDetails: Record<string, unknown>;
2150
- creditsAvailable?: number;
2151
- topOffCreditsAvailable?: number;
2152
- id: string;
2153
- userId?: undefined;
2154
- status?: undefined;
2155
- topOffCreditsTotal?: undefined;
2156
- }>;
2157
- };
2158
-
2159
- interface OrganizationAccess {
2160
- hasUnlimitedAccess: boolean;
2161
- subscriptionId: string | null;
2162
- organizationId: string | null;
2163
- organizationName: string | null;
2164
- subscriptionEndDate: Date | null;
2165
- accessType: 'organization' | 'individual' | 'institution_subscriptions';
2166
- }
2167
- interface InstitutionSubscription {
2168
- id: string;
2169
- institutionId: string;
2170
- name: string;
2171
- plan: string;
2172
- endDate: Date;
2173
- }
2174
- interface Organization {
2175
- id: string;
2176
- name: string;
2177
- members: string[];
2178
- masterSubscriptionStatus: string;
2179
- masterSubscriptionId: string;
2180
- masterSubscriptionEndDate: Date;
2181
- }
2182
- declare const useOrganizationAccess: () => {
2183
- data: OrganizationAccess;
2184
- error: Error;
2185
- isError: true;
2186
- isPending: false;
2187
- isLoading: false;
2188
- isLoadingError: false;
2189
- isRefetchError: true;
2190
- isSuccess: false;
2191
- isPlaceholderData: false;
2192
- status: "error";
2193
- dataUpdatedAt: number;
2194
- errorUpdatedAt: number;
2195
- failureCount: number;
2196
- failureReason: Error | null;
2197
- errorUpdateCount: number;
2198
- isFetched: boolean;
2199
- isFetchedAfterMount: boolean;
2200
- isFetching: boolean;
2201
- isInitialLoading: boolean;
2202
- isPaused: boolean;
2203
- isRefetching: boolean;
2204
- isStale: boolean;
2205
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2206
- fetchStatus: _tanstack_react_query.FetchStatus;
2207
- promise: Promise<OrganizationAccess>;
2208
- } | {
2209
- data: OrganizationAccess;
2210
- error: null;
2211
- isError: false;
2212
- isPending: false;
2213
- isLoading: false;
2214
- isLoadingError: false;
2215
- isRefetchError: false;
2216
- isSuccess: true;
2217
- isPlaceholderData: false;
2218
- status: "success";
2219
- dataUpdatedAt: number;
2220
- errorUpdatedAt: number;
2221
- failureCount: number;
2222
- failureReason: Error | null;
2223
- errorUpdateCount: number;
2224
- isFetched: boolean;
2225
- isFetchedAfterMount: boolean;
2226
- isFetching: boolean;
2227
- isInitialLoading: boolean;
2228
- isPaused: boolean;
2229
- isRefetching: boolean;
2230
- isStale: boolean;
2231
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2232
- fetchStatus: _tanstack_react_query.FetchStatus;
2233
- promise: Promise<OrganizationAccess>;
2234
- } | {
2235
- data: undefined;
2236
- error: Error;
2237
- isError: true;
2238
- isPending: false;
2239
- isLoading: false;
2240
- isLoadingError: true;
2241
- isRefetchError: false;
2242
- isSuccess: false;
2243
- isPlaceholderData: false;
2244
- status: "error";
2245
- dataUpdatedAt: number;
2246
- errorUpdatedAt: number;
2247
- failureCount: number;
2248
- failureReason: Error | null;
2249
- errorUpdateCount: number;
2250
- isFetched: boolean;
2251
- isFetchedAfterMount: boolean;
2252
- isFetching: boolean;
2253
- isInitialLoading: boolean;
2254
- isPaused: boolean;
2255
- isRefetching: boolean;
2256
- isStale: boolean;
2257
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2258
- fetchStatus: _tanstack_react_query.FetchStatus;
2259
- promise: Promise<OrganizationAccess>;
2260
- } | {
2261
- data: undefined;
2262
- error: null;
2263
- isError: false;
2264
- isPending: true;
2265
- isLoading: true;
2266
- isLoadingError: false;
2267
- isRefetchError: false;
2268
- isSuccess: false;
2269
- isPlaceholderData: false;
2270
- status: "pending";
2271
- dataUpdatedAt: number;
2272
- errorUpdatedAt: number;
2273
- failureCount: number;
2274
- failureReason: Error | null;
2275
- errorUpdateCount: number;
2276
- isFetched: boolean;
2277
- isFetchedAfterMount: boolean;
2278
- isFetching: boolean;
2279
- isInitialLoading: boolean;
2280
- isPaused: boolean;
2281
- isRefetching: boolean;
2282
- isStale: boolean;
2283
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2284
- fetchStatus: _tanstack_react_query.FetchStatus;
2285
- promise: Promise<OrganizationAccess>;
2286
- } | {
2287
- data: undefined;
2288
- error: null;
2289
- isError: false;
2290
- isPending: true;
2291
- isLoadingError: false;
2292
- isRefetchError: false;
2293
- isSuccess: false;
2294
- isPlaceholderData: false;
2295
- status: "pending";
2296
- dataUpdatedAt: number;
2297
- errorUpdatedAt: number;
2298
- failureCount: number;
2299
- failureReason: Error | null;
2300
- errorUpdateCount: number;
2301
- isFetched: boolean;
2302
- isFetchedAfterMount: boolean;
2303
- isFetching: boolean;
2304
- isLoading: boolean;
2305
- isInitialLoading: boolean;
2306
- isPaused: boolean;
2307
- isRefetching: boolean;
2308
- isStale: boolean;
2309
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2310
- fetchStatus: _tanstack_react_query.FetchStatus;
2311
- promise: Promise<OrganizationAccess>;
2312
- } | {
2313
- data: OrganizationAccess;
2314
- isError: false;
2315
- error: null;
2316
- isPending: false;
2317
- isLoading: false;
2318
- isLoadingError: false;
2319
- isRefetchError: false;
2320
- isSuccess: true;
2321
- isPlaceholderData: true;
2322
- status: "success";
2323
- dataUpdatedAt: number;
2324
- errorUpdatedAt: number;
2325
- failureCount: number;
2326
- failureReason: Error | null;
2327
- errorUpdateCount: number;
2328
- isFetched: boolean;
2329
- isFetchedAfterMount: boolean;
2330
- isFetching: boolean;
2331
- isInitialLoading: boolean;
2332
- isPaused: boolean;
2333
- isRefetching: boolean;
2334
- isStale: boolean;
2335
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<OrganizationAccess, Error>>;
2336
- fetchStatus: _tanstack_react_query.FetchStatus;
2337
- promise: Promise<OrganizationAccess>;
2338
- };
2339
-
2340
- declare const useUpdateStudentVocab: (page: PageActivityWithId | null) => {
2341
- studentVocabMarkVoiceSuccess: undefined;
2342
- studentVocabMarkVoiceFail: undefined;
2343
- } | {
2344
- studentVocabMarkVoiceSuccess: () => Promise<void>;
2345
- studentVocabMarkVoiceFail: () => Promise<void>;
2346
- };
2347
-
2348
- declare const useBaseOpenAI: ({ onTranscriptSuccess, onTranscriptError, onCompletionSuccess, onCompletionError, aiEnabled, submitAudioResponse, uploadAudioAndGetTranscript, }: {
2349
- onTranscriptSuccess: (transcript: string) => void;
2350
- onTranscriptError: ({ type, message }: {
2351
- type: string;
2352
- message: string;
2353
- }) => void;
2354
- onCompletionSuccess: (completion: any) => void;
2355
- onCompletionError: ({ type, message }: {
2356
- type: string;
2357
- message: string;
2358
- }) => void;
2359
- aiEnabled: boolean;
2360
- submitAudioResponse: (audio: string) => Promise<{
2361
- url: string;
2362
- fileName: string;
2363
- }>;
2364
- uploadAudioAndGetTranscript: (audio: string, language: string) => Promise<string>;
2365
- }) => {
2366
- submitAudioResponse: (audio: string) => Promise<{
2367
- url: string;
2368
- fileName: string;
2369
- }>;
2370
- uploadAudioAndGetTranscript: (audio: string, language: string) => Promise<string>;
2371
- getTranscript: (audioUrl: string, language: string) => Promise<string>;
2372
- getFreeResponseCompletion: (messages: string[], isFreeResponse: boolean, feedbackLanguage: string, gradingStandard?: string) => Promise<any>;
2373
- getFeedback: ({ cardId, language, writtenResponse, audio, autoGrade, file, }: {
2374
- cardId: string;
2375
- language: string;
2376
- writtenResponse: string | null;
2377
- audio: string | null;
2378
- autoGrade: boolean;
2379
- file: string | null;
2380
- }) => Promise<{
2381
- noFeedbackAvailable: boolean;
2382
- success: boolean;
2383
- reason: string;
2384
- accessType: "ai_enabled" | "teacher_preview" | "student_with_teacher_plan" | "none";
2385
- } | {
2386
- noFeedbackAvailable: boolean;
2387
- success: boolean;
2388
- reason: string;
2389
- accessType: string;
2390
- aiSuccess: boolean;
2391
- }>;
2392
- };
2393
-
2394
- interface ActivityFeedbackAccess {
2395
- canAccessFeedback: boolean;
2396
- reason?: string;
2397
- isUnlimited: boolean;
2398
- accessType: 'ai_enabled' | 'teacher_preview' | 'student_with_teacher_plan' | 'none';
2399
- }
2400
- /**
2401
- * Hook to check feedback permissions for both students and teachers
2402
- *
2403
- * Permission Logic:
2404
- * 1. aiEnabled: true → Allow feedback access always (highest priority)
2405
- * 2. Teachers on /activity route → Always allowed (ADMIN role)
2406
- * 3. Students on /activity route → Need teacher with active plan (team/org)
2407
- *
2408
- * @param params - Parameters for permission checking
2409
- * @returns Feedback permissions information
2410
- */
2411
- declare const useActivityFeedbackAccess: ({ aiEnabled, isActivityRoute, }: {
2412
- aiEnabled?: boolean;
2413
- isActivityRoute?: boolean;
2414
- }) => {
2415
- data: ActivityFeedbackAccess;
2416
- error: Error;
2417
- isError: true;
2418
- isPending: false;
2419
- isLoading: false;
2420
- isLoadingError: false;
2421
- isRefetchError: true;
2422
- isSuccess: false;
2423
- isPlaceholderData: false;
2424
- status: "error";
2425
- dataUpdatedAt: number;
2426
- errorUpdatedAt: number;
2427
- failureCount: number;
2428
- failureReason: Error | null;
2429
- errorUpdateCount: number;
2430
- isFetched: boolean;
2431
- isFetchedAfterMount: boolean;
2432
- isFetching: boolean;
2433
- isInitialLoading: boolean;
2434
- isPaused: boolean;
2435
- isRefetching: boolean;
2436
- isStale: boolean;
2437
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2438
- fetchStatus: _tanstack_react_query.FetchStatus;
2439
- promise: Promise<ActivityFeedbackAccess>;
2440
- } | {
2441
- data: ActivityFeedbackAccess;
2442
- error: null;
2443
- isError: false;
2444
- isPending: false;
2445
- isLoading: false;
2446
- isLoadingError: false;
2447
- isRefetchError: false;
2448
- isSuccess: true;
2449
- isPlaceholderData: false;
2450
- status: "success";
2451
- dataUpdatedAt: number;
2452
- errorUpdatedAt: number;
2453
- failureCount: number;
2454
- failureReason: Error | null;
2455
- errorUpdateCount: number;
2456
- isFetched: boolean;
2457
- isFetchedAfterMount: boolean;
2458
- isFetching: boolean;
2459
- isInitialLoading: boolean;
2460
- isPaused: boolean;
2461
- isRefetching: boolean;
2462
- isStale: boolean;
2463
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2464
- fetchStatus: _tanstack_react_query.FetchStatus;
2465
- promise: Promise<ActivityFeedbackAccess>;
2466
- } | {
2467
- data: undefined;
2468
- error: Error;
2469
- isError: true;
2470
- isPending: false;
2471
- isLoading: false;
2472
- isLoadingError: true;
2473
- isRefetchError: false;
2474
- isSuccess: false;
2475
- isPlaceholderData: false;
2476
- status: "error";
2477
- dataUpdatedAt: number;
2478
- errorUpdatedAt: number;
2479
- failureCount: number;
2480
- failureReason: Error | null;
2481
- errorUpdateCount: number;
2482
- isFetched: boolean;
2483
- isFetchedAfterMount: boolean;
2484
- isFetching: boolean;
2485
- isInitialLoading: boolean;
2486
- isPaused: boolean;
2487
- isRefetching: boolean;
2488
- isStale: boolean;
2489
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2490
- fetchStatus: _tanstack_react_query.FetchStatus;
2491
- promise: Promise<ActivityFeedbackAccess>;
2492
- } | {
2493
- data: undefined;
2494
- error: null;
2495
- isError: false;
2496
- isPending: true;
2497
- isLoading: true;
2498
- isLoadingError: false;
2499
- isRefetchError: false;
2500
- isSuccess: false;
2501
- isPlaceholderData: false;
2502
- status: "pending";
2503
- dataUpdatedAt: number;
2504
- errorUpdatedAt: number;
2505
- failureCount: number;
2506
- failureReason: Error | null;
2507
- errorUpdateCount: number;
2508
- isFetched: boolean;
2509
- isFetchedAfterMount: boolean;
2510
- isFetching: boolean;
2511
- isInitialLoading: boolean;
2512
- isPaused: boolean;
2513
- isRefetching: boolean;
2514
- isStale: boolean;
2515
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2516
- fetchStatus: _tanstack_react_query.FetchStatus;
2517
- promise: Promise<ActivityFeedbackAccess>;
2518
- } | {
2519
- data: undefined;
2520
- error: null;
2521
- isError: false;
2522
- isPending: true;
2523
- isLoadingError: false;
2524
- isRefetchError: false;
2525
- isSuccess: false;
2526
- isPlaceholderData: false;
2527
- status: "pending";
2528
- dataUpdatedAt: number;
2529
- errorUpdatedAt: number;
2530
- failureCount: number;
2531
- failureReason: Error | null;
2532
- errorUpdateCount: number;
2533
- isFetched: boolean;
2534
- isFetchedAfterMount: boolean;
2535
- isFetching: boolean;
2536
- isLoading: boolean;
2537
- isInitialLoading: boolean;
2538
- isPaused: boolean;
2539
- isRefetching: boolean;
2540
- isStale: boolean;
2541
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2542
- fetchStatus: _tanstack_react_query.FetchStatus;
2543
- promise: Promise<ActivityFeedbackAccess>;
2544
- } | {
2545
- data: ActivityFeedbackAccess;
2546
- isError: false;
2547
- error: null;
2548
- isPending: false;
2549
- isLoading: false;
2550
- isLoadingError: false;
2551
- isRefetchError: false;
2552
- isSuccess: true;
2553
- isPlaceholderData: true;
2554
- status: "success";
2555
- dataUpdatedAt: number;
2556
- errorUpdatedAt: number;
2557
- failureCount: number;
2558
- failureReason: Error | null;
2559
- errorUpdateCount: number;
2560
- isFetched: boolean;
2561
- isFetchedAfterMount: boolean;
2562
- isFetching: boolean;
2563
- isInitialLoading: boolean;
2564
- isPaused: boolean;
2565
- isRefetching: boolean;
2566
- isStale: boolean;
2567
- refetch: (options?: _tanstack_react_query.RefetchOptions) => Promise<_tanstack_react_query.QueryObserverResult<ActivityFeedbackAccess, Error>>;
2568
- fetchStatus: _tanstack_react_query.FetchStatus;
2569
- promise: Promise<ActivityFeedbackAccess>;
2570
- };
2571
-
2572
- declare const createFsClientWeb: ({ db, httpsCallable, logEvent }: FsClientParams) => {
2573
- assignmentRepo: {
2574
- getAssignment: (params: {
2575
- assignmentId: string;
2576
- currentUserId: string;
2577
- analyticType?: AssignmentAnalyticsType;
2578
- studentId?: string;
2579
- }) => Promise<AssignmentWithId | {
2580
- scores: any;
2581
- id: string;
2582
- isAvailable: boolean;
2583
- name: string;
2584
- description: string;
2585
- scheduledTime?: string | null;
2586
- dueTime?: {
2587
- hours: number;
2588
- minutes: number;
2589
- nanos: number;
2590
- };
2591
- speakableio: boolean;
2592
- owners: string[];
2593
- image: {
2594
- path: string | null;
2595
- url: string;
2596
- };
2597
- dueDate: {
2598
- day: number;
2599
- month: number;
2600
- year: number;
2601
- };
2602
- teacherName: string;
2603
- courseWorkId: string | null;
2604
- dueDateTimestamp: CustomTimestamp;
2605
- scheduledTimeTimestamp: number;
2606
- active: boolean;
2607
- voice: string | null;
2608
- setId: string;
2609
- dateMade: {
2610
- seconds: number;
2611
- nanoseconds: number;
2612
- };
2613
- maxPoints: number;
2614
- courseId: string;
2615
- isAssessment: boolean;
2616
- ltiDeeplink?: string;
2617
- content?: string[];
2618
- weights?: Record<string, number>;
2619
- language?: string;
2620
- types?: { [key in ActivityPageType]?: number; };
2621
- aiEnabled?: boolean;
2622
- } | null>;
2623
- attachScoresAssignment: (args_0: {
2624
- assignments: AssignmentWithId[];
2625
- analyticType: AssignmentAnalyticsType;
2626
- studentId?: string;
2627
- currentUserId: string;
2628
- }) => Promise<{
2629
- scores: any;
2630
- id: string;
2631
- isAvailable: boolean;
2632
- name: string;
2633
- description: string;
2634
- scheduledTime?: string | null;
2635
- dueTime?: {
2636
- hours: number;
2637
- minutes: number;
2638
- nanos: number;
2639
- };
2640
- speakableio: boolean;
2641
- owners: string[];
2642
- image: {
2643
- path: string | null;
2644
- url: string;
2645
- };
2646
- dueDate: {
2647
- day: number;
2648
- month: number;
2649
- year: number;
2650
- };
2651
- teacherName: string;
2652
- courseWorkId: string | null;
2653
- dueDateTimestamp: CustomTimestamp;
2654
- scheduledTimeTimestamp: number;
2655
- active: boolean;
2656
- voice: string | null;
2657
- setId: string;
2658
- dateMade: {
2659
- seconds: number;
2660
- nanoseconds: number;
2661
- };
2662
- maxPoints: number;
2663
- courseId: string;
2664
- isAssessment: boolean;
2665
- ltiDeeplink?: string;
2666
- content?: string[];
2667
- weights?: Record<string, number>;
2668
- language?: string;
2669
- types?: { [key in ActivityPageType]?: number; };
2670
- aiEnabled?: boolean;
2671
- }[]>;
2672
- getAssignmentScores: (args_0: {
2673
- assignmentId: string;
2674
- currentUserId: string;
2675
- analyticType?: AssignmentAnalyticsType;
2676
- studentId?: string;
2677
- }) => Promise<{
2678
- scores: unknown;
2679
- id: string;
2680
- } | undefined>;
2681
- getAllAssignments: () => Promise<(AssignmentWithId & {
2682
- id: string;
2683
- })[]>;
2684
- };
2685
- cardRepo: {
2686
- createCard: (args_0: {
2687
- data: Partial<PageActivity>;
2688
- }) => Promise<{
2689
- id: string;
2690
- } & Partial<PageActivity>>;
2691
- createCards: (args_0: {
2692
- cards: PageActivity[];
2693
- }) => Promise<{
2694
- id: string;
2695
- owners: string[];
2696
- checked?: boolean;
2697
- completed?: boolean;
2698
- media_area_id?: string | null;
2699
- media_area_layout?: "left" | "right" | null;
2700
- score?: number;
2701
- verificationStatus?: VerificationCardStatus;
2702
- native_text?: string;
2703
- repeat?: number;
2704
- language?: string | null;
2705
- image?: {
2706
- path?: string | null;
2707
- url?: string;
2708
- };
2709
- audio?: {
2710
- path?: string | null;
2711
- url?: string;
2712
- } | null;
2713
- notes?: string;
2714
- difficulty?: string;
2715
- default_language?: string;
2716
- target_text?: string;
2717
- type: ActivityPageType;
2718
- grading_criteria?: string;
2719
- scoring_type?: string;
2720
- grading_method?: "simple" | "rubric" | "manual" | "standards_based";
2721
- feedback_types?: string[];
2722
- rubricId?: string;
2723
- prompt?: string;
2724
- title?: string;
2725
- passing_score?: number;
2726
- maxCharacters?: number;
2727
- answer?: string[];
2728
- choices?: {
2729
- value: string;
2730
- option: string;
2731
- }[];
2732
- MCQType?: string;
2733
- multipleAttemptsAllowed?: boolean;
2734
- allowRetries?: boolean;
2735
- question?: string;
2736
- respondTime?: number;
2737
- hidePrompt?: boolean;
2738
- videoUrl?: string;
2739
- link?: string;
2740
- text?: string;
2741
- isListenAloud?: boolean;
2742
- embedCode?: string;
2743
- attempt?: number;
2744
- correct?: number;
2745
- autoGrade?: boolean;
2746
- points?: number;
2747
- shuffle?: boolean;
2748
- translation?: string;
2749
- includeAIContext?: boolean;
2750
- media_area_context_ref?: string | null;
2751
- standardId?: string;
2752
- target_proficiency_level?: string;
2753
- allowTTS?: boolean;
2754
- feedback_language?: string | null;
2755
- correct_answer?: string | null;
2756
- }[]>;
2757
- getCard: (params: {
2758
- cardId: string;
2759
- }) => Promise<PageActivityWithId | null>;
2760
- };
2761
- };
2762
-
2763
- export { ActivityPageType, type Assignment, type AssignmentWithId, BASE_MULTIPLE_CHOICE_FIELD_VALUES, BASE_REPEAT_FIELD_VALUES, BASE_RESPOND_FIELD_VALUES, type CreditContract, FeedbackTypesCard, FsCtx, type InstitutionSubscription, LENIENCY_OPTIONS, LeniencyCard, MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES, type Organization, type OrganizationAccess, type PageActivity, type PageActivityWithId, type PageScore, REPEAT_PAGE_ACTIVITY_TYPES, RESPOND_AUDIO_PAGE_ACTIVITY_TYPES, RESPOND_PAGE_ACTIVITY_TYPES, RESPOND_WRITE_PAGE_ACTIVITY_TYPES, type RefsCardsFiresotre, type RefsSetsFirestore, SPEAKABLE_NOTIFICATIONS, STUDENT_LEVELS_OPTIONS, type Score, type ScoreWithId, type Set, type SetWithId, type SpeakableNotificationType, SpeakableNotificationTypes, SpeakableProvider, VerificationCardStatus, assignmentQueryKeys, cardsQueryKeys, checkIsMCPage, checkIsMediaPage, checkIsRepeatPage, checkIsRespondAudioPage, checkIsRespondPage, checkIsRespondWrittenPage, checkIsShortAnswerPage, checkTypePageActivity, cleanString, createAssignmentRepo, createCardRepo, createFsClientWeb as createFsClient, createSetRepo, creditQueryKeys, debounce, getCardFromCache, getPagePrompt, getPhraseLength, getRespondCardTool, getSetFromCache, getWordHash, purify, refsCardsFiresotre, refsSetsFirestore, scoreQueryKeys, setsQueryKeys, updateCardInCache, updateSetInCache, useActivity, useActivityFeedbackAccess, useAssignment, useBaseOpenAI, useCards, useClearScore, useCreateCard, useCreateCards, useCreateNotification, useGetCard, useOrganizationAccess, useScore, useSet, useSpeakableApi, useSubmitAssignmentScore, useSubmitPracticeScore, useUpdateCardScore, useUpdateScore, useUpdateStudentVocab, useUserCredits };