UNPKG

@macrostrat/column-components

Version:

React rendering primitives for stratigraphic columns

46 lines (45 loc) 1.85 kB
import { ComponentType, ReactNode } from 'react'; import { NoteData } from './types'; import { NoteEditor, NoteTextEditor, NoteEditorContext } from './editor'; import { NodeConnectorOptions } from './connector'; export * from './types'; interface NoteComponentProps { visibility: string; note: NoteData; onClick: Function; } declare function NoteComponent(props: NoteComponentProps): import('react').ReactElement<{ style: { visibility: string; }; onClick: Function; }, string | import('react').JSXElementConstructor<any>>; interface NotesColumnBaseProps extends NodeConnectorOptions { width?: number; paddingLeft?: number; transform?: string; notes?: NoteData[]; noteComponent?: ComponentType<any>; onClickNote?: (note: NoteData) => void; children?: ReactNode; forceOptions?: object; } interface EditableNotesColumnProps extends NotesColumnBaseProps { inEditMode?: boolean; onUpdateNote?: (n: NoteData) => void; onDeleteNote?: (n: NoteData) => void; onCreateNote?: Function; noteEditor?: ComponentType<any>; allowPositionEditing?: boolean; } interface FocusedNotesColumnProps extends NotesColumnBaseProps { focusedNote?: NoteData | null; onFocusNote?: (note: NoteData | null) => void; focusedNoteComponent?: ComponentType<any>; } declare function StaticNotesColumn(props: NotesColumnBaseProps): import('react').DetailedReactHTMLElement<import('react').InputHTMLAttributes<HTMLInputElement>, HTMLInputElement>; declare function NotesColumn(props: NotesColumnProps): import('react').FunctionComponentElement<{}> | null; interface NotesColumnProps extends FocusedNotesColumnProps, EditableNotesColumnProps { editable?: boolean; } export { NotesColumn, NoteComponent, NoteTextEditor, NoteEditor, NoteEditorContext, NotesColumnProps, StaticNotesColumn, };