@khanacademy/perseus-editor 14.4.0 → 14.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,7 +10,6 @@ declare const InteractiveGraph: {
10
10
  problemNum: number | null | undefined;
11
11
  apiOptions: Readonly<Readonly<{
12
12
  isArticle?: boolean | undefined;
13
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
14
13
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
15
14
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
16
15
  showAlignmentOptions?: boolean | undefined;
@@ -56,8 +55,13 @@ declare const InteractiveGraph: {
56
55
  "unlimited-point"?: boolean | undefined;
57
56
  } & {
58
57
  "interactive-graph-locked-features-labels"?: boolean | undefined;
58
+ "locked-figures-aria"?: boolean | undefined;
59
59
  "locked-point-labels"?: boolean | undefined;
60
60
  "locked-line-labels"?: boolean | undefined;
61
+ "locked-vector-labels"?: boolean | undefined;
62
+ "locked-ellipse-labels"?: boolean | undefined;
63
+ "locked-polygon-labels"?: boolean | undefined;
64
+ "locked-function-labels"?: boolean | undefined;
61
65
  }) | undefined;
62
66
  } | undefined;
63
67
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -73,7 +77,6 @@ declare const InteractiveGraph: {
73
77
  isArticle: NonNullable<boolean | undefined>;
74
78
  isMobile: NonNullable<boolean | undefined>;
75
79
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
76
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
77
80
  readOnly: NonNullable<boolean | undefined>;
78
81
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
79
82
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -83,7 +86,7 @@ declare const InteractiveGraph: {
83
86
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
84
87
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
85
88
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
86
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
89
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
87
90
  onChange: import("@khanacademy/perseus").ChangeHandler;
88
91
  trackInteraction: (extraData?: Empty | undefined) => void;
89
92
  isLastUsedWidget: boolean;
@@ -120,7 +123,6 @@ declare const InteractiveGraph: {
120
123
  problemNum: number | null | undefined;
121
124
  apiOptions: Readonly<Readonly<{
122
125
  isArticle?: boolean | undefined;
123
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
124
126
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
125
127
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
126
128
  showAlignmentOptions?: boolean | undefined;
@@ -166,8 +168,13 @@ declare const InteractiveGraph: {
166
168
  "unlimited-point"?: boolean | undefined;
167
169
  } & {
168
170
  "interactive-graph-locked-features-labels"?: boolean | undefined;
171
+ "locked-figures-aria"?: boolean | undefined;
169
172
  "locked-point-labels"?: boolean | undefined;
170
173
  "locked-line-labels"?: boolean | undefined;
174
+ "locked-vector-labels"?: boolean | undefined;
175
+ "locked-ellipse-labels"?: boolean | undefined;
176
+ "locked-polygon-labels"?: boolean | undefined;
177
+ "locked-function-labels"?: boolean | undefined;
171
178
  }) | undefined;
172
179
  } | undefined;
173
180
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -183,7 +190,6 @@ declare const InteractiveGraph: {
183
190
  isArticle: NonNullable<boolean | undefined>;
184
191
  isMobile: NonNullable<boolean | undefined>;
185
192
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
186
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
187
193
  readOnly: NonNullable<boolean | undefined>;
188
194
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
189
195
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -193,7 +199,7 @@ declare const InteractiveGraph: {
193
199
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
194
200
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
195
201
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
196
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
202
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
197
203
  onChange: import("@khanacademy/perseus").ChangeHandler;
198
204
  trackInteraction: (extraData?: Empty | undefined) => void;
199
205
  isLastUsedWidget: boolean;
@@ -207,7 +213,6 @@ declare const InteractiveGraph: {
207
213
  problemNum: number | null | undefined;
208
214
  apiOptions: Readonly<Readonly<{
209
215
  isArticle?: boolean | undefined;
210
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
211
216
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
212
217
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
213
218
  showAlignmentOptions?: boolean | undefined;
@@ -253,8 +258,13 @@ declare const InteractiveGraph: {
253
258
  "unlimited-point"?: boolean | undefined;
254
259
  } & {
255
260
  "interactive-graph-locked-features-labels"?: boolean | undefined;
261
+ "locked-figures-aria"?: boolean | undefined;
256
262
  "locked-point-labels"?: boolean | undefined;
257
263
  "locked-line-labels"?: boolean | undefined;
264
+ "locked-vector-labels"?: boolean | undefined;
265
+ "locked-ellipse-labels"?: boolean | undefined;
266
+ "locked-polygon-labels"?: boolean | undefined;
267
+ "locked-function-labels"?: boolean | undefined;
258
268
  }) | undefined;
259
269
  } | undefined;
260
270
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -270,7 +280,6 @@ declare const InteractiveGraph: {
270
280
  isArticle: NonNullable<boolean | undefined>;
271
281
  isMobile: NonNullable<boolean | undefined>;
272
282
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
273
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
274
283
  readOnly: NonNullable<boolean | undefined>;
275
284
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
276
285
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -280,7 +289,7 @@ declare const InteractiveGraph: {
280
289
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
281
290
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
282
291
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
283
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
292
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
284
293
  onChange: import("@khanacademy/perseus").ChangeHandler;
285
294
  trackInteraction: (extraData?: Empty | undefined) => void;
286
295
  isLastUsedWidget: boolean;
@@ -294,7 +303,6 @@ declare const InteractiveGraph: {
294
303
  problemNum: number | null | undefined;
295
304
  apiOptions: Readonly<Readonly<{
296
305
  isArticle?: boolean | undefined;
297
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
298
306
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
299
307
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
300
308
  showAlignmentOptions?: boolean | undefined;
@@ -340,8 +348,13 @@ declare const InteractiveGraph: {
340
348
  "unlimited-point"?: boolean | undefined;
341
349
  } & {
342
350
  "interactive-graph-locked-features-labels"?: boolean | undefined;
351
+ "locked-figures-aria"?: boolean | undefined;
343
352
  "locked-point-labels"?: boolean | undefined;
344
353
  "locked-line-labels"?: boolean | undefined;
354
+ "locked-vector-labels"?: boolean | undefined;
355
+ "locked-ellipse-labels"?: boolean | undefined;
356
+ "locked-polygon-labels"?: boolean | undefined;
357
+ "locked-function-labels"?: boolean | undefined;
345
358
  }) | undefined;
346
359
  } | undefined;
347
360
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -357,7 +370,6 @@ declare const InteractiveGraph: {
357
370
  isArticle: NonNullable<boolean | undefined>;
358
371
  isMobile: NonNullable<boolean | undefined>;
359
372
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
360
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
361
373
  readOnly: NonNullable<boolean | undefined>;
362
374
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
363
375
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -367,7 +379,7 @@ declare const InteractiveGraph: {
367
379
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
368
380
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
369
381
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
370
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
382
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
371
383
  onChange: import("@khanacademy/perseus").ChangeHandler;
372
384
  trackInteraction: (extraData?: Empty | undefined) => void;
373
385
  isLastUsedWidget: boolean;
@@ -388,7 +400,6 @@ declare const InteractiveGraph: {
388
400
  problemNum: number | null | undefined;
389
401
  apiOptions: Readonly<Readonly<{
390
402
  isArticle?: boolean | undefined;
391
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
392
403
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
393
404
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
394
405
  showAlignmentOptions?: boolean | undefined;
@@ -434,8 +445,13 @@ declare const InteractiveGraph: {
434
445
  "unlimited-point"?: boolean | undefined;
435
446
  } & {
436
447
  "interactive-graph-locked-features-labels"?: boolean | undefined;
448
+ "locked-figures-aria"?: boolean | undefined;
437
449
  "locked-point-labels"?: boolean | undefined;
438
450
  "locked-line-labels"?: boolean | undefined;
451
+ "locked-vector-labels"?: boolean | undefined;
452
+ "locked-ellipse-labels"?: boolean | undefined;
453
+ "locked-polygon-labels"?: boolean | undefined;
454
+ "locked-function-labels"?: boolean | undefined;
439
455
  }) | undefined;
440
456
  } | undefined;
441
457
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -451,7 +467,6 @@ declare const InteractiveGraph: {
451
467
  isArticle: NonNullable<boolean | undefined>;
452
468
  isMobile: NonNullable<boolean | undefined>;
453
469
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
454
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
455
470
  readOnly: NonNullable<boolean | undefined>;
456
471
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
457
472
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -461,27 +476,21 @@ declare const InteractiveGraph: {
461
476
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
462
477
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
463
478
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
464
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
479
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
465
480
  onChange: import("@khanacademy/perseus").ChangeHandler;
466
481
  trackInteraction: (extraData?: Empty | undefined) => void;
467
482
  isLastUsedWidget: boolean;
468
483
  linterContext: import("@khanacademy/perseus-linter").LinterContextProps;
469
484
  containerSizeClass: SizingUtils.SizeClass;
470
- }) | null | undefined) => boolean; /**
471
- * The range of the graph in the x and y directions.
472
- */
485
+ }) | null | undefined) => boolean;
473
486
  areAngleGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeAngle, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeAngle): boolean;
474
- /**
475
- * How far apart the tick marks on the axes are in the x and y
476
- * directions.
477
- */
478
487
  arePointGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePoint, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePoint): boolean;
479
488
  arePolygonGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePolygon, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePolygon): boolean;
480
- areSegmentGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment): boolean;
489
+ areSegmentGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment): boolean; /**
490
+ * The background image to display in the graph area and its properties.
491
+ */
481
492
  _lineStroke: () => {
482
- "stroke-width"?: number | undefined; /**
483
- * The size of the graph in pixels.
484
- */
493
+ "stroke-width"?: number | undefined;
485
494
  };
486
495
  addLine: (arg1: string) => void;
487
496
  removeLine: () => void;
