import React from 'react';
export declare const nid: (size?: number | undefined) => string;
export declare const copy: <T = any>(data: T) => T;
export declare const isMod: (e: MouseEvent | KeyboardEvent | React.KeyboardEvent | React.MouseEvent) => boolean;
export { download, modal$ } from './sideEffects';
export { isMarkdown } from './isMarkdown';
export declare function debounce(func: {
    (): void;
    apply?: any;
}, delay: number | undefined): {
    (): void;
    flush(): void;
    cancel(): void;
};
import { DependencyList } from 'react';
export declare function useDebounce(fn: Function, ms?: number, deps?: DependencyList): [() => boolean | null, () => void];
export declare const useGetSetState: <T extends object>(initialState?: T) => [() => T, (patch: Partial<T>) => void];
export declare const MARKDOWN_EDITOR_EVENTS: {
    SELECTIONCHANGE: string;
    FOCUS: string;
    BLUR: string;
};
export * from '../parser/parserSlateNodeToMarkdown';
export * from './editorUtils';
export * from './keyboard';
export * from './media';
export * from './path';
export * from './useLocalState';
