UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

49 lines (48 loc) 1.97 kB
import React, { ReactNode } from 'react'; import { TreeNodeProps } from '../../../lib/tree'; import Record from '../data-set/Record'; import DataSet from '../data-set/DataSet'; export declare type IconType = React.ReactNode | ((props: TreeNodeProps) => React.ReactNode); export interface DataNode { children?: DataNode[]; key: string | number; eventKey: string | number; title?: React.ReactNode; selectable?: boolean; isLeaf?: boolean; switcherIcon?: IconType; checkable?: boolean; disabled?: boolean; icon?: IconType; disableCheckbox?: boolean; /** Set style of TreeNode. This is not recommend if you don't have any force requirement */ className?: string; style?: React.CSSProperties; } export interface TreeNodeRendererProps { children?: TreeNodeRendererProps[]; title?: React.ReactNode; isLeaf?: boolean; switcherIcon?: IconType; checkable?: boolean; disabled?: boolean; icon?: IconType; disableCheckbox?: boolean; /** Set style of TreeNode. This is not recommend if you don't have any force requirement */ className?: string; style?: React.CSSProperties; } export declare type NodeRenderer = (props: { record?: Record | null; dataSet?: DataSet | null; text?: string; }) => ReactNode; export declare type TreeNodeRenderer = ((props: { record?: Record | null; dataSet?: DataSet | null; }) => TreeNodeRendererProps) | (((props: { record?: Record | null; dataSet?: DataSet | null; }) => {})) | (() => ({})); export declare function getKey(record: any, idField: any): string; export declare function getTreeNodes(dataSet: DataSet, records: Record[] | undefined, renderer: NodeRenderer, onTreeNode: TreeNodeRenderer, async?: boolean, titleField?: string, optionsFilter?: (record: Record, index: number, array: Record[]) => boolean, searchMatcher?: (record: Record, text: string | string[]) => boolean, filterText?: string): DataNode[] | null;