@@ -492,17 +501,21 @@ declare const InteractiveGraph: {
492
501
  addQuadraticControls: () => void;
493
502
  updateQuadratic: () => void;
494
503
  removeQuadraticControls: () => void;
495
- addSinusoidControls: () => void; /**
496
- * The type of markings to display on the graph.
497
- * - graph: shows the axes and the grid lines
498
- * - grid: shows only the grid lines
499
- * - none: shows no markings
500
- */
504
+ addSinusoidControls: () => void;
501
505
  updateSinusoid: () => void;
502
506
  removeSinusoidControls: () => void;
503
507
  addCircleControls: () => void;
504
508
  removeCircleControls: () => void;
505
509
  addLinearSystemControls: () => void;
510
+ /**
511
+ * The current correct answer for the graph. Updated by this component
512
+ * when the graph is changed.
513
+ *
514
+ * Note that the "Correct answer:" textbox is not an interactive
515
+ * element. Instead, it is a representation of the correct answer based
516
+ * on the state of the interactive graph previewed at the bottom of the
517
+ * editor page.
518
+ */
506
519
  removeLinearSystemControls: () => void;
507
520
  isCoordInTrash: (arg1: import("@khanacademy/perseus").Coord) => boolean;
508
521
  createPointForPointsType: (arg1: import("@khanacademy/perseus").Coord, arg2: number) => any;
@@ -524,7 +537,7 @@ declare const InteractiveGraph: {
524
537
  removeAngleControls: () => void;
525
538
  toggleShowSides: () => void;
526
539
  getUserInput(): PerseusGraphType;
527
- simpleValidate(rubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric): import("@khanacademy/perseus").PerseusScore;
540
+ simpleValidate(rubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric): import("@khanacademy/perseus").PerseusScore;
528
541
  focus: () => void;
529
542
  render(): React.ReactNode;
530
543
  setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
@@ -536,7 +549,6 @@ declare const InteractiveGraph: {
536
549
  problemNum: number | null | undefined;
537
550
  apiOptions: Readonly<Readonly<{
538
551
  isArticle?: boolean | undefined;
539
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
540
552
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
541
553
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
542
554
  showAlignmentOptions?: boolean | undefined;
@@ -582,8 +594,13 @@ declare const InteractiveGraph: {
582
594
  "unlimited-point"?: boolean | undefined;
583
595
  } & {
584
596
  "interactive-graph-locked-features-labels"?: boolean | undefined;
597
+ "locked-figures-aria"?: boolean | undefined;
585
598
  "locked-point-labels"?: boolean | undefined;
586
599
  "locked-line-labels"?: boolean | undefined;
600
+ "locked-vector-labels"?: boolean | undefined;
601
+ "locked-ellipse-labels"?: boolean | undefined;
602
+ "locked-polygon-labels"?: boolean | undefined;
603
+ "locked-function-labels"?: boolean | undefined;
587
604
  }) | undefined;
588
605
  } | undefined;
589
606
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -599,7 +616,6 @@ declare const InteractiveGraph: {
599
616
  isArticle: NonNullable<boolean | undefined>;
600
617
  isMobile: NonNullable<boolean | undefined>;
601
618
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
602
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
603
619
  readOnly: NonNullable<boolean | undefined>;
604
620
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
605
621
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -609,7 +625,7 @@ declare const InteractiveGraph: {
609
625
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
610
626
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
611
627
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
612
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
628
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
613
629
  onChange: import("@khanacademy/perseus").ChangeHandler;
614
630
  trackInteraction: (extraData?: Empty | undefined) => void;
615
631
  isLastUsedWidget: boolean;
@@ -626,7 +642,6 @@ declare const InteractiveGraph: {
626
642
  problemNum: number | null | undefined;
627
643
  apiOptions: Readonly<Readonly<{
628
644
  isArticle?: boolean | undefined;
629
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
630
645
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
631
646
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
632
647
  showAlignmentOptions?: boolean | undefined;
@@ -672,8 +687,13 @@ declare const InteractiveGraph: {
672
687
  "unlimited-point"?: boolean | undefined;
673
688
  } & {
674
689
  "interactive-graph-locked-features-labels"?: boolean | undefined;
690
+ "locked-figures-aria"?: boolean | undefined;
675
691
  "locked-point-labels"?: boolean | undefined;
676
692
  "locked-line-labels"?: boolean | undefined;
693
+ "locked-vector-labels"?: boolean | undefined;
694
+ "locked-ellipse-labels"?: boolean | undefined;
695
+ "locked-polygon-labels"?: boolean | undefined;
696
+ "locked-function-labels"?: boolean | undefined;
677
697
  }) | undefined;
678
698
  } | undefined;
679
699
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -689,7 +709,6 @@ declare const InteractiveGraph: {
689
709
  isArticle: NonNullable<boolean | undefined>;
690
710
  isMobile: NonNullable<boolean | undefined>;
691
711
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
692
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
693
712
  readOnly: NonNullable<boolean | undefined>;
694
713
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
695
714
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -699,7 +718,7 @@ declare const InteractiveGraph: {
699
718
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
700
719
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
701
720
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
702
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
721
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
703
722
  onChange: import("@khanacademy/perseus").ChangeHandler;
704
723
  trackInteraction: (extraData?: Empty | undefined) => void;
705
724
  isLastUsedWidget: boolean;
@@ -715,7 +734,6 @@ declare const InteractiveGraph: {
715
734
  problemNum: number | null | undefined;
716
735
  apiOptions: Readonly<Readonly<{
717
736
  isArticle?: boolean | undefined;
718
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
719
737
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
720
738
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
721
739
  showAlignmentOptions?: boolean | undefined;
@@ -761,8 +779,13 @@ declare const InteractiveGraph: {
761
779
  "unlimited-point"?: boolean | undefined;
762
780
  } & {
763
781
  "interactive-graph-locked-features-labels"?: boolean | undefined;
782
+ "locked-figures-aria"?: boolean | undefined;
764
783
  "locked-point-labels"?: boolean | undefined;
765
784
  "locked-line-labels"?: boolean | undefined;
785
+ "locked-vector-labels"?: boolean | undefined;
786
+ "locked-ellipse-labels"?: boolean | undefined;
787
+ "locked-polygon-labels"?: boolean | undefined;
788
+ "locked-function-labels"?: boolean | undefined;
766
789
  }) | undefined;
767
790
  } | undefined;
768
791
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -778,7 +801,6 @@ declare const InteractiveGraph: {
778
801
  isArticle: NonNullable<boolean | undefined>;
779
802
  isMobile: NonNullable<boolean | undefined>;
780
803
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
781
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
782
804
  readOnly: NonNullable<boolean | undefined>;
783
805
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
784
806
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -788,7 +810,7 @@ declare const InteractiveGraph: {
788
810
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
789
811
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
790
812
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
791
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
813
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
792
814
  onChange: import("@khanacademy/perseus").ChangeHandler;
793
815
  trackInteraction: (extraData?: Empty | undefined) => void;
794
816
  isLastUsedWidget: boolean;
@@ -804,7 +826,6 @@ declare const InteractiveGraph: {
804
826
  problemNum: number | null | undefined;
805
827
  apiOptions: Readonly<Readonly<{
806
828
  isArticle?: boolean | undefined;
807
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
808
829
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
809
830
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
810
831
  showAlignmentOptions?: boolean | undefined;
@@ -850,8 +871,13 @@ declare const InteractiveGraph: {
850
871
  "unlimited-point"?: boolean | undefined;
851
872
  } & {
852
873
  "interactive-graph-locked-features-labels"?: boolean | undefined;
874
+ "locked-figures-aria"?: boolean | undefined;
853
875
  "locked-point-labels"?: boolean | undefined;
854
876
  "locked-line-labels"?: boolean | undefined;
877
+ "locked-vector-labels"?: boolean | undefined;
878
+ "locked-ellipse-labels"?: boolean | undefined;
879
+ "locked-polygon-labels"?: boolean | undefined;
880
+ "locked-function-labels"?: boolean | undefined;
855
881
  }) | undefined;
856
882
  } | undefined;
857
883
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -867,7 +893,6 @@ declare const InteractiveGraph: {
867
893
  isArticle: NonNullable<boolean | undefined>;
868
894
  isMobile: NonNullable<boolean | undefined>;
869
895
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
870
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
871
896
  readOnly: NonNullable<boolean | undefined>;
872
897
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
873
898
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -877,7 +902,7 @@ declare const InteractiveGraph: {
877
902
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
878
903
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
879
904
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
880
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
905
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
881
906
  onChange: import("@khanacademy/perseus").ChangeHandler;
882
907
  trackInteraction: (extraData?: Empty | undefined) => void;
883
908
  isLastUsedWidget: boolean;
@@ -891,7 +916,6 @@ declare const InteractiveGraph: {
891
916
  problemNum: number | null | undefined;
892
917
  apiOptions: Readonly<Readonly<{
893
918
  isArticle?: boolean | undefined;
894
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
895
919
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
896
920
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
897
921
  showAlignmentOptions?: boolean | undefined;
@@ -937,8 +961,13 @@ declare const InteractiveGraph: {
937
961
  "unlimited-point"?: boolean | undefined;
938
962
  } & {
939
963
  "interactive-graph-locked-features-labels"?: boolean | undefined;
964
+ "locked-figures-aria"?: boolean | undefined;
940
965
  "locked-point-labels"?: boolean | undefined;
941
966
  "locked-line-labels"?: boolean | undefined;
967
+ "locked-vector-labels"?: boolean | undefined;
968
+ "locked-ellipse-labels"?: boolean | undefined;
969
+ "locked-polygon-labels"?: boolean | undefined;
970
+ "locked-function-labels"?: boolean | undefined;
942
971
  }) | undefined;
943
972
  } | undefined;
944
973
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -954,7 +983,6 @@ declare const InteractiveGraph: {
954
983
  isArticle: NonNullable<boolean | undefined>;
955
984
  isMobile: NonNullable<boolean | undefined>;
956
985
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
957
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
958
986
  readOnly: NonNullable<boolean | undefined>;
959
987
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
960
988
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -964,7 +992,7 @@ declare const InteractiveGraph: {
964
992
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
965
993
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
966
994
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
967
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
995
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
968
996
  onChange: import("@khanacademy/perseus").ChangeHandler;
969
997
  trackInteraction: (extraData?: Empty | undefined) => void;
970
998
  isLastUsedWidget: boolean;
@@ -978,7 +1006,6 @@ declare const InteractiveGraph: {
978
1006
  problemNum: number | null | undefined;
979
1007
  apiOptions: Readonly<Readonly<{
980
1008
  isArticle?: boolean | undefined;
981
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
982
1009
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
983
1010
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
984
1011
  showAlignmentOptions?: boolean | undefined;
@@ -1024,8 +1051,13 @@ declare const InteractiveGraph: {
1024
1051
  "unlimited-point"?: boolean | undefined;
1025
1052
  } & {
1026
1053
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1054
+ "locked-figures-aria"?: boolean | undefined;
1027
1055
  "locked-point-labels"?: boolean | undefined;
1028
1056
  "locked-line-labels"?: boolean | undefined;
1057
+ "locked-vector-labels"?: boolean | undefined;
1058
+ "locked-ellipse-labels"?: boolean | undefined;
1059
+ "locked-polygon-labels"?: boolean | undefined;
1060
+ "locked-function-labels"?: boolean | undefined;
1029
1061
  }) | undefined;
1030
1062
  } | undefined;
1031
1063
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1041,7 +1073,6 @@ declare const InteractiveGraph: {
1041
1073
  isArticle: NonNullable<boolean | undefined>;
1042
1074
  isMobile: NonNullable<boolean | undefined>;
1043
1075
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1044
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1045
1076
  readOnly: NonNullable<boolean | undefined>;
1046
1077
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1047
1078
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1051,7 +1082,7 @@ declare const InteractiveGraph: {
1051
1082
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1052
1083
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1053
1084
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1054
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1085
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1055
1086
  onChange: import("@khanacademy/perseus").ChangeHandler;
1056
1087
  trackInteraction: (extraData?: Empty | undefined) => void;
1057
1088
  isLastUsedWidget: boolean;
@@ -1059,9 +1090,9 @@ declare const InteractiveGraph: {
1059
1090
  containerSizeClass: SizingUtils.SizeClass;
1060
1091
  }>, nextState: Readonly<any>, nextContext: any): void;
1061
1092
  }>;
1062
- mafsRef: React.RefObject<import("../../../../perseus/src/renderer").Widget>;
1063
- getUserInput: (() => any) | undefined;
1064
- simpleValidate(rubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric): import("@khanacademy/perseus").PerseusScore;
1093
+ mafsRef: React.RefObject<import("../../../../perseus/src/widgets/interactive-graphs/stateful-mafs-graph").StatefulMafsGraphType>;
1094
+ getUserInput(): PerseusGraphType;
1095
+ simpleValidate(rubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric): import("@khanacademy/perseus").PerseusScore;
1065
1096
  render(): React.JSX.Element;
1066
1097
  context: unknown;
1067
1098
  setState<K_1 extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
@@ -1073,7 +1104,6 @@ declare const InteractiveGraph: {
1073
1104
  problemNum: number | null | undefined;
1074
1105
  apiOptions: Readonly<Readonly<{
1075
1106
  isArticle?: boolean | undefined;
1076
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1077
1107
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1078
1108
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1079
1109
  showAlignmentOptions?: boolean | undefined;
@@ -1119,8 +1149,13 @@ declare const InteractiveGraph: {
1119
1149
  "unlimited-point"?: boolean | undefined;
1120
1150
  } & {
1121
1151
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1152
+ "locked-figures-aria"?: boolean | undefined;
1122
1153
  "locked-point-labels"?: boolean | undefined;
1123
1154
  "locked-line-labels"?: boolean | undefined;
1155
+ "locked-vector-labels"?: boolean | undefined;
1156
+ "locked-ellipse-labels"?: boolean | undefined;
1157
+ "locked-polygon-labels"?: boolean | undefined;
1158
+ "locked-function-labels"?: boolean | undefined;
1124
1159
  }) | undefined;
1125
1160
  } | undefined;
1126
1161
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1136,7 +1171,6 @@ declare const InteractiveGraph: {
1136
1171
  isArticle: NonNullable<boolean | undefined>;
1137
1172
  isMobile: NonNullable<boolean | undefined>;
1138
1173
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1139
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1140
1174
  readOnly: NonNullable<boolean | undefined>;
1141
1175
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1142
1176
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1146,7 +1180,7 @@ declare const InteractiveGraph: {
1146
1180
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1147
1181
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1148
1182
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1149
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1183
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1150
1184
  onChange: import("@khanacademy/perseus").ChangeHandler;
1151
1185
  trackInteraction: (extraData?: Empty | undefined) => void;
1152
1186
  isLastUsedWidget: boolean;
@@ -1165,7 +1199,6 @@ declare const InteractiveGraph: {
1165
1199
  problemNum: number | null | undefined;
1166
1200
  apiOptions: Readonly<Readonly<{
1167
1201
  isArticle?: boolean | undefined;
1168
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1169
1202
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1170
1203
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1171
1204
  showAlignmentOptions?: boolean | undefined;
@@ -1211,8 +1244,13 @@ declare const InteractiveGraph: {
1211
1244
  "unlimited-point"?: boolean | undefined;
1212
1245
  } & {
1213
1246
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1247
+ "locked-figures-aria"?: boolean | undefined;
1214
1248
  "locked-point-labels"?: boolean | undefined;
1215
1249
  "locked-line-labels"?: boolean | undefined;
1250
+ "locked-vector-labels"?: boolean | undefined;
1251
+ "locked-ellipse-labels"?: boolean | undefined;
1252
+ "locked-polygon-labels"?: boolean | undefined;
1253
+ "locked-function-labels"?: boolean | undefined;
1216
1254
  }) | undefined;
1217
1255
  } | undefined;
1218
1256
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1228,7 +1266,6 @@ declare const InteractiveGraph: {
1228
1266
  isArticle: NonNullable<boolean | undefined>;
1229
1267
  isMobile: NonNullable<boolean | undefined>;
1230
1268
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1231
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1232
1269
  readOnly: NonNullable<boolean | undefined>;
1233
1270
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1234
1271
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1238,7 +1275,7 @@ declare const InteractiveGraph: {
1238
1275
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1239
1276
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1240
1277
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1241
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1278
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1242
1279
  onChange: import("@khanacademy/perseus").ChangeHandler;
1243
1280
  trackInteraction: (extraData?: Empty | undefined) => void;
1244
1281
  isLastUsedWidget: boolean;
@@ -1254,7 +1291,6 @@ declare const InteractiveGraph: {
1254
1291
  problemNum: number | null | undefined;
1255
1292
  apiOptions: Readonly<Readonly<{
1256
1293
  isArticle?: boolean | undefined;
1257
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1258
1294
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1259
1295
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1260
1296
  showAlignmentOptions?: boolean | undefined;
@@ -1300,8 +1336,13 @@ declare const InteractiveGraph: {
1300
1336
  "unlimited-point"?: boolean | undefined;
1301
1337
  } & {
1302
1338
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1339
+ "locked-figures-aria"?: boolean | undefined;
1303
1340
  "locked-point-labels"?: boolean | undefined;
1304
1341
  "locked-line-labels"?: boolean | undefined;
1342
+ "locked-vector-labels"?: boolean | undefined;
1343
+ "locked-ellipse-labels"?: boolean | undefined;
1344
+ "locked-polygon-labels"?: boolean | undefined;
1345
+ "locked-function-labels"?: boolean | undefined;
1305
1346
  }) | undefined;
1306
1347
  } | undefined;
1307
1348
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1317,7 +1358,6 @@ declare const InteractiveGraph: {
1317
1358
  isArticle: NonNullable<boolean | undefined>;
1318
1359
  isMobile: NonNullable<boolean | undefined>;
1319
1360
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1320
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1321
1361
  readOnly: NonNullable<boolean | undefined>;
1322
1362
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1323
1363
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1327,7 +1367,7 @@ declare const InteractiveGraph: {
1327
1367
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1328
1368
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1329
1369
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1330
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1370
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1331
1371
  onChange: import("@khanacademy/perseus").ChangeHandler;
1332
1372
  trackInteraction: (extraData?: Empty | undefined) => void;
1333
1373
  isLastUsedWidget: boolean;
@@ -1341,7 +1381,6 @@ declare const InteractiveGraph: {
1341
1381
  problemNum: number | null | undefined;
1342
1382
  apiOptions: Readonly<Readonly<{
1343
1383
  isArticle?: boolean | undefined;
1344
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1345
1384
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1346
1385
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1347
1386
  showAlignmentOptions?: boolean | undefined;
@@ -1387,8 +1426,13 @@ declare const InteractiveGraph: {
1387
1426
  "unlimited-point"?: boolean | undefined;
1388
1427
  } & {
1389
1428
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1429
+ "locked-figures-aria"?: boolean | undefined;
1390
1430
  "locked-point-labels"?: boolean | undefined;
1391
1431
  "locked-line-labels"?: boolean | undefined;
1432
+ "locked-vector-labels"?: boolean | undefined;
1433
+ "locked-ellipse-labels"?: boolean | undefined;
1434
+ "locked-polygon-labels"?: boolean | undefined;
1435
+ "locked-function-labels"?: boolean | undefined;
1392
1436
  }) | undefined;
1393
1437
  } | undefined;
1394
1438
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1404,7 +1448,6 @@ declare const InteractiveGraph: {
1404
1448
  isArticle: NonNullable<boolean | undefined>;
1405
1449
  isMobile: NonNullable<boolean | undefined>;
1406
1450
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1407
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1408
1451
  readOnly: NonNullable<boolean | undefined>;
1409
1452
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1410
1453
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1414,7 +1457,7 @@ declare const InteractiveGraph: {
1414
1457
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1415
1458
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1416
1459
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1417
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1460
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1418
1461
  onChange: import("@khanacademy/perseus").ChangeHandler;
1419
1462
  trackInteraction: (extraData?: Empty | undefined) => void;
1420
1463
  isLastUsedWidget: boolean;
@@ -1430,7 +1473,6 @@ declare const InteractiveGraph: {
1430
1473
  problemNum: number | null | undefined;
1431
1474
  apiOptions: Readonly<Readonly<{
1432
1475
  isArticle?: boolean | undefined;
1433
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1434
1476
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1435
1477
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1436
1478
  showAlignmentOptions?: boolean | undefined;
@@ -1476,8 +1518,13 @@ declare const InteractiveGraph: {
1476
1518
  "unlimited-point"?: boolean | undefined;
1477
1519
  } & {
1478
1520
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1521
+ "locked-figures-aria"?: boolean | undefined;
1479
1522
  "locked-point-labels"?: boolean | undefined;
1480
1523
  "locked-line-labels"?: boolean | undefined;
1524
+ "locked-vector-labels"?: boolean | undefined;
1525
+ "locked-ellipse-labels"?: boolean | undefined;
1526
+ "locked-polygon-labels"?: boolean | undefined;
1527
+ "locked-function-labels"?: boolean | undefined;
1481
1528
  }) | undefined;
1482
1529
  } | undefined;
1483
1530
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1493,7 +1540,6 @@ declare const InteractiveGraph: {
1493
1540
  isArticle: NonNullable<boolean | undefined>;
1494
1541
  isMobile: NonNullable<boolean | undefined>;
1495
1542
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1496
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1497
1543
  readOnly: NonNullable<boolean | undefined>;
1498
1544
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1499
1545
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1503,7 +1549,7 @@ declare const InteractiveGraph: {
1503
1549
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1504
1550
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1505
1551
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1506
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1552
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1507
1553
  onChange: import("@khanacademy/perseus").ChangeHandler;
1508
1554
  trackInteraction: (extraData?: Empty | undefined) => void;
1509
1555
  isLastUsedWidget: boolean;
@@ -1517,7 +1563,6 @@ declare const InteractiveGraph: {
1517
1563
  problemNum: number | null | undefined;
1518
1564
  apiOptions: Readonly<Readonly<{
1519
1565
  isArticle?: boolean | undefined;
1520
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1521
1566
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1522
1567
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1523
1568
  showAlignmentOptions?: boolean | undefined;
@@ -1563,8 +1608,13 @@ declare const InteractiveGraph: {
1563
1608
  "unlimited-point"?: boolean | undefined;
1564
1609
  } & {
1565
1610
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1611
+ "locked-figures-aria"?: boolean | undefined;
1566
1612
  "locked-point-labels"?: boolean | undefined;
1567
1613
  "locked-line-labels"?: boolean | undefined;
1614
+ "locked-vector-labels"?: boolean | undefined;
1615
+ "locked-ellipse-labels"?: boolean | undefined;
1616
+ "locked-polygon-labels"?: boolean | undefined;
1617
+ "locked-function-labels"?: boolean | undefined;
1568
1618
  }) | undefined;
1569
1619
  } | undefined;
1570
1620
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1580,7 +1630,6 @@ declare const InteractiveGraph: {
1580
1630
  isArticle: NonNullable<boolean | undefined>;
1581
1631
  isMobile: NonNullable<boolean | undefined>;
1582
1632
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1583
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1584
1633
  readOnly: NonNullable<boolean | undefined>;
1585
1634
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1586
1635
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1590,7 +1639,7 @@ declare const InteractiveGraph: {
1590
1639
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1591
1640
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1592
1641
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1593
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1642
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1594
1643
  onChange: import("@khanacademy/perseus").ChangeHandler;
1595
1644
  trackInteraction: (extraData?: Empty | undefined) => void;
1596
1645
  isLastUsedWidget: boolean;
@@ -1604,7 +1653,6 @@ declare const InteractiveGraph: {
1604
1653
  problemNum: number | null | undefined;
1605
1654
  apiOptions: Readonly<Readonly<{
1606
1655
  isArticle?: boolean | undefined;
1607
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1608
1656
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1609
1657
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1610
1658
  showAlignmentOptions?: boolean | undefined;
@@ -1650,8 +1698,13 @@ declare const InteractiveGraph: {
1650
1698
  "unlimited-point"?: boolean | undefined;
1651
1699
  } & {
1652
1700
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1701
+ "locked-figures-aria"?: boolean | undefined;
1653
1702
  "locked-point-labels"?: boolean | undefined;
1654
1703
  "locked-line-labels"?: boolean | undefined;
1704
+ "locked-vector-labels"?: boolean | undefined;
1705
+ "locked-ellipse-labels"?: boolean | undefined;
1706
+ "locked-polygon-labels"?: boolean | undefined;
1707
+ "locked-function-labels"?: boolean | undefined;
1655
1708
  }) | undefined;
1656
1709
  } | undefined;
1657
1710
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1667,7 +1720,6 @@ declare const InteractiveGraph: {
1667
1720
  isArticle: NonNullable<boolean | undefined>;
1668
1721
  isMobile: NonNullable<boolean | undefined>;
1669
1722
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1670
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1671
1723
  readOnly: NonNullable<boolean | undefined>;
1672
1724
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1673
1725
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1677,7 +1729,7 @@ declare const InteractiveGraph: {
1677
1729
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1678
1730
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1679
1731
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1680
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1732
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1681
1733
  onChange: import("@khanacademy/perseus").ChangeHandler;
1682
1734
  trackInteraction: (extraData?: Empty | undefined) => void;
1683
1735
  isLastUsedWidget: boolean;
@@ -1691,7 +1743,6 @@ declare const InteractiveGraph: {
1691
1743
  problemNum: number | null | undefined;
1692
1744
  apiOptions: Readonly<Readonly<{
1693
1745
  isArticle?: boolean | undefined;
1694
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1695
1746
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1696
1747
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1697
1748
  showAlignmentOptions?: boolean | undefined;
@@ -1737,8 +1788,13 @@ declare const InteractiveGraph: {
1737
1788
  "unlimited-point"?: boolean | undefined;
1738
1789
  } & {
1739
1790
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1791
+ "locked-figures-aria"?: boolean | undefined;
1740
1792
  "locked-point-labels"?: boolean | undefined;
1741
1793
  "locked-line-labels"?: boolean | undefined;
1794
+ "locked-vector-labels"?: boolean | undefined;
1795
+ "locked-ellipse-labels"?: boolean | undefined;
1796
+ "locked-polygon-labels"?: boolean | undefined;
1797
+ "locked-function-labels"?: boolean | undefined;
1742
1798
  }) | undefined;
1743
1799
  } | undefined;
1744
1800
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1754,7 +1810,6 @@ declare const InteractiveGraph: {
1754
1810
  isArticle: NonNullable<boolean | undefined>;
1755
1811
  isMobile: NonNullable<boolean | undefined>;
1756
1812
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1757
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1758
1813
  readOnly: NonNullable<boolean | undefined>;
1759
1814
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1760
1815
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1764,7 +1819,7 @@ declare const InteractiveGraph: {
1764
1819
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1765
1820
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1766
1821
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1767
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1822
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1768
1823
  onChange: import("@khanacademy/perseus").ChangeHandler;
1769
1824
  trackInteraction: (extraData?: Empty | undefined) => void;
1770
1825
  isLastUsedWidget: boolean;
@@ -1779,7 +1834,6 @@ declare const InteractiveGraph: {
1779
1834
  problemNum: number | null | undefined;
1780
1835
  apiOptions: Readonly<Readonly<{
1781
1836
  isArticle?: boolean | undefined;
1782
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1783
1837
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1784
1838
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1785
1839
  showAlignmentOptions?: boolean | undefined;
@@ -1825,8 +1879,13 @@ declare const InteractiveGraph: {
1825
1879
  "unlimited-point"?: boolean | undefined;
1826
1880
  } & {
1827
1881
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1882
+ "locked-figures-aria"?: boolean | undefined;
1828
1883
  "locked-point-labels"?: boolean | undefined;
1829
1884
  "locked-line-labels"?: boolean | undefined;
1885
+ "locked-vector-labels"?: boolean | undefined;
1886
+ "locked-ellipse-labels"?: boolean | undefined;
1887
+ "locked-polygon-labels"?: boolean | undefined;
1888
+ "locked-function-labels"?: boolean | undefined;
1830
1889
  }) | undefined;
1831
1890
  } | undefined;
1832
1891
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1842,7 +1901,6 @@ declare const InteractiveGraph: {
1842
1901
  isArticle: NonNullable<boolean | undefined>;
1843
1902
  isMobile: NonNullable<boolean | undefined>;
1844
1903
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1845
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1846
1904
  readOnly: NonNullable<boolean | undefined>;
1847
1905
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1848
1906
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1852,7 +1910,7 @@ declare const InteractiveGraph: {
1852
1910
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1853
1911
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1854
1912
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1855
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
1913
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1856
1914
  onChange: import("@khanacademy/perseus").ChangeHandler;
1857
1915
  trackInteraction: (extraData?: Empty | undefined) => void;
1858
1916
  isLastUsedWidget: boolean;
@@ -1889,7 +1947,6 @@ declare const InteractiveGraph: {
1889
1947
  problemNum: number | null | undefined;
1890
1948
  apiOptions: Readonly<Readonly<{
1891
1949
  isArticle?: boolean | undefined;
1892
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1893
1950
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1894
1951
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1895
1952
  showAlignmentOptions?: boolean | undefined;
@@ -1935,8 +1992,13 @@ declare const InteractiveGraph: {
1935
1992
  "unlimited-point"?: boolean | undefined;
1936
1993
  } & {
1937
1994
  "interactive-graph-locked-features-labels"?: boolean | undefined;
1995
+ "locked-figures-aria"?: boolean | undefined;
1938
1996
  "locked-point-labels"?: boolean | undefined;
1939
1997
  "locked-line-labels"?: boolean | undefined;
1998
+ "locked-vector-labels"?: boolean | undefined;
1999
+ "locked-ellipse-labels"?: boolean | undefined;
2000
+ "locked-polygon-labels"?: boolean | undefined;
2001
+ "locked-function-labels"?: boolean | undefined;
1940
2002
  }) | undefined;
1941
2003
  } | undefined;
1942
2004
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -1952,7 +2014,6 @@ declare const InteractiveGraph: {
1952
2014
  isArticle: NonNullable<boolean | undefined>;
1953
2015
  isMobile: NonNullable<boolean | undefined>;
1954
2016
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
1955
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
1956
2017
  readOnly: NonNullable<boolean | undefined>;
1957
2018
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
1958
2019
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -1962,7 +2023,7 @@ declare const InteractiveGraph: {
1962
2023
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1963
2024
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
1964
2025
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
1965
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2026
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
1966
2027
  onChange: import("@khanacademy/perseus").ChangeHandler;
1967
2028
  trackInteraction: (extraData?: Empty | undefined) => void;
1968
2029
  isLastUsedWidget: boolean;
@@ -1976,7 +2037,6 @@ declare const InteractiveGraph: {
1976
2037
  problemNum: number | null | undefined;
1977
2038
  apiOptions: Readonly<Readonly<{
1978
2039
  isArticle?: boolean | undefined;
1979
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
1980
2040
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
1981
2041
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
1982
2042
  showAlignmentOptions?: boolean | undefined;
@@ -2022,8 +2082,13 @@ declare const InteractiveGraph: {
2022
2082
  "unlimited-point"?: boolean | undefined;
2023
2083
  } & {
2024
2084
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2085
+ "locked-figures-aria"?: boolean | undefined;
2025
2086
  "locked-point-labels"?: boolean | undefined;
2026
2087
  "locked-line-labels"?: boolean | undefined;
2088
+ "locked-vector-labels"?: boolean | undefined;
2089
+ "locked-ellipse-labels"?: boolean | undefined;
2090
+ "locked-polygon-labels"?: boolean | undefined;
2091
+ "locked-function-labels"?: boolean | undefined;
2027
2092
  }) | undefined;
2028
2093
  } | undefined;
2029
2094
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2039,7 +2104,6 @@ declare const InteractiveGraph: {
2039
2104
  isArticle: NonNullable<boolean | undefined>;
2040
2105
  isMobile: NonNullable<boolean | undefined>;
2041
2106
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2042
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2043
2107
  readOnly: NonNullable<boolean | undefined>;
2044
2108
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2045
2109
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2049,7 +2113,7 @@ declare const InteractiveGraph: {
2049
2113
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2050
2114
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2051
2115
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2052
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2116
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2053
2117
  onChange: import("@khanacademy/perseus").ChangeHandler;
2054
2118
  trackInteraction: (extraData?: Empty | undefined) => void;
2055
2119
  isLastUsedWidget: boolean;
@@ -2063,7 +2127,6 @@ declare const InteractiveGraph: {
2063
2127
  problemNum: number | null | undefined;
2064
2128
  apiOptions: Readonly<Readonly<{
2065
2129
  isArticle?: boolean | undefined;
2066
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2067
2130
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2068
2131
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2069
2132
  showAlignmentOptions?: boolean | undefined;
@@ -2109,8 +2172,13 @@ declare const InteractiveGraph: {
2109
2172
  "unlimited-point"?: boolean | undefined;
2110
2173
  } & {
2111
2174
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2175
+ "locked-figures-aria"?: boolean | undefined;
2112
2176
  "locked-point-labels"?: boolean | undefined;
2113
2177
  "locked-line-labels"?: boolean | undefined;
2178
+ "locked-vector-labels"?: boolean | undefined;
2179
+ "locked-ellipse-labels"?: boolean | undefined;
2180
+ "locked-polygon-labels"?: boolean | undefined;
2181
+ "locked-function-labels"?: boolean | undefined;
2114
2182
  }) | undefined;
2115
2183
  } | undefined;
2116
2184
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2126,7 +2194,6 @@ declare const InteractiveGraph: {
2126
2194
  isArticle: NonNullable<boolean | undefined>;
2127
2195
  isMobile: NonNullable<boolean | undefined>;
2128
2196
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2129
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2130
2197
  readOnly: NonNullable<boolean | undefined>;
2131
2198
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2132
2199
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2136,7 +2203,7 @@ declare const InteractiveGraph: {
2136
2203
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2137
2204
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2138
2205
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2139
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2206
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2140
2207
  onChange: import("@khanacademy/perseus").ChangeHandler;
2141
2208
  trackInteraction: (extraData?: Empty | undefined) => void;
2142
2209
  isLastUsedWidget: boolean;
@@ -2157,7 +2224,6 @@ declare const InteractiveGraph: {
2157
2224
  problemNum: number | null | undefined;
2158
2225
  apiOptions: Readonly<Readonly<{
2159
2226
  isArticle?: boolean | undefined;
2160
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2161
2227
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2162
2228
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2163
2229
  showAlignmentOptions?: boolean | undefined;
@@ -2203,8 +2269,13 @@ declare const InteractiveGraph: {
2203
2269
  "unlimited-point"?: boolean | undefined;
2204
2270
  } & {
2205
2271
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2272
+ "locked-figures-aria"?: boolean | undefined;
2206
2273
  "locked-point-labels"?: boolean | undefined;
2207
2274
  "locked-line-labels"?: boolean | undefined;
2275
+ "locked-vector-labels"?: boolean | undefined;
2276
+ "locked-ellipse-labels"?: boolean | undefined;
2277
+ "locked-polygon-labels"?: boolean | undefined;
2278
+ "locked-function-labels"?: boolean | undefined;
2208
2279
  }) | undefined;
2209
2280
  } | undefined;
2210
2281
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2220,7 +2291,6 @@ declare const InteractiveGraph: {
2220
2291
  isArticle: NonNullable<boolean | undefined>;
2221
2292
  isMobile: NonNullable<boolean | undefined>;
2222
2293
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2223
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2224
2294
  readOnly: NonNullable<boolean | undefined>;
2225
2295
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2226
2296
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2230,27 +2300,21 @@ declare const InteractiveGraph: {
2230
2300
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2231
2301
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2232
2302
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2233
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2303
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2234
2304
  onChange: import("@khanacademy/perseus").ChangeHandler;
2235
2305
  trackInteraction: (extraData?: Empty | undefined) => void;
2236
2306
  isLastUsedWidget: boolean;
2237
2307
  linterContext: import("@khanacademy/perseus-linter").LinterContextProps;
2238
2308
  containerSizeClass: SizingUtils.SizeClass;
2239
- }) | null | undefined) => boolean; /**
2240
- * The range of the graph in the x and y directions.
2241
- */
2309
+ }) | null | undefined) => boolean;
2242
2310
  areAngleGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeAngle, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeAngle): boolean;
2243
- /**
2244
- * How far apart the tick marks on the axes are in the x and y
2245
- * directions.
2246
- */
2247
2311
  arePointGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePoint, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePoint): boolean;
2248
2312
  arePolygonGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePolygon, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypePolygon): boolean;
2249
- areSegmentGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment): boolean;
2313
+ areSegmentGraphsEqual(prevGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment, currentGraph: import("../../../../perseus/src/perseus-types").PerseusGraphTypeSegment): boolean; /**
2314
+ * The background image to display in the graph area and its properties.
2315
+ */
2250
2316
  _lineStroke: () => {
2251
- "stroke-width"?: number | undefined; /**
2252
- * The size of the graph in pixels.
2253
- */
2317
+ "stroke-width"?: number | undefined;
2254
2318
  };
2255
2319
  addLine: (arg1: string) => void;
2256
2320
  removeLine: () => void;
@@ -2261,17 +2325,21 @@ declare const InteractiveGraph: {
2261
2325
  addQuadraticControls: () => void;
2262
2326
  updateQuadratic: () => void;
2263
2327
  removeQuadraticControls: () => void;
2264
- addSinusoidControls: () => void; /**
2265
- * The type of markings to display on the graph.
2266
- * - graph: shows the axes and the grid lines
2267
- * - grid: shows only the grid lines
2268
- * - none: shows no markings
2269
- */
2328
+ addSinusoidControls: () => void;
2270
2329
  updateSinusoid: () => void;
2271
2330
  removeSinusoidControls: () => void;
2272
2331
  addCircleControls: () => void;
2273
2332
  removeCircleControls: () => void;
2274
2333
  addLinearSystemControls: () => void;
2334
+ /**
2335
+ * The current correct answer for the graph. Updated by this component
2336
+ * when the graph is changed.
2337
+ *
2338
+ * Note that the "Correct answer:" textbox is not an interactive
2339
+ * element. Instead, it is a representation of the correct answer based
2340
+ * on the state of the interactive graph previewed at the bottom of the
2341
+ * editor page.
2342
+ */
2275
2343
  removeLinearSystemControls: () => void;
2276
2344
  isCoordInTrash: (arg1: import("@khanacademy/perseus").Coord) => boolean;
2277
2345
  createPointForPointsType: (arg1: import("@khanacademy/perseus").Coord, arg2: number) => any;
@@ -2293,7 +2361,7 @@ declare const InteractiveGraph: {
2293
2361
  removeAngleControls: () => void;
2294
2362
  toggleShowSides: () => void;
2295
2363
  getUserInput(): PerseusGraphType;
2296
- simpleValidate(rubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric): import("@khanacademy/perseus").PerseusScore;
2364
+ simpleValidate(rubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric): import("@khanacademy/perseus").PerseusScore;
2297
2365
  focus: () => void;
2298
2366
  render(): React.ReactNode;
2299
2367
  setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
@@ -2305,7 +2373,6 @@ declare const InteractiveGraph: {
2305
2373
  problemNum: number | null | undefined;
2306
2374
  apiOptions: Readonly<Readonly<{
2307
2375
  isArticle?: boolean | undefined;
2308
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2309
2376
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2310
2377
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2311
2378
  showAlignmentOptions?: boolean | undefined;
@@ -2351,8 +2418,13 @@ declare const InteractiveGraph: {
2351
2418
  "unlimited-point"?: boolean | undefined;
2352
2419
  } & {
2353
2420
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2421
+ "locked-figures-aria"?: boolean | undefined;
2354
2422
  "locked-point-labels"?: boolean | undefined;
2355
2423
  "locked-line-labels"?: boolean | undefined;
2424
+ "locked-vector-labels"?: boolean | undefined;
2425
+ "locked-ellipse-labels"?: boolean | undefined;
2426
+ "locked-polygon-labels"?: boolean | undefined;
2427
+ "locked-function-labels"?: boolean | undefined;
2356
2428
  }) | undefined;
2357
2429
  } | undefined;
2358
2430
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2368,7 +2440,6 @@ declare const InteractiveGraph: {
2368
2440
  isArticle: NonNullable<boolean | undefined>;
2369
2441
  isMobile: NonNullable<boolean | undefined>;
2370
2442
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2371
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2372
2443
  readOnly: NonNullable<boolean | undefined>;
2373
2444
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2374
2445
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2378,7 +2449,7 @@ declare const InteractiveGraph: {
2378
2449
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2379
2450
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2380
2451
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2381
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2452
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2382
2453
  onChange: import("@khanacademy/perseus").ChangeHandler;
2383
2454
  trackInteraction: (extraData?: Empty | undefined) => void;
2384
2455
  isLastUsedWidget: boolean;
@@ -2395,7 +2466,6 @@ declare const InteractiveGraph: {
2395
2466
  problemNum: number | null | undefined;
2396
2467
  apiOptions: Readonly<Readonly<{
2397
2468
  isArticle?: boolean | undefined;
2398
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2399
2469
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2400
2470
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2401
2471
  showAlignmentOptions?: boolean | undefined;
@@ -2441,8 +2511,13 @@ declare const InteractiveGraph: {
2441
2511
  "unlimited-point"?: boolean | undefined;
2442
2512
  } & {
2443
2513
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2514
+ "locked-figures-aria"?: boolean | undefined;
2444
2515
  "locked-point-labels"?: boolean | undefined;
2445
2516
  "locked-line-labels"?: boolean | undefined;
2517
+ "locked-vector-labels"?: boolean | undefined;
2518
+ "locked-ellipse-labels"?: boolean | undefined;
2519
+ "locked-polygon-labels"?: boolean | undefined;
2520
+ "locked-function-labels"?: boolean | undefined;
2446
2521
  }) | undefined;
2447
2522
  } | undefined;
2448
2523
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2458,7 +2533,6 @@ declare const InteractiveGraph: {
2458
2533
  isArticle: NonNullable<boolean | undefined>;
2459
2534
  isMobile: NonNullable<boolean | undefined>;
2460
2535
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2461
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2462
2536
  readOnly: NonNullable<boolean | undefined>;
2463
2537
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2464
2538
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2468,7 +2542,7 @@ declare const InteractiveGraph: {
2468
2542
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2469
2543
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2470
2544
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2471
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2545
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2472
2546
  onChange: import("@khanacademy/perseus").ChangeHandler;
2473
2547
  trackInteraction: (extraData?: Empty | undefined) => void;
2474
2548
  isLastUsedWidget: boolean;
@@ -2484,7 +2558,6 @@ declare const InteractiveGraph: {
2484
2558
  problemNum: number | null | undefined;
2485
2559
  apiOptions: Readonly<Readonly<{
2486
2560
  isArticle?: boolean | undefined;
2487
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2488
2561
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2489
2562
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2490
2563
  showAlignmentOptions?: boolean | undefined;
@@ -2530,8 +2603,13 @@ declare const InteractiveGraph: {
2530
2603
  "unlimited-point"?: boolean | undefined;
2531
2604
  } & {
2532
2605
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2606
+ "locked-figures-aria"?: boolean | undefined;
2533
2607
  "locked-point-labels"?: boolean | undefined;
2534
2608
  "locked-line-labels"?: boolean | undefined;
2609
+ "locked-vector-labels"?: boolean | undefined;
2610
+ "locked-ellipse-labels"?: boolean | undefined;
2611
+ "locked-polygon-labels"?: boolean | undefined;
2612
+ "locked-function-labels"?: boolean | undefined;
2535
2613
  }) | undefined;
2536
2614
  } | undefined;
2537
2615
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2547,7 +2625,6 @@ declare const InteractiveGraph: {
2547
2625
  isArticle: NonNullable<boolean | undefined>;
2548
2626
  isMobile: NonNullable<boolean | undefined>;
2549
2627
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2550
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2551
2628
  readOnly: NonNullable<boolean | undefined>;
2552
2629
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2553
2630
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2557,7 +2634,7 @@ declare const InteractiveGraph: {
2557
2634
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2558
2635
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2559
2636
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2560
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2637
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2561
2638
  onChange: import("@khanacademy/perseus").ChangeHandler;
2562
2639
  trackInteraction: (extraData?: Empty | undefined) => void;
2563
2640
  isLastUsedWidget: boolean;
@@ -2573,7 +2650,6 @@ declare const InteractiveGraph: {
2573
2650
  problemNum: number | null | undefined;
2574
2651
  apiOptions: Readonly<Readonly<{
2575
2652
  isArticle?: boolean | undefined;
2576
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2577
2653
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2578
2654
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2579
2655
  showAlignmentOptions?: boolean | undefined;
@@ -2619,8 +2695,13 @@ declare const InteractiveGraph: {
2619
2695
  "unlimited-point"?: boolean | undefined;
2620
2696
  } & {
2621
2697
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2698
+ "locked-figures-aria"?: boolean | undefined;
2622
2699
  "locked-point-labels"?: boolean | undefined;
2623
2700
  "locked-line-labels"?: boolean | undefined;
2701
+ "locked-vector-labels"?: boolean | undefined;
2702
+ "locked-ellipse-labels"?: boolean | undefined;
2703
+ "locked-polygon-labels"?: boolean | undefined;
2704
+ "locked-function-labels"?: boolean | undefined;
2624
2705
  }) | undefined;
2625
2706
  } | undefined;
2626
2707
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2636,7 +2717,6 @@ declare const InteractiveGraph: {
2636
2717
  isArticle: NonNullable<boolean | undefined>;
2637
2718
  isMobile: NonNullable<boolean | undefined>;
2638
2719
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2639
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2640
2720
  readOnly: NonNullable<boolean | undefined>;
2641
2721
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2642
2722
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2646,7 +2726,7 @@ declare const InteractiveGraph: {
2646
2726
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2647
2727
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2648
2728
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2649
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2729
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2650
2730
  onChange: import("@khanacademy/perseus").ChangeHandler;
2651
2731
  trackInteraction: (extraData?: Empty | undefined) => void;
2652
2732
  isLastUsedWidget: boolean;
@@ -2660,7 +2740,6 @@ declare const InteractiveGraph: {
2660
2740
  problemNum: number | null | undefined;
2661
2741
  apiOptions: Readonly<Readonly<{
2662
2742
  isArticle?: boolean | undefined;
2663
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2664
2743
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2665
2744
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2666
2745
  showAlignmentOptions?: boolean | undefined;
@@ -2706,8 +2785,13 @@ declare const InteractiveGraph: {
2706
2785
  "unlimited-point"?: boolean | undefined;
2707
2786
  } & {
2708
2787
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2788
+ "locked-figures-aria"?: boolean | undefined;
2709
2789
  "locked-point-labels"?: boolean | undefined;
2710
2790
  "locked-line-labels"?: boolean | undefined;
2791
+ "locked-vector-labels"?: boolean | undefined;
2792
+ "locked-ellipse-labels"?: boolean | undefined;
2793
+ "locked-polygon-labels"?: boolean | undefined;
2794
+ "locked-function-labels"?: boolean | undefined;
2711
2795
  }) | undefined;
2712
2796
  } | undefined;
2713
2797
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2723,7 +2807,6 @@ declare const InteractiveGraph: {
2723
2807
  isArticle: NonNullable<boolean | undefined>;
2724
2808
  isMobile: NonNullable<boolean | undefined>;
2725
2809
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2726
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2727
2810
  readOnly: NonNullable<boolean | undefined>;
2728
2811
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2729
2812
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2733,7 +2816,7 @@ declare const InteractiveGraph: {
2733
2816
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2734
2817
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2735
2818
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2736
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2819
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2737
2820
  onChange: import("@khanacademy/perseus").ChangeHandler;
2738
2821
  trackInteraction: (extraData?: Empty | undefined) => void;
2739
2822
  isLastUsedWidget: boolean;
@@ -2747,7 +2830,6 @@ declare const InteractiveGraph: {
2747
2830
  problemNum: number | null | undefined;
2748
2831
  apiOptions: Readonly<Readonly<{
2749
2832
  isArticle?: boolean | undefined;
2750
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2751
2833
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2752
2834
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2753
2835
  showAlignmentOptions?: boolean | undefined;
@@ -2793,8 +2875,13 @@ declare const InteractiveGraph: {
2793
2875
  "unlimited-point"?: boolean | undefined;
2794
2876
  } & {
2795
2877
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2878
+ "locked-figures-aria"?: boolean | undefined;
2796
2879
  "locked-point-labels"?: boolean | undefined;
2797
2880
  "locked-line-labels"?: boolean | undefined;
2881
+ "locked-vector-labels"?: boolean | undefined;
2882
+ "locked-ellipse-labels"?: boolean | undefined;
2883
+ "locked-polygon-labels"?: boolean | undefined;
2884
+ "locked-function-labels"?: boolean | undefined;
2798
2885
  }) | undefined;
2799
2886
  } | undefined;
2800
2887
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2810,7 +2897,6 @@ declare const InteractiveGraph: {
2810
2897
  isArticle: NonNullable<boolean | undefined>;
2811
2898
  isMobile: NonNullable<boolean | undefined>;
2812
2899
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2813
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2814
2900
  readOnly: NonNullable<boolean | undefined>;
2815
2901
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2816
2902
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2820,7 +2906,7 @@ declare const InteractiveGraph: {
2820
2906
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2821
2907
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2822
2908
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2823
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
2909
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2824
2910
  onChange: import("@khanacademy/perseus").ChangeHandler;
2825
2911
  trackInteraction: (extraData?: Empty | undefined) => void;
2826
2912
  isLastUsedWidget: boolean;
@@ -2828,9 +2914,9 @@ declare const InteractiveGraph: {
2828
2914
  containerSizeClass: SizingUtils.SizeClass;
2829
2915
  }>, nextState: Readonly<any>, nextContext: any): void;
2830
2916
  }>;
2831
- mafsRef: React.RefObject<import("../../../../perseus/src/renderer").Widget>;
2832
- getUserInput: (() => any) | undefined;
2833
- simpleValidate(rubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric): import("@khanacademy/perseus").PerseusScore;
2917
+ mafsRef: React.RefObject<import("../../../../perseus/src/widgets/interactive-graphs/stateful-mafs-graph").StatefulMafsGraphType>;
2918
+ getUserInput(): PerseusGraphType;
2919
+ simpleValidate(rubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric): import("@khanacademy/perseus").PerseusScore;
2834
2920
  render(): React.JSX.Element;
2835
2921
  context: unknown;
2836
2922
  setState<K_1 extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
@@ -2842,7 +2928,6 @@ declare const InteractiveGraph: {
2842
2928
  problemNum: number | null | undefined;
2843
2929
  apiOptions: Readonly<Readonly<{
2844
2930
  isArticle?: boolean | undefined;
2845
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2846
2931
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2847
2932
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2848
2933
  showAlignmentOptions?: boolean | undefined;
@@ -2888,8 +2973,13 @@ declare const InteractiveGraph: {
2888
2973
  "unlimited-point"?: boolean | undefined;
2889
2974
  } & {
2890
2975
  "interactive-graph-locked-features-labels"?: boolean | undefined;
2976
+ "locked-figures-aria"?: boolean | undefined;
2891
2977
  "locked-point-labels"?: boolean | undefined;
2892
2978
  "locked-line-labels"?: boolean | undefined;
2979
+ "locked-vector-labels"?: boolean | undefined;
2980
+ "locked-ellipse-labels"?: boolean | undefined;
2981
+ "locked-polygon-labels"?: boolean | undefined;
2982
+ "locked-function-labels"?: boolean | undefined;
2893
2983
  }) | undefined;
2894
2984
  } | undefined;
2895
2985
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2905,7 +2995,6 @@ declare const InteractiveGraph: {
2905
2995
  isArticle: NonNullable<boolean | undefined>;
2906
2996
  isMobile: NonNullable<boolean | undefined>;
2907
2997
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
2908
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
2909
2998
  readOnly: NonNullable<boolean | undefined>;
2910
2999
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
2911
3000
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -2915,7 +3004,7 @@ declare const InteractiveGraph: {
2915
3004
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2916
3005
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
2917
3006
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
2918
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3007
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
2919
3008
  onChange: import("@khanacademy/perseus").ChangeHandler;
2920
3009
  trackInteraction: (extraData?: Empty | undefined) => void;
2921
3010
  isLastUsedWidget: boolean;
@@ -2934,7 +3023,6 @@ declare const InteractiveGraph: {
2934
3023
  problemNum: number | null | undefined;
2935
3024
  apiOptions: Readonly<Readonly<{
2936
3025
  isArticle?: boolean | undefined;
2937
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
2938
3026
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
2939
3027
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
2940
3028
  showAlignmentOptions?: boolean | undefined;
@@ -2980,8 +3068,13 @@ declare const InteractiveGraph: {
2980
3068
  "unlimited-point"?: boolean | undefined;
2981
3069
  } & {
2982
3070
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3071
+ "locked-figures-aria"?: boolean | undefined;
2983
3072
  "locked-point-labels"?: boolean | undefined;
2984
3073
  "locked-line-labels"?: boolean | undefined;
3074
+ "locked-vector-labels"?: boolean | undefined;
3075
+ "locked-ellipse-labels"?: boolean | undefined;
3076
+ "locked-polygon-labels"?: boolean | undefined;
3077
+ "locked-function-labels"?: boolean | undefined;
2985
3078
  }) | undefined;
2986
3079
  } | undefined;
2987
3080
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -2997,7 +3090,6 @@ declare const InteractiveGraph: {
2997
3090
  isArticle: NonNullable<boolean | undefined>;
2998
3091
  isMobile: NonNullable<boolean | undefined>;
2999
3092
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3000
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3001
3093
  readOnly: NonNullable<boolean | undefined>;
3002
3094
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3003
3095
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3007,7 +3099,7 @@ declare const InteractiveGraph: {
3007
3099
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3008
3100
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3009
3101
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3010
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3102
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3011
3103
  onChange: import("@khanacademy/perseus").ChangeHandler;
3012
3104
  trackInteraction: (extraData?: Empty | undefined) => void;
3013
3105
  isLastUsedWidget: boolean;
@@ -3023,7 +3115,6 @@ declare const InteractiveGraph: {
3023
3115
  problemNum: number | null | undefined;
3024
3116
  apiOptions: Readonly<Readonly<{
3025
3117
  isArticle?: boolean | undefined;
3026
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3027
3118
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3028
3119
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3029
3120
  showAlignmentOptions?: boolean | undefined;
@@ -3069,8 +3160,13 @@ declare const InteractiveGraph: {
3069
3160
  "unlimited-point"?: boolean | undefined;
3070
3161
  } & {
3071
3162
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3163
+ "locked-figures-aria"?: boolean | undefined;
3072
3164
  "locked-point-labels"?: boolean | undefined;
3073
3165
  "locked-line-labels"?: boolean | undefined;
3166
+ "locked-vector-labels"?: boolean | undefined;
3167
+ "locked-ellipse-labels"?: boolean | undefined;
3168
+ "locked-polygon-labels"?: boolean | undefined;
3169
+ "locked-function-labels"?: boolean | undefined;
3074
3170
  }) | undefined;
3075
3171
  } | undefined;
3076
3172
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3086,7 +3182,6 @@ declare const InteractiveGraph: {
3086
3182
  isArticle: NonNullable<boolean | undefined>;
3087
3183
  isMobile: NonNullable<boolean | undefined>;
3088
3184
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3089
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3090
3185
  readOnly: NonNullable<boolean | undefined>;
3091
3186
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3092
3187
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3096,7 +3191,7 @@ declare const InteractiveGraph: {
3096
3191
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3097
3192
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3098
3193
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3099
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3194
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3100
3195
  onChange: import("@khanacademy/perseus").ChangeHandler;
3101
3196
  trackInteraction: (extraData?: Empty | undefined) => void;
3102
3197
  isLastUsedWidget: boolean;
@@ -3110,7 +3205,6 @@ declare const InteractiveGraph: {
3110
3205
  problemNum: number | null | undefined;
3111
3206
  apiOptions: Readonly<Readonly<{
3112
3207
  isArticle?: boolean | undefined;
3113
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3114
3208
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3115
3209
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3116
3210
  showAlignmentOptions?: boolean | undefined;
@@ -3156,8 +3250,13 @@ declare const InteractiveGraph: {
3156
3250
  "unlimited-point"?: boolean | undefined;
3157
3251
  } & {
3158
3252
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3253
+ "locked-figures-aria"?: boolean | undefined;
3159
3254
  "locked-point-labels"?: boolean | undefined;
3160
3255
  "locked-line-labels"?: boolean | undefined;
3256
+ "locked-vector-labels"?: boolean | undefined;
3257
+ "locked-ellipse-labels"?: boolean | undefined;
3258
+ "locked-polygon-labels"?: boolean | undefined;
3259
+ "locked-function-labels"?: boolean | undefined;
3161
3260
  }) | undefined;
3162
3261
  } | undefined;
3163
3262
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3173,7 +3272,6 @@ declare const InteractiveGraph: {
3173
3272
  isArticle: NonNullable<boolean | undefined>;
3174
3273
  isMobile: NonNullable<boolean | undefined>;
3175
3274
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3176
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3177
3275
  readOnly: NonNullable<boolean | undefined>;
3178
3276
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3179
3277
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3183,7 +3281,7 @@ declare const InteractiveGraph: {
3183
3281
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3184
3282
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3185
3283
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3186
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3284
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3187
3285
  onChange: import("@khanacademy/perseus").ChangeHandler;
3188
3286
  trackInteraction: (extraData?: Empty | undefined) => void;
3189
3287
  isLastUsedWidget: boolean;
@@ -3199,7 +3297,6 @@ declare const InteractiveGraph: {
3199
3297
  problemNum: number | null | undefined;
3200
3298
  apiOptions: Readonly<Readonly<{
3201
3299
  isArticle?: boolean | undefined;
3202
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3203
3300
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3204
3301
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3205
3302
  showAlignmentOptions?: boolean | undefined;
@@ -3245,8 +3342,13 @@ declare const InteractiveGraph: {
3245
3342
  "unlimited-point"?: boolean | undefined;
3246
3343
  } & {
3247
3344
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3345
+ "locked-figures-aria"?: boolean | undefined;
3248
3346
  "locked-point-labels"?: boolean | undefined;
3249
3347
  "locked-line-labels"?: boolean | undefined;
3348
+ "locked-vector-labels"?: boolean | undefined;
3349
+ "locked-ellipse-labels"?: boolean | undefined;
3350
+ "locked-polygon-labels"?: boolean | undefined;
3351
+ "locked-function-labels"?: boolean | undefined;
3250
3352
  }) | undefined;
3251
3353
  } | undefined;
3252
3354
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3262,7 +3364,6 @@ declare const InteractiveGraph: {
3262
3364
  isArticle: NonNullable<boolean | undefined>;
3263
3365
  isMobile: NonNullable<boolean | undefined>;
3264
3366
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3265
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3266
3367
  readOnly: NonNullable<boolean | undefined>;
3267
3368
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3268
3369
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3272,7 +3373,7 @@ declare const InteractiveGraph: {
3272
3373
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3273
3374
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3274
3375
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3275
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3376
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3276
3377
  onChange: import("@khanacademy/perseus").ChangeHandler;
3277
3378
  trackInteraction: (extraData?: Empty | undefined) => void;
3278
3379
  isLastUsedWidget: boolean;
@@ -3286,7 +3387,6 @@ declare const InteractiveGraph: {
3286
3387
  problemNum: number | null | undefined;
3287
3388
  apiOptions: Readonly<Readonly<{
3288
3389
  isArticle?: boolean | undefined;
3289
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3290
3390
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3291
3391
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3292
3392
  showAlignmentOptions?: boolean | undefined;
@@ -3332,8 +3432,13 @@ declare const InteractiveGraph: {
3332
3432
  "unlimited-point"?: boolean | undefined;
3333
3433
  } & {
3334
3434
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3435
+ "locked-figures-aria"?: boolean | undefined;
3335
3436
  "locked-point-labels"?: boolean | undefined;
3336
3437
  "locked-line-labels"?: boolean | undefined;
3438
+ "locked-vector-labels"?: boolean | undefined;
3439
+ "locked-ellipse-labels"?: boolean | undefined;
3440
+ "locked-polygon-labels"?: boolean | undefined;
3441
+ "locked-function-labels"?: boolean | undefined;
3337
3442
  }) | undefined;
3338
3443
  } | undefined;
3339
3444
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3349,7 +3454,6 @@ declare const InteractiveGraph: {
3349
3454
  isArticle: NonNullable<boolean | undefined>;
3350
3455
  isMobile: NonNullable<boolean | undefined>;
3351
3456
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3352
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3353
3457
  readOnly: NonNullable<boolean | undefined>;
3354
3458
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3355
3459
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3359,7 +3463,7 @@ declare const InteractiveGraph: {
3359
3463
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3360
3464
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3361
3465
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3362
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3466
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3363
3467
  onChange: import("@khanacademy/perseus").ChangeHandler;
3364
3468
  trackInteraction: (extraData?: Empty | undefined) => void;
3365
3469
  isLastUsedWidget: boolean;
@@ -3373,7 +3477,6 @@ declare const InteractiveGraph: {
3373
3477
  problemNum: number | null | undefined;
3374
3478
  apiOptions: Readonly<Readonly<{
3375
3479
  isArticle?: boolean | undefined;
3376
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3377
3480
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3378
3481
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3379
3482
  showAlignmentOptions?: boolean | undefined;
@@ -3419,8 +3522,13 @@ declare const InteractiveGraph: {
3419
3522
  "unlimited-point"?: boolean | undefined;
3420
3523
  } & {
3421
3524
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3525
+ "locked-figures-aria"?: boolean | undefined;
3422
3526
  "locked-point-labels"?: boolean | undefined;
3423
3527
  "locked-line-labels"?: boolean | undefined;
3528
+ "locked-vector-labels"?: boolean | undefined;
3529
+ "locked-ellipse-labels"?: boolean | undefined;
3530
+ "locked-polygon-labels"?: boolean | undefined;
3531
+ "locked-function-labels"?: boolean | undefined;
3424
3532
  }) | undefined;
3425
3533
  } | undefined;
3426
3534
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3436,7 +3544,6 @@ declare const InteractiveGraph: {
3436
3544
  isArticle: NonNullable<boolean | undefined>;
3437
3545
  isMobile: NonNullable<boolean | undefined>;
3438
3546
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3439
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3440
3547
  readOnly: NonNullable<boolean | undefined>;
3441
3548
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3442
3549
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3446,7 +3553,7 @@ declare const InteractiveGraph: {
3446
3553
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3447
3554
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3448
3555
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3449
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3556
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3450
3557
  onChange: import("@khanacademy/perseus").ChangeHandler;
3451
3558
  trackInteraction: (extraData?: Empty | undefined) => void;
3452
3559
  isLastUsedWidget: boolean;
@@ -3460,7 +3567,6 @@ declare const InteractiveGraph: {
3460
3567
  problemNum: number | null | undefined;
3461
3568
  apiOptions: Readonly<Readonly<{
3462
3569
  isArticle?: boolean | undefined;
3463
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3464
3570
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3465
3571
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3466
3572
  showAlignmentOptions?: boolean | undefined;
@@ -3506,8 +3612,13 @@ declare const InteractiveGraph: {
3506
3612
  "unlimited-point"?: boolean | undefined;
3507
3613
  } & {
3508
3614
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3615
+ "locked-figures-aria"?: boolean | undefined;
3509
3616
  "locked-point-labels"?: boolean | undefined;
3510
3617
  "locked-line-labels"?: boolean | undefined;
3618
+ "locked-vector-labels"?: boolean | undefined;
3619
+ "locked-ellipse-labels"?: boolean | undefined;
3620
+ "locked-polygon-labels"?: boolean | undefined;
3621
+ "locked-function-labels"?: boolean | undefined;
3511
3622
  }) | undefined;
3512
3623
  } | undefined;
3513
3624
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3523,7 +3634,6 @@ declare const InteractiveGraph: {
3523
3634
  isArticle: NonNullable<boolean | undefined>;
3524
3635
  isMobile: NonNullable<boolean | undefined>;
3525
3636
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3526
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3527
3637
  readOnly: NonNullable<boolean | undefined>;
3528
3638
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3529
3639
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3533,7 +3643,7 @@ declare const InteractiveGraph: {
3533
3643
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3534
3644
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3535
3645
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3536
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3646
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3537
3647
  onChange: import("@khanacademy/perseus").ChangeHandler;
3538
3648
  trackInteraction: (extraData?: Empty | undefined) => void;
3539
3649
  isLastUsedWidget: boolean;
@@ -3551,8 +3661,6 @@ declare const InteractiveGraph: {
3551
3661
  showProtractor: boolean;
3552
3662
  graph: PerseusGraphType;
3553
3663
  };
3554
- getQuadraticCoefficients(coords: readonly import("@khanacademy/perseus").Coord[]): import("../../../../perseus/src/util/geometry").QuadraticCoefficient;
3555
- getSinusoidCoefficients(coords: readonly import("@khanacademy/perseus").Coord[]): import("../../../../perseus/src/util/geometry").SineCoefficient;
3556
3664
  getLineCoords(graph: PerseusGraphType, props: PerseusInteractiveGraphWidgetOptions & {
3557
3665
  widgetId: string;
3558
3666
  alignment: string | null | undefined;
@@ -3560,7 +3668,6 @@ declare const InteractiveGraph: {
3560
3668
  problemNum: number | null | undefined;
3561
3669
  apiOptions: Readonly<Readonly<{
3562
3670
  isArticle?: boolean | undefined;
3563
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3564
3671
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3565
3672
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3566
3673
  showAlignmentOptions?: boolean | undefined;
@@ -3606,8 +3713,13 @@ declare const InteractiveGraph: {
3606
3713
  "unlimited-point"?: boolean | undefined;
3607
3714
  } & {
3608
3715
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3716
+ "locked-figures-aria"?: boolean | undefined;
3609
3717
  "locked-point-labels"?: boolean | undefined;
3610
3718
  "locked-line-labels"?: boolean | undefined;
3719
+ "locked-vector-labels"?: boolean | undefined;
3720
+ "locked-ellipse-labels"?: boolean | undefined;
3721
+ "locked-polygon-labels"?: boolean | undefined;
3722
+ "locked-function-labels"?: boolean | undefined;
3611
3723
  }) | undefined;
3612
3724
  } | undefined;
3613
3725
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3623,7 +3735,6 @@ declare const InteractiveGraph: {
3623
3735
  isArticle: NonNullable<boolean | undefined>;
3624
3736
  isMobile: NonNullable<boolean | undefined>;
3625
3737
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3626
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3627
3738
  readOnly: NonNullable<boolean | undefined>;
3628
3739
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3629
3740
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3633,7 +3744,7 @@ declare const InteractiveGraph: {
3633
3744
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3634
3745
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3635
3746
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3636
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3747
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3637
3748
  onChange: import("@khanacademy/perseus").ChangeHandler;
3638
3749
  trackInteraction: (extraData?: Empty | undefined) => void;
3639
3750
  isLastUsedWidget: boolean;
@@ -3647,7 +3758,6 @@ declare const InteractiveGraph: {
3647
3758
  problemNum: number | null | undefined;
3648
3759
  apiOptions: Readonly<Readonly<{
3649
3760
  isArticle?: boolean | undefined;
3650
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3651
3761
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3652
3762
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3653
3763
  showAlignmentOptions?: boolean | undefined;
@@ -3693,8 +3803,13 @@ declare const InteractiveGraph: {
3693
3803
  "unlimited-point"?: boolean | undefined;
3694
3804
  } & {
3695
3805
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3806
+ "locked-figures-aria"?: boolean | undefined;
3696
3807
  "locked-point-labels"?: boolean | undefined;
3697
3808
  "locked-line-labels"?: boolean | undefined;
3809
+ "locked-vector-labels"?: boolean | undefined;
3810
+ "locked-ellipse-labels"?: boolean | undefined;
3811
+ "locked-polygon-labels"?: boolean | undefined;
3812
+ "locked-function-labels"?: boolean | undefined;
3698
3813
  }) | undefined;
3699
3814
  } | undefined;
3700
3815
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3710,7 +3825,6 @@ declare const InteractiveGraph: {
3710
3825
  isArticle: NonNullable<boolean | undefined>;
3711
3826
  isMobile: NonNullable<boolean | undefined>;
3712
3827
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3713
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3714
3828
  readOnly: NonNullable<boolean | undefined>;
3715
3829
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3716
3830
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3720,7 +3834,7 @@ declare const InteractiveGraph: {
3720
3834
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3721
3835
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3722
3836
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3723
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3837
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3724
3838
  onChange: import("@khanacademy/perseus").ChangeHandler;
3725
3839
  trackInteraction: (extraData?: Empty | undefined) => void;
3726
3840
  isLastUsedWidget: boolean;
@@ -3734,7 +3848,6 @@ declare const InteractiveGraph: {
3734
3848
  problemNum: number | null | undefined;
3735
3849
  apiOptions: Readonly<Readonly<{
3736
3850
  isArticle?: boolean | undefined;
3737
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3738
3851
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3739
3852
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3740
3853
  showAlignmentOptions?: boolean | undefined;
@@ -3780,8 +3893,13 @@ declare const InteractiveGraph: {
3780
3893
  "unlimited-point"?: boolean | undefined;
3781
3894
  } & {
3782
3895
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3896
+ "locked-figures-aria"?: boolean | undefined;
3783
3897
  "locked-point-labels"?: boolean | undefined;
3784
3898
  "locked-line-labels"?: boolean | undefined;
3899
+ "locked-vector-labels"?: boolean | undefined;
3900
+ "locked-ellipse-labels"?: boolean | undefined;
3901
+ "locked-polygon-labels"?: boolean | undefined;
3902
+ "locked-function-labels"?: boolean | undefined;
3785
3903
  }) | undefined;
3786
3904
  } | undefined;
3787
3905
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3797,7 +3915,6 @@ declare const InteractiveGraph: {
3797
3915
  isArticle: NonNullable<boolean | undefined>;
3798
3916
  isMobile: NonNullable<boolean | undefined>;
3799
3917
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3800
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3801
3918
  readOnly: NonNullable<boolean | undefined>;
3802
3919
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3803
3920
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3807,7 +3924,7 @@ declare const InteractiveGraph: {
3807
3924
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3808
3925
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3809
3926
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3810
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
3927
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3811
3928
  onChange: import("@khanacademy/perseus").ChangeHandler;
3812
3929
  trackInteraction: (extraData?: Empty | undefined) => void;
3813
3930
  isLastUsedWidget: boolean;
@@ -3821,7 +3938,6 @@ declare const InteractiveGraph: {
3821
3938
  problemNum: number | null | undefined;
3822
3939
  apiOptions: Readonly<Readonly<{
3823
3940
  isArticle?: boolean | undefined;
3824
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3825
3941
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3826
3942
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3827
3943
  showAlignmentOptions?: boolean | undefined;
@@ -3867,8 +3983,13 @@ declare const InteractiveGraph: {
3867
3983
  "unlimited-point"?: boolean | undefined;
3868
3984
  } & {
3869
3985
  "interactive-graph-locked-features-labels"?: boolean | undefined;
3986
+ "locked-figures-aria"?: boolean | undefined;
3870
3987
  "locked-point-labels"?: boolean | undefined;
3871
3988
  "locked-line-labels"?: boolean | undefined;
3989
+ "locked-vector-labels"?: boolean | undefined;
3990
+ "locked-ellipse-labels"?: boolean | undefined;
3991
+ "locked-polygon-labels"?: boolean | undefined;
3992
+ "locked-function-labels"?: boolean | undefined;
3872
3993
  }) | undefined;
3873
3994
  } | undefined;
3874
3995
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3884,7 +4005,6 @@ declare const InteractiveGraph: {
3884
4005
  isArticle: NonNullable<boolean | undefined>;
3885
4006
  isMobile: NonNullable<boolean | undefined>;
3886
4007
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3887
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3888
4008
  readOnly: NonNullable<boolean | undefined>;
3889
4009
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3890
4010
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3894,7 +4014,7 @@ declare const InteractiveGraph: {
3894
4014
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3895
4015
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3896
4016
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3897
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4017
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3898
4018
  onChange: import("@khanacademy/perseus").ChangeHandler;
3899
4019
  trackInteraction: (extraData?: Empty | undefined) => void;
3900
4020
  isLastUsedWidget: boolean;
@@ -3908,7 +4028,6 @@ declare const InteractiveGraph: {
3908
4028
  problemNum: number | null | undefined;
3909
4029
  apiOptions: Readonly<Readonly<{
3910
4030
  isArticle?: boolean | undefined;
3911
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3912
4031
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
3913
4032
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
3914
4033
  showAlignmentOptions?: boolean | undefined;
@@ -3954,8 +4073,13 @@ declare const InteractiveGraph: {
3954
4073
  "unlimited-point"?: boolean | undefined;
3955
4074
  } & {
3956
4075
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4076
+ "locked-figures-aria"?: boolean | undefined;
3957
4077
  "locked-point-labels"?: boolean | undefined;
3958
4078
  "locked-line-labels"?: boolean | undefined;
4079
+ "locked-vector-labels"?: boolean | undefined;
4080
+ "locked-ellipse-labels"?: boolean | undefined;
4081
+ "locked-polygon-labels"?: boolean | undefined;
4082
+ "locked-function-labels"?: boolean | undefined;
3959
4083
  }) | undefined;
3960
4084
  } | undefined;
3961
4085
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -3971,7 +4095,6 @@ declare const InteractiveGraph: {
3971
4095
  isArticle: NonNullable<boolean | undefined>;
3972
4096
  isMobile: NonNullable<boolean | undefined>;
3973
4097
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
3974
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
3975
4098
  readOnly: NonNullable<boolean | undefined>;
3976
4099
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
3977
4100
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -3981,7 +4104,7 @@ declare const InteractiveGraph: {
3981
4104
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3982
4105
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
3983
4106
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
3984
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4107
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
3985
4108
  onChange: import("@khanacademy/perseus").ChangeHandler;
3986
4109
  trackInteraction: (extraData?: Empty | undefined) => void;
3987
4110
  isLastUsedWidget: boolean;
@@ -3995,7 +4118,6 @@ declare const InteractiveGraph: {
3995
4118
  problemNum: number | null | undefined;
3996
4119
  apiOptions: Readonly<Readonly<{
3997
4120
  isArticle?: boolean | undefined;
3998
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
3999
4121
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4000
4122
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4001
4123
  showAlignmentOptions?: boolean | undefined;
@@ -4041,8 +4163,13 @@ declare const InteractiveGraph: {
4041
4163
  "unlimited-point"?: boolean | undefined;
4042
4164
  } & {
4043
4165
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4166
+ "locked-figures-aria"?: boolean | undefined;
4044
4167
  "locked-point-labels"?: boolean | undefined;
4045
4168
  "locked-line-labels"?: boolean | undefined;
4169
+ "locked-vector-labels"?: boolean | undefined;
4170
+ "locked-ellipse-labels"?: boolean | undefined;
4171
+ "locked-polygon-labels"?: boolean | undefined;
4172
+ "locked-function-labels"?: boolean | undefined;
4046
4173
  }) | undefined;
4047
4174
  } | undefined;
4048
4175
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4058,7 +4185,6 @@ declare const InteractiveGraph: {
4058
4185
  isArticle: NonNullable<boolean | undefined>;
4059
4186
  isMobile: NonNullable<boolean | undefined>;
4060
4187
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4061
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4062
4188
  readOnly: NonNullable<boolean | undefined>;
4063
4189
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4064
4190
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4068,7 +4194,7 @@ declare const InteractiveGraph: {
4068
4194
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4069
4195
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4070
4196
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4071
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4197
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4072
4198
  onChange: import("@khanacademy/perseus").ChangeHandler;
4073
4199
  trackInteraction: (extraData?: Empty | undefined) => void;
4074
4200
  isLastUsedWidget: boolean;
@@ -4083,7 +4209,6 @@ declare const InteractiveGraph: {
4083
4209
  problemNum: number | null | undefined;
4084
4210
  apiOptions: Readonly<Readonly<{
4085
4211
  isArticle?: boolean | undefined;
4086
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4087
4212
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4088
4213
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4089
4214
  showAlignmentOptions?: boolean | undefined;
@@ -4129,8 +4254,13 @@ declare const InteractiveGraph: {
4129
4254
  "unlimited-point"?: boolean | undefined;
4130
4255
  } & {
4131
4256
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4257
+ "locked-figures-aria"?: boolean | undefined;
4132
4258
  "locked-point-labels"?: boolean | undefined;
4133
4259
  "locked-line-labels"?: boolean | undefined;
4260
+ "locked-vector-labels"?: boolean | undefined;
4261
+ "locked-ellipse-labels"?: boolean | undefined;
4262
+ "locked-polygon-labels"?: boolean | undefined;
4263
+ "locked-function-labels"?: boolean | undefined;
4134
4264
  }) | undefined;
4135
4265
  } | undefined;
4136
4266
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4146,7 +4276,6 @@ declare const InteractiveGraph: {
4146
4276
  isArticle: NonNullable<boolean | undefined>;
4147
4277
  isMobile: NonNullable<boolean | undefined>;
4148
4278
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4149
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4150
4279
  readOnly: NonNullable<boolean | undefined>;
4151
4280
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4152
4281
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4156,7 +4285,7 @@ declare const InteractiveGraph: {
4156
4285
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4157
4286
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4158
4287
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4159
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4288
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4160
4289
  onChange: import("@khanacademy/perseus").ChangeHandler;
4161
4290
  trackInteraction: (extraData?: Empty | undefined) => void;
4162
4291
  isLastUsedWidget: boolean;
@@ -4170,7 +4299,6 @@ declare const InteractiveGraph: {
4170
4299
  problemNum: number | null | undefined;
4171
4300
  apiOptions: Readonly<Readonly<{
4172
4301
  isArticle?: boolean | undefined;
4173
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4174
4302
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4175
4303
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4176
4304
  showAlignmentOptions?: boolean | undefined;
@@ -4216,8 +4344,13 @@ declare const InteractiveGraph: {
4216
4344
  "unlimited-point"?: boolean | undefined;
4217
4345
  } & {
4218
4346
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4347
+ "locked-figures-aria"?: boolean | undefined;
4219
4348
  "locked-point-labels"?: boolean | undefined;
4220
4349
  "locked-line-labels"?: boolean | undefined;
4350
+ "locked-vector-labels"?: boolean | undefined;
4351
+ "locked-ellipse-labels"?: boolean | undefined;
4352
+ "locked-polygon-labels"?: boolean | undefined;
4353
+ "locked-function-labels"?: boolean | undefined;
4221
4354
  }) | undefined;
4222
4355
  } | undefined;
4223
4356
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4233,7 +4366,6 @@ declare const InteractiveGraph: {
4233
4366
  isArticle: NonNullable<boolean | undefined>;
4234
4367
  isMobile: NonNullable<boolean | undefined>;
4235
4368
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4236
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4237
4369
  readOnly: NonNullable<boolean | undefined>;
4238
4370
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4239
4371
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4243,7 +4375,7 @@ declare const InteractiveGraph: {
4243
4375
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4244
4376
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4245
4377
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4246
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4378
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4247
4379
  onChange: import("@khanacademy/perseus").ChangeHandler;
4248
4380
  trackInteraction: (extraData?: Empty | undefined) => void;
4249
4381
  isLastUsedWidget: boolean;
@@ -4258,7 +4390,6 @@ declare const InteractiveGraph: {
4258
4390
  problemNum: number | null | undefined;
4259
4391
  apiOptions: Readonly<Readonly<{
4260
4392
  isArticle?: boolean | undefined;
4261
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4262
4393
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4263
4394
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4264
4395
  showAlignmentOptions?: boolean | undefined;
@@ -4304,8 +4435,13 @@ declare const InteractiveGraph: {
4304
4435
  "unlimited-point"?: boolean | undefined;
4305
4436
  } & {
4306
4437
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4438
+ "locked-figures-aria"?: boolean | undefined;
4307
4439
  "locked-point-labels"?: boolean | undefined;
4308
4440
  "locked-line-labels"?: boolean | undefined;
4441
+ "locked-vector-labels"?: boolean | undefined;
4442
+ "locked-ellipse-labels"?: boolean | undefined;
4443
+ "locked-polygon-labels"?: boolean | undefined;
4444
+ "locked-function-labels"?: boolean | undefined;
4309
4445
  }) | undefined;
4310
4446
  } | undefined;
4311
4447
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4321,7 +4457,6 @@ declare const InteractiveGraph: {
4321
4457
  isArticle: NonNullable<boolean | undefined>;
4322
4458
  isMobile: NonNullable<boolean | undefined>;
4323
4459
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4324
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4325
4460
  readOnly: NonNullable<boolean | undefined>;
4326
4461
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4327
4462
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4331,7 +4466,7 @@ declare const InteractiveGraph: {
4331
4466
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4332
4467
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4333
4468
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4334
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4469
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4335
4470
  onChange: import("@khanacademy/perseus").ChangeHandler;
4336
4471
  trackInteraction: (extraData?: Empty | undefined) => void;
4337
4472
  isLastUsedWidget: boolean;
@@ -4345,7 +4480,6 @@ declare const InteractiveGraph: {
4345
4480
  problemNum: number | null | undefined;
4346
4481
  apiOptions: Readonly<Readonly<{
4347
4482
  isArticle?: boolean | undefined;
4348
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4349
4483
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4350
4484
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4351
4485
  showAlignmentOptions?: boolean | undefined;
@@ -4391,8 +4525,13 @@ declare const InteractiveGraph: {
4391
4525
  "unlimited-point"?: boolean | undefined;
4392
4526
  } & {
4393
4527
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4528
+ "locked-figures-aria"?: boolean | undefined;
4394
4529
  "locked-point-labels"?: boolean | undefined;
4395
4530
  "locked-line-labels"?: boolean | undefined;
4531
+ "locked-vector-labels"?: boolean | undefined;
4532
+ "locked-ellipse-labels"?: boolean | undefined;
4533
+ "locked-polygon-labels"?: boolean | undefined;
4534
+ "locked-function-labels"?: boolean | undefined;
4396
4535
  }) | undefined;
4397
4536
  } | undefined;
4398
4537
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4408,7 +4547,6 @@ declare const InteractiveGraph: {
4408
4547
  isArticle: NonNullable<boolean | undefined>;
4409
4548
  isMobile: NonNullable<boolean | undefined>;
4410
4549
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4411
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4412
4550
  readOnly: NonNullable<boolean | undefined>;
4413
4551
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4414
4552
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4418,7 +4556,7 @@ declare const InteractiveGraph: {
4418
4556
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4419
4557
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4420
4558
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4421
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4559
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4422
4560
  onChange: import("@khanacademy/perseus").ChangeHandler;
4423
4561
  trackInteraction: (extraData?: Empty | undefined) => void;
4424
4562
  isLastUsedWidget: boolean;
@@ -4432,7 +4570,6 @@ declare const InteractiveGraph: {
4432
4570
  problemNum: number | null | undefined;
4433
4571
  apiOptions: Readonly<Readonly<{
4434
4572
  isArticle?: boolean | undefined;
4435
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4436
4573
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4437
4574
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4438
4575
  showAlignmentOptions?: boolean | undefined;
@@ -4478,8 +4615,13 @@ declare const InteractiveGraph: {
4478
4615
  "unlimited-point"?: boolean | undefined;
4479
4616
  } & {
4480
4617
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4618
+ "locked-figures-aria"?: boolean | undefined;
4481
4619
  "locked-point-labels"?: boolean | undefined;
4482
4620
  "locked-line-labels"?: boolean | undefined;
4621
+ "locked-vector-labels"?: boolean | undefined;
4622
+ "locked-ellipse-labels"?: boolean | undefined;
4623
+ "locked-polygon-labels"?: boolean | undefined;
4624
+ "locked-function-labels"?: boolean | undefined;
4483
4625
  }) | undefined;
4484
4626
  } | undefined;
4485
4627
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4495,7 +4637,6 @@ declare const InteractiveGraph: {
4495
4637
  isArticle: NonNullable<boolean | undefined>;
4496
4638
  isMobile: NonNullable<boolean | undefined>;
4497
4639
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4498
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4499
4640
  readOnly: NonNullable<boolean | undefined>;
4500
4641
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4501
4642
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4505,7 +4646,7 @@ declare const InteractiveGraph: {
4505
4646
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4506
4647
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4507
4648
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4508
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4649
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4509
4650
  onChange: import("@khanacademy/perseus").ChangeHandler;
4510
4651
  trackInteraction: (extraData?: Empty | undefined) => void;
4511
4652
  isLastUsedWidget: boolean;
@@ -4519,7 +4660,6 @@ declare const InteractiveGraph: {
4519
4660
  problemNum: number | null | undefined;
4520
4661
  apiOptions: Readonly<Readonly<{
4521
4662
  isArticle?: boolean | undefined;
4522
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4523
4663
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4524
4664
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4525
4665
  showAlignmentOptions?: boolean | undefined;
@@ -4565,8 +4705,13 @@ declare const InteractiveGraph: {
4565
4705
  "unlimited-point"?: boolean | undefined;
4566
4706
  } & {
4567
4707
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4708
+ "locked-figures-aria"?: boolean | undefined;
4568
4709
  "locked-point-labels"?: boolean | undefined;
4569
4710
  "locked-line-labels"?: boolean | undefined;
4711
+ "locked-vector-labels"?: boolean | undefined;
4712
+ "locked-ellipse-labels"?: boolean | undefined;
4713
+ "locked-polygon-labels"?: boolean | undefined;
4714
+ "locked-function-labels"?: boolean | undefined;
4570
4715
  }) | undefined;
4571
4716
  } | undefined;
4572
4717
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4582,7 +4727,6 @@ declare const InteractiveGraph: {
4582
4727
  isArticle: NonNullable<boolean | undefined>;
4583
4728
  isMobile: NonNullable<boolean | undefined>;
4584
4729
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4585
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4586
4730
  readOnly: NonNullable<boolean | undefined>;
4587
4731
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4588
4732
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4592,7 +4736,7 @@ declare const InteractiveGraph: {
4592
4736
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4593
4737
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4594
4738
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4595
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4739
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4596
4740
  onChange: import("@khanacademy/perseus").ChangeHandler;
4597
4741
  trackInteraction: (extraData?: Empty | undefined) => void;
4598
4742
  isLastUsedWidget: boolean;
@@ -4606,7 +4750,6 @@ declare const InteractiveGraph: {
4606
4750
  problemNum: number | null | undefined;
4607
4751
  apiOptions: Readonly<Readonly<{
4608
4752
  isArticle?: boolean | undefined;
4609
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4610
4753
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4611
4754
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4612
4755
  showAlignmentOptions?: boolean | undefined;
@@ -4652,8 +4795,13 @@ declare const InteractiveGraph: {
4652
4795
  "unlimited-point"?: boolean | undefined;
4653
4796
  } & {
4654
4797
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4798
+ "locked-figures-aria"?: boolean | undefined;
4655
4799
  "locked-point-labels"?: boolean | undefined;
4656
4800
  "locked-line-labels"?: boolean | undefined;
4801
+ "locked-vector-labels"?: boolean | undefined;
4802
+ "locked-ellipse-labels"?: boolean | undefined;
4803
+ "locked-polygon-labels"?: boolean | undefined;
4804
+ "locked-function-labels"?: boolean | undefined;
4657
4805
  }) | undefined;
4658
4806
  } | undefined;
4659
4807
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4669,7 +4817,6 @@ declare const InteractiveGraph: {
4669
4817
  isArticle: NonNullable<boolean | undefined>;
4670
4818
  isMobile: NonNullable<boolean | undefined>;
4671
4819
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4672
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4673
4820
  readOnly: NonNullable<boolean | undefined>;
4674
4821
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4675
4822
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4679,7 +4826,7 @@ declare const InteractiveGraph: {
4679
4826
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4680
4827
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4681
4828
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4682
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4829
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4683
4830
  onChange: import("@khanacademy/perseus").ChangeHandler;
4684
4831
  trackInteraction: (extraData?: Empty | undefined) => void;
4685
4832
  isLastUsedWidget: boolean;
@@ -4693,7 +4840,6 @@ declare const InteractiveGraph: {
4693
4840
  problemNum: number | null | undefined;
4694
4841
  apiOptions: Readonly<Readonly<{
4695
4842
  isArticle?: boolean | undefined;
4696
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4697
4843
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4698
4844
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4699
4845
  showAlignmentOptions?: boolean | undefined;
@@ -4739,8 +4885,13 @@ declare const InteractiveGraph: {
4739
4885
  "unlimited-point"?: boolean | undefined;
4740
4886
  } & {
4741
4887
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4888
+ "locked-figures-aria"?: boolean | undefined;
4742
4889
  "locked-point-labels"?: boolean | undefined;
4743
4890
  "locked-line-labels"?: boolean | undefined;
4891
+ "locked-vector-labels"?: boolean | undefined;
4892
+ "locked-ellipse-labels"?: boolean | undefined;
4893
+ "locked-polygon-labels"?: boolean | undefined;
4894
+ "locked-function-labels"?: boolean | undefined;
4744
4895
  }) | undefined;
4745
4896
  } | undefined;
4746
4897
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4756,7 +4907,6 @@ declare const InteractiveGraph: {
4756
4907
  isArticle: NonNullable<boolean | undefined>;
4757
4908
  isMobile: NonNullable<boolean | undefined>;
4758
4909
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4759
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4760
4910
  readOnly: NonNullable<boolean | undefined>;
4761
4911
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4762
4912
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4766,7 +4916,7 @@ declare const InteractiveGraph: {
4766
4916
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4767
4917
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4768
4918
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4769
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
4919
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4770
4920
  onChange: import("@khanacademy/perseus").ChangeHandler;
4771
4921
  trackInteraction: (extraData?: Empty | undefined) => void;
4772
4922
  isLastUsedWidget: boolean;
@@ -4780,7 +4930,6 @@ declare const InteractiveGraph: {
4780
4930
  problemNum: number | null | undefined;
4781
4931
  apiOptions: Readonly<Readonly<{
4782
4932
  isArticle?: boolean | undefined;
4783
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4784
4933
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4785
4934
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4786
4935
  showAlignmentOptions?: boolean | undefined;
@@ -4826,8 +4975,13 @@ declare const InteractiveGraph: {
4826
4975
  "unlimited-point"?: boolean | undefined;
4827
4976
  } & {
4828
4977
  "interactive-graph-locked-features-labels"?: boolean | undefined;
4978
+ "locked-figures-aria"?: boolean | undefined;
4829
4979
  "locked-point-labels"?: boolean | undefined;
4830
4980
  "locked-line-labels"?: boolean | undefined;
4981
+ "locked-vector-labels"?: boolean | undefined;
4982
+ "locked-ellipse-labels"?: boolean | undefined;
4983
+ "locked-polygon-labels"?: boolean | undefined;
4984
+ "locked-function-labels"?: boolean | undefined;
4831
4985
  }) | undefined;
4832
4986
  } | undefined;
4833
4987
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4843,7 +4997,6 @@ declare const InteractiveGraph: {
4843
4997
  isArticle: NonNullable<boolean | undefined>;
4844
4998
  isMobile: NonNullable<boolean | undefined>;
4845
4999
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4846
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4847
5000
  readOnly: NonNullable<boolean | undefined>;
4848
5001
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4849
5002
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4853,7 +5006,7 @@ declare const InteractiveGraph: {
4853
5006
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4854
5007
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4855
5008
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4856
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5009
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4857
5010
  onChange: import("@khanacademy/perseus").ChangeHandler;
4858
5011
  trackInteraction: (extraData?: Empty | undefined) => void;
4859
5012
  isLastUsedWidget: boolean;
@@ -4867,7 +5020,6 @@ declare const InteractiveGraph: {
4867
5020
  problemNum: number | null | undefined;
4868
5021
  apiOptions: Readonly<Readonly<{
4869
5022
  isArticle?: boolean | undefined;
4870
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4871
5023
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4872
5024
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4873
5025
  showAlignmentOptions?: boolean | undefined;
@@ -4913,8 +5065,13 @@ declare const InteractiveGraph: {
4913
5065
  "unlimited-point"?: boolean | undefined;
4914
5066
  } & {
4915
5067
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5068
+ "locked-figures-aria"?: boolean | undefined;
4916
5069
  "locked-point-labels"?: boolean | undefined;
4917
5070
  "locked-line-labels"?: boolean | undefined;
5071
+ "locked-vector-labels"?: boolean | undefined;
5072
+ "locked-ellipse-labels"?: boolean | undefined;
5073
+ "locked-polygon-labels"?: boolean | undefined;
5074
+ "locked-function-labels"?: boolean | undefined;
4918
5075
  }) | undefined;
4919
5076
  } | undefined;
4920
5077
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -4930,7 +5087,6 @@ declare const InteractiveGraph: {
4930
5087
  isArticle: NonNullable<boolean | undefined>;
4931
5088
  isMobile: NonNullable<boolean | undefined>;
4932
5089
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
4933
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
4934
5090
  readOnly: NonNullable<boolean | undefined>;
4935
5091
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
4936
5092
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -4940,7 +5096,7 @@ declare const InteractiveGraph: {
4940
5096
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4941
5097
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
4942
5098
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
4943
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5099
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
4944
5100
  onChange: import("@khanacademy/perseus").ChangeHandler;
4945
5101
  trackInteraction: (extraData?: Empty | undefined) => void;
4946
5102
  isLastUsedWidget: boolean;
@@ -4954,7 +5110,6 @@ declare const InteractiveGraph: {
4954
5110
  problemNum: number | null | undefined;
4955
5111
  apiOptions: Readonly<Readonly<{
4956
5112
  isArticle?: boolean | undefined;
4957
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
4958
5113
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
4959
5114
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
4960
5115
  showAlignmentOptions?: boolean | undefined;
@@ -5000,8 +5155,13 @@ declare const InteractiveGraph: {
5000
5155
  "unlimited-point"?: boolean | undefined;
5001
5156
  } & {
5002
5157
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5158
+ "locked-figures-aria"?: boolean | undefined;
5003
5159
  "locked-point-labels"?: boolean | undefined;
5004
5160
  "locked-line-labels"?: boolean | undefined;
5161
+ "locked-vector-labels"?: boolean | undefined;
5162
+ "locked-ellipse-labels"?: boolean | undefined;
5163
+ "locked-polygon-labels"?: boolean | undefined;
5164
+ "locked-function-labels"?: boolean | undefined;
5005
5165
  }) | undefined;
5006
5166
  } | undefined;
5007
5167
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5017,7 +5177,6 @@ declare const InteractiveGraph: {
5017
5177
  isArticle: NonNullable<boolean | undefined>;
5018
5178
  isMobile: NonNullable<boolean | undefined>;
5019
5179
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5020
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5021
5180
  readOnly: NonNullable<boolean | undefined>;
5022
5181
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5023
5182
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5027,7 +5186,7 @@ declare const InteractiveGraph: {
5027
5186
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5028
5187
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5029
5188
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5030
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5189
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5031
5190
  onChange: import("@khanacademy/perseus").ChangeHandler;
5032
5191
  trackInteraction: (extraData?: Empty | undefined) => void;
5033
5192
  isLastUsedWidget: boolean;
@@ -5041,7 +5200,6 @@ declare const InteractiveGraph: {
5041
5200
  problemNum: number | null | undefined;
5042
5201
  apiOptions: Readonly<Readonly<{
5043
5202
  isArticle?: boolean | undefined;
5044
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5045
5203
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5046
5204
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5047
5205
  showAlignmentOptions?: boolean | undefined;
@@ -5087,8 +5245,13 @@ declare const InteractiveGraph: {
5087
5245
  "unlimited-point"?: boolean | undefined;
5088
5246
  } & {
5089
5247
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5248
+ "locked-figures-aria"?: boolean | undefined;
5090
5249
  "locked-point-labels"?: boolean | undefined;
5091
5250
  "locked-line-labels"?: boolean | undefined;
5251
+ "locked-vector-labels"?: boolean | undefined;
5252
+ "locked-ellipse-labels"?: boolean | undefined;
5253
+ "locked-polygon-labels"?: boolean | undefined;
5254
+ "locked-function-labels"?: boolean | undefined;
5092
5255
  }) | undefined;
5093
5256
  } | undefined;
5094
5257
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5104,7 +5267,6 @@ declare const InteractiveGraph: {
5104
5267
  isArticle: NonNullable<boolean | undefined>;
5105
5268
  isMobile: NonNullable<boolean | undefined>;
5106
5269
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5107
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5108
5270
  readOnly: NonNullable<boolean | undefined>;
5109
5271
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5110
5272
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5114,7 +5276,7 @@ declare const InteractiveGraph: {
5114
5276
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5115
5277
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5116
5278
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5117
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5279
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5118
5280
  onChange: import("@khanacademy/perseus").ChangeHandler;
5119
5281
  trackInteraction: (extraData?: Empty | undefined) => void;
5120
5282
  isLastUsedWidget: boolean;
@@ -5128,7 +5290,6 @@ declare const InteractiveGraph: {
5128
5290
  problemNum: number | null | undefined;
5129
5291
  apiOptions: Readonly<Readonly<{
5130
5292
  isArticle?: boolean | undefined;
5131
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5132
5293
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5133
5294
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5134
5295
  showAlignmentOptions?: boolean | undefined;
@@ -5174,8 +5335,13 @@ declare const InteractiveGraph: {
5174
5335
  "unlimited-point"?: boolean | undefined;
5175
5336
  } & {
5176
5337
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5338
+ "locked-figures-aria"?: boolean | undefined;
5177
5339
  "locked-point-labels"?: boolean | undefined;
5178
5340
  "locked-line-labels"?: boolean | undefined;
5341
+ "locked-vector-labels"?: boolean | undefined;
5342
+ "locked-ellipse-labels"?: boolean | undefined;
5343
+ "locked-polygon-labels"?: boolean | undefined;
5344
+ "locked-function-labels"?: boolean | undefined;
5179
5345
  }) | undefined;
5180
5346
  } | undefined;
5181
5347
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5191,7 +5357,6 @@ declare const InteractiveGraph: {
5191
5357
  isArticle: NonNullable<boolean | undefined>;
5192
5358
  isMobile: NonNullable<boolean | undefined>;
5193
5359
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5194
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5195
5360
  readOnly: NonNullable<boolean | undefined>;
5196
5361
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5197
5362
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5201,7 +5366,7 @@ declare const InteractiveGraph: {
5201
5366
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5202
5367
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5203
5368
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5204
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5369
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5205
5370
  onChange: import("@khanacademy/perseus").ChangeHandler;
5206
5371
  trackInteraction: (extraData?: Empty | undefined) => void;
5207
5372
  isLastUsedWidget: boolean;
@@ -5215,7 +5380,6 @@ declare const InteractiveGraph: {
5215
5380
  problemNum: number | null | undefined;
5216
5381
  apiOptions: Readonly<Readonly<{
5217
5382
  isArticle?: boolean | undefined;
5218
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5219
5383
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5220
5384
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5221
5385
  showAlignmentOptions?: boolean | undefined;
@@ -5261,8 +5425,13 @@ declare const InteractiveGraph: {
5261
5425
  "unlimited-point"?: boolean | undefined;
5262
5426
  } & {
5263
5427
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5428
+ "locked-figures-aria"?: boolean | undefined;
5264
5429
  "locked-point-labels"?: boolean | undefined;
5265
5430
  "locked-line-labels"?: boolean | undefined;
5431
+ "locked-vector-labels"?: boolean | undefined;
5432
+ "locked-ellipse-labels"?: boolean | undefined;
5433
+ "locked-polygon-labels"?: boolean | undefined;
5434
+ "locked-function-labels"?: boolean | undefined;
5266
5435
  }) | undefined;
5267
5436
  } | undefined;
5268
5437
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5278,7 +5447,6 @@ declare const InteractiveGraph: {
5278
5447
  isArticle: NonNullable<boolean | undefined>;
5279
5448
  isMobile: NonNullable<boolean | undefined>;
5280
5449
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5281
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5282
5450
  readOnly: NonNullable<boolean | undefined>;
5283
5451
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5284
5452
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5288,7 +5456,7 @@ declare const InteractiveGraph: {
5288
5456
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5289
5457
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5290
5458
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5291
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5459
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5292
5460
  onChange: import("@khanacademy/perseus").ChangeHandler;
5293
5461
  trackInteraction: (extraData?: Empty | undefined) => void;
5294
5462
  isLastUsedWidget: boolean;
@@ -5302,7 +5470,6 @@ declare const InteractiveGraph: {
5302
5470
  problemNum: number | null | undefined;
5303
5471
  apiOptions: Readonly<Readonly<{
5304
5472
  isArticle?: boolean | undefined;
5305
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5306
5473
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5307
5474
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5308
5475
  showAlignmentOptions?: boolean | undefined;
@@ -5348,8 +5515,13 @@ declare const InteractiveGraph: {
5348
5515
  "unlimited-point"?: boolean | undefined;
5349
5516
  } & {
5350
5517
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5518
+ "locked-figures-aria"?: boolean | undefined;
5351
5519
  "locked-point-labels"?: boolean | undefined;
5352
5520
  "locked-line-labels"?: boolean | undefined;
5521
+ "locked-vector-labels"?: boolean | undefined;
5522
+ "locked-ellipse-labels"?: boolean | undefined;
5523
+ "locked-polygon-labels"?: boolean | undefined;
5524
+ "locked-function-labels"?: boolean | undefined;
5353
5525
  }) | undefined;
5354
5526
  } | undefined;
5355
5527
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5365,7 +5537,6 @@ declare const InteractiveGraph: {
5365
5537
  isArticle: NonNullable<boolean | undefined>;
5366
5538
  isMobile: NonNullable<boolean | undefined>;
5367
5539
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5368
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5369
5540
  readOnly: NonNullable<boolean | undefined>;
5370
5541
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5371
5542
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5375,7 +5546,7 @@ declare const InteractiveGraph: {
5375
5546
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5376
5547
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5377
5548
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5378
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5549
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5379
5550
  onChange: import("@khanacademy/perseus").ChangeHandler;
5380
5551
  trackInteraction: (extraData?: Empty | undefined) => void;
5381
5552
  isLastUsedWidget: boolean;
@@ -5389,7 +5560,6 @@ declare const InteractiveGraph: {
5389
5560
  problemNum: number | null | undefined;
5390
5561
  apiOptions: Readonly<Readonly<{
5391
5562
  isArticle?: boolean | undefined;
5392
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5393
5563
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5394
5564
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5395
5565
  showAlignmentOptions?: boolean | undefined;
@@ -5435,8 +5605,13 @@ declare const InteractiveGraph: {
5435
5605
  "unlimited-point"?: boolean | undefined;
5436
5606
  } & {
5437
5607
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5608
+ "locked-figures-aria"?: boolean | undefined;
5438
5609
  "locked-point-labels"?: boolean | undefined;
5439
5610
  "locked-line-labels"?: boolean | undefined;
5611
+ "locked-vector-labels"?: boolean | undefined;
5612
+ "locked-ellipse-labels"?: boolean | undefined;
5613
+ "locked-polygon-labels"?: boolean | undefined;
5614
+ "locked-function-labels"?: boolean | undefined;
5440
5615
  }) | undefined;
5441
5616
  } | undefined;
5442
5617
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5452,7 +5627,6 @@ declare const InteractiveGraph: {
5452
5627
  isArticle: NonNullable<boolean | undefined>;
5453
5628
  isMobile: NonNullable<boolean | undefined>;
5454
5629
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5455
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5456
5630
  readOnly: NonNullable<boolean | undefined>;
5457
5631
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5458
5632
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5462,14 +5636,14 @@ declare const InteractiveGraph: {
5462
5636
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5463
5637
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5464
5638
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5465
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5639
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5466
5640
  onChange: import("@khanacademy/perseus").ChangeHandler;
5467
5641
  trackInteraction: (extraData?: Empty | undefined) => void;
5468
5642
  isLastUsedWidget: boolean;
5469
5643
  linterContext: import("@khanacademy/perseus-linter").LinterContextProps;
5470
5644
  containerSizeClass: SizingUtils.SizeClass;
5471
5645
  }): string;
5472
- validate(userInput: PerseusGraphType, rubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric, component: any): import("@khanacademy/perseus").PerseusScore;
5646
+ validate(userInput: PerseusGraphType, rubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric): import("@khanacademy/perseus").PerseusScore;
5473
5647
  getUserInputFromProps(props: PerseusInteractiveGraphWidgetOptions & {
5474
5648
  widgetId: string;
5475
5649
  alignment: string | null | undefined;
@@ -5477,7 +5651,6 @@ declare const InteractiveGraph: {
5477
5651
  problemNum: number | null | undefined;
5478
5652
  apiOptions: Readonly<Readonly<{
5479
5653
  isArticle?: boolean | undefined;
5480
- onInputError?: ((widgetId: any, value: string, message?: string | null | undefined) => unknown) | undefined;
5481
5654
  onFocusChange?: ((newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown) | undefined;
5482
5655
  GroupMetadataEditor?: React.ComponentType<any> | undefined;
5483
5656
  showAlignmentOptions?: boolean | undefined;
@@ -5523,8 +5696,13 @@ declare const InteractiveGraph: {
5523
5696
  "unlimited-point"?: boolean | undefined;
5524
5697
  } & {
5525
5698
  "interactive-graph-locked-features-labels"?: boolean | undefined;
5699
+ "locked-figures-aria"?: boolean | undefined;
5526
5700
  "locked-point-labels"?: boolean | undefined;
5527
5701
  "locked-line-labels"?: boolean | undefined;
5702
+ "locked-vector-labels"?: boolean | undefined;
5703
+ "locked-ellipse-labels"?: boolean | undefined;
5704
+ "locked-polygon-labels"?: boolean | undefined;
5705
+ "locked-function-labels"?: boolean | undefined;
5528
5706
  }) | undefined;
5529
5707
  } | undefined;
5530
5708
  onWidgetStartProps?: ((widgets: import("@khanacademy/perseus").PerseusWidgetsMap) => void) | undefined;
@@ -5540,7 +5718,6 @@ declare const InteractiveGraph: {
5540
5718
  isArticle: NonNullable<boolean | undefined>;
5541
5719
  isMobile: NonNullable<boolean | undefined>;
5542
5720
  onFocusChange: (newFocusPath: import("@khanacademy/perseus").FocusPath, oldFocusPath: import("@khanacademy/perseus").FocusPath, keypadHeight?: number | undefined, focusedElement?: HTMLElement | undefined) => unknown;
5543
- onInputError: (widgetId: any, value: string, message?: string | null | undefined) => unknown;
5544
5721
  readOnly: NonNullable<boolean | undefined>;
5545
5722
  setDrawingAreaAvailable: (arg1: boolean) => unknown;
5546
5723
  showAlignmentOptions: NonNullable<boolean | undefined>;
@@ -5550,7 +5727,7 @@ declare const InteractiveGraph: {
5550
5727
  onFocus: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5551
5728
  onBlur: (blurPath: import("@khanacademy/perseus").FocusPath) => void;
5552
5729
  findWidgets: (arg1: import("../../../../perseus/src/types").FilterCriterion) => readonly any[];
5553
- reviewModeRubric: import("../../../../perseus/src/widgets/interactive-graph").Rubric;
5730
+ reviewModeRubric: import("../../../../perseus/src/validation.types").PerseusInteractiveGraphRubric;
5554
5731
  onChange: import("@khanacademy/perseus").ChangeHandler;
5555
5732
  trackInteraction: (extraData?: Empty | undefined) => void;
5556
5733
  isLastUsedWidget: boolean;