slate-react

Search for an npm package
import React from 'react';
import { Element, NodeEntry, Range, Text } from 'slate';
import { ReactEditor } from '../plugin/react-editor';
import { DOMRange } from '../utils/dom';
/**
* `RenderElementProps` are passed to the `renderElement` handler.
*/
export interface RenderElementProps {
children: any;
element: Element;
attributes: {
'data-slate-node': 'element';
'data-slate-inline'?: true;
'data-slate-void'?: true;
dir?: 'rtl';
ref: any;
};
}
/**
* `RenderLeafProps` are passed to the `renderLeaf` handler.
*/
export interface RenderLeafProps {
children: any;
leaf: Text;
text: Text;
attributes: {
'data-slate-leaf': true;
};
}
/**
* `EditableProps` are passed to the `<Editable>` component.
*/
export declare type EditableProps = {
decorate?: (entry: NodeEntry) => Range[];
onDOMBeforeInput?: (event: InputEvent) => void;
placeholder?: string;
readOnly?: boolean;
role?: string;
style?: React.CSSProperties;
renderElement?: (props: RenderElementProps) => JSX.Element;
renderLeaf?: (props: RenderLeafProps) => JSX.Element;
renderPlaceholder?: (props: RenderPlaceholderProps) => JSX.Element;
scrollSelectionIntoView?: (editor: ReactEditor, domRange: DOMRange) => void;
as?: React.ElementType;
disableDefaultStyles?: boolean;
} & React.TextareaHTMLAttributes<HTMLDivElement>;
/**
* Editable.
*/
export declare const Editable: (props: EditableProps) => JSX.Element;
/**
* The props that get passed to renderPlaceholder
*/
export declare type RenderPlaceholderProps = {
children: any;
attributes: {
'data-slate-placeholder': boolean;
dir?: 'rtl';
contentEditable: boolean;
ref: React.RefObject<any>;
style: React.CSSProperties;
};
};
/**
* The default placeholder element
*/
export declare const DefaultPlaceholder: ({ attributes, children, }: RenderPlaceholderProps) => JSX.Element;
/**
* A default memoized decorate function.
*/
export declare const defaultDecorate: (entry: NodeEntry) => Range[];
/**
* Check if an event is overrided by a handler.
*/
export declare const isEventHandled: <EventType extends React.SyntheticEvent<unknown, unknown>>(event: EventType, handler?: ((event: EventType) => void | boolean) | undefined) => boolean;
/**
* Check if a DOM event is overrided by a handler.
*/
export declare const isDOMEventHandled: <E extends Event>(event: E, handler?: ((event: E) => void | boolean) | undefined) => boolean;
//# sourceMappingURL=editable.d.ts.map
No newline at end of file