import type { ComputedRef, Ref, RenderFunction, SetupContext } from 'vue' import type { CascaderEmits as ElCascaderEmits, CascaderNode, CascaderProps as ElCascaderProps } from 'element-plus' import type { CascaderProps } from '../base' import type { ComponentBaseOptions, ComponentSlotType, DefineComponentApp, DefineComponentInstance, Merge, } from '../common' export declare const KCascader: DefineComponentApp export type KCascaderInstance = DefineComponentInstance export interface KCascaderConstructor extends ComponentBaseOptions, KCascaderMethods { props: KCascaderProps context: SetupContext getRefMaps(): KCascaderPrivateRef getComputeMaps(): KCascaderPrivateComputed renderVN: RenderFunction } export interface KCascaderPrivateRef { refElem: Ref } export interface KCascaderPrivateComputed { } export type KCascaderProps = Merge export type KCascaderEmits = ElCascaderEmits export interface KCascaderSlots { default: (_: { node: any; data: any }) => ComponentSlotType empty: () => ComponentSlotType } export type KCascaderMethods = { getCheckedNodes: (leafOnly: boolean) => CascaderNode[] | undefined cascaderPanelRef: ComputedRef togglePopperVisible: (visible?: boolean) => void contentRef: ComputedRef presentText: ComputedRef }