goobs-frontend
Version:
A comprehensive React-based libary for building modern web applications
35 lines • 1.57 kB
TypeScript
import { default as React } from 'react';
/**
* 1) Converts markdown to Slate format (async because we use Promise.all)
*/
export declare const markdownToSlate: (markdown: string) => Promise<any[]>;
/**
* 2) Switch from Markdown to RichText mode (async because we call markdownToSlate)
*/
interface SlateNode {
type: string;
children: Array<{
text: string;
bold?: boolean;
italic?: boolean;
}>;
}
export declare const handleSwitchToRichText: (markdown: string, setSlateValue: (value: SlateNode[]) => void, setNewSlateValue: (value: SlateNode[]) => void, setMarkdownMode: (value: boolean) => void) => Promise<void>;
/**
* 3) Apply bold markdown around selectedText (NO async since we do no awaiting)
*/
export declare const handleBoldClick: (selectedText: string, markdown: string, setMarkdown: (value: string) => void) => void;
/**
* 4) Apply italic markdown around selectedText (NO async)
*/
export declare const handleItalicClick: (selectedText: string, markdown: string, setMarkdown: (value: string) => void) => void;
/**
* 5) Replace the selected text with newValue in the original markdown (NO async)
*/
export declare const replaceSelectedText: (newValue: string, markdown: string, selectedText: string, setMarkdown: (value: string) => void) => void;
/**
* 6) Handle markdown input changes (NO async)
*/
export declare const handleMarkdownChange: (event: React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>, setMarkdown: (value: string) => void) => void;
export {};
//# sourceMappingURL=useMarkdownEditor.d.ts.map