reactjs-tiptap-editor 0.0.8 → 0.0.9

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.
package/lib/index.d.cts CHANGED
@@ -3,11 +3,15 @@ import { BlockquoteOptions as BlockquoteOptions_2 } from '@tiptap/extension-bloc
3
3
  import { BoldOptions as BoldOptions_2 } from '@tiptap/extension-bold';
4
4
  import { BulletListOptions as BulletListOptions_2 } from '@tiptap/extension-bullet-list';
5
5
  import { CharacterCountOptions } from '@tiptap/extension-character-count';
6
+ import { ClassProp } from 'class-variance-authority/types';
6
7
  import { CodeBlockLowlightOptions } from '@tiptap/extension-code-block-lowlight';
7
8
  import { CodeOptions as CodeOptions_2 } from '@tiptap/extension-code';
8
9
  import { ColorOptions as ColorOptions_2 } from '@tiptap/extension-color';
10
+ import { default as default_2 } from 'react';
9
11
  import { DropcursorOptions } from '@tiptap/extension-dropcursor';
12
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
10
13
  import { Editor } from '@tiptap/react';
14
+ import { Editor as Editor_2 } from '@tiptap/core';
11
15
  import { Extension } from '@tiptap/core';
12
16
  import { FocusOptions as FocusOptions_2 } from '@tiptap/extension-focus';
13
17
  import { FontFamilyOptions as FontFamilyOptions_2 } from '@tiptap/extension-font-family';
@@ -19,6 +23,9 @@ import { HistoryOptions as HistoryOptions_2 } from '@tiptap/extension-history';
19
23
  import { HorizontalRuleOptions as HorizontalRuleOptions_2 } from '@tiptap/extension-horizontal-rule';
20
24
  import { ImageOptions } from '@tiptap/extension-image';
21
25
  import { ItalicOptions as ItalicOptions_2 } from '@tiptap/extension-italic';
26
+ import { JSX as JSX_2 } from 'react/jsx-runtime';
27
+ import { JSXElementConstructor } from 'react';
28
+ import * as LabelPrimitive from '@radix-ui/react-label';
22
29
  import { LinkOptions as LinkOptions_2 } from '@tiptap/extension-link';
23
30
  import { ListItemOptions } from '@tiptap/extension-list-item';
24
31
  import { Mark } from '@tiptap/core';
@@ -27,22 +34,102 @@ import { Node as Node_3 } from '@tiptap/react';
27
34
  import { OrderedListOptions as OrderedListOptions_2 } from '@tiptap/extension-ordered-list';
28
35
  import { ParagraphOptions } from '@tiptap/extension-paragraph';
29
36
  import { PlaceholderOptions } from '@tiptap/extension-placeholder';
37
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
38
+ import * as React_2 from 'react';
39
+ import { ReactElement } from 'react';
40
+ import { ReactNode } from 'react';
30
41
  import { RefAttributes } from 'react';
42
+ import * as SeparatorPrimitive from '@radix-ui/react-separator';
31
43
  import { StrikeOptions as StrikeOptions_2 } from '@tiptap/extension-strike';
32
44
  import { SubscriptExtensionOptions } from '@tiptap/extension-subscript';
33
45
  import { SuperscriptExtensionOptions } from '@tiptap/extension-superscript';
46
+ import { SVGProps } from 'react';
47
+ import * as SwitchPrimitives from '@radix-ui/react-switch';
34
48
  import { TableCellOptions } from '@tiptap/extension-table-cell';
35
49
  import { TableHeaderOptions } from '@tiptap/extension-table-header';
36
50
  import { TableRowOptions } from '@tiptap/extension-table-row';
51
+ import * as TabsPrimitive from '@radix-ui/react-tabs';
37
52
  import { TaskItemOptions } from '@tiptap/extension-task-item';
38
53
  import { TaskListOptions as TaskListOptions_2 } from '@tiptap/extension-task-list';
39
54
  import { TextAlignOptions as TextAlignOptions_2 } from '@tiptap/extension-text-align';
40
55
  import { TextStyleOptions } from '@tiptap/extension-text-style';
56
+ import * as ToastPrimitives from '@radix-ui/react-toast';
57
+ import * as TogglePrimitive from '@radix-ui/react-toggle';
58
+ import { TooltipContentProps } from '@radix-ui/react-tooltip';
59
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
41
60
  import { UnderlineOptions as UnderlineOptions_2 } from '@tiptap/extension-underline';
42
61
  import { UseEditorOptions } from '@tiptap/react';
62
+ import { VariantProps } from 'class-variance-authority';
63
+
64
+ declare type Action = {
65
+ type: ActionType['ADD_TOAST'];
66
+ toast: ToasterToast;
67
+ } | {
68
+ type: ActionType['UPDATE_TOAST'];
69
+ toast: Partial<ToasterToast>;
70
+ } | {
71
+ type: ActionType['DISMISS_TOAST'];
72
+ toastId?: ToasterToast['id'];
73
+ } | {
74
+ type: ActionType['REMOVE_TOAST'];
75
+ toastId?: ToasterToast['id'];
76
+ };
77
+
78
+ export declare const ActionButton: default_2.ForwardRefExoticComponent<Partial<ActionButtonProps> & default_2.RefAttributes<HTMLButtonElement>>;
79
+
80
+ export declare interface ActionButtonProps {
81
+ icon?: string;
82
+ title?: string;
83
+ tooltip?: string;
84
+ disabled?: boolean;
85
+ shortcutKeys?: string[];
86
+ customClass?: string;
87
+ loading?: boolean;
88
+ tooltipOptions?: TooltipContentProps;
89
+ color?: string;
90
+ action?: ButtonViewReturnComponentProps['action'];
91
+ isActive?: ButtonViewReturnComponentProps['isActive'];
92
+ children?: default_2.ReactNode;
93
+ asChild?: boolean;
94
+ upload?: boolean;
95
+ }
96
+
97
+ export declare const ActionMenuButton: default_2.ForwardRefExoticComponent<ActionMenuButtonProps & default_2.RefAttributes<HTMLButtonElement>>;
98
+
99
+ export declare interface ActionMenuButtonProps {
100
+ /** Icon name to display */
101
+ icon?: any;
102
+ /** Button title text */
103
+ title?: string;
104
+ /** Tooltip text */
105
+ tooltip?: string;
106
+ /** Whether the button is disabled */
107
+ disabled?: boolean;
108
+ /** Keyboard shortcut keys */
109
+ shortcutKeys?: string[];
110
+ /** Button color */
111
+ color?: string;
112
+ /** Click action handler */
113
+ action?: ButtonViewReturnComponentProps['action'];
114
+ /** Active state checker */
115
+ isActive?: ButtonViewReturnComponentProps['isActive'];
116
+ /** Whether to render as child */
117
+ asChild?: boolean;
118
+ }
119
+
120
+ declare type ActionType = typeof actionTypes;
121
+
122
+ declare const actionTypes: {
123
+ readonly ADD_TOAST: "ADD_TOAST";
124
+ readonly UPDATE_TOAST: "UPDATE_TOAST";
125
+ readonly DISMISS_TOAST: "DISMISS_TOAST";
126
+ readonly REMOVE_TOAST: "REMOVE_TOAST";
127
+ };
43
128
 
44
129
  declare type Alignments = 'left' | 'center' | 'right' | 'justify';
45
130
 
131
+ export declare function AspectRatio(props: SVGProps<SVGSVGElement>): JSX_2.Element;
132
+
46
133
  export declare const BaseKit: Extension<BaseKitOptions, any>;
47
134
 
