code-monkey-ui
Version:
A Component Library for Vue 3
37 lines (36 loc) • 1.91 kB
TypeScript
import type { InjectionKey, VNode } from 'vue';
import type { Nullable } from 'code-monkey-ui/es/utils';
import type { default as DshCascaderNode, DshCascaderOption, DshCascaderProps, DshExpandTrigger } from './node';
export type { DshCascaderNode, DshCascaderOption, DshCascaderProps, DshExpandTrigger, };
export declare type DshCascaderNodeValue = string | number;
export declare type DshCascaderNodePathValue = DshCascaderNodeValue[];
export declare type DshCascaderValue = DshCascaderNodeValue | DshCascaderNodePathValue | (DshCascaderNodeValue | DshCascaderNodePathValue)[];
export declare type DshCascaderConfig = Required<DshCascaderProps>;
export declare type DshIsDisabled = (data: DshCascaderOption, node: DshCascaderNode) => boolean;
export declare type DshIsLeaf = (data: DshCascaderOption, node: DshCascaderNode) => boolean;
export declare type DshResolve = (dataList?: DshCascaderOption[]) => void;
export declare type DshLazyLoad = (node: DshCascaderNode, resolve: DshResolve) => void;
export declare type DshRenderLabel = ({ node: DshCascaderNode, data: DshCascaderOption, }: {
node: any;
data: any;
}) => VNode | VNode[];
export interface DshTag {
node?: DshCascaderNode;
key: number;
text: string;
hitState?: boolean;
closable: boolean;
isCollapseTag: boolean;
}
export interface DshCascaderPanelContext {
config: DshCascaderConfig;
expandingNode: Nullable<DshCascaderNode>;
checkedNodes: DshCascaderNode[];
isHoverMenu: boolean;
initialLoaded: boolean;
renderLabelFn: DshRenderLabel;
lazyLoad: (node?: DshCascaderNode, cb?: (dataList: DshCascaderOption[]) => void) => void;
expandNode: (node: DshCascaderNode, silent?: boolean) => void;
handleCheckChange: (node: DshCascaderNode, checked: boolean, emitClose?: boolean) => void;
}
export declare const DSH_CASCADER_PANEL_INJECTION_KEY: InjectionKey<DshCascaderPanelContext>;