@fesjs/fes-design
Version:
fes-design for PC
39 lines (38 loc) • 1.07 kB
TypeScript
import type { VNodeChild } from 'vue';
export type CascaderNodeKey = string | number;
export interface CascaderOption {
value?: CascaderNodeKey;
label?: string;
children?: CascaderOption[];
disabled?: boolean;
selectable?: boolean;
checkable?: boolean;
isLeaf?: boolean;
prefix?: string | (() => VNodeChild);
suffix?: string | (() => VNodeChild);
[key: string]: any;
}
export interface InnerCascaderOption extends CascaderOption {
origin?: CascaderOption;
level?: number;
hasChildren?: boolean;
indexPath?: CascaderNodeKey[];
children?: InnerCascaderOption[];
childrenValues?: CascaderNodeKey[];
isExpanded?: boolean;
}
export interface CascaderNodeList {
[key: string]: InnerCascaderOption;
}
interface CascaderEventParams {
node: CascaderOption;
event: Event;
selected: boolean;
}
export interface SelectParams extends CascaderEventParams {
selectedKeys: CascaderNodeKey[];
}
export interface CheckParams extends CascaderEventParams {
checkedKeys: CascaderNodeKey[];
}
export {};