48
135
  /**
@@ -146,6 +233,8 @@ export declare interface BaseKitOptions {
146
233
 
147
234
  export declare const Blockquote: Node_2<BlockquoteOptions, any>;
148
235
 
236
+ export declare function BlockquoteLeft(props: SVGProps<SVGSVGElement>): JSX_2.Element;
237
+
149
238
  export declare interface BlockquoteOptions extends BlockquoteOptions_2, GeneralOptions<BlockquoteOptions> {
150
239
  }
151
240
 
@@ -154,11 +243,170 @@ export declare const Bold: Mark<BoldOptions, any>;
154
243
  export declare interface BoldOptions extends BoldOptions_2, GeneralOptions<BoldOptions> {
155
244
  }
156
245
 
246
+ /** Represents the overall types for bubbles */
247
+ declare type BubbleAllType = BubbleImageType | BubbleVideoType | ExtensionNameKeys | 'divider' | (string & {});
248
+
249
+ /** Represents the size types for bubble images or videos */
250
+ declare type BubbleImageOrVideoSizeType = 'size-small' | 'size-medium' | 'size-large';
251
+
252
+ /** Represents the various types for bubble images */
253
+ declare type BubbleImageType = `image-${BubbleImageOrVideoSizeType}` | `video-${BubbleImageOrVideoSizeType}` | 'image' | 'image-aspect-ratio' | 'remove';
254
+
255
+ /**
256
+ * Bubble Menu Component
257
+ *
258
+ * @param editor Editor instance
259
+ * @param disabled Whether the menu is disabled
260
+ * @param bubbleMenu Bubble menu configuration
261
+ * @returns Bubble menu component
262
+ */
263
+ export declare function BubbleMenu({ editor, disabled, bubbleMenu }: BubbleMenuComponentProps): string | number | boolean | ReactElement<any, string | JSXElementConstructor<any>> | Iterable<ReactNode> | (JSX_2.Element | null)[] | null | undefined;
264
+
265
+ export declare interface BubbleMenuComponentProps {
266
+ editor: Editor_2;
267
+ disabled?: boolean;
268
+ bubbleMenu?: BubbleMenuProps;
269
+ }
270
+
271
+ export declare function BubbleMenuImage(props: IPropsBubbleMenu): JSX_2.Element;
272
+
273
+ /**
274
+ * Represents the structure of a bubble menu item.
275
+ */
276
+ export declare interface BubbleMenuItem extends ButtonViewReturn {
277
+ /** The type of the bubble item */
278
+ type: BubbleAllType;
279
+ }
280
+
281
+ export declare function BubbleMenuLink({ editor, disabled }: BubbleMenuLinkProps): JSX_2.Element;
282
+
283
+ export declare interface BubbleMenuLinkProps {
284
+ editor: Editor;
285
+ disabled?: boolean;
286
+ }
287
+
288
+ /**
289
+ * Represents the BubbleMenuProps.
290
+ */
291
+ declare interface BubbleMenuProps {
292
+ columnConfig?: {
293
+ /**
294
+ * @description Column menu hidden
295
+ * @default false
296
+ */
297
+ hidden?: boolean;
298
+ };
299
+ tableConfig?: {
300
+ /**
301
+ * @description Table menu hidden
302
+ * @default false
303
+ */
304
+ hidden?: boolean;
305
+ };
306
+ floatingMenuConfig?: {
307
+ /**
308
+ * @description Floating menu hidden
309
+ * @default false
310
+ */
311
+ hidden?: boolean;
312
+ };
313
+ linkConfig?: {
314
+ /**
315
+ * @description Link menu hidden
316
+ * @default false
317
+ */
318
+ hidden?: boolean;
319
+ };
320
+ textConfig?: {
321
+ /**
322
+ * @description Text menu hidden
323
+ * @default false
324
+ */
325
+ hidden?: boolean;
326
+ };
327
+ imageConfig?: {
328
+ /**
329
+ * @description Image menu hidden
330
+ * @default false
331
+ */
332
+ hidden?: boolean;
333
+ };
334
+ videoConfig?: {
335
+ /**
336
+ * @description Video menu hidden
337
+ * @default false
338
+ */
339
+ hidden?: boolean;
340
+ };
341
+ render?: (props: BubbleMenuRenderProps, dom: React.ReactNode) => React.ReactNode;
342
+ }
343
+
344
+ /**
345
+ * Represents the BubbleMenuRenderProps.
346
+ */
347
+ declare interface BubbleMenuRenderProps {
348
+ editor: Editor;
349
+ disabled: boolean;
350
+ bubbleMenu: BubbleMenuProps;
351
+ }
352
+
353
+ export declare function BubbleMenuText(props: BubbleMenuTextProps): JSX_2.Element;
354
+
355
+ export declare interface BubbleMenuTextProps {
356
+ editor: Editor_2;
357
+ disabled?: boolean;
358
+ }
359
+
360
+ export declare function BubbleMenuVideo(props: IPropsBubbleMenu): JSX_2.Element;
361
+
362
+ /**
363
+ * Represents the options for configuring bubbles.
364
+ * @interface BubbleOptions
365
+ * @template T
366
+ */
367
+ export declare interface BubbleOptions<T> {
368
+ /** The menu of bubble types for each node type. */
369
+ list: NodeTypeMenu;
370
+ /** The default list of bubble types. */
371
+ defaultBubbleList: any;
372
+ /** The function to generate a bubble menu. */
373
+ button: BubbleView<T>;
374
+ }
375
+
376
+ /** Represents the menu of bubble types for each node type */
377
+ export declare type BubbleTypeMenu = Partial<Record<NodeTypeKey, BubbleMenuItem[]>>;
378
+
379
+ /** Represents the types for bubble videos */
380
+ declare type BubbleVideoType = 'video' | 'remove';
381
+
382
+ /**
383
+ * Represents a function to generate a bubble menu
384
+ */
385
+ declare interface BubbleView<T = any> {
386
+ /**
387
+ * Generates a bubble menu based on the provided options.
388
+ * @param {ButtonViewParams<T>} options - The options for generating the bubble menu.
389
+ * @returns {BubbleTypeMenu} The generated bubble menu.
390
+ */
391
+ (options: ButtonViewParams<T>): BubbleTypeMenu;
392
+ }
393
+
157
394
  export declare const BulletList: Node_2<BulletListOptions, any>;
