import { ExtractPropTypes, PropType } from 'vue';
import { ConfigurableProps } from '@vexip-ui/config';
import { CascaderKeyConfig, CascaderSlots, CascaderValue, Data } from './symbol';
type ChangeEvent = ((value: CascaderValue, data: Data[] | Data[][]) => void) | ((value: (string | number)[], data: Data[]) => void) | ((value: string[], data: Data[]) => void) | ((value: number[], data: Data[]) => void) | ((value: (string | number)[][], data: Data[][]) => void) | ((value: string[][], data: Data[][]) => void) | ((value: number[][], data: Data[][]) => void);
export declare const cascaderProps: {
    inherit: PropType<boolean>;
    size: PropType<"default" | "small" | "large">;
    state: PropType<"default" | "success" | "error" | "warning">;
    locale: PropType<Partial<{
        placeholder: string;
        empty: string;
        search: string;
        ariaLabel: {
            clear: string;
        };
    }>>;
    value: PropType<(string | number)[] | (string | number)[][]>;
    visible: PropType<boolean>;
    options: PropType<Data[]>;
    placeholder: PropType<string>;
    prefix: PropType<any>;
    prefixColor: PropType<string>;
    suffix: PropType<any>;
    suffixColor: PropType<string>;
    noCascaded: PropType<boolean>;
    multiple: PropType<boolean>;
    disabled: PropType<boolean>;
    clearable: PropType<boolean>;
    placement: PropType<"bottom" | "top" | "right" | "left" | "bottom-start" | "bottom-end" | "top-start" | "top-end" | "right-start" | "right-end" | "left-start" | "left-end">;
    transfer: PropType<string | boolean>;
    staticSuffix: PropType<boolean>;
    noSuffix: PropType<boolean>;
    transitionName: PropType<string>;
    outsideClose: PropType<boolean>;
    keyConfig: PropType<CascaderKeyConfig>;
    separator: PropType<string>;
    hoverTrigger: PropType<boolean>;
    maxTagCount: PropType<number>;
    briefLabel: PropType<boolean>;
    noRestTip: PropType<boolean>;
    onAsyncLoad: PropType<(data: Data) => any[] | Promise<any[]>>;
    mergeTags: PropType<boolean>;
    tagType: PropType<"default" | "success" | "error" | "warning" | "info" | "cyan" | "gold" | "lime" | "magenta" | "navy" | "orange" | "pink" | "purple" | "tomato" | "primary">;
    emptyText: PropType<string>;
    loading: PropType<boolean>;
    loadingIcon: PropType<any>;
    loadingLock: PropType<boolean>;
    loadingEffect: PropType<string>;
    transparent: PropType<boolean>;
    popperAlive: PropType<boolean>;
    slots: PropType<CascaderSlots>;
    onToggle: PropType<((visible: boolean) => void) | ((visible: boolean) => void)[]>;
    onSelect: PropType<((fullValue: string, data: Data) => void) | ((fullValue: string, data: Data) => void)[]>;
    onCancel: PropType<((fullValue: string, data: Data) => void) | ((fullValue: string, data: Data) => void)[]>;
    onChange: PropType<((value: CascaderValue, data: Data[] | Data[][]) => void) | ((value: (string | number)[], data: Data[]) => void) | ((value: string[], data: Data[]) => void) | ((value: number[], data: Data[]) => void) | ((value: (string | number)[][], data: Data[][]) => void) | ((value: string[][], data: Data[][]) => void) | ((value: number[][], data: Data[][]) => void) | ChangeEvent[]>;
    onClickOutside: PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onOutsideClose: PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onClear: PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
};
export type CascaderProps = ExtractPropTypes<typeof cascaderProps>;
export type CascaderCProps = ConfigurableProps<CascaderProps, never, 'onAsyncLoad'>;
export {};
