import Node from './node'; import type { Nullable } from 'element-ultra/utils'; import type { CascadeNodeValue, CascadeNodePathValue, CascadeOption, CascadeConfig } from './node'; export default class Store { readonly config: CascadeConfig; readonly nodes: Node[]; readonly allNodes: Node[]; readonly leafNodes: Node[]; constructor(data: CascadeOption[], config: CascadeConfig); getNodes(): Node[]; getFlattedNodes(leafOnly: boolean): Node[]; appendNode(nodeData: CascadeOption, parentNode?: Node): void; appendNodes(nodeDataList: CascadeOption[], parentNode: Node): void; getNodeByValue(value: CascadeNodeValue | CascadeNodePathValue, leafOnly?: boolean): Nullable; getSameNode(node: Node): Nullable; }