158
395
 
159
396
  export declare interface BulletListOptions extends BulletListOptions_2, GeneralOptions<BulletListOptions> {
160
397
  }
161
398
 
399
+ export declare const Button: React_2.ForwardRefExoticComponent<ButtonProps & React_2.RefAttributes<HTMLButtonElement>>;
400
+
401
+ export declare interface ButtonProps extends React_2.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
402
+ asChild?: boolean;
403
+ }
404
+
405
+ export declare const buttonVariants: (props?: ({
406
+ variant?: "link" | "default" | "outline" | "destructive" | "secondary" | "ghost" | null | undefined;
407
+ size?: "icon" | "default" | "sm" | "lg" | null | undefined;
408
+ } & ClassProp) | undefined) => string;
409
+
162
410
  /**
163
411
  * Represents the ButtonView function.
164
412
  */
@@ -234,6 +482,17 @@ export declare const Color: Extension<ColorOptions, any>;
234
482
  export declare interface ColorOptions extends ColorOptions_2, GeneralOptions<ColorOptions> {
235
483
  }
236
484
 
485
+ export declare function ColorPicker(props: ColorPickerProps): JSX_2.Element;
486
+
487
+ export declare interface ColorPickerProps {
488
+ highlight?: boolean;
489
+ disabled?: boolean;
490
+ children: default_2.ReactNode;
491
+ onChange?: (color: string | undefined) => void;
492
+ setSelectedColor?: (color: string | undefined) => void;
493
+ selectedColor?: string;
494
+ }
495
+
237
496
  declare enum ColumnLayout {
238
497
  SidebarLeft = "sidebar-left",
239
498
  SidebarRight = "sidebar-right",
@@ -247,9 +506,62 @@ export declare interface ColumnsOptions extends GeneralOptions<ColumnsOptions> {
247
506
 
248
507
  export declare const ColumnToolbar: Extension<any, any>;
249
508
 
250
- declare const _default: ForwardRefExoticComponent<IPropsRcTiptapEditor & RefAttributes<unknown>>;
509
+ export declare function ContentMenu(props: ContentMenuProps): JSX_2.Element;
510
+
511
+ export declare interface ContentMenuProps {
512
+ editor: Editor_2;
513
+ disabled?: boolean;
514
+ className?: string;
515
+ pluginKey?: string;
516
+ }
517
+
518
+ declare const _default: ForwardRefExoticComponent<IPropsRichTextEditor & RefAttributes<unknown>>;
251
519
  export default _default;
252
520
 
521
+ export declare function DeleteColumn(): JSX_2.Element;
522
+
523
+ export declare function DeleteRow(): JSX_2.Element;
524
+
525
+ export declare const DropdownMenu: React_2.FC<DropdownMenuPrimitive.DropdownMenuProps>;
526
+
527
+ export declare const DropdownMenuCheckboxItem: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
528
+
529
+ export declare const DropdownMenuContent: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
530
+
531
+ export declare const DropdownMenuGroup: React_2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React_2.RefAttributes<HTMLDivElement>>;
532
+
533
+ export declare const DropdownMenuItem: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & {
534
+ inset?: boolean;
535
+ } & React_2.RefAttributes<HTMLDivElement>>;
536
+
537
+ export declare const DropdownMenuLabel: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & {
538
+ inset?: boolean;
539
+ } & React_2.RefAttributes<HTMLDivElement>>;
540
+
541
+ export declare const DropdownMenuPortal: React_2.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
542
+
543
+ export declare const DropdownMenuRadioGroup: React_2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React_2.RefAttributes<HTMLDivElement>>;
544
+
545
+ export declare const DropdownMenuRadioItem: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
546
+
547
+ export declare const DropdownMenuSeparator: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
548
+
549
+ export declare function DropdownMenuShortcut({ className, ...props }: React_2.HTMLAttributes<HTMLSpanElement>): JSX_2.Element;
550
+
551
+ export declare namespace DropdownMenuShortcut {
552
+ var displayName: string;
553
+ }
554
+
555
+ export declare const DropdownMenuSub: React_2.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
556
+
557
+ export declare const DropdownMenuSubContent: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
558
+
559
+ export declare const DropdownMenuSubTrigger: React_2.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & {
560
+ inset?: boolean;
561
+ } & React_2.RefAttributes<HTMLDivElement>>;
562
+
563
+ export declare const DropdownMenuTrigger: React_2.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
564
+
253
565
  export declare const en: {
254
566
  'editor.remove': string;
255
567
  'editor.copy': string;
@@ -377,6 +689,13 @@ export declare const en: {
377
689
  'editor.iframe.tooltip': string;
378
690
  };
379
691
 
692
+ /**
693
+ * Represents the keys for different extensions.
694
+ */
695
+ declare type ExtensionNameKeys = 'bold' | 'italic' | 'underline' | 'strike' | 'color' | 'highlight' | 'heading' | 'textAlign' | 'bulletList' | 'orderedList' | 'taskList' | 'indent' | 'link' | 'image' | 'video' | 'table' | 'blockquote' | 'horizontalRule' | 'code' | 'codeBlock' | 'clear' | 'history';
696
+
697
+ export declare function FileWordOutline(props: SVGProps<SVGSVGElement>): JSX_2.Element;
698
+
380
699
  export declare const FontFamily: Extension<FontFamilyOptions, any>;
381
700
 
382
701
  declare interface FontFamilyOptions extends FontFamilyOptions_2, GeneralOptions<FontFamilyOptions> {
@@ -397,6 +716,8 @@ export declare interface FontSizeOptions extends GeneralOptions<FontSizeOptions>
397
716
  fontSizes: string[];
398
717
  }
399
718
 
719
+ export declare function FormatLineHeight(props: SVGProps<SVGSVGElement>): JSX_2.Element;
720
+
400
721
  /**
401
722
  * 格式刷
402
723
  */
@@ -420,10 +741,17 @@ declare interface GeneralOptions<T> {
420
741
  button: ButtonView<T>;
421
742
  /** Show on Toolbar */
422
743
  toolbar?: boolean;
423
- /** Show on Bubble menu */
424
- bubble?: boolean;
425
744
  }
426
745
 
746
+ export declare function getBubbleImage(editor: Editor): BubbleMenuItem[];
747
+
748
+ /**
749
+ * Bubble menu text list
750
+ */
751
+ export declare function getBubbleText(editor: Editor, t: any): BubbleMenuItem[];
752
+
753
+ export declare function getBubbleVideo(editor: Editor): BubbleMenuItem[];
754
+
427
755
  export declare const Heading: Node_2<HeadingOptions, any>;
428
756
 
429
757
  export declare interface HeadingOptions extends HeadingOptions_2, GeneralOptions<HeadingOptions> {
@@ -446,6 +774,16 @@ export declare const HorizontalRule: Node_2<HorizontalRuleOptions, any>;
446
774
  export declare interface HorizontalRuleOptions extends HorizontalRuleOptions_2, GeneralOptions<HorizontalRuleOptions> {
447
775
  }
448
776
 
777
+ export declare function IconComponent(props: IconComponentProps): JSX_2.Element | null;
778
+
779
+ export declare interface IconComponentProps {
780
+ name: string;
781
+ className?: string;
782
+ onClick?: default_2.MouseEventHandler<SVGElement>;
783
+ }
784
+
785
+ export declare const icons: any;
786
+
449
787
  export declare const Iframe: Node_2<IframeOptions, any>;
450
788
 
451
789
  declare interface IframeOptions extends GeneralOptions<IframeOptions> {
@@ -474,7 +812,17 @@ export declare interface IndentOptions extends GeneralOptions<IndentOptions> {
474
812
  maxIndent: number;
475
813
  }
476
814
 
477
- declare interface IPropsRcTiptapEditor {
815
+ export declare const Input: React_2.ForwardRefExoticComponent<InputProps & React_2.RefAttributes<HTMLInputElement>>;
816
+
817
+ export declare interface InputProps extends React_2.InputHTMLAttributes<HTMLInputElement> {
818
+ }
819
+
820
+ declare interface IPropsBubbleMenu {
821
+ editor: Editor;
822
+ disabled?: boolean;
823
+ }
824
+
825
+ declare interface IPropsRichTextEditor {
478
826
  content: string;
479
827
  extensions: AnyExtension[];
480
828
  output: 'html' | 'json' | 'text';
@@ -493,6 +841,7 @@ declare interface IPropsRcTiptapEditor {
493
841
  editorClass?: string | string[] | Record<string, any>;
494
842
  contentClass?: string | string[] | Record<string, any>;
495
843
  onChangeContent?: (val: any) => void;
844
+ bubbleMenu?: BubbleMenuProps;
496
845
  useEditorOptions?: UseEditorOptions;
497
846
  }
498
847
 
@@ -501,6 +850,8 @@ export declare const Italic: Mark<ItalicOptions, any>;
501
850
  export declare interface ItalicOptions extends ItalicOptions_2, GeneralOptions<ItalicOptions> {
502
851
  }
503
852
 
853
+ export declare const Label: React_2.ForwardRefExoticComponent<Omit<LabelPrimitive.LabelProps & React_2.RefAttributes<HTMLLabelElement>, "ref"> & VariantProps<(props?: ClassProp | undefined) => string> & React_2.RefAttributes<HTMLLabelElement>>;
854
+
504
855
  declare type LanguageType = 'en' | 'vi' | 'zh_CN' | string;
505
856
 
506
857
  export declare const LineHeight: Extension<LineHeightOptions, any>;
@@ -535,6 +886,8 @@ declare class Locale {
535
886
 
536
887
  export declare const locale: Locale;
537
888
 
889
+ export declare function MenuDown(props: SVGProps<SVGSVGElement>): JSX_2.Element;
890
+
538
891
  declare type MessageKeysType = keyof typeof en;
539
892
 
540
893
  export declare const MoreMark: Extension<MoreMarkOptions, any>;
@@ -556,11 +909,27 @@ export declare interface MoreMarkOptions extends GeneralOptions<MoreMarkOptions>
556
909
 
557
910
  export declare const MultiColumn: Node_2<ColumnsOptions, any>;
558
911
 
912
+ /** Represents the key types for node types */
913
+ export declare type NodeTypeKey = 'image' | 'text' | 'video';
914
+
915
+ /** Represents the menu of overall bubble types for each node type */
916
+ export declare type NodeTypeMenu = Partial<Record<NodeTypeKey, BubbleAllType[]>>;
917
+
559
918
  export declare const OrderedList: Node_2<OrderedListOptions, any>;
560
919
 
561
920
  export declare interface OrderedListOptions extends OrderedListOptions_2, GeneralOptions<OrderedListOptions> {
562
921
  }
563
922
 
923
+ export declare const Popover: React_2.FC<PopoverPrimitive.PopoverProps>;
924
+
925
+ export declare const PopoverContent: React_2.ForwardRefExoticComponent<Omit<PopoverPrimitive.PopoverContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
926
+
927
+ export declare const PopoverTrigger: React_2.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
928
+
929
+ export declare function reducer(state: State, action: Action): State;
930
+
931
+ export declare const Separator: React_2.ForwardRefExoticComponent<Omit<SeparatorPrimitive.SeparatorProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
932
+
564
933
  export declare interface SetImageAttrsOptions {
565
934
  src?: string;
566
935
  /** The alternative text for the image. */
@@ -571,8 +940,18 @@ export declare interface SetImageAttrsOptions {
571
940
  width?: number | string | null;
572
941
  }
573
942
 
943
+ export declare function SizeL(props: SVGProps<SVGSVGElement>): JSX_2.Element;
944
+
945
+ export declare function SizeM(props: SVGProps<SVGSVGElement>): JSX_2.Element;
946
+
947
+ export declare function SizeS(props: SVGProps<SVGSVGElement>): JSX_2.Element;
948
+
574
949
  export declare const SlashCommand: Extension<any, any>;
575
950
 
951
+ declare interface State {
952
+ toasts: ToasterToast[];
953
+ }
954
+
576
955
  export declare const Strike: Mark<StrikeOptions, any>;
577
956
 
578
957
  export declare interface StrikeOptions extends StrikeOptions_2, GeneralOptions<StrikeOptions> {
@@ -598,8 +977,16 @@ export declare interface SubAndSuperScriptOptions extends GeneralOptions<SubAndS
598
977
  superscript: Partial<SuperscriptExtensionOptions> | false;
599
978
  }
600
979
 
980
+ export declare const Switch: React_2.ForwardRefExoticComponent<Omit<SwitchPrimitives.SwitchProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
981
+
601
982
  export declare const Table: Node_2<TableOptions, any>;
602
983
 
984
+ export declare function TableBubbleMenu({ editor }: TableBubbleMenuProps): JSX_2.Element;
985
+
986
+ export declare interface TableBubbleMenuProps {
987
+ editor: Editor_2;
988
+ }
989
+
603
990
  declare interface TableCellBackgroundOptions {
604
991
  HTMLAttributes: Record<string, any>;
605
992
  types?: any;
@@ -622,6 +1009,14 @@ export declare interface TableOptions extends GeneralOptions<TableOptions> {
622
1009
  tableCellBackground: Partial<TableCellBackgroundOptions>;
623
1010
  }
624
1011
 
1012
+ export declare const Tabs: React_2.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React_2.RefAttributes<HTMLDivElement>>;
1013
+
1014
+ export declare const TabsContent: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
1015
+
1016
+ export declare const TabsList: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
1017
+
1018
+ export declare const TabsTrigger: React_2.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
1019
+
625
1020
  export declare const TaskList: Node_2<TaskListOptions, any>;
626
1021
 
627
1022
  /**
@@ -649,6 +1044,66 @@ export declare interface TextAlignOptions extends TextAlignOptions_2, GeneralOpt
649
1044
  declare interface TextBubbleOptions extends GeneralOptions<TextBubbleOptions> {
650
1045
  }
651
1046
 
1047
+ export declare const Toast: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastProps & React_2.RefAttributes<HTMLLIElement>, "ref"> & VariantProps<(props?: ({
1048
+ variant?: "default" | "destructive" | null | undefined;
1049
+ } & ClassProp) | undefined) => string> & React_2.RefAttributes<HTMLLIElement>>;
1050
+
1051
+ export declare function toast({ ...props }: Toast_2): {
1052
+ id: string;
1053
+ dismiss: () => void;
1054
+ update: (props: ToasterToast) => void;
1055
+ };
1056
+
1057
+ declare type Toast_2 = Omit<ToasterToast, 'id'>;
1058
+
1059
+ export declare const ToastAction: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastActionProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
1060
+
1061
+ export declare type ToastActionElement = React_2.ReactElement<typeof ToastAction>;
1062
+
1063
+ export declare const ToastClose: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastCloseProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & React_2.RefAttributes<HTMLButtonElement>>;
1064
+
1065
+ export declare const ToastDescription: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastDescriptionProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
1066
+
1067
+ declare type ToasterToast = ToastProps & {
1068
+ id: string;
1069
+ title?: React_2.ReactNode;
1070
+ description?: React_2.ReactNode;
1071
+ action?: ToastActionElement;
1072
+ };
1073
+
1074
+ export declare type ToastProps = React_2.ComponentPropsWithoutRef<typeof Toast>;
1075
+
1076
+ export declare const ToastProvider: React_2.FC<ToastPrimitives.ToastProviderProps>;
1077
+
1078
+ export declare const ToastTitle: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastTitleProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
1079
+
1080
+ export declare const ToastViewport: React_2.ForwardRefExoticComponent<Omit<ToastPrimitives.ToastViewportProps & React_2.RefAttributes<HTMLOListElement>, "ref"> & React_2.RefAttributes<HTMLOListElement>>;
1081
+
1082
+ export declare const Toggle: React_2.ForwardRefExoticComponent<Omit<TogglePrimitive.ToggleProps & React_2.RefAttributes<HTMLButtonElement>, "ref"> & VariantProps<(props?: ({
1083
+ variant?: "default" | "outline" | null | undefined;
1084
+ size?: "default" | "sm" | "lg" | null | undefined;
1085
+ } & ClassProp) | undefined) => string> & React_2.RefAttributes<HTMLButtonElement>>;
1086
+
1087
+ export declare const toggleVariants: (props?: ({
1088
+ variant?: "default" | "outline" | null | undefined;
1089
+ size?: "default" | "sm" | "lg" | null | undefined;
1090
+ } & ClassProp) | undefined) => string;
1091
+
1092
+ export declare function Toolbar({ editor, disabled }: ToolbarProps): JSX_2.Element;
1093
+
1094
+ export declare interface ToolbarProps {
1095
+ editor: Editor_2;
1096
+ disabled?: boolean;
1097
+ }
1098
+
1099
+ export declare const Tooltip: React_2.FC<TooltipPrimitive.TooltipProps>;
1100
+
1101
+ export declare const TooltipContent: React_2.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React_2.RefAttributes<HTMLDivElement>, "ref"> & React_2.RefAttributes<HTMLDivElement>>;
1102
+
1103
+ export declare const TooltipProvider: React_2.FC<TooltipPrimitive.TooltipProviderProps>;
1104
+
1105
+ export declare const TooltipTrigger: React_2.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React_2.RefAttributes<HTMLButtonElement>>;
1106
+
652
1107
  /**
653
1108
  * Extension based on:
654
1109
  * - https://github.com/ueberdosis/tiptap/blob/v1/packages/tiptap-extensions/src/extensions/TrailingNode.js
@@ -664,6 +1119,12 @@ export declare const Underline: Mark<UnderlineOptions, any>;
664
1119
  export declare interface UnderlineOptions extends UnderlineOptions_2, GeneralOptions<UnderlineOptions> {
665
1120
  }
666
1121
 
1122
+ export declare function useToast(): {
1123
+ toast: typeof toast;
1124
+ dismiss: (toastId?: string) => void;
1125
+ toasts: ToasterToast[];
1126
+ };
1127
+
667
1128
  export declare const vi: {
668
1129
  'editor.remove': string;
669
1130
  'editor.copy': string;
@@ -992,17 +1453,40 @@ declare module '@tiptap/core' {
992
1453
  }
993
1454
 
994
1455
 
1456
+ declare namespace DropdownMenuShortcut {
1457
+ var displayName: string;
1458
+ }
1459
+
1460
+
995
1461
  declare module '@tiptap/core' {
996
1462
  interface Commands<ReturnType> {
997
- indent: {
1463
+ videoUpload: {
1464
+ setVideoUpload: () => ReturnType;
1465
+ };
1466
+ }
1467
+ }
1468
+
1469
+
1470
+ declare module '@tiptap/core' {
1471
+ interface Commands<ReturnType> {
1472
+ imageUpload: {
1473
+ setImageUpload: () => ReturnType;
1474
+ };
1475
+ }
1476
+ }
1477
+
1478
+
1479
+ declare module '@tiptap/core' {
1480
+ interface Commands<ReturnType> {
1481
+ imageResize: {
998
1482
  /**
999
- * Set the indent attribute
1483
+ * Add an image
1000
1484
  */
1001
- indent: () => ReturnType;
1485
+ setImage: (options: Partial<SetImageAttrsOptions>) => ReturnType;
1002
1486
  /**
1003
- * Set the outdent attribute
1487
+ * Update an image
1004
1488
  */
1005
- outdent: () => ReturnType;
1489
+ updateImage: (options: Partial<SetImageAttrsOptions>) => ReturnType;
1006
1490
  };
1007
1491
  }
1008
1492
  }
@@ -1010,8 +1494,9 @@ declare module '@tiptap/core' {
1010
1494
 
1011
1495
  declare module '@tiptap/core' {
1012
1496
  interface Commands<ReturnType> {
1013
- videoUpload: {
1014
- setVideoUpload: () => ReturnType;
1497
+ lineHeight: {
1498
+ setLineHeight: (lineHeight: string) => ReturnType;
1499
+ unsetLineHeight: () => ReturnType;
1015
1500
  };
1016
1501
  }
1017
1502
  }
@@ -1019,9 +1504,15 @@ declare module '@tiptap/core' {
1019
1504
 
1020
1505
  declare module '@tiptap/core' {
1021
1506
  interface Commands<ReturnType> {
1022
- lineHeight: {
1023
- setLineHeight: (lineHeight: string) => ReturnType;
1024
- unsetLineHeight: () => ReturnType;
1507
+ indent: {
1508
+ /**
1509
+ * Set the indent attribute
1510
+ */
1511
+ indent: () => ReturnType;
1512
+ /**
1513
+ * Set the outdent attribute
1514
+ */
1515
+ outdent: () => ReturnType;
1025
1516
  };
1026
1517
  }
1027
1518
  }
@@ -1029,8 +1520,9 @@ declare module '@tiptap/core' {
1029
1520
 
1030
1521
  declare module '@tiptap/core' {
1031
1522
  interface Commands<ReturnType> {
1032
- imageUpload: {
1033
- setImageUpload: () => ReturnType;
1523
+ tableCellBackground: {
1524
+ setTableCellBackground: (color: string) => ReturnType;
1525
+ unsetTableCellBackground: () => ReturnType;
1034
1526
  };
1035
1527
  }
1036
1528
  }
@@ -1068,34 +1560,3 @@ declare module '@tiptap/core' {
1068
1560
  };
1069
1561
  }
1070
1562
  }
1071
-
1072
-
1073
- declare module '@tiptap/core' {
1074
- interface Commands<ReturnType> {
1075
- imageResize: {
1076
- /**
1077
- * Add an image
1078
- */
1079
- setImage: (options: Partial<SetImageAttrsOptions>) => ReturnType;
1080
- /**
1081
- * Update an image
1082
- */
1083
- updateImage: (options: Partial<SetImageAttrsOptions>) => ReturnType;
1084
- };
1085
- }
1086
- }
1087
-
1088
-
1089
- declare module '@tiptap/core' {
1090
- interface Commands<ReturnType> {
1091
- tableCellBackground: {
1092
- setTableCellBackground: (color: string) => ReturnType;
1093
- unsetTableCellBackground: () => ReturnType;
1094
- };
1095
- }
1096
- }
1097
-
1098
-
1099
- declare namespace DropdownMenuShortcut {
1100
- var displayName: string;
1101